常時オンライン問題を回避した一方向ペイメントチャネル

プロジェクト紹介

BitMEX Researchよりライトニングネットワークに関する記事が更新されました。

The Lightning Network – BitMEX Blog

BitMEXは暗号通貨の高レバレッジ取引所として有名ですが、BitMEXの出す記事は質の高いものが多いので、リーディングリストに入れておくことをお勧めします。

今回の記事はライトニングネットワークの概説に始まり、中盤では技術的な側面にも触れつつ、最後には「 Sceptical view of Lightning vs Ambitious view of Lightning」でまとめるという読みやすい構成です。

BitMEXの記事でも触れられているように、ライトニングネットワーク等のステートチャネルにはいくつか課題があり、その一つに「最新のステートを保持しなければならない」というものがあります。何故なら二者間のチャネルにおいて、チャネルの片側には古いステートを採用するインセンティブが存在するからです。

オフチェーン処理の要「ステートチャネル」の概要を掴む
ステートチャネルは聞き慣れない言葉だと思いますが、ビットコインのライトニングネットワークやEthereumのRaiden Networkで用いられるペイメントチャネルはステートチャネルの一種と言えます。ブロックチェーン上でなし得る操作を、ブ

例えば、自分がデポジットを用いて支払いを行った場合、最新のステートには使用した分が差し引かれたデポジットが反映されるわけですが、一つ前のステートを使用できれば、使用した分が差し引かれていないデポジットを反映させることができます。

この問題を避けるために「新しいステートは古いステートに優越する」というルールがあるわけですが、このルールを活用するためには、チャネルの動向を常に監視しておく必要があります。

RaidenとLightning networkにおける現行の妥協案

上述の問題点を回避しつつ、ペイメントチャネルの利点を享受するために、限定的に提供されているのが一方向ペイメントチャネルです。

一方向であれば、支払う側は常時オンラインである必要がありません。何故なら支払い専用のチャネルにおけるデポジットは常に減少する一方であり、古いステートは常に支払う側にとって最新のステートよりも有利なものであるからです。受け取り側が古いステートを勝手に利用する可能性はありますが、それは支払う側にとって問題にはなりません。

μRaidenは多対一の一方向ペイメントチャネルを提供しています。Raiden Networkはライトニングネットワーク同様に、多対多の双方向オフチェーンペイメントの実現を目指していますが、その第一歩として提供されているのがμRaidenになります。

ライトニングネットワークには3つの実装がありますが、そのうちの一つEclairがAndroid Wallet「Eclair Wallet」を提供しています。

Eclairの仕様は知らなかったのですが、テストネットにおいて支払い専用でライトニング機能の利用が可能なようです。

Announcing Eclair Wallet – ACINQ – Medium

Eclair Wallet Testnet – Google Play の Android アプリ

モバイルウォレットのユーザーが常にオンラインでチャネルの監視を行うのは現実的ではないため、常時オンラインが必要ない機能のみの提供に至ったと説明されています。

Raidenトークンのユースケース

先日version 0.2.0がリリースされたRaidenですが、RaidenにはRDNというトークンが存在します。Raidenの開発者はRDNトークンの使用例として、チャネルを監視するサービスが挙げられています。

Eclairの記事にもあるように、ノード運営者でもない限り、常時オンラインでチャネルを監視し続けることは容易ではありません。そのような役割を代行するサービスをRDNを用いて利用することができるという構想のようです。

The Raiden Network Token Model – Raiden Network – Medium

ライトニングネットワークもRaiden Networkもまだ開発段階ですが、2018年中の実用化が期待され、実現すればその他のDappsにも大きな影響を与えるため要注目の技術です。