ビットコインが時間のもっとも基本的なルールを破ったように見える出来事が、11月7日に起きた。新たに採掘されたブロックのタイムスタンプが、それ以前のブロックよりも早い時刻を示した。
この発見により、ビットコインのブロックチェーンにバグがあるのではという、異例の疑問が浮上した。
ギャラクシー・デジタルのアレックス・ソーン調査責任者はこの事象に注目し、ビットコインの内部時計が現実の時間と必ずしも一致しない理由を説明した。
2つの連続したブロックにその経緯が現れた。
- ブロック974,987: 21時22分24秒(UTC)にタイムスタンプが記録された。
- ブロック974,988: この後に採掘されたが、タイムスタンプは21時19分02秒(UTC)だった。
ビットコインの 公開ブロックチェーンエクスプローラー によると、新しいブロックは3分以上も古い時刻となっていた。
なぜビットコインの時計は戻ることがあるのか
その理由はビットコインのマイニングの仕組みにある。
マイナーは各ブロックに付与するタイムスタンプを自ら決めることができる。妥当なブロックを探す過程で、試すべき組み合わせを増やすためタイムスタンプを調整できる。
ビットコインは、次の2つのルールのもとでこの柔軟性を認めている。
- タイムスタンプは直前11ブロックの中央値より後でなければならない。
- タイムスタンプが検証ノードの時計より2時間以上先行してはならない。
重要なのは、タイムスタンプが直前のブロックより遅い必要まではないという点だ。
ソーン氏の分析によれば、ビットコインの全ブロックの約3%は親ブロックより古いタイムスタンプを持つ。10ブロックに1つは、同氏のノードが受信した時刻を1分以上先行するタイムスタンプを持つ。
この現象でビットコインの取引は巻き戻せるのか
その答えは否である。ビットコインはブロックの並び順を、タイムスタンプではなく暗号学的なリンクで決定する。
各ブロックには直前のブロックの固有ハッシュ値が含まれ、どちらが先かを厳格に示す。
本物のブロックチェーン再編には、より多くのマイニング作業量を持つ競合チェーンが必要だ。タイムスタンプの操作だけでは実現できない。
もっとも、イベント発生時刻を証明するためブロックチェーン記録に依拠する場合、この違いは重要となる。
ビットコインのブロック高は順序を示す。タイムスタンプはおおよその時刻を示すに過ぎない。
サトシ・ナカモトは、オリジナルのホワイトペーパーでビットコインを「タイムスタンプサーバー」と表現した。18年を経て、11月7日の事象は、この仕組みが厳密な時計ではなく暗号学的証明に依拠する理由を示した。











