Kyber Networkは、どのようにBitcoinをEthereumに持ち込むのか?【Bringing Bitcoin to Ethereum】

Kyber NetworkのLoi Luu氏 Kyber Network

最もシンプルなイーサリアム上のDEXとして注目を集めている Kyber Netowrk CEOのLoi Luu氏が、2018年4月6日にMedium上に “Bringing Bitcoin to Ethereum”というブログを投稿しました。

Bringing Bitcoin to Ethereum – Kyber Network
Over the last few months we have been discussing how to bring Bitcoin and other currencies to the Ethereum blockchain in the most…

彼らのロードマップでは、2019年初期にBitcoinとのクロスチェーン取引をサポートすることが予定されています。

 

2017年に公開されたWhite paper上では、クロスチェーン取引を実現する具体的な手法は保留されていましたが、ここに来て彼らが描くソリューションが現れてきたというわけです。

 

今回のLoi Luu氏の投稿は、ビットコインとイーサリアムのクロスチェーン取引について、DEXの最先端を走るKyber Networkの趣向が分かる業界全体にとって重要なものとなっています。

 

個人的に許可を得たので、まず以下でブログの全文を翻訳して掲載します

※改行や強調は適宜こちらで行いました。

Ethereum上にBitcoinを持ち込むことについて

ここ数ヶ月間、私たちはBitcoinと他の通貨を、最もトラストレスかつユーザーフレンドリーな方法でEthereumブロックチェーン上に持ち込む方法を議論してきました。

 

そのアイディアは、Bitcoinを表すERC20トークンを創ることです。簡潔にBTCTと呼びましょう。

ユーザーは保有しているBitcoinから新しいBTCTを作成し、後でBTCTをBitcoinに戻すことができます。

 

BTCTが可能にする応用は、分散型取引や決済、高度な金融商品まで様々です。ユーザーのBitcoinとERC20トークンの取引をサポートすることは、取引ボリュームの増加をもたらすため、Kyber Networkにとって重要な優先事項の一つです。

 

この投稿では、私たちが考え続けているこの課題に対していくつか可能性のあるソリューションを述べていきます。

信頼できる管理者(Trusted Custodian)

これが最も技術的でなく、おそらく最も分かりやすいソリューションです。

 

このアプローチでは、信頼できるサードパーティとして、許可を受けた管理者が存在します。

 

この管理者はユーザーがBitcoinを送金できるBitcoinアドレスを提供し、対応するBTCTトークンをユーザーに返送します。

ユーザーがBTCTをBitcoinに戻したいと考えた時、管理者にリクエストを送り、管理者は順番に直接ユーザーアドレスにBitcoinを送金します。

管理者はそれぞれのデポジットと出金に対して、オペレーション費用としていくらか手数料を徴収します。

Kyber のクロスチェーンソリューションのTrusted Custodian

管理者を信頼する必要はありますが、このソリューションの大きな利点は、管理者のウォレットに同量のBitcoinが保存されているかどうか、ユーザーが常に確認できることです。

 

もし管理者が不正を働けば、ユーザーは管理者への法的措置のため、完全に透明な公開記録を活用することができます。

 

これは、監査が入った場合にユーザーが監査の決定を信頼しなければならず、単独で法的措置を取れないUSDTにおけるソリューションとは異なっています。加えてUSDTシステムの場合、監査はリアルタイムで行えず、管理者がレポートを作成するのを待たなければなりません。

スマートコントラクトを用いた、トラストレスな管理者(Trustless Custodian)

上述のソリューションでは、実際のところは上手く機能すると思われますが、信頼できるサードパーティとしての中央集権的な主体が必要です。

 

これは分権(decentralized)とトラストレス(trustless)というアイディアと衝突しますし、いくつかのリスクも提示します。

例えば、管理者が法を破りユーザー資金を持ち逃げする可能性もあり、非効率な運営によって当事者との通信が中断したり、遅延することも考えられます。

 

この項目で私たちは、スマートコントラクトを活用してBTCTの発行と償還を完全にトラストレスに行う新しいソリューションを発表します。

 

そのソリューションは、Ethereumベースのスマートコントラクト上で作動するBitcoinの軽量クライアントであるBTCRelayを利用するものです。

 

BTCRelayは、EthereumのスマートコントラクトがBitcoinのトランザクションを検証することを可能にするため、Ethereumチェーン上の主体が、Bitcoinネットワーク上の決済が本当に起こったかどうか確認できるようになります。

 

