XRPLのRippling機能
XRPレジャー とは
XRPレジャーはBitcoinやEthereumなどと同じ分散型のパブリックブロックチェーンです。PoWやPoSとは異なる独自のコンセンサスアルゴリズムが用いられています。
EVMによるスマートコントラクトは搭載しておらず、スマートトランザクタ(プロトコルネイティブで提供されている機能)を拡張することで進化し続けています。
代表的な機能としてはトークンの発行や管理、DEX、マルチシグなどがあります。
トークンの仕組み
XRPLにおけるトークンはIOUとも呼ばれ、本来は外部の価値の債権を表すものです。
次に説明する仕組みを利用することで、XRPL上でのトークンの仕組みが理解できます。
二者間でのやりとり
AliceがBobに1000円を貸しており、BobはAliceに1000円を返済する必要があるとします。この時、BobはAliceに対する1000円の債権を1000JPYというトークンで表現することができます。
BobはAliceに対して1000JPYを送金することで、Aliceへの1000円の債務を持ちます。これはAliceによるBobへの信頼によって成り立ち、Bobが1000円の請求に応じない場合はデフォルトしたことになります。
ここでAliceが200JPYをBobへ送金し200円の請求を行った場合、Aliceの債権は800円になります。
三者間でのやりとり
これを3者に拡張してみましょう。
AliceとBob、BobとChalieは知り合いですがAliceとCharlieは知り合いではないと仮定します。
下の図ではBobがAliceとCharlieの二人から合計3000円の債務を抱えている状態です。
ここでAliceとCharlieはBobの紹介を受けて初めて会い、AliceはCharlieに800円を貸す必要が出てきました。しかし、初めて会ったばかりであるのでCharlieに対する十分な信頼はありません。
しかし共通の友人であるBobへの信頼はあるので、CharlieはBobに対する2000円の債権(2000JPY)の内、800JPYをAliceに送金することで、Charlieから800円を返済してもらう代わりにBobからその800円を返済してもらうことができます。
この一連の流れでBobの債務総額が変化していないことが重要です。
これらはAliceやBob、Charlieの間での債務・債権額や信頼関係の有無によって説明されます。
XRPLでのトークン
上記のような仕組みはXRPLのトラストライン機能によって実現されます。
BobはIOUの発行者であり、AliceとCharlieはその利用者と言えるでしょう。
最後の例はAliceからCharlieへのIOUの送金であり、Bobはその中継者としての役割を果たしています。(この中継者というのはこの記事の中で重要です。覚えておきましょう)
トラストラインは二者間での通貨や債務・債権額、その上限額を表すもので、この額を調整することでIOU/トークンの送金を実現しています。
本来、トラストラインが表すオンレジャーのIOU/トークンはオフレジャーの資産との交換権とも言えるわけであり、オフレジャー資産の価値がIOU/トークンの価値に影響を与えるものです。
この仕組みが利用され、現在はオフレジャーの資産と紐付かないオンレジャーのみのトークンも発行されています。
ステーブルコイン
最近話題となっているステーブルコインは、オフレジャーの資産と紐付いたオンレジャーのトークンです。発行者はオンレジャーのトークンとオフレジャーの資産の交換を保証しています。
まさにトラストラインの一番のユースケースとも言えるでしょう!
Rippling
本題にやってきました。
まず、Rippling機能を一言で表すとトークンの中継と言えるかもしれません。
先ほどBobが中継者というお話をしましたが、CharlieからAliceへのIOUの送金時にRippling機能を用いるのです。
具体的には発行者からのRippling機能が有効である場合、アカウントが保有する同一通貨コードのトラストライン間での残高の移動が可能です。
発行者からのRipplingが無効の場合、アカウントは発行者以外へトークンの送信ができません。
トークン発行者となる人がトラストラインにてRipplingを許可している場合、そのトラストラインを保持するトークン保有者間での実質的なトークンのやりとりが可能となります。
実線で繋がった部分での送金が可能ということですね。
また、トークン発行者ではないユーザがトラストラインにRipplingを許可している場合、同一通貨コードのトークン間でトークンが1:1で交換されることがあります。
例えばAliceがBobが発行した100JPYとCharlieが発行した100JPYを保有している場合でそのいずれもRipplingを許可している場合、他の第三者の取引経路として利用される可能性がります。
次の例ではDave保有するAlliceのJPYトークンをEllenへCharlieが持つJPYトークンとして送金しています。
もしBobのトラストラインにRipplingを許可していない場合、DaveはAliceのトークンをEllenへ送金することはできません。
マーケットメイカーとしてのRippling
先ほどの説明ではAccount-Bob
はAccount-Alice
とAccount-Charlie
の間でトークンの中継を行う役割を担っていました。これはマーケットメイカーとしての役割を担っているとも言えます。デフォルトでは1:1でトークンが交換され、またトークンによっては送金手数料も発生しており、損害を被る可能性もあります。
この記事で詳しくは触れませんが、トラストラインのQuality In
やQuality Out
を適切に設定することで、Ripplingを使ってマーケットメイカーとして収益を得ることも可能です。
まとめ
XRPレジャーのトークンの一番ベースとなるトラストラインとRipplingについて説明しました。
トラストラインはトークンの残高データを保持し、Ripplingによりユーザ間のトークンの送金を可能にします。
今後ステーブルコインの発行等により、同一通貨コードのトークンが発行された場合、ユーザ間でのRipplingを利用したトークンの交換が利用されていくことも考えられるかもしれません。
興味を持たれた方はXRP Ledger開発者のDiscordチャンネルへ是非お越しください!
日本語チャンネルもありますので、英語ができなくても大丈夫です!
Discussion