イベントレポート
Lightning Networkを体験! 技術者向けハンズオンセミナーレポート
BCCC第8回技術応用部会より
2019年5月23日 06:00
一般社団法人ブロックチェーン推進協会(BCCC)は5月20日、東京・丸の内で第8回技術応用部会を開催した。今回のテーマは、ビットコインの決済専用ネットワーク「Lightning Network」。技術者に向けたLightning Networkの解説と、実際にLightning Networkのソフトウェア「Ptarmigan」を使って手元の環境で決済を行うハンズオンセミナーが行われた。
オープニングのあいさつをしたのはBCCC技術応用部会長の森 一弥氏。「Lightning Networkはマイクロペイメント(少額決済)で期待されている。金額の多寡という視点だけではなく、人ではなく小さな機械が少額決済できるアイデアを考えていくと未来が明るくなるのでは」と語った。
ビットコインは社会インフラとして扱いづらい
最初に登壇したのはNayutaの栗元 憲一氏。Nayutaは4月30日にLightning Networkの仕様(BOLT)に準拠したソフトウェア「Ptarmigan」のメインネット版をリリースしている。
パブリックブロックチェーンは、取引履歴を皆で共有して信頼性を担保するという考え方を基本としている。栗元氏は「ビットコインは、最もDecentralized(分散型)でTrustless(管理者が存在しない)という性質にこだわったパブリックブロックチェーン技術の1つ」としながらも、決済にはいくつか問題があると説明する。
ビットコインはビックカメラなど一部の店舗で決済に利用できるが、ほとんどは投機的な目的で使われているのが現状だ。栗元氏は社会インフラとしてビットコインが使いづらい理由として3つの問題点を挙げた。
- 決済に最低10分のブロックタイムがかかる
- 少額決済に使うと手数料がまだまだ高い
- 1秒間に7件の決済しか処理できない
中国のアリババが提供するアリペイ(AliPay)は、2017年の「独身の日」でピーク時は1秒間に25万件の決済を処理したとされる。この規模の件数を処理できない現状のビットコインの決済問題を解決するのが、ペイメント専用ネットワークの「Lightning Network」だ。
Lightning Networkはビットコインの決済問題を解決する
Lightning Networkは、従来のブロックチェーンをファーストレイヤーとし、ペイメント専用のセカンドレイヤーとして位置づけられるネットワークだ。Lightning Networkを使うと次のメリットがある。
- ブロックタイムなしで即時支払いができる
- 手数料が安い
- 高い同時処理能力を発揮できる
従来どおりファーストレイヤーのブロックチェーンで決済処理を行う場合、トランザクションデータを皆にばらまき、そのたびにマイニングするためのブロックタイムが必要になる。それに対してセカンドレイヤーのLightning Networkでは、送金者と受金者が共有口座を作り、支払後の口座の状態を直接交換する。それをくり返して、最後にファーストレイヤーのブロックチェーンに1回書き込んだら計上完了となる。栗元氏は「決済の処理が中央に集中するのではなく、専用のレイヤーで全部別々に、並行して行われるのがポイント」と説明する。
Lightning Networkでは、送金者から受金者にバケツリレーのようにトランザクションデータが送られていく。しかし両者の間でマイクロペイメントチャンネルが開通していないと送金はできない。それを解決するのが、間に人を挟んで安全に送金する技術「HTLCs」だ。
たとえばAさんからBさんに送金する場合、両者の間にマイクロペイメントのチャンネルが開通していなくても、共通して開通済みのCさんがいれば、Cさんを中継して送金できるというわけだ。
ここで重要になるのが「誰をどう通して送金するのか」を決める「Routing」(ルーティング)だ。どこかにマップ情報を集約するサーバーを置くと、Trustlessではなくなってしまう。そこでLightning Networkでは、セカンドレイヤーに参加したときに「自分がどんなチャンネルを持っているか」という情報を公開し、その情報をもとにしてソフトウェアが「どんなルートで送金するか」を決めて送金する仕組みになっているという。栗元氏は「Routingの際に発生するデータ量を減らすためにどうすればよいかなど、今も提案が行われている」と説明する。
Lightning Network専用のネットショップを実際にやってみた
Nayutaは、Lightning Networkを使ったネットショップ「Nayuta Lightning Shop」を運営している。同社の中島 佑氏が、実際にショップを運営したレポートを紹介した。
中島氏は「Lightning Networkのノードは2018年5月と比べると1年間で100倍に増えている」と説明する。今回利用したのはBTCPay Server。Lightning Networkに対応しているだけでなく、WordPressのeコマースプラグインWooCommerceとも連携している。
不特定多数の人から支払いを受け取る場合、ショップのノードに向けてハブとなる誰かにチャンネルを開通してもらう必要がある。そこで利用したのが、流動性を提供する「THOR Lightning Channel-Opening Service」だ。THORに少額のお金を払うと自分のノードに向けて一定期間チャンネルが開かれ、支払いを受け取れるようになる。
また、売り上げをビットコインで得るためにはチャンネルを一度閉じる必要がある。そのリスクを回避するために、常に複数チャンネルを用意して対応した。現在は、チャンネルを開いたままビットコインを補充・排出する技術も検討されているという。
中島氏は「やってみないとわからないこともあった」としながらも「Lightning Networkは実験的なフェーズから実用段階に来ている」と語る。
手元でLightning Networkの決済を体験するハンズオン
後半のハンズオンセミナーでは、同社の中野 雄太氏がLightning Networkソフトウェア「Ptarmigan」をインストールして、実際に決済処理を行う手順を実演した。Ptarmiganは英語で雷鳥(ライチョウ)を表す単語だ。Lightning Networkにちなんで名付けられたという。
ハンズオンは環境の構築から行われ、時間切れとなった人もいたようだ。セミナーで使った資料とイメージはSlideShareで公開されている(Slideshareの仕様上日本語フォントを表示することができないため、資料はダウンロードして確認ください:5月24日編集部追記)。
BCCCではさまざまな部会が存在するが、技術応用部会ではハンズオンによるセミナーを重視している。今後も定期的に勉強会を開催していく予定だという。