このソリューションでは、BTCTの発行と償還を円滑にするため、初期資金を準備するトラストレスなサードパーティがいます。

 

この初期資金はユーザーが自身のBitcoinをデポジットする前に必要とされる保証金となります。つまり何か悪いことが起こった場合、ユーザーは払い戻し金としてその保証金を受け取ることができます。

 

単純化するための一例として、Kyber Networkがこのサードパーティとしての役割を果たし、BitcoinTokenコントラクトにETHやERC20トークンを保証金として提供できます。Kyberは、ユーザーがBTCTトークンを創るためにデポジットできるBitcoinアドレスを提供します。

 

ユーザーのデポジットが確認されると、KyberはBitcoinTokenコントラクトに対応する量のBTCTトークンを創ります。

もしKyberがBTCTを創らなかった場合、ユーザーはデポジットのマークル証明(markle proof)を、BitcoinTokenスマートコントラクト内に作成することができます。スマートコントラクトは、ユーザーが確かにKyberにBitcoinをデポジットしたことを検証するためにBTCRelayと通信します。

 

不正行為が検出された場合、BitcoinTokenコントラクトはKyberの保証金の一部を没収し、それをユーザーの支払いに利用します。他のユーザーもBitcoinを取り戻すため、BTCTの償還を開始できます。

 

管理者が保持するBitcoinの量を保証金が常に上回るため、ユーザーはBitcoinを取り戻せることが保証されます。

 

上記のシナリオを下図に示します。

BTCRelayを使ったクロスチェーン

 

次に、ユーザーが自身のBTCTをBitcoinに戻したい場合を考えてみましょう。

彼らに必要なことは、払い戻しを受けたいBitcoinアドレスと共に”burn function”をBitcoinTokenコントラクトへ呼び出すことです。

 

Kyberは、burned eventをきっかけとして、対応するBitcoinの量をユーザーのBitcoinアドレスに送金します。

 

ユーザーがKyberからの送金を確認できなかった場合、BitcoinTokenスマートコントラクトを呼び出し(私たちはこの機能の乱用を防止するため、少額のデポジットを要求するかもしれません)、Kyberに抗議することができます。

 

Kyberが正当な決済証明を提供できなかった場合(もしKyberが決済していないなら不可能です)、Kyberの保証金は一部没収され、ユーザーは後に売却しBitcoinにできるよう、元値以上のETHやERC20トークンを受け取ることになります。

Kyberの決済失敗を確認した他のユーザーも、BTCTの償還を要求できます。

 

このアプローチは、信頼できる管理者(Trusted Custodian)のアプローチよりも、いくつかの大きな特長を提供します。

 

  • Trustless(トラストレス)。ユーザーはKyber Networkや他のサードパーティを信頼する必要がありません。もし何かが起これば、彼らは証拠を提出し、Kyberはペナルティを受けることになります。罰金額は不正を報告したユーザーのもとへ渡り、ユーザーはもとのbitcoinの価値以上のETHやERC20トークンを保証金から受け取ります。償還ボーナス分を含めても、保証金は全てのユーザーのBitcoin償還要求に答えられる量があることに注目してください。
  • Cost effective(高い費用対効果)。ことが上手く運んだ場合、ユーザーは多くのデータ提出を必要とせず、実際にはBTCTの発行に際してEthereum上で何もする必要がありません。BTCTをBTCに戻す場合も、Ethereumに一つのトランザクションを送るのみです。
  • Publicly verifiable(公的な検証)。全てが透明に、ユーザーに公開されています。ユーザーはBTCTを発行させる前に、保管された保証金を確認することができます。

 

しかしながら、このソリューションは導入が進むにつれ、多大な資金を必要とするという欠点があります。

 

ETHやERC20トークンの保証金の合計は、少なくともBTCTの総発行額と同等でなければならず、加えてボラティリティを見込んだ安全のための余剰金(10%-20%)が必要です。例えば、$XのBTCT発行に、私たちは$1.2Xの初期資金が必要となります。

 

もう一つの主要な欠点は、トラストレスな管理者(Trustless Custodian)が担保として数十億ドルを保有することの潜在的なセキュリティリスクです。

加えて、完全に分散的(decentralize)ではないことは、主体が集権的組織のように支配されうることを意味します。

EVM対応コインによりBTCRelayを排除する

