ビットコインの「孤児ブロック」とは?

ビットコインの「孤児ブロック」とは?

ビットコインを発明し、未だその正体が分かっていないサトシ・ナカモト。そんなサトシが残した約2年間の文章を、小宮自由氏の解説と共に紹介する連載「サトシ・ナカモトが残した言葉〜ビットコインの歴史をたどる旅」の第7回。

まずサトシのメールの前に、本連載の元になっている書籍『ビットコイン バイブル:サトシナカモトとは何者か?』の著者フィル・シャンパーニュ氏の解説も掲載する。

フィル・シャンパーニュ氏の解説

二人の採掘者がプルーフ・オブ・ワークをほぼ同時に完了したときに「孤児ブロック」が発生する。二人の採掘者が作成した二つのブロックは、内容が異なっている。これは、含まれるビットコイン取引が完全に同一ではないためである。

この場合、二人はどちらも「勝者」としてブロック内の取引手数料を自身のアカウントに送金することになるが、その送金取引の内容もまた異なっている。

しかし、最終的にブロックチェーンに加わるのは片方のブロックのみであり、他方のブロックは「孤児ブロック」になる。この場合、孤児ブロックには含まれるが、ネットワーク全体に承認されたブロックには含まれない取引、というのが発生するが、この分は、いま採掘者たちが作成競争を続けている次のブロックに編入されることになる。

サトシ・ナカモト 2008年11月09日 日曜日 11時17分24秒 -0800

それでは2008年11月9日11時17分24秒のサトシのメールをみていこう。

========================

Re:ビットコイン ピア・ツー・ピア 電子キャッシュ 論文
サトシ・ナカモト 2008年11月09日 日曜日 11時17分24秒 -0800

(注:斜体はサトシ以外の者の質問を指す)

James A. Donaldは書きました:

分かりました。こう仮定します。一つのノードが、ある一群の取引をプルーフ・オブ・ワークに編入するとして、これらの取引の全てが誠実で合法的な送金であるとします。また、別のノードも、それとは異なる別の一群の取引をプルーフ・オブ・ワークに編入し、その取引も全て、誠実で合法的な送金であるとして、この両者のプルーフ・オブ・ワークがほぼ同時に生成されるとしましょう。

このとき何が起きますか?

両者が自分のブロックをそれぞれブロードキャストします。全ノードがそれを受信して保存しますが、作業を始めるのは最初に受信したブロックに対してだけです。

全ノードのきっかり半数が片方を、残りの半数がもう片方を最初に受信したと仮定します。少し時間が経つと、全ての取引が隅々まで伝達を終え、全ノードにフルセットの取引が保存されます。どちらのノードも、自分たちに欠けている取引を追加しようと作業します。

次のプルーフ・オブ・ワークが発見されると、発見したそのノードがどちらの直前ブロックを作業していたとしても構いませんが、そのノードのブランチが長さで上回り、均衡が破れます。新たなブロックには反対側の直前までの取引全てが含まれるため、どちらのノードが長さで上回ったケースでも、そのブランチには全ての取引が含まれることになります *1 

枝分かれが二回連続起こるような稀なケースが発生したとしても、二つめの枝分かれのときに結局は両サイドにフルセットの取引が含まれることになります。

ブロックへの編入に一サイクル、ないし、数サイクルの待ち時間が余計に発生するのは問題にはなりません。

サトシ・ナカモト
暗号学メーリングリスト

========================

【訳注】

*1 孤児ブロックを以下の図に示した。C’、D’が孤児ブロックであり、最長チェーンに含まれるC、D、Eは言うならば正当なブロックである。

引用:An in Depth Look at Orphan Blocks/Christopher Sanders

孤児ブロックが含まれるチェーンを採用していたノードも、「最長チェーンを正当とする」ルールに従い、Eが生成された時点で即座にそちらのチェーンに切り替え、以降はそのチェーンにブロックを追加する作業を行う。孤児ブロックに入っていたトランザクション(取引データ)は最長チェーンのブロックにいずれ組み込まれる。例えばC’ に入っていたトランザクションは、C以降のどこかのブロックで取り込まれる。

解説

前回の解説で最長チェーンについて触れました。今回は「最長チェーン以外のチェーン」であるチェーンに含まれるブロック、孤児ブロックの解説です。

孤児ブロックは単純に全てのノードに無視されます。以降使われることはありません。そのようなコンセンサス(=合意)によって全てのノードは稼働しています。これによって、ノード間でチェーンが分立することが長期的に起こり得ないのです。

ビットコインにおいて、どのチェーンを正当とみなすかについてのルールは極めて単純です。最も長いチェーンが正当とみなされます。この点もビットコインのイノベーティブな点の一つと考えられます。

小宮自由

→この連載の他の記事を読む

(image:iStock/ Photoplotnikov・SIphotography

Source: https://www.neweconomy.jp/features/sato/194305