11章SPV(Simplified Payment Verification)

9章であまり詳しく触れなかったブロックヘッダーのフィールドに、マークルルートがありました。マークルルートの有用性を理解するには、まずマークルツリーとその特性について学ぶ必要があります。本章では、マークルルートとは何かをきちんと学んでいきます。これは、包含証明と呼ばれるものを行いたいためです。

11.1 動機

ディスク容量や帯域幅、計算能力が十分でないデバイスの場合、ブロックチェーン全体を保存、受信、検証する負担は大きいです。本書執筆時点では、ビットコインのブロックチェーン全体は約200 GB†1あり、これは多くのスマートフォンが保存できる容量を超えています。効率的なダウンロードは非常に難しく、CPUに負担がかかります。ブロックチェーン全体をスマートフォンにのせることができない場合、他にどのような手段がとれるでしょうか? すべてのデータがなくても、端末上でビットコインウォレットを作成することは可能でしょうか?

[†1] [訳注]このサイズは日々増加しており、https://www.blockchain.com/ja/charts/blocks-sizeで確認できます。

どのウォレットにも、2つのシナリオがあります。

  1. 誰かに支払う
  2. 誰かから支払いを受ける

ビットコインウォレットで誰かに支払いをする場合、そのビットコインが支払われたことの確認は、受け取る人の責任です。トランザクションが十分に深いブロックに取り込まれたことを受取人が確認したら、その支払いに対する商品やサービスが提供されます。相手にトランザクションを送信したら、後はビットコインと交換する物を受け取るまで待つ以外、することは特にありません。 ...

Get プログラミング・ビットコイン ―ゼロからビットコインをプログラムする方法 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.