上記のソリューションでは、BTCRelayを維持するためには開発とメンテナンスの努力が必要であることが強調されており、またEthereum ClassicやLitecoin, Zcashなど他のリレーも加える際には非常に高価になってしまいます。

さらに、BitcoinトランザクションをEthereum上で扱うことはいくつかの複雑な事態をもたらす可能性もあります。

 

この項目では、BTCRelayを含まないもう1つのソリューションを提案し、プロセスをより簡素化し、大きく効果的にします。

 

これを実現するため、私たちはEVMベースのスマートコントラクトをサポートする他のチェーンを必要とします。

幸いにもEVM対応のRootstockは稼働予定で、連合するサイドチェーンを利用することで、既にBitcoinをBitcoinブロックチェーンからRootstock、RootstockからBitcoinブロックチェーンへと処理しています。

このソリューションも、Ethereum Classicや他のEthereumベースの通貨であっても上手く機能します。

 

この項目では、以下でBitcoinについて言及する際、特別な記述がない限りはRootstock上のBitcoinについて議論します。

 

前述のソリューションと同様に、管理者はETHかERC20トークン、もしくは両方でEthereumチェーン上に保証金を差し出します。

加えて、現在保有している量の5%前後のBitcoinを、安全のための余剰保証金として差し出さなければなりません。このRootstock上の保証金はBitcoinで支払われ、Rootstockチェーン上で不正を働いた管理者への罰金として機能します。

 

ユーザーがX BitcoinをRootstock上のDepositContractにデポジットした後、管理者は「X Bitcoinの入金がイーサリアム上のアドレスYに、ブロックZで確認されました」というメッセージに署名し、それをRootstock上のDepositContractに提出します。

 

管理者は次に、イーサリアム上のBitcoinTokenコントラクト上に同数量のBTCTトークンを発行します。

管理者は、決済に失敗して抗議を受けない限り、BitcoinをRootstock上のDepositContractから動かす権利が与えられます。

 

管理者がメッセージに署名しなかった場合、ユーザーはRootstock上で抗議し、デポジットしたBitcoinを取り戻せます。管理者の余剰保証金からいくらかのボーナスも伴います。

 

管理者がメッセージに署名したにも関わらずBTCTトークンをEthereum上で発行しなかった場合、 ユーザーは署名されたメッセージを使い、自身でEthereum上でBTCTトークンを発行でき、義務を履行しない管理者にペナルティを与えることができます。

 

ユーザーがEthereum上でBTCTトークンの償還を求める場合、BitcoinTokenコントラクトでburn functionを呼び出し、Bitcoinを受け取るためにRootstockアドレスを提供します。

管理者は「X BitcoinをRootstock上のアドレスYへ償還する」というデータに署名し、Ethereum上のBitcoinTokenコントラクトへメッセージを提出します。

そして償還を終えるため、X BitcoinをRootstock上のユーザーアドレスに返金します。

 

発行プロセスと同じく、管理者はメッセージに署名しなかったり、RootstockへBitcoinを返金しなければペナルティを受けることになります。

 

利点

  1. 高価で維持が面倒な、BTCRelayや他のRelayを必要としない。
  2. Ethereum上でBitcoinトランザクションを処理しないため、非常にシンプルに実行できる

欠点

  1. EVM対応のスマートコントラクトが必要(従ってBitcoinをサポートするためRootstockが必要)

結論&コラボレーションの呼びかけ

長所と短所を踏まえ、私たちが従うアプローチは、上記の提案の全てをミックスしたものとなりそうです。

 

私たちは異なる暗号通貨をEthereumに持ち込むため、トラストレスでユーザーに完全に順応したプラットフォームを作りたいと考えました。

 

具体的には、デジタル資産の管理者ライセンスを持ったパートナーと、保証金のための資金を提供するため、暗号通貨ファンドとの協業を計画しています。

私たちはこれこそ、ユーザーのセキュリティを犠牲にしたり、規制当局にとって複雑とすることなく長期的な運営ができるベストなアプローチだと信じています。

 

最後に重要なことですが、私たちはこの第一歩がKyber Networkだけでなく、全体のエコシステムに利益をもたらすものだと考えています。

 

従って、私たちと共にソリューションを創り、ブロックチェーンの採用を促進することに貢献してくれるコミュニティを強く求めています。

もしあなたがこの取組に関心があるのなら、hello@kyber.networkへEメールを送り、私たちにコンタクトを取ってください。

