ETH&BTCのクロスチェーン、WBTCの仕組み解説

WBTCの仕組みについて 分散型アプリケーション(DApps)

BitcoinとEthereumを繋げる架け橋として、2018年の10月、BitGo, Kyber Network, Republic Protocolの三者が主要メンバーとして活動する Wrapped Tokens プロジェクトが公表されました。

 

同時に、プロジェクト最初のトークンとして WBTC (wrapped bitcoin) のイーサリアムへの導入も発表されています。

WBTC Wrapped Bitcoin an ERC20 token backed 1:1 with Bitcoin
Wrapped Bitcoin ( WBTC ) delivers the power of an ERC20 token! The first ERC20 token backed 1:1 with Bitcoin

通常、異なるブロックチェーンを活用するビットコイン (BTC) とイーサリアム (ETH) をまたがって価値交換することはできません。

しかし2019年の1月から本格的に、WBTCを使ってBitcoinとEthereumのクロスチェーン取引が始まることになります。その仕組みを解説していきます。

 

ホワイトペーパーも翻訳しました。時間のある方はぜひ御覧ください。
・日本語訳
https://files.kyber.network/JPWrappedTokens.pdf
・原文
https://www.wbtc.network/assets/wrapped-tokens-whitepaper.pdf

イーサリアム上にあらゆる資産を持ち込む Wrapped Tokens プロジェクト

Wrapped Token とは、ビットコインを始めとしたあらゆる資産をイーサリアムに持ち込むことで、流動性が豊富に確保された金融アプリケーションをイーサリアム上で実現しようとするプロジェクトのことです。

 

例えば BTC をイーサリアムに持ち込めば、イーサリアム上のDEX内でBTC建トレードを持ち込むことも可能です。また金融アプリケーションでBTCをスマートコントラクトに活用することで、イーサリアム内の流動性を高め、アプリケーションをさらに利便性の高いものにできます。

 

そのためには、ビットコイン等の資産をトークン化 (ERC20) し、イーサリアム上で自由に取引できるようにカスタマイズしなければなりません。イーサリアム上に持ち込みたい資産をERC20トークン化する方法が、ラッピングです。

 

今後、金融アプリケーションを次々とイーサリアムに載せて透明性の高い新たな金融を実現するため、ラッピングする方法を業界全体で統一して資産のトークン化を促進するプロジェクトが Wrapped Tokens プロジェクトです。

wrapped tokens

ちなみに、本来は特に暗号通貨に限ったわけではなく「資産性」のあるものは全てラッピングしてイーサリアム上のトークンにすることが可能ですし、将来的にはそちらも視野に入れられています。

 

Wrapped Tokens は、ブロックチェーン業界の有力チームで構成されるコミュニティ主導のプロジェクトです。イーサリアム上の多様なチームで運営することで Wrapped Tokens の統一規格を維持し、WBTCの採用を広げて流動性を活性化することが目的です。

WBTC参加プロジェクト

もちろん、どんなプロジェクトも自身のプラットフォームに WBTC を導入し、サービス内の流動性を高めることができます。

 

WBTC (Wrapped Bitcoin Token) のプレイヤーと購入方法

今回はWBTCに絞って解説しますが、本来Wrapped Tokens プロジェクトは、ビットコインに限らずあらゆる資産をイーサリアムに持ち込むコミュニティ主導のプロジェクトです。

同じ方法で、今後も「多様な資産のイーサリアム上のトークン化」を進める予定です。

 

WBTC のフレームワークを簡単に言えば、「イーサリアムに載せたいBTCをカストディアンが預かり、その預かった量に応じたWBTCをイーサリアム上に放出する」というものです。

 

カストディアンが BTC を預かれば、それをERC20にラッピングした WBTC がイーサリアム上に生み出されますし、カストディアンが BTC を返せば、イーサリアム上の WBTC は消え失せます。常に1:1が保たれる仕組みにより、 WBTC のBTCペッグを実現します。

