送信ブロック
SubmitBlock は、ビットコイン ノードがネットワーク上で新しいブロックをブロードキャストできるようにする、ビットコイン コア クライアントの RPC (リモート プロシージャ コール) コマンドです。これは、ブロックチェーン内の新しいブロックを伝播するためのいくつかの方法の 1 つであり、マイナーが確認してチェーンのローカル コピーに追加するために必要です。
マイニング ノードは有効なブロックを見つけると、SubmitBlock を使用して、接続されているすべてのピアにそのブロックをブロードキャストします。このメッセージを受信すると、各ピアはブロックを検証し、別の SubmitBlock メッセージを送信してブロックをさらに伝播しようとします。このプロセスは、すべてのノードが新しく見つかったブロックを受信して検証するまで続き、その時点で次のブロックの検索を開始できます。
新しいブロックをブロードキャストする複数の方法を持つ目的は、多くのユーザーがトランザクションを行っている期間など、大量のトラフィックによって 1 つの方法が失敗したり輻輳が発生したりした場合に、代わりに他の方法を使用できるようにすることです。多様性があると、単一のソースに依存しないため、攻撃者がデータ伝送チャネルを操作したりハイジャックしたりすることがより困難になるため、Sybil や二重支出の試みなどの潜在的な攻撃に対する回復力も高まります。
SubmitBlock は、FIBER (Fast Internet Bitcoin Relay Engine) などの他の伝播テクノロジと併用すると最適に機能します。これらの方法を組み合わせることで、ノードはシステムの弱点を利用しようとする悪意のある攻撃者に対して安全性を確保しながら、新しく見つかったブロックを迅速に通知できます。