前回の記事ではILPの送金の仕組みを見てきたので、今回はILPの構造と送金の流れを解説していきます。
ILPの階層構造
ILPを側面から見てみると上記のような4つの階層構造になっています。
一般的にはこれ全体を指して「ILP」と呼んでいますが、厳密には「Interledger」の部分のみをそう呼びます。
それぞれ下から、レジャー層・インターレジャー層・トランスポート層・アプリケーション層となっています。
このように階層が分割されている理由としては、機能によってプロトコルレイヤーを組み合わせることで、拡張性と効率性を高めるためです。
そうすることで応用力が高まり、手数料も安くすることができています。
それでは各層の役割を一つ一つ見ていこうと思います。
レジャー層
レジャー層は、送金者・コネクター・受金者に関わらず実装が必須な層になります。
このレジャー層の役割は、それぞれの持つレジャー(台帳)と通信、実際の送金を実行することです。
この層に、多数の「Plugin」があることが分かります。
この「Plugin」は、銀行のシステムやブロックチェーン、各種決済システムなど様々な種類のレジャー(台帳)をそれぞれの仕様に合わせて機能を拡張するアダプターのように使われます。
このPluginがあることにより、異なる仕様のレジャー(台帳)を相互に繋ぎ、送金を行うことができます。
インターレジャー層
インターレジャー層もレジャー層と同様に、送金者・コネクター・受金者に関わらず実装が必須な層になります。
このインターレジャー層の役割は、送金に必要な情報を作り、それを下層のレジャー層に渡すことになります。
この層を具体的に見てみると、アカウントを定義するILPと取引の見積もりを作成するILQPという2つのプロトコルによって構成されています。この2つのプロトコルに基づいて、アドレスやパケットのフォーマットを定め、取引の見積もりを行う働きをしています。
トランスポート層
トランスポート層は、送金者と受金者に実装される層です。
この層の役割は、送金者から受金者へ安全に送金する方法を作成することになります。
この方法にPSKとIRPの2つの方法がありますが、PSKの方が安全なためこちらが主に使われます。
PSKは「Pre-Shared Key」の略称で、あらかじめ送金者と受金者の間だけが知っている共有鍵を作り、それを使うことで安全性を保っています。
この共有鍵は、下記のアプリケーション層で安全に共有されます。
アプリケーション層
アプリケーション層は、一番上層に位置し、送金者と受金者に実装される層です。
この層の役割は、送金先を特定し安全な通信を確立することになります。
図中にあるSPSP(Simple Payment Setup Protocol)は、代表的なアプリケーション層のプロトコルです。
SPSPでの通信は、HTTPSという暗号化された通信手段を用いているため、送金者と受金者以外の第三者に情報が漏れることはありません。
ILPの具体的な流れ
このILPモデルは、受金者と送金者と一人のコネクターがいるモデルになります。
「Application」には、上記のアプリケーション層とトランスポート層がまとまっています。
「Interledger Module」がインターレジャー層で、LLI-1やLLI-2がレジャー層のプラグインです。
送金者とコネクターの間、受金者とコネクターの間に「Local Ledger」があり、このLocal Ledgerにデータを記録して送金を行っていきます。
ILPの創り出す未来
以前の記事でも書きましたが、ILPは送金革命を起こす画期的な技術です。
そもそもインターネットが作られたときから、時代を見越してインターネットには送金用のスペースが作られていました。rippleはそれを埋めるために、ILPを作ったのです。
インターネットが誕生して、文字や絵、動画などあらゆる情報がリアルタイムで世界を行き交うようになった結果、それまで考えられなかった新しい価値がどんどん生み出されています。
ILPはその最後の情報、「お金」の流動性を高めようとしているのです。ILPを基にインターネット上でのお金のやりとりがスムーズになれば、今まであり得なかった新しい市場を生み出すことも可能になってきます。
それほどまでに送金網の流動性が高まることにはインパクトがあるのです。これはブロックチェーンとはまた違った、1つの革命と言えるでしょう。