ビットコインブロックの構造

ビットコインのブロックの構造のまとめ

 ブロック構造

サイズ フィールド名 説明
4バイト Block Size この次のフィールドからブロックの最後までのデータサイズ(バイト単位)
80バイト Block Header nonceなどいくつかのフィールドがこのヘッダフィールドに含まれる
1-9バイト Transaction Counter ブロックに含まれるトランザクション
可変 Transactions ブロックに記録されるトランザクションのリスト

 ブロックヘッダ(Block Header)

サイズ フィールド名 説明
4バイト Version ソフトウェア・プロトコルバージョン情報
32バイト Previous Block Hash 親ブロックのハッシュ値
32バイト Merkle Root ブロックの全トランザクションに対するマークルツリーのルートハッシュ
4バイト TimeStamp ブロックの生成時刻
4バイト Difficulty Target ブロック生成時のproof of workのdifficulty
4バイト Nonce proof of workで用いるカウンタ

 ブロックに関してメモ

  • ブロック識別子となるブロックハッシュは、「ブロック"ヘッダ"」に対しSHA256アルゴリズムを用いて2回ハッシュ化した値

  • ブロックには、自分自身のブロックハッシュをもっていない

  • もう一つの識別としては、一番最初に作られたブロックを0として順番にふられた「ブロック高」