しばらく暗号通貨を使用してきた多くの人は、Gox や Bitfinex のハッキングによるあなたの損失を含め、取引所で何らかの損失を被ったことがあります。歴史上、泥棒がこれほど簡単に莫大な賞金を持ち去ったことはありません。

暗号トークンはサイバー空間にのみ存在し、一度盗まれると簡単に取り戻すことができないという点で独特であり(ただし、DFINITY チェーン上の今後のブロックチェーン神経システムによって何らかの対処が行われる可能性があります)、他のハッカーや内部関係者による盗難に対して非常に脆弱になる可能性があります。 。

それは、トークンや資金を仲介者に送金する必要がない真の分散型取引所を作成できない限りです。

このような完全に分散化され改ざん防止された取引所は、取引手数料も大幅に削減するはずであり、これは業界の継続的な成熟にとって重要なステップですが、これまでのところ、この目標は達成されていません。

ただし、この記事では、暗号化における最新のイノベーションがどのようにして今日のアイデアを可能にしたのかについて説明します。

この記事では、Solidity で書かれたスマート コントラクトと HTML/Js で書かれた Dapp ユーザー インターフェイス (Truffle を使用して作成できる種類) から、(Docker イメージとしてパッケージ化されたすぐに使用できる) 分散型トークン交換を作成する方法を説明します。 ) Cloud9 IDE や Truffle などのツールを含む開発環境は、Instant-dapp-ide を確認してください)。

暗号化を適用するには、いくつかの特別な付随ソフトウェア クライアントも作成する必要がありますが、サイドチェーン、ステート チャネル、特別なコンセンサス センター、またはその他のまだ存在していないものや、それ自体に重大な欠陥があるものは必要ありません。

現在すでに入手可能なもの以外は何も必要ありません。

したがって、BTC/ETH および他の通貨ペアを安全かつ安価に取引できるようにする、イーサリアム (または最終的には DFINITY) 上で暗号通貨間の取引所を作成する方法について説明します。

ステップ 1: スマート コントラクト ロジック

イーサリアム スマート コントラクトは、ブロックチェーン コンピューター上で 2 つの連続するオークション トランザクション (GDAX、Bitfinex、Kraken、Poloniex など) のロジックを実行する手段をすでに提供しています。

新しい注文が送信され、取引が実行されたと思われる後、数分以内に市場が再編成される可能性があるため、今日のネットワークの速度はユーザー エクスペリエンスの点で実際的な課題を提示していますが、解決策はすでに始まっています。

しきい値リレーはファイナリティを数秒にまで短縮します (現在、イーサリアムと比較して 50 倍以上高速です)。Casper チームも解決策に取り組んでいますので、おそらくしばらく時間がかかるでしょう。

本当の課題は、スマート コントラクトで作成したトークンを他のチェーン上の貴重なネイティブ トークンにトラストレス接続できないことです。たとえば、トラストレスな方法でビットコインに接続されたイーサリアム スマート コントラクトで XBT トークンを作成し、ネイティブ イーサリアムと交換することはできません。

高レベルの技術メモ: 興味のある方のために、Solidity での 2 つの連続するオークション スタイルの交換コードの例を示します (これは実際、言語が初めて利用可能になったときに作成された、私の最初の Solidity 契約でした)。

急速に集中した取引での価格変化を観察する裁定取引者による HFT の「狙撃」の問題に対処する必要性など、考慮する必要がある設計上の考慮事項がいくつかあります。単価バッチ オークションなど、他の取引所モデルの使用を検討する十分な理由もあります。これらの考慮事項は、時間が許せば再発行する価値があります。

ステップ 2: しきい値署名クラック

話を簡単にするため、今後はイーサリアムがホストする取引所でビットコインをホストする問題についてのみ説明しますが、実際にはこのテクノロジーは、ECDSA 署名を使用した承認されたトランザクションのチェーンからのネイティブ暗号トークンをホストする場合にも同様に適用できます。

私たちの要件は、多数の独立した当事者が標準ビットコイン アドレスを集合的に管理し、ユーザーがそこにビットコインを送信できるようにすることですが、ビットコインはこれらの当事者間の一定のしきい値比率の合意があった場合にのみ転送できます。

