アトミックスワップのザックリした仕組み

アトミックスワップを使うと個人間で仮想通貨の交換ができます。自分のビットコインを友達のイーサリアムと交換するみたいな。アトミックスワップについて調べてみました。

アトミックスワップ(Atomic Swap)とは

アトミックスワップ(Atomic Swap)は「原始的な交換」という意味です。ますますわからなくなりましたね(笑)

個人での交換の問題点

仮想通貨を個人間で交換する場合はかんたんです。例えば、友達と交換する場合。

自分のビットコインを友達のアドレスにおくり、友達がそれを確認したあとにイーサリアムを送ります。これで交換成立です。

でも友達が持ち逃げしたり、自分が持ち逃げしたり・・・といったリスクがあります。友達同士でもありえるし、もちろん知らない第三者であれば持ち逃げのリスクはもっと高いです。

アトミックスワップを使うとこのリスクがなくなります。相手を信用する必要がないトラストレスな取引がアトミックスワップをでできます。

ビットコインとイーサリアムの交換手順

アトミックスワップの通貨交換手順をみていきます。Aさんのビットコイン1BTCとBさんのイーサリアム10ETHをアトミックスワップで交換した場合。

トランザクション

まずAさんがトランザクションAを作ります。このトランザクションAにビットコイン1BTCを送ります。

BさんはトランザクションBを作ります。このトランザクションBにイーサリアム10ETHを送ります。

2つの鍵をかける

トランザクションAには2つの鍵をかけておきます。Aさんの暗証番号とBさんの秘密鍵です。トランザクションAはこの2つの鍵がないと開けません。Aさんが一人で開くことはできないし、Bさんも一人では開くことはできません。

トランザクションBには2つの鍵をかけておきます。Aさんの暗証番号とAさんの秘密鍵です。トランザクションBは両方ともAさんの鍵ですね・・・。

トランザクションAの2つの鍵(ビットコイン送金)

  1. Aさんの暗証番号
  2. Bさんの秘密鍵

トランザクションBの2つの鍵(イーサリアム送金)

  1. Aさんの暗証番号
  2. Aさんの秘密鍵

 

トランザクションBの鍵はこれでいい?これだと、AさんがトランザクションBの鍵をあけて、イーサリアムを持ち逃げできそうな気がします。でも、そうならないのがアトミックスワップのすごいところです。

AさんがトランザクションBをイーサリアムのブロックチェーンに流すと、Aさんの暗証番号が公開されてしまいます。パブリックなチェーンなので暗証番号は誰でも見ることができます。

これでBさんはAさんの暗証番号がわかります。Bさんは自分の秘密鍵とAさんの暗証番号でトランザクションAの鍵を開けることができ、ビットコイン10BTCを手に入れることができてしまうんです。

Aさんがイーサリアムを手に入れるにはマイナーにマイニングしてもらい、ブロックチェーン上に公開する必要があります。それをすると、自分の暗証番号が公開され、Bさんがビットコインを手に入れられるという仕組みです。

Aさんがイーサリアムを手にする=Bさんがビットコインを手にする」という連動制があるというか、一体化しているというか。

だから持ち逃げできないという意味なんですね。なるほどーという技術ですね。

どちらも処理しなかったらどうなるか?

これはどちらも処理しなかったらどうなるんでしょうか?Aさんはビットコインを失い、Bさんはイーサリアムを失ってしまうのかな?

こうならないようにタイマーをセットできるようです。例えば、1日という制限をかけておき、1日たっても処理されなかったら元のアドレスに通貨は戻されるようです。これなら安心ですね。

アトミックスワップの個人間で仮想通貨の交換のザックリとした仕組みはわかりました。

コメント