アトミック スワップは、ブロックチェーンを介して直接暗号資産の真の P2P 取引を可能にするメカニズムです。アトミックスワップはどのように機能するのか、またこのテクノロジーの将来はどうなるのか?

アトミックスワップは、ブロックチェーン間で暗号資産を交換するための自動契約です。スマート コントラクト メカニズムにより、取引を行う際に集中管理されたサードパーティ組織 (取引所または交換業者) の必要性が完全に排除され、カウンターパーティ リスクから解放されます。これは、暗号資産交換取引を実行する数少ない真の分散型方法の 1 つです。

アトミックスワップの仕組み

「アトミック」(不可分)とは、完全に実行されるプロセス、またはまったく実行されないプロセスを表す用語です。言い換えれば、アトミック スワップには、取引の両当事者が交換を完了するための事前に設定された条件をすべて満たしていることを保証する機能があります。条件の遵守はスマートコントラクトによって保証されます。いずれかの当事者に障害が発生した場合、または技術的な問題が発生した場合、操作全体が完全にキャンセルされます。

アトミック スワップでは、ハッシュロック タイムロック コントラクト (HTLC) が使用されます。これらのコントラクトでは、データ フィンガープリントを作成および比較するためのメカニズム、つまりハッシュ関数が使用されます。さらに、契約には期限が設定されており、当事者の少なくとも一方が所定の期間内に取引条件を履行しない場合、取引はキャンセルされます。

たとえば、2 つの当事者がアトミック スワップに 2 時間の制限時間を設定することに同意する場合があります。このシナリオでは、2 時間が経過しても取引のすべての条件が満たされなかった場合、契約により、預けられたコインが元の所有者に返されます。 HTLC スマート コントラクトには 2 つの暗号キーが必要です。

  • ハッシュロックキー。このキーにより、両当事者が取引条件を履行したことを示す暗号証拠を提供した場合にのみ取引が完了することが保証されます。

  • タイムロックキー。これは、トランザクション参加者がアトミック スワップを実行する期限を設定するのに役立つセキュリティ メカニズムです。このメカニズムにより、何らかの理由で期限までにスワップが完了しなかった場合、入金されたコインが取引の参加者に確実に返還されます。

アトミックスワップの実行方法

ユーザー A とユーザー B が BTC と ETH のアトミック スワップを行うことに同意したと仮定します。ユーザー B は、自分の 1 BTC をユーザー A の 15 ETH と交換したいと考えています。

まず、ユーザー B は 1 BTC を送金する契約アドレスを作成する必要があります。トランザクションが完了すると、コントラクトはユーザー B のみがアクセスできる特別なキーを自動的に生成します。このキーは、ユーザーがスマート コントラクトに送金した資金のロックを解除します。

コントラクトは、このキーを使用して、キーのハッシュ化された表現または暗号化された形式を作成します。次に、ユーザー B はキーのハッシュをユーザー A に送信します。したがって、ユーザー A は、ユーザー B の 1 BTC をロックするために使用されるパスコードのハッシュ化された形式にのみアクセスできます。このハッシュは、ユーザー B が契約内のお金をロックしたことの証拠として機能します。ですが、ユーザー A はまだそれらにアクセスしたり、契約から削除したりすることはできません。

ハッシュ化されたキーを受け取った後、ユーザー A はそれを使用して自分の契約アドレスを作成し、そこに自分の 15 ETH を預けます。双方が自分のお金をスマート コントラクトにロックすると、ユーザー B はパスワードにアクセスできるため、15 ETH を請求できます。これにより、ユーザー A がスマート コントラクトにコインをロックするために使用したキーが明らかになります。

ユーザー A の契約アドレスのロックを解除する過程で、ユーザー B は自分のパスワードを取引の第二者に明らかにします。ユーザー A はそれを使用して 1 BTC を受け取り、トランザクションを完了します。基本的に、アトミック スワップ プロセス全体は、両当事者が自分たちの行為の暗号証拠を提供できるかどうかにかかっています。

