分散型マルチブロックチェーンエクスチェンジを1日で作成する方法



この記事は、 karma.redが主催するハッカソンの第2ステージへの参加報告です。 ハッカソンの詳細については、 特別ページをご覧ください

記事でなくコード、 プロジェクトリポジトリを読みたい人のために。

ビデオ愛好家も気分を害することはありません:) このビデオでは、記事の簡単な内容を聞いて、交換がどのように実装されるかをステップごとに確認し、そのライブワークを確認できます。


ウラジオストクの別のハッカソン参加者による記事 (ウラジク出身の3人とウランウデ出身の1人について、主催者はオンラインステージの結果に基づいてモスクワでのフライトと宿泊費を支払いました)。

記事の写真はVadim Frantsevによるもので、写真は私のものです。プロジェクトを守るためのホイップアップされたプレゼンテーションからです:)それでは、手続きは終わりです。

割り当て後、私は、分散型の取引所または仲裁裁判所のいずれかを選択しました。 裁判所での任務では、評判の高いシステムを作成し、シミュレーションをプログラムする必要があります。 それはあまりにも単純で、最初の段階での私のプロジェクト少し似ているでしょう。

分散型交換の作業は、ブロックチェーン間での原子交換(スワップ)に基づいており、長らく理解したかったのですが、すべての手が届きませんでした。 研究に1時間を費やしました(理解できなかった場合、試用版を取り上げる必要があります)。 いくつかのブロックチェーンの交換の実装に関するドキュメントを読んだ後、私はすべてが簡単であることに気付き、交換を始めました。

真の分散型取引所とは:





簡単にするために、交換は交換の通貨を介してのみ交換できます。 この場合、エクスチェンジはエクスチェンジブロックチェーンでアトミックエクスチェンジを開始できます。

なぜなら イーサリアム以外に、他のスマートコンタクトブロックチェーンは現在ありません。プロトタイピング用に選択しました。 証券取引所では、ガスの価格とその制限により、その使用は考えにくいようです。 この点で、EOSにはいくつかの希望があります。

原子交換


詳細なドキュメントはこちらで読むことができます 。 非常に簡単な改定:


すべてをまとめる





私の実装


この実装をアトミックスワップコントラクトの基礎として採用しました: github.com/AltCoinExchange/ethatomicswap 。 この実装の特徴は、新しいアトミック交換では新しいコントラクトを展開する必要がないことです。 アトミック交換の特定のレジスターのように、すべてがそこで発生します。

この契約では、交換契約から交換を開始するときにそれらを示すために、開始者と2番目の交換参加者を手動で指定する機能を追加しました。 最終版はこちらです。

以下は、交換エンジンに実装されています。


インターフェイスを作成しないように、 smartz.ioプラットフォームのコンストラクターでコントラクトをラップし、これらのデザイナーを介してコントラクトを展開し、コントラクトを管理するためのインターフェイスをすばやく取得しました。

エーテルのビットコインへの交換を実証するために、もう時間がないので、テストネットワークrinkebyからテストネットワークkovanの空気へのエーテルの交換を示しました。



いくつかの写真とリンク


私が後援した契約のコントロールパネルへのリンク(ブラウザーからイーサリアムブロックチェーンにアクセスするには、メタマスクブラウザー拡張機能をインストールする必要があります)。 必要に応じて、展開することができます


拡張機能をインストールしたくない人のための写真:

レジストリコントロールパネル


Exchangeコントロールパネル

Source: https://habr.com/ru/post/J359134/


All Articles