WBTCの仕組み

WBTC を実現するプレイヤー

WBTC のフレームワークを構成するプレイヤーは三種類です。

 

  • カストディアン
  • マーチャント
  • ユーザー

WBTCのプレイヤー

カストディアン

カストディアンは、イーサリアム上でトークン化したい BTC を保管し、それに応じた  WBTC を鋳造する機関です。WBTCを鋳造できるのはカストディアンが唯一の存在です。

WBTCの場合は BitGo がこの役割を担い、BTCを厳重に保管の上、量に応じたWBTCトークンを鋳造します (1対1)。後に他のチームもカストディアンに加わることが可能です。

 

保管した資産と鋳造したラッピング・トークンの 1対1 割合を常にキープすることで、BTC とWBTC の価格のペッグを実現します。厳重に保管する必要があるため、カストディアンは管轄のある当局が付与するライセンス保有が必須条件です。

 

マーチャント

マーチャントは、カストディアンとユーザーの仲介役を果たします。カストディアンが鋳造した WBTC は直接ユーザーに渡ることはなく、まずマーチャントが受け取り、その後にユーザーはマーチャントへ交換をリクエストします。

WBTCの場合、最初のマーチャントは Kyber Network と Republic Protocol です。後にマーチャントとして他のチームが加わることも可能です。

 

例えば WBTC の場合、ユーザーがBTCからWBTCに変えたい場合やWBTCをBTCに戻したい場合も、まずマーチャントが仲介してユーザーとの交換に応じます。

 

ユーザー

Wrapped Tokens を活用したい個人です。WBTC はERC20トークンであるため、あらゆるイーサリアム上のDAppsで活用できます。

 

「BTCをイーサリアム上で使いたい」と考えるユーザーは、マーチャントとBTCをWBTCに交換したり、戻したい場合は WBTCをBTCへ償還したりします。

 

WBTCの購入方法と、BTCへの償還方法

以下では 「WBTCを手に入れる方法」と「WBTCからBTCへ償還する方法」を解説します。

WBTCの購入方法

ユーザーがWBTCを購入する方法は2つあり、1つ目が「マーチャントにBTCを渡し、WBTCを受け取る」方法です。

BTCとWBTCの交換

この方法を取る場合、ユーザーは以下のステップを踏み WBTC を獲得します。

 

  1. ユーザーはマーチャントに対し、WBTCの発行をリクエスト
  2. マーチャントは KYC&AML 手続きをし、ユーザー情報を識別
  3. ユーザーとマーチャントの間で BTC/WBTC のアトミックスワップを行うか、もしくはマーチャントを信頼してBTCを預け、その後WBTCを受け取る

 

アトミックスワップとは、クロスチェーン取引の一形態であり、第三者を信頼すること無く二者間で交換可能な方法です (BTCとETH, BTCとLTCなど)。なおかつ部分約定せず、安全な取引です。

しかしトレードオフとして、その方法は複雑でいくつかのステップが必要となります。

【図解】アトミックスワップのすべて。その仕組みとメリットと問題点
アトミックスワップとは、第三者を介さずトラストレスにコインの交換を行うことができる技術です。従来であれば、どこ…

 

ユーザーはカストディアンと直接関与する余地はありません。

 

要するに「KYC/AML手続きを伴う、マーチャントとの WBTC/BTC 交換」ですが、最後のステップは効率性からおそらく「マーチャントを信頼した交換方法」を選択するユーザーが多数になるかと思います。アトミックスワップは現状よいユーザー体験ではなく、なおかつマーチャントの悪意を想定する理由も乏しいからです。

WBTCのマーチャントである Kyber Networkと Republic Protocol は、ユーザーがアトミックスワップできるプラットフォームを提供する予定です。

 

2つ目はさらに簡単で、「DEX (分散型取引所) で、直接WBTCを売買する」方法です。