ユーザー B は、最初にキーを暗号化してからユーザー A に送信する必要がありました。彼は元のキーを持っていたため、暗号化されたキーを使用してスマート コントラクトでユーザー A がロックした暗号資産を要求できます。ただし、暗号資産のロックを解除する条件として、ユーザーBはユーザーAにオリジナルの鍵を提供する必要があります。ユーザー A はキーにアクセスし、それを使用して 1 BTC を受け取ることができます。

なぜアトミックスワップが必要なのでしょうか?

アトミックスワップは、暗号資産を取引する際に暗号通貨取引所などの仲介業者の必要性を排除するため、ブロックチェーンの相互運用性にとって重要なメカニズムです。これにより、トレーダーは集中取引プラットフォームのインフラストラクチャに依存せずにクロスチェーン取引を行うことができます。

アトミック スワップには仲介者が関与しないため、トランザクションは高速でアクセスしやすく、保管ベースの交換に伴うセキュリティ インシデントが排除されます。すべての取引は個人のウォレットから実行されるため、ユーザーは自分の暗号資産を管理できます。

さらに、アトミックスワップを介したクロスチェーン取引は、相互運用可能な暗号通貨エコシステムの構築に貢献します。アトミック スワップにより、複数のブロックチェーン間でのトランザクションの実行が容易になります。さらに、アトミック スワップによりカウンターパーティのリスクが排除され、トランザクションは完全に完了するか、まったく完了しません。

アトミックスワップの開発

アトミックスワップのメカニズムは、2012 年に開発者の Sergio Lerner によって初めて説明されました。コミュニティはこのアイデアに興味を持っていましたが、一部の交換プロセスは具体化されませんでした。 1 年後、Tier Nolan はアトミック スワップを実行するためのより信頼性の高い手順を開発しました。しかし、その 4 年後、Decred チームが Decred と Litecoin の間でアトミック スワップを実行し、このメカニズムが初めて実際のブロックチェーン上でテストに成功しました。数日後、ライトコインの創始者チャーリー・リー氏は、LTCとBTCの交換プロセスが正常に再現されたとツイートした。

アトミックスワップの元の設計では、取引の両当事者が、交換する予定の暗号通貨のブロックチェーンのフルバージョンをデバイスにダウンロードする必要がありました。 DecredとLitecoinが最初のアトミックスワップを実行してから1か月後、Komodoプロジェクトの開発者は、特別な支払いチャネルの開設のみを必要とするアトミックスワップの「ライトバージョン」を導入しました。同時に、トランザクション参加者は暗号資産ブロックチェーンをダウンロードしたり、バリデーターがトランザクションを確認するのを待ったりする必要がありません。

2017年、Zcash開発者は、BTCとZEC、またはその逆の交換に使用できるXCAT(クロスチェーン・アトミック・トレード)ツールの実用バージョンをデモしました。数か月後、Bitcoin Cash と Decred の間で最初のアトミック スワップが実行されました。

2019 年に、Qtum プラットフォームはビットコイン メインネット上でアトミック スワップを開始し、Blockstream は Liquid サイドチェーン上でアトミック スワップを開始しました。アトミックスワップをサポートする取引プラットフォームを作成する試みも行われています。 2019 年に、ライトニングとアトミック スワップをサポートするビットコインの分散型取引所 Sparkswap が開始されました。しかし、ユーザー数が少なく流動性が低いため、1 年後にサイトは閉鎖されました。

DeFi産業の発展、分散化に向けたコミュニティの一般的な方向性、そして最大規模のブロックチェーンによるアトミックスワップのサポートが、今後数年間でこの技術の開発に弾みを与える可能性があります。しかし今のところ、アトミックスワップは依然として便利で安全だがまれな取引形式であり、カウンターパーティの必要性を排除し、ユーザーが暗号資産の管理を維持できるようにします。