ビットコインミニスケッチ

フルビットコインクライアントを実行することは、ネットワークの持続可能な分散化の重要なコンポーネントであり、ネットワークの健全な採用の有用な表現です。ただし、フルノードの操作は、メインストリームユーザーがビットコインにアクセスするための便利なプロセスではありません。.

フルノードはビットコインブロックチェーン全体と同期する必要があります(〜200 GB)そして、ネットワークを介してブロードキャストされたトランザクションを中継するために複数のピアに接続します。標準のフルノードは8つのピアに接続し、トランザクションリレーはフルノードの管理に必要な帯域幅の大部分を占めます。.

ビットコインミニスケッチ

グレゴリーマクスウェル、主要なビットコイン開発者および共同創設者 ブロックストリーム, トランザクションリレーが大まかに占めると推定 87パーセント フルノード帯域幅要件の.

さらに、ノード全体の同期が完了するまでに数日かかる場合があり、ビットコインの基本的な技術知識が必要になります。フルノードを実行するというしばしば面倒なプロセスは、採用に対する実質的な障壁であり、多くの主流ユーザーがフルクライアントを起動することを大幅に妨げます。.

いくつかの開発により、次のような完全なクライアントの起動と運用のプロセスが改善されました。 Casaのハードウェアノード とピエールロチャードの ノードランチャー —これにはLNとの互換性が含まれます ザップ そして ジュール. ただし、フルノードオペレーターの負担を軽減することは賢明な長期ベンチャーであり、MiniSketchを含むビットコインのいくつかの改善の焦点です.

MiniSketch ネットワーク内のノード間のmempoolセットの「セット調整」のために提案された方法です, 先陣を切った Peter Wuille、Gregory Maxwell、Gleb Naumenko.

ノード間の同期

MiniSketchに飛び込む前に、ノード間の同期プロセスと設定された調整の背景に対処することが重要です。.

セット調整は、データセットがデータセット間の差異を解決して(つまり、調整して)正確なコピーに収束するコンピュータサイエンスのプロセスです。マクスウェルはプロセスを ピース 同じ連絡先の多くを共有する2人の間で電話の連絡先リストを同期するのと同じようにビットコインマガジンによって.

「リスト全体を送信することはできますが、ハガキには収まらず、ほとんどの連絡先をすでに知っているため、いずれにしてもかなり無駄になります。実際、連絡先のセット全体をに送信することは可能です。実際の違いが何であるかを事前に知らなくても、リスト間の違いのサイズと同じだけの情報を送信することによって、それらを送信します。」

異なるコンピューターのデータセット間の差異を調整するには、2つのセット間の特定の不一致を相互参照し、同一のコピーに収束するための帯域幅が必要です。セット調整を改善するためのアルゴリズムは、データセット間の差異を調整するためのより効率的なパスを提供し、帯域幅要件を削減します.

ビットコインのMiniSketchは、 PinSketch BCHベースの安全なスケッチアルゴリズム。 BCHは「Bose-Chaudhuri-Hocquenghem’は、コンピュータプログラミングの周期的なエラー訂正に使用され、衛星通信などのアプリケーションに展開されるコードです。.

ビットコインでは、MiniSketchはPinSketchを実装してネットワーク内のトランザクションの分散を最適化し、フルクライアントが帯域幅要件を減らしてより多くのピアに接続できるようにします.

ビットコインで調整されるデータセットは、ピアノードによって受信および中継されるトランザクションです。ほとんどのノードには同じトランザクションが多数含まれていますが、受信した順序によって不一致が発生することがあります。これにより、mempool間のデータの同期が遅れ、帯域幅の使用量が増加します。.

ビットコインネットワークのノードは、拡散と呼ばれるネットワークゴシッププロトコルを介してトランザクションをブロードキャストします。目標は、ネットワークを介してトランザクションを大多数のノードに非常に迅速に中継することです。これにより、最近同期されたブロックと比較して、mempool内のトランザクションの順序に不整合が生じます。.

ミニスケッチ

MiniSketchは、ノードmempoolがデータセット全体ではなく、必要なデータのみを同期して渡すためのより効率的なメカニズムを提供することにより、セット調整プロセスを強化するように設計されています。.

ノードは、トランザクションがmempoolからマイナーによってピックアップされるときに、ネットワークが同期するためにどのノードがどのトランザクションデータを受信する必要があるかを識別するためにかなりの帯域幅を浪費します。 MiniSketchを使用すると、ノードはに基づくアルゴリズムを介してデータを相互参照できます。 のみ 一方のセットで発生するが、もう一方のセットでは発生しないデータ.

通常、ノード間のデータ交換は、mempoolデータセット全体の参照に重点を置いています。 MiniSketchは、「セットチェックサム」を介してデータセット間の違いをスケッチすることにより、トランザクションmempoolセットのはるかにコンパクトな同期(調整)を可能にします。

セットチェックサムには所定の容量があり、2つのデータセット間の対称差をスケッチするために使用できます。たとえば、アリスとボブがノードトランザクションセットを調整する場合は、MiniSketchを使用して、データセット内の要素のスケッチを計算できます。.

当事者の1人、たとえばボブは、2つのデータセット間の対称差を測定します。これは、さまざまなタイプのデータ合計間の差の正確な数を見つけることに似ています。ただし、ボブはアリスのスケッチのさまざまなデータを自分のスケッチから復元しようとしているだけです。次に、彼は違いをアリスに送信します。両方とも、トランザクションセットをはるかに効率的に調整できます。.

による MiniSketch Github ReadMeファイル:

「これは、差のサイズ(アリスが持っているがボブが持っていない要素とボブが持っているがアリスが持っていない要素)のサイズが、アリスが送信したスケッチの容量を超えない場合に常に成功します。興味深いのは、これが実際のセットサイズに関係なく機能することです。違いだけが重要です。」

Bitcoin Magazineの記事のMaxwellによると、MiniSketchは、ノードトランザクションリレーのオーバーヘッドを40分の1に削減できる可能性があります。これは、シミュレーションが示していることです。.

MiniSketchの2つの主な利点は次のとおりです。

  1. ノード帯域幅の削減.
  2. より多くのピアに接続するノードの機能.

MiniSketchを使用した帯域幅の削減は明らかであり、でより効率的なブロック伝搬に使用できます。 低帯域幅の衛星リンク.

ノードあたりの帯域幅の負担が軽減されると、ノードは通常よりも多くのピア(8ではなく16など)に接続できるようになります。Githubリポジトリで引用されているMiniSketchの他の利点とアプリケーションは、 dc-nets 「暗号化マルチパーティ匿名通信」、および「ファジー」生体認証データからの暗号化キーの抽出を支援するため.

特に、MiniSketchは、ノードが最新のコア仕様にアップグレードすることを要求するビットコインのコンセンサスの一部ではないため、ノードオペレーターにとってもオプションです。代わりに、オペレーターは他のユーザーとプロトコルを実行して帯域幅効率を高めることを選択できます.

MiniSketchの正式なBIPはまだ利用できません。将来の提案は、「」と呼ばれる別のプロトコルと統合される可能性があります。反転可能なブルームルックアップテーブル’はブロックの伝播を強化します。 MiniSketchのオプションの存在により、レガシー暗号通貨に対する他の正式なコンセンサス変更提案でバックログされる可能性も低くなります.

MiniSketchの全体的な利点は、ノード全体を操作する際の障壁を低くし、ノードをより効率的にするため、ノードオペレーターにとって魅力的です。より完全なビットコインクライアントは、より堅牢な分散化とより健全なネットワークを意味します.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me