例えば現在では様々な Wrapped Tokens へ参加するプロジェクトが存在しており、彼らが提供するDEXならば、通常のERC20トークンを購入するのと何ら変わらず、直接にWBTCを売買できます。

 

マーチャントである Kyber Network (KyberSwap) や Republic Protocol でももちろん、IDEXや0x系統のDDEXやRadarRelayでもWBTCが購入できる予定です。

 

こういったプラットフォームで購入 / 売却する場合、特に KYC/AML 手続きは求められません。

マーチャントからのWBTCの購入やBTCへの償還はKYC手続きが求められますが、時には「KYC等により当局の規制下に置くことは、ブロックチェーンの分散性の哲学に反する」と批判されることがあります。

しかしWBTCの狙いの一つは機関投資家のイーサリアム/DAppsへの流入であるため、逆にこのステップは重要で不可欠なものとなります。

 

WBTCからBTCへの償還方法

保有しているWBTCからBTCに償還する場合も同じです。BTCに戻す場合も、マーチャントと交換し、ユーザーが直接カストディアンと関与する余地はありません。

WBTCをBTCへ戻す

  1. ユーザーはマーチャントに対し、BTCの償還をリクエスト
  2. マーチャントは KYC&AML 手続きをし、ユーザー情報を識別
  3. ユーザーとマーチャントの間で WBTC/BTC のアトミックスワップを行うか、もしくはマーチャントを信頼してWBTCを預け、その後BTCを受け取る

 

WBTC の鋳造とバーンの仕組み

ユーザーがWBTCを購入する方法とBTCへ償還する方法を説明しましたが、以下からはカストディアンとマーチャントの間で行われる WBTC の鋳造とバーンについて解説します。

 

厳密なBTC価値の裏付けのため、カストディアンが保管するBTCと、市場に回るWBTCは1:1の同数を確保しなければなりません。そのため、WBTCの鋳造とバーンの工夫が必要です。

バーンとは、トークンを燃やす (秘密鍵のないアドレスに送信することで永遠に取り出せないようにして、供給量を減少させる) こと。トークン価値の維持のためによく用いられます。

 

WBTCの鋳造 (BTCの預け入れ)

WBTCの鋳造

BTCとの同価値を維持するため、WBTCは無から生まれることはありません。以下の流れを減ることになります。

 

  1. マーチャントはカストディアンに対し「マーチャントのEthereum上のアドレスにWBTCを鋳造する許可」を与える、鋳造開始トランザクションを送信
  2. マーチャントはカストディアンにBTCを送信
  3. カストディアンはBTC入金の6承認を待つ
  4. カストディアンはWBTCコントラクトにトランザクションを送り、マーチャントアドレスにWBTCを鋳造する

 

WBTCは、BTCの受信を確認したカストディアンしか鋳造できません。しかし独自の判断で行えるものでなく、手順1にあるようなマーチャントからの開始命令 (Initiate Mint) が必要です。鋳造に二者を巻き込み、監視しあう体制を組み込むためです。

 

WBTCのバーン (BTCの償還)

WBTCのバーン

WBTCとBTCの価格ペッグを維持するため、カストディアンの保管するBTCが返却されれば、WBTCもそれに応じてバーンされなければなりません。

 

場合によっては、マーチャントはユーザーからの「WBTCからBTCへの償還」リクエストに応えるため、カストディアンからBTCを引き出しておく必要があります。

 

  1. マーチャントは WBTC をバーンするバーントランザクションを作成
  2. カストディアンはETH上の25承認を待つ
  3. カストディアンは、マーチャントのアドレスへBTCを送信

 

マーチャントのWBTCアドレスから、バーンした分量が引かれます。

 

ユーザーからの償還に応えるのはマーチャントであるため、マーチャントのみがWBTCをバーンできます。そのため、マーチャントはカストディアンのBTC送金を信頼します。

 

鋳造にもバーンにも、必ずカストディアンとマーチャントの二者が関わります。互いに監視できる体制を確保するためです。

コメント