たとえば、私たちの取引所に、暗号通貨業界内の有名で独立した個人や企業から選ばれた 50 人の「保護者」がいるとします。

ユーザーがイーサリアム取引所でホストされている XBT トークンと引き換えにビットコインを送信できるビットコイン アドレスを管理し、そのアドレスから XBT トークンを引き換えるユーザーにビットコインを配布できなければなりません。

従来、暗号化では、そのような機能は「しきい値署名」を使用して作成されていました。

高レベルの技術メモ: ビットコイン ネットワークは、最大 3 人の参加者に対してローカルの「マルチシグ」トランザクションのみを中継します。スクリプト ハッシュごとに支払うことで負担はある程度軽減されますが、それでも参加者は 15 人に制限されます。

ここで、せっかちな人のために線を引くことができます。ビットコインとイーサリアムのトランザクションは標準の ECDSA 署名を使用して署名されており、どちらもしきい値署名をネイティブにサポートしていませんが、一部の革新的な研究者は最近、ビットコインとイーサリアムで使用されている標準の ECDSA 署名を悪用する方法を実証しました。下位互換性のあるしきい値署名を生成できます。

つまり、保護者は、UTXO のロックを解除するための標準 ECDSA 署名としてビットコイン ネットワークによって受け入れられるアドレスのしきい値署名を作成できます。

その方法を説明した文書はここにあります。

• https://eprint.iacr.org/2016/013.pdf

• https://www.cs.princeton.edu/~stevenag/threshold_sigs.pdf

明確にしておきますが、これらのしきい値署名スキームは、DFINITY しきい値リレーで使用する最適化された BLS システムと同じではありません。このシステムは、数百の署名者の出力を結合して、ミリ秒単位で固有の決定論的なしきい値署名を作成できます。

実際、このシステムは非常に非効率であるため、ガーディアンの署名出力を結合するのに時間がかかり、CPU が熱くなりますが、それは問題ではありません。

計算コストをカバーするために少額の出金手数料を請求し、イーサリアムベースの金融取引所からの出金の処理に時間がかかることを要求することは全く問題ありません。結局のところ、多くの人は利便性のために資金を安全に交換できることを嬉しく思います。

このテクノロジーの適用により、一定数のガーディアンの間で信頼を分散することが可能になり、ガーディアンが XBT 配布の見返りにビットコインを受け取ることと、XBT トークンを引き換えるときにビットコインを配布することが可能になり、トラストレスな方法で動作し、ビットコインを安全にペグすることができます。 XBTトークン。

もちろん、一部の保護者が署名キーを紛失したり、比喩的なバスに轢かれたりする可能性があることを考慮する必要がありますが、しきい値署名を使用することでこの問題を解決できます。新しい署名を作成するには、50 人の保護者のうち 35 人だけの出力を要求するだけで済みます。

ステップ 3: ガーディアンの報酬

消滅したり共謀したりしない信頼できる個人や企業を関与させ、促進したいため、保護者向けのインセンティブ プログラムが必要です。

最も簡単な方法は、取引所によるすべての出金から少額の取引手数料を支払うことです。

ステップ 4: ガバナンス

分散型金融取引には、後見人を選出する必要があるため、独自の管理システムが必要であり、採用されたスマートコントラクトのソフトウェアアップデートなどが必要です。したがって、スイッチを DAO (分散型自律組織) として設計します。

これらのシステムが適時に利用可能になれば、DFINITY ブロックチェーン神経システム技術から、より高度なガバナンス神経システムが得られる可能性もあります (DFINITY チームは、BNS がこのように再利用されることを非常に期待しています)。

ガバナンスシステム内には、取引に請求されるわずかな手数料を比例配分する「投票権」を持つトークン所有者が存在します。スマートコントラクトでは定期的に「美人コンテスト」が開催され、潜在的な後見人がポジションに応募でき、最終的には有権者によって割り当てられる。

