2013年チェーン分岐|フルノードが持つ検証権と取引所の盲点
取引所のアプリを開いて、残高画面を眺めたことがあるだろう。あの数字が「自分のビットコイン」だと感じている人は多い。だが、少し立ち止まって考えてほしい。その数字はブロックチェーン上に存在しない。取引所のデータベースに書かれた数字を、あなたは「信頼」しているだけだ。
2013年3月12日、その信頼がどれほど脆いものかを証明する出来事が起きた。
チェーンが2本に割れた6時間
その日、Bitcoinのバージョン0.8が0.7と互換性のないブロックを生成し、チェーンが一時的に2本に分岐した。原因はデータベースエンジンの差異だった。LevelDBとBerkeleyDBが同じブロックを異なる方法で処理したことで、コード上に小さなひずみが生まれた。
攻撃でも詐欺でもない。プロトコルの更新過程で避けられなかった技術的な分岐だった。約6時間にわたって、ネットワーク上では「どちらが正しいビットコインの歴史か」を決める静かな戦いが続いた。
フルノードが持つリアルタイムの視点
この異変を誰よりも早く察知したのは、自分のフルノードを稼働させていた人々だった。フルノードはすべてのブロックをリアルタイムで受信し、自分自身でルールを照合する。2本のチェーンが競合していることを、彼らはブロックの到着ログから即座に読み取れた。
「何かがおかしい。しばらく送金を止めよう」という判断を、彼らは自分の目で確認した事実に基づいて下せた。取引所の発表を待つ必要も、開発者のアナウンスを信じる必要もなかった。自分のノードが返す生のデータだけが、判断の根拠だった。
取引所ユーザーが置かれていた場所
一方、取引所にビットコインを預けていたユーザーには、検証する手段が一切なかった。見えているのは取引所の残高画面だけ。分岐が起きているかどうか、自分のBTCがどちらのチェーン上にあるのか、取引所はどちらを採用するのか——何一つ自分では確認できない状況に置かれていた。
6時間後、Bitcoin Coreの開発者たちが緊急対応し、マイナーに旧バージョンへの切り戻しを促すことでチェーンは統一された。結果的に大きな被害は出なかった。しかしそれは、「正しい判断をしてくれる誰かがいたから」に過ぎない。もし対応が遅れ、取引所がどちらのチェーンを選ぶかが割れていたら、ユーザーの保有するBTCの扱いも割れていた可能性がある。
「Don’t trust, verify」が問うもの
ビットコインの根本原則は「信頼するな、検証せよ(Don’t trust, verify)」だ。
自分のフルノードを持てば、2100万枚という発行上限が守られているかどうか、自分の送金履歴が正しくブロックに刻まれているかどうか、誰かが無効なコインを送ろうとしていないかどうか——これらすべてを、他の誰にも依存せずに自分で確認できる。ビットコインの価値の根拠は、この検証可能性にある。
取引所にBTCを置いている限り、この検証権は存在しない。残高画面の数字が正しいかどうかを確認する手段は、文字通り一つもない。「信頼するな」というプロトコルの原則が、取引所ユーザーには構造的に届かない。
ノードが守るのは今日だけではない
フルノードの役割は、送金の処理だけではない。プロトコルのルールを、自分自身が施行することだ。
2013年のような分岐が再び起きたとき、あるいは将来的に重大なプロトコル変更の議論が起きたとき、ノードを持つ人は自分の意思でどのルールに従うかを選べる。歴史的に見ても、2017年のブロックサイズ戦争では、ノード運営者たちが大規模ブロックへの移行を封じた。取引所に預けたBTCは、そうした選択権もまた取引所に委ねている。
セルフカストディとは、秘密鍵を手元に置くだけの話ではない。自分のノードでネットワークの現実を直接見る権利を持つことでもある。取引所の残高画面には映らない情報が、チェーンの上を今日も流れている。
2013年3月の出来事は11年以上前の話だが、ビットコインを「信頼するのではなく、検証する」という原則は今も変わっていない。それを選べるかどうかは、あなたが鍵とノードを持つかどうかにかかっている。
※本記事は一般的な情報提供を目的としており、投資助言ではありません。
この記事が参考になったら、セルフカストディの具体的な始め方もチェックしてみてください。
LINE登録でセルフカストディの始め方を学ぶ 正しい手順を無料でお届けします