ブロックチェーントランザクションの検証はどのように行われますか?

各トランザクション検証ノードは、送信者が受信者に転送するのに十分な量のウォレットを持っているかどうかをどのようにして知るようになりますか?ブロックチェーントランザクションはどのように検証されますか?

回答

各ノードはトランザクションの履歴全体(ブロックチェーン)を保存します。ノードは新しいトランザクションについて聞くと、一連のチェックを実行して、トランザクションが有効であることを確認します。

したがって、誰かがtxを送信すると、そのソフトウェアは未使用の出力の秘密鍵(「ビットコイン」)を使用してトランザクションに暗号で署名します。この署名は、未使用の出力の所有権を証明し、コインの移動を許可します。

したがって、ノードは新しいトランザクションについて聞くと、署名が有効であることを確認します。署名が有効でない場合、トランザクションは無視されます。

自分が所有しているよりも多くのコインを使おうとすると、ノードが保持しているブロックチェーンレコードによると、署名は無効になります。真正性を偽造することはできません。コインを所有して有効なトランザクションを作成できるかどうかのどちらかです。

この場合の「トランザクション検証」は、txが中継されるため、各ノードでのみ発生することに注意してください。ネットワークを介して。これは、マイナーが次のブロックにトランザクションを含めるときに発生する「トランザクション確認」とは異なります。 「検証」後、txは、ブロックで確認されるまで、各ノードのメモリプール(mempool)に格納されます。

コメント

  • "自分が所有しているよりも多くのコインを使おうとすると、署名はノードによって保持されているブロックチェーンレコードによると無効です。"-この部分はどのように正確に機能しますか?これは単純に聞こえるかもしれませんが、残高からビットコインの取引金額を差し引いて、それが0以上かどうかを確認するだけですか?ここで何が署名されていますか?
  • @Strawberry Bitcoinは、'未使用のトランザクション出力'(UTXO)システムを使用しています。アカウントシステムではありません。したがって、内部で発生している'残高から金額を差し引く'はありません。むしろ、ウォレットはそれが制御するUTXOを選択し、それを新しいトランザクションの入力として使用します(そして、UTXOの所有権を証明するためにトランザクションに暗号で署名します)。他のすべてのフルノードは、現在のすべてのUTXOの記録を保持するため、コンセンサスルールに違反した場合、txは拒否されます。 1BTC UTXOから2BTCを使おうとすると、そのようなトランザクションは本質的に薄い空気から新しいビットコインをマイニングするため、拒否されます

回答

これは、マイナーがブロックチェーン上のトランザクションを検証する方法に関するガイドです。シンプルで簡単な5分間の読み取りで、7つのステップでプロセスを実行できます。

https://medium.com/@Mala44/how-a-miner-adds-transactions-to-the-blockchain-in-seven-steps-856053271476

コメント

  • 詳細を追加してください。リンクのみの回答はここでは受け入れられません。または、回答を削除して質問の下に追加してください。コメントとして。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です