高レベルの技術メモ: 攻撃者はすべての投票トークンを購入し、ガーディアンを自分の操り人形に置き換えて (通常は DAO 51% 攻撃)、預けられた資金を盗もうとする可能性があります。

このため、投票後、契約は一定の遅延後にのみガーディアンを終了する必要があり、これにより、そのような攻撃が発生した場合に仮想通貨所有者に安全に資金を引き出すのに十分な時間を与えることができます。これは、ソフトウェア更新の導入にも当てはまります。

ステップ 5: しきい値暗号化の設定

ガーディアンのセットが設定されたら、しきい値署名スキームを設定する必要があります。これは、完了時に 50 人の保護者のそれぞれが、ECDSA の単一の認証として使用できるしきい値署名を集合的に生成するために使用される秘密の「鍵共有」を確実に持つようにするために、ある種のプロセスまたはプロトコルを実行する必要があることを意味します。 Simple ECDSAサイン。ネットワークは入金アドレスからビットコインを配布します。

前述したように、引用されたしきい値署名スキームは実際には、ビットコインおよびイーサリアムのネットワークで現在使用されている通常の ECDSA 署名と下位互換性のある署名を作成するハッキングです。これは、DFINITY しきい値リレーで使用される BLS しきい値署名スキームよりもセットアップが難しいことを意味します。

最も簡単なアプローチは、Z-Cash ネットワークが最近行ったように、安全なセレモニーで信頼できるセットアップを実行し、各ガーディアンに取引所のスマート コントラクトに出力に満足しているという信号を送信させることです。

トラステッド セットアップ プロセスは、Z-Cash で使用されるものより実装がはるかに簡単ですが、特にガーディアンをローテーションする必要がある場合に繰り返すのが簡単であるため、多くの人がトラストレス分散セットアップの実装を望んでいます。これは 2 つの部分で構成されます。

1 つ目は、通常のキーをガーディアン間で配布することを含み、分散キー生成プロトコルに含まれるメッセージを集約して共有するログとして IPFS を適用することによって非常に簡単に実行できます。

2 番目の部分 (ハッキングで使用される準同型暗号化技術によって必要になる) には、Paillier キー共有の配布が含まれます。スイッチをすぐに稼働させたい場合は、この最後の部分で実装コストを慎重に分析する必要があります。

ステップ 6: Guardian クライアント ソフトウェア

私たちは、取引所のスマートコントラクトを監視し、ユーザーが XBT を引き換えたいときにビットコイン取引に署名するために定期的に協力する特別な「ガーディアン クライアント ソフトウェア」を作成する必要がありました。

ステップ7: クラウドファンディング

クラウドファンディングは研究開発のための資金を集めるために行われるべきであり、流動性を誘導するために資金を最初にそこに移動させる(おそらく一定期間独占的にそこに固定される)というインセンティブが存在する可能性があります。

ガバナンス システムから始めて、トランザクションを完了するために開発者に資金を割り当てることを許可する可能性があることに注意してください。

取引が開始されると、取引量は急速に増加することが予想されます。分散型取引にかかる基本コストは、企業が運営する集中型取引に比べて桁違いに低く、これは取引手数料に反映されます。

さらに、ここで説明した分散システムはハッカーや攻撃に対する耐性も高く、そのような取引所に大量の暗号通貨を安全に預けて取引できることが期待できます。

誰かがこれを作ったのは本当に残念です!

最後の注意: 一見すると、分散型金融取引所は仮想通貨間の取引を可能にしているように見えます。短期的にはこれは真実かもしれない。しかし、興味がある人は、パロアルトの String Labs に関連する研究者によって現在開発されている PHI システムをチェックしてみてください。

これは商業銀行システムの仕組みを模倣し、ローン担保によって保護される分散型の「暗号通貨」を作成します。

イーサリアムとDFINITYチェーンにトークンを取得したら(できれば2年以内に)、トークンの価値が同様の法定通貨の価値と等しい分散型取引所にトークンを保管できるようになります。

気になるICコンテンツ

テクノロジーの進歩 | 世界的なイベント

IC Binance チャネルを収集してフォローする

最新情報を常に入手してください