この投稿から読み取れたこと

以上で翻訳は終わりです。

 

Kyber Networkとしては、上で挙げた3つのソリューション

 

  • 信頼できる管理者(Trusted Custodian)
  • スマートコントラクトを用いた、トラストレスな管理者(Trustless Custodian)
  • BTCRelayを使わず、EVM対応のRootstockを使う

 

これらを上手く混在させた独自の方法で、BTCとETH, ERC20トークンのクロスチェーン取引を実現させようとしているようです。

TrustedなCustodianを、Trustlessな環境で運営させる

まず、一つ目の「信頼できる管理者(Trusted Custodian)」を単体で採用したとすると、期待されるDEXとしては最悪のソリューションであることは間違いありません。

公開記録からの訴訟は可能ですが、そもそも従来型の取引所でも訴訟は可能です。単に「公開記録がある」という点では、「非中央集権的」な取引とは言えません。

 

従って、トラストレスな管理者(Trustless Custodian)の方法を取ることはほぼ間違いないと思われます。

 

にも関わらず、Loi氏が

Given the pros and cons, the approach that we follow is likely to be a mixture of all the above proposals.

長所と短所を考慮し、私たちが採用するアプローチは上記提案の全てを混在させたものとなりそうです。

と言い、なおかつ現在にライセンスを持つパートナーとの協業を計画していることからは、

 

「トラストレスな管理者ですら、資産管理ライセンスを持つべきだ」

 

と考えていることが伺えます。

 

つまり、「トラストレスな構造を担保した上で、なおかつ信頼できる管理者を置く」という二重の保護を意図しているということです。

 

Kyber NetworkはKYCプロセスを重視するなど、DEXとしても規制当局とクリーンな関係を保つ趣向が強いため、二重にユーザー資産の安全性を確保することを考えているはずです。

管理者はKyber Networkが担う

上記で挙げたどのソリューションであっても、ある主体が一旦は多額の保証金を提示しなければなりません。その管理者はKyber Networkが担うことでほぼ間違いないでしょう。

 

  • 現在のKyber Networkの全体的な管理を行っているのも、Kyber Network自身です。主に、上場トークンやリザーブのリストや廃止に責任を持ちます。

 

その上で安全性を担保するため、

  • 多額の保証金の準備
  • 資産管理ライセンス保持者と協業

を進め、今から2019のクロスチェーン取引に備えています。

BTCのデポジットが必要だが、スマコンによる担保があるならトラストレスと考えて良いのでは?

個人的には、クロスチェーン取引のために管理主体にBTCをデポジットすることは、完全なトラストレスとは言えないと考えています。自分の資産を、他人のコントラクトアドレスに送金するからです。

 

この点、アトミックスワップのようなオフチェーンソリューションを採用すれば、より完全なトラストレスが実現できるはずです。「Kyber Networkはデポジット方式でなく、アトミックスワップのアイディアを取り入れるべきだ」という声があるとしても、まっとうな批判であると思います。

 

しかし、トラストレスの定義は一つに収まりません。そもそも「信頼すべき主体がなくとも、システムを完全に信頼できる」というのが暗号通貨における”トラストレス”です。

 

従って「管理者不在」だけでなく、

 

  • 管理者に不正を働くインセンティブが皆無であること
  • 不正が起こっても、償還がコントラクトで保証されていること

 

なども、暗号通貨の性質をうまく利用したトラストレスなシステムだと私は思います。

 

その点で言えば、チェーン上で

 

  • Kyberが出した保証金が、総BTC預金額を常に上回っていること
  • 不正の際のBTC回収がスマコンにより担保されていること

 

の2つが誰の目にも明らかなのであれば、それは「Kyber Network はトラストレスなクロスチェーン取引を実現した」と評価して問題ないだろうと思います。

柔軟に考えることで、今後の業界のソリューションにも幅ができるはずですし、”トラストレスなシステム”のよい前例になってほしいところです。

 

保証金を必要としないオフチェーン取引も魅力ですが、Kyber Networkはオンチェーン志向を一貫させているため、採用される見込みはほぼありません。

 

2019のクロスチェーン取引こそ、Kyber Networkの取引ボリュームに最も大きなインパクトを与える仕事です。業界を引っ張る彼らが、実際にどんなソリューションで稼働するのかを非常に楽しみにしています。

コメント