5. ネットワーク
ネットワークを実行する手順は次のとおりです。
新しいトランザクションはすべてのノードにブロードキャストされます。
各ノードは、新しいトランザクションをブロックに収集します。
各ノードは、そのブロックの困難なプルーフ オブ ワークを見つけようとします。
ノードがプルーフ オブ ワークを見つけると、そのブロックをすべてのノードにブロードキャストします。
ノードは、ブロック内のすべてのトランザクションが有効で、まだ使用されていない場合にのみ、ブロックを受け入れます。
その場合、ノードは最初に受信したブロックを処理しますが、もう一方のブランチは長くなる場合に備えて保存します。
ブロックを前のハッシュとして使用します。
ノードは、受け入れたブロックのハッシュを前のハッシュとして使用して、チェーン内の次のブロックの作成に取り組むことで、ブロックを受け入れたことを示します。
ノードは常に最長のチェーンを正しいものと見なし、チェーンの拡張に取り組み続けます。2 つのノードが同時に次のブロックの異なるバージョンをブロードキャストした場合、一部のノードはどちらかを最初に受信する可能性があります。
その場合、最初に受信したブランチで作業しますが、他のブランチは長くなる場合に備えて保存します。
新しいトランザクション ブロードキャストは、必ずしもすべてのノードに到達する必要はありません。多くのノードに到達すれば、すぐにブロックに入ります。
ブロック ブロードキャストは、メッセージの欠落にも耐えます。ノードがブロックを受信しない場合、次のブロックを受信したときにブロックを要求し、ブロックを見逃したことに気付きます。