ホワイトペーパー

EOSテクニカルホワイトペーパー日本語訳9(完)

更新日:

 本稿について

本稿では、EOS.IOのTechnical White Paper v2のうち「Inter Blockchain Communication」と「Conclusion」の日本語訳を掲載します。

原文はこちらになります。

スポンサードサーチ

ブロックチェーン間のコミュニケーション

EOS.IOソフトウェアは、ブロックチェーン間のコミュニケーションを容易にするように設計されています。これは、アクション存在証明とアクション順序証明を簡単に生成できるようにすることで達成されます。アクションの受け渡しに即して設計されたアプリケーションアーキテクチャと結びついたこれらの証明は、開発者に高度な抽象化を提供できるようにすることで、アプリケーション開発者からブロックチェーン間通信と証明検証の詳細情報を秘匿することを可能にします。

ライトクライアント検証(LCV)のためのマークル証明

他のブロックチェーンとの統合は、クライアントが全てのトランザクションを処理する必要がないのであれば、もっと簡単です。結局のところ、取引所は取引所内外への移動だけを気にしていればよいのです。また、取引所のチェーンが自身のブロック生成者を全面的に信頼する必要があるよりも、預金の軽量マークル証明を利用できれば理想的です。少なくともチェーンのブロック生成者は、他のブロックチェーンと同期する際、オーバーヘッドを可能な限り最小限に抑えたいところでしょう。

LCVの目標は、相対的に軽量なデータセットを追跡している人が検証しうる相対的に軽量な存在証明を生成できるようにすることです。この場合、目標は、特定のトランザクションが特定のブロックに含まれたことと、そのブロックが特定のブロックチェーンの検証済みの履歴に含まれることを証明することとなります。

Bitcoinは、全ノードがブロックヘッダの完全な履歴にアクセスできると仮定してトランザクションの検証をサポートしており、1年あたり4MBのブロックヘッダになります。1秒あたり10トランザクションで、有効な証明には約512byte必要です。これは、10分のブロック間隔があるブロックチェーンではうまくいきますが、0.5秒のブロック間隔のブロックチェーンではもう"軽量"とは言えません。

EOS.IOソフトウェアは、トランザクションが含まれた時点以降で何らかの不可逆なブロックヘッダを有する人にとって軽量な証明を可能にします。図示したハッシュリンク構造を利用すると、1024byte未満の証明で、あらゆるトランザクションの存在を証明することができます。

ブロックチェーン内のブロックにブロックIDと、信頼できる不可逆なブロックのヘッダが与えられれば、そのブロックがブロックチェーンに含まれることを証明できます。この証明は、パスにceil(log2(N))のダイジェストを取ります。ここで、Nはブロックチェーン内のブロック数です。SHA256のダイジェスト認証方式を考慮すると、1億のブロックがあるブロックチェーン中の任意のブロックの存在を864byteで証明することができます。

これらの証明を可能にする適切なハッシュリンクでブロックを生成することに関連して増加するオーバーヘッドはほとんどなく、そのためこの方法でブロックを生成しない理由がありません。

他のチェーン上の証明を検証する段階になると、実行しうる様々な時間、スペース、帯域幅の最適化があります。全ブロックヘッダ(420MB/年)の追跡は、証明のサイズを小さく保つでしょう。直近のヘッダのみを追跡することは、最小限度の長期保存と証明のサイズとのトレードオフを提示できます。あるいは、ブロックチェーンは過去の証明の中間ハッシュを記憶するレイジーな評価手法を用いることもできます。新規の証明は、既知のスパース木へのリンクを含むことのみしなくてはなりません。用いられる正しいアプローチは、マークル証明が参照するトランザクションを含む外来のブロックの割合に依拠する必要があるでしょう。

一定の相互連結性のあとは、単純に一方のチェーンに他方のチェーンのブロック履歴全体を含めてもらい、ともに証明の必要性を排除する方がより効率的になります。パフォーマンス上の理由で、チェーン間証明の頻度は最小化するのが理想的です。

チェーン間コミュニケーションのレイテンシ

別の外部ブロックチェーンとコミュニケーションする場合、ブロック生成者は、有効なインプットとしてトランザクションを受け取る前に、そのトランザクションがもう一方のブロックチェーンで不可逆的に確認されたことが100%確実になるまで待たなければなりません。EOS.IOソフトウェアベースのブロックチェーンと0.5秒ブロックのDPOS(筆者注:Delegated Proof of Stake, 委任プルーフオブステーク)、並びにビザンチン・フォールトトレランスの不可逆性の追加を利用すると、これは約0.5秒程度かかります。もしブロック生成者が不可逆性を待たない場合、後に無効にされる預金を入れる取引所のようになり、ブロックチェーンのコンセンサスの有効性に影響するでしょう。EOS.IOソフトウェアは、迅速な不可逆性を提供するためにDPOSとaBFT(筆者注:asynchronous Byzantine Fault Tolerance, 非同期ビザンチン・フォールトトレラント性)を利用します。

完全性の証明

外部ブロックチェーンからマークル証明を利用する場合、処理された全トランザクションが有効であるかを識別することと、スキップまたは除外されたトランザクションがないかを識別することとの間には大きな違いがあります。直近の全てのトランザクションが識別されていることを証明するのは不可能ですが、トランザクションの履歴に差分が生じていないことを証明するのは可能です。EOS.IOソフトウェアは、各アカウントに配信される各アクションにシーケンス番号を割り当てることでこれを手助けします。ユーザはシーケンス番号を使って特定のアカウントに向けた全てのアクションが処理されたことを証明したり、順番通りに処理されたことを証明したりすることができます。

SegWit

SegWitのコンセプトは、トランザクションがブロックチェーンに変更できないように包含されたあとはトランザクション署名は関係しないというものです。一度変更できなくなると、署名データを取り除きつつ依然として他の誰もが現在のステートを引き出すことができます。署名はほとんどのトランザクションの大部分を占めるので、SegWitはディスク使用量と同期時間の大幅節約と同義です。

これと同じコンセプトが、ブロックチェーン間のコミュニケーションで用いられるマークル証明に適用できます。一度証明が受け入れられブロックチェーンに不可逆的に記録されると、その証明が使用する2KBのSHA256ハッシュはもう適切なブロックチェーンステートを引き出すのに必要なくなります。ブロックチェーン間のコミュニケーションの場合、この節約量は通常の署名の節約量の32倍になります。

別のSegWitの例としては、Steemブログ投稿が挙げられるでしょう。このモデルのもと、投稿はSHA256(ブログコンテンツ)だけを含み、そのブログコンテンツはSegWitデータ内にあります。ブロック生成者はコンテンツが存在し与えられたハッシュがあることを検証しますが、ブロックチェーンのログから現在のステートを復元するためにブログコンテンツを保存する必要はありません。これにより、前述のコンテンツを永久に保存する必要なく、コンテンツが過去に知られているということを証明できるようになります。

結論

EOS.IOソフトウェアは実証されたコンセプトとベストプラクティスのある経験から設計され、ブロックチェーンテクノロジに根本的な進歩をもたらします。EOS.IOソフトウェアは、Dappsを簡単に展開し統治できるグローバルにスケール可能なブロックチェーン社会への全体論的なブループリントの一部です。

前稿へ戻る

最初に戻る

免責

邦訳には誤りがある場合がございます。予めご承知おき下さい。

確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。

-ホワイトペーパー
-, , , , , , , , , ,

Copyright© 暗号通貨界隈のメモ書きなど。 , 2019 All Rights Reserved Powered by STINGER.

%d人のブロガーが「いいね」をつけました。