アトミック・スワップが拓く4つの未来

レポート「アルトコイン図鑑」では30種類以上のコインの概要と見通しを解説(詳しく)

Screenshot from 2017-09-25 09-37-52

LTCとBTCの間で世界初?のクロスチェーンアトミックスワップが成功し、注目を集めている。

以下がそのトランザクションだ。

LTC:
https://insight.litecore.io/address/ML9CNJBtSPMABYcCQV58P2t4M7MpPRJK95
BTC:
https://insight.bitpay.com/address/3HRWsfjpBHiJ7hC3jKJV5nbHMeBgoCPHDq

本記事では、アトミック・スワップとはなにか?これができるとどういうことができるようになるのか?ということを説明し、最後に技術的解説を試みる。

アトミックスワップとはなにか?

アトミックスワップとは、相手を信用する前提をおかずに、互いのコインを交換することができるという手順である。
ある秘密の数字のハッシュ値を埋め込んだトランザクションを利用することでこれを実現することができる。

例えば、LTさんのLTCと、BTさんのBTCを交換することを考えてみよう。

取引をするには、どちらかがまずコインを相手に送ることが必要になる。コインが相手に届いたことが確認されれば、相手はコインを送り返す。これで取引が成立することになるが、この手順には誰にでも指摘できる欠点がある。

相手がコインを送り返さずにそのままバックレることが可能だということだ。

つまり、これは相手が信用に足る人物だという前提に、それを信じてどちらかが先にコインを送らなければならない。

アトミックスワップでは、この問題を暗号的手法で解決する。相手を信用する必要なく、コインの交換を行うことができるようになる。相手が誰であろうが、匿名であろうが、素性を一切知る必要なく、安全にコイン同士の交換が可能になる。

アトミック・スワップが拓く4つの未来

これが実現できるようになると、つぎの4つの未来の展望が開けると私は考える。

1つ目は、相対取引である。

中央の取引所を通さず、安全にコインの交換ができるようになる。速度は中央的な取引所にはかなわないが、中国の事例のように、閉鎖のリスクや、取引所GOXのリスクや、資産差し押さえリスクなどを考えると、多額のコインの交換は、アトミックスワップによる相対取引が利用されるようになるかもしれない。

2つ目は、分散型取引所である。

アトミックスワップは、速度が遅い。ひとつの取引が完了するまで何ブロックも経過するひつようがあるため、リアルタイムな売買では中央集権取引所とは比較にならない。

しかしながら、ライトニングネットワークのオフチェーンと組み合わせることで、かなりの部分この問題を解決することができる可能性がある。

利用者はライトニングのチャネルをハブに張り、その利用者同士で高速なアトミックスワップが行う。この方式では、高速な分散取引所が可能なるかもしれない。

また、それ自体が高速なペイメントハブを構成できる。スワップを噛ませることで、異なる通貨を自動的に変換して支払うような、両替機能を含んだペイメントサービスを構築できる可能性がある。

3つ目は、クロスチェーンでのコイン相互運用である

BTCは手数料が高く遅いが、安全が高い。通常はBTCに資産をおいておくが、必要なときに小銭をくずして高速なLTCで支払い等を行い、残った分を戻す、という使い方が可能がしたい。

アトミックスワップを使うと、BTCからLTCにスワップし、LTCで支払いなどをおこなったのち、最後はBTCに戻す、という使い方が可能になる。

つまり、利用用途に応じて好きなチェーンに乗り換えて利用するという使い方ができるようになる。

4つ目は、2〜3までが全部実現して、ネットワークを構成するようになった未来だ。

もはやここまで進化すると、各コインのブロックチェーンが同士が、アトミックスワップや、ペイメントハブなどを通して相互につながり、全体としてネットワークのようなものを構成する。

インターネット・オブ・ブロックチェーンだ。

こうなると、どのコインからスタートしても、どのコインでも支払いや受け取りができるようになり、誰にでもその人の希望するコインで、瞬時に、トラストレスにコインが動くようになる。当分先の未来図であるが、いずれ実現するであろう。

私は、この技術が徐々に注目されていき、アトミック・スワップ、クロスチェーンといったキーワードが、来年のホットトピックになると予想している。

なおアトミックスワップについては、この記事に大幅加筆した詳細レポートを近日中に配信予定です。ご期待ください。

以下技術説明

アトミックスワップの技術的な内容を知りたい人向けに、プロトコルがどう動作するか簡単に書いておく。

ここでは、LTCとBTCを交換し、LTCを先に送るとする。

1.まずLTC側がランダムな秘密の数字Rを作成し、そのハッシュ値を取る。このハッシュ値H(R)を使い、次のような特殊な条件トランザクションを作る。
○Rが与えられ、ハッシュ値が一致する、かつ、BTC保有者の署名がある場合、このライトコインを取り出せる。

2.次に、BTC側が相手にBTCを送る。ただし、この場合も同様、次のような特殊なトランザクションを作る。
○Rが与えられ、ハッシュ値が一致し、かつ、LTCを保有者の署名がある場合、このビットコインが取り出せる

3. LTC側は、2のトランザクションからBTCを取り出し自分に送金しようとする。そのためには、Rの値と、LTC側の署名をトランザクションに添付しないといけない。

4. LTC側がコインを取り出すためにRをブロードキャストした瞬間、BTC側もRの値を知ることになるので、1のトランザクションにRと自身の署名を加え、LTCを取り出し自分に送る。

一連の手続きで、コイン交換が行われる。肝は、LTC側がBTCを取り出そうとするとRを公開せざる得ず、そうするとBTC側も同時にLTCを取り出すことができるという点にある。

ただし、上記だけだとひとつだけ問題がある。LTC側が何らかの理由でRが公開しない場合、それぞれのコインがトランザクションの中で宙に浮いて取り出せなくなる。そのため、一定の時間が経過したあとは、それぞれ取り出せるリファンド・トランザクションを作り、それもあらかじめ条件に含めておく。

・おしらせ
ビットコイン研究所の有料版サロンでは、平易な言葉で最近の技術や業界事情などについて解説するレポートを毎週配信しています。

暗号通貨について、もっと知りたい、勉強をしたいというかたに情報を提供しています。サロン内では疑問点も質問できます。

一度登録いただけると100本以上の過去レポートが読み放題で、大変お得です。レポート一覧がこちらのページありますので、よろしければいちど目をとおしてみてください。