マスタリング・ビットコイン 第3版 ―オープンブロックチェーンとそのプログラミング
by Andreas M. Antonopoulos, David A. Harding, 安土 茂亨, 鳩貝 淳一郎, 長尾 高弘
11章ブロックチェーン
ブロックチェーンは、承認されたすべてのビットコイントランザクションの履歴情報です。フルノードはどの鍵とスクリプトがどのビットコインを制御しているかを独立して判断できますが、それはフルノードがブロックチェーンを持っているからです。この章では、ブロックチェーンの構造を説明します。また、フルノードが(および場合によっては軽量クライアントも)ブロックチェーンのあらゆる部分を簡単に検証できるようにするために、暗号学的コミットメントやその他の巧妙なトリックをどのように使っているかも説明します。
ブロックチェーンのデータ構造は、トランザクションを集めたブロックを順序正しく並べたリストで、個々の要素は直前の要素を参照するリンクを持っています。ブロックチェーンはフラットファイルという形でも、単純なデータベースという形でも格納できます。ブロックチェーンを図にするときには、最初のブロックが一番下にあり、その上にブロックが積み上げられていくイメージがよく使われます。そのような視覚的イメージから、最初のブロックからの距離を表すために「高さ」、最後に追加されたブロックを表すために「トップ」または「先端」(tip)という言葉が使われます。
ブロックチェーン内のブロックは、SHA256暗号学的ハッシュアルゴリズムでブロックヘッダーを処理して生成されるハッシュで識別されます。個々のブロックは、ブロックヘッダーの「直前のブロックハッシュ(Previous Block Hash)」フィールドを介して、直前のブロック(親ブロックと呼ばれます)にもコミットします。個々のブロックを親と結び付けるハッシュの連なりは、ジェネシスブロック(genesis block)と呼ばれる最初のブロックまで遡れる1本のチェーンを形成しています。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access