
チェーンが自分を書き換えるとき:Ravencoin のコンセンサス不具合と、承認一つの本当の値打ち
暗号資産の事故のほとんどは鍵の話です。誰かがシードフレーズをフィッシングで盗まれる、コントラクトにリエントランシーの穴がある、取引所がホットウォレットを失う。台帳そのものは正直なままで、ある特定のコインが持ち主の意思に反して手を離れるだけです。
八月の Ravencoin の一件は別の、そしてもっと稀な種類でした。誰の鍵も触られていません。ばらばらになったのは台帳そのものでした。
何が起きたか
2026 年 8 月 7 日 15:44 UTC、ブロック高 4,487,776 で、本来ありえないはずのブロックがネットワークに受理されました。その後さらに続きます。調査された 2,089 ブロックの区間のうち、96 個が無効でした。この欠陥が公に実証されたのは 8 月 11 日、最初に悪用されたブロックから四日後のこと。つまりチェーンは、誰かが発表するまでの一週間近く、偽のブロックを静かに産み続けていたわけです。
RVN はおよそ 20% 下落し、0.0027 ドル前後になりました。Upbit と Bitget は入出金を停止。Ravencoin プロジェクトは取引所・エクスプローラー・ノード運用者に即時アップグレードを求め、ブロック 4,487,775 より後に承認されたすべての取引を「巻き戻されうるもの」と位置づけました。
腰を据えて考える値打ちがあるのは、この最後の一文です。「一部の取引が巻き戻された」ではありません。三日ぶんのすべての取引が、暫定的だったのです。
不具合:誰も照合しなかった数値
Ravencoin は KAWPOW で採掘します。ProgPoW から派生した、メモリを大量に要求するプルーフ・オブ・ワークです。メモリを食うことこそが眼目で、計算は RAM に載せておかねばならない大きなデータセットに依存します。それが ASIC を採算に合わなくし、採掘を GPU の手の届く範囲に留めてきました。このデータセットは定期的に作り直され、どれが必要かはブロックの高さから導かれます。
ブロックヘッダーには nHeight というフィールドがあり、そのブロックがチェーンのどこに位置するかを宣言します。ノードは、ブロックが自称した高さに対してプルーフ・オブ・ワークを検証していました。その自称を、ブロックのチェーン上での実際の位置と突き合わせることは一度もありませんでした。
つまり嘘をつけたのです。チェーンの初期の高さを宣言し、小さなデータセットを受け取り、ごく一部の計算だけを行えば、脆弱なノードが喜んで有効と認めるブロックができあがります。Ravencoin の採掘を高くつかせているメモリ硬度は、自分が採掘しているのとは別のブロックを掘っていると言い張りさえすれば、任意のものになっていました。無効なブロックは、プロジェクト自身の言葉を借りれば、正当なブロックより劇的に安く作れるようになったのです。
コンセンサスの不具合として、これ以上根源的なものはそうありません。プルーフ・オブ・ワークは、ブロックチェーンが電力を最終性へと変換する仕組みそのものです。証明を安く偽造できるなら、最終性は存在しません。あるのはその見かけだけです。
治療法こそが、あの再編成だった
ここからが、外から見ると不穏に映るのに、実のところ正しかった部分です。
ネットワークのハッシュレートの過半を合わせて握る 2Miners と RavenMiner は、4,487,776 以降の悪用された枝を除外したチェーンを採掘すると発表しました。修正済みのノードソフトウェア(2Miners は 4.6.1.1-hf1 を公開)は、宣言された高さが実際の高さと一致しないブロックを拒否し、ブロック 4,487,775 をチェックポイントとして固定します。その線を越えて、汚染された古い履歴が再び受け入れられることはもうありません。
結果として、深さおよそ三日ぶんのチェーン再編成が起きました。三日ぶんのブロックが破棄され、置き換えられたのです。
深い再編成はふつう攻撃の兆候です。ここではそれが治療でした。悪用された枝は、誰かが書き換えた正当な履歴などではありません。もともと無効であり、ネットワークはそうでないふりをやめることを選んだのです。
その縫い目は今もチェーン上に見えます。ブロック 4,487,775 は 8 月 7 日 15:43:57 UTC に採掘されました。ブロック 4,487,776――回復したチェーン上の、正直なほう――の刻印は 8 月 10 日 14:09:42 UTC です。一分を狙うチェーンで、連続する二つのブロックのあいだに二日と二十二時間二十六分。この空白が瘢痕組織です。
RVN を持っていた場合、これが何を意味したか
自分が管理するウォレットにコインが置いてあり、その数日のあいだ取引していなかったなら、あなたには何も起きていません。鍵は最初から問題ではありませんでした。4,487,775 より前の残高が疑われたことは一度もありません。
その窓のあいだに取引していたなら、あなたの取引は生き延びるために回復チェーンへ採掘し直される必要がありました。通常の支払いはおおむね生き延びています。もともと有効な取引が、たまたま破棄されたブロックに入っていただけで、メンプールに戻って再び承認されました。再編成を生き延びられないのは、破棄された履歴が永続することを前提にしていたものすべてです。典型は取引所への入金です。コインが届き、口座に反映され、売買されるか出金され、そのあとで入金がなかったことになる。入出金の停止が正しい判断だった理由も、素早く動いた取引所がパニックではなく自分と利用者を守っていた理由も、まさにここにあります。停止は、代わりの選択肢が後で蒸発する金を口座に反映することであるとき、取引所が吸収できるし吸収すべき障害の形です。
承認が実際に約束しているもの
私たちのものを含め、ほとんどのウォレットは承認回数を表示し、そこから安全性を推し量らせます。その数字が何を意味するのかを厳密に述べておく値打ちがあります。こうした事故でこそ、曖昧さが牙を剥くからです。
承認は保証ではありません。経済的な言明です。この地点から履歴を書き換えるには、これだけのプルーフ・オブ・ワークをやり直す必要があり、その費用は支払いの価値を上回る。 ビットコインの六承認は費用についての経験則であって、永続性の暗号学的証明ではありません。
その言明には隠れた前提が焼き込まれています。ブロックを作るのは高くつく、という前提です。Ravencoin の不具合はその前提を取り払いました。無効なブロックがほとんど無償になったとき、「これだけの承認」は何ひとつ測らなくなります。画面上の数字は増え続けていましたが、それが数えていた対象は、いつのまにか意味を失っていたのです。
正直な結論は「承認は役に立たない」ではありません。承認回数とは、そのチェーンのコンセンサス規則の健全さについての主張であり、その規則の弱点をすべて受け継ぐ、ということです。賭けている価値に応じて辛抱の量を決めること。そして進行中のコンセンサス事故は、より大きな数字を待つ理由ではなく、取引そのものをやめる理由として扱うことです。
SSP はどこに立っていたか
私たちは他社の API から残高を読むのではなく、自前の Ravencoin 基盤を運用しています。だから「SSP は正しいチェーンにいるか」という問いには、安心させる言葉ではなく、確認できる答えがあります。
私たちのノードは Ravencoin 4.8.0 で動いており――ハードフォークよりずっと先です――執筆時点で回復チェーンの高さ 4,522,205 にいます。縫い目の両側は参照チェーンと完全に一致します。
- 4,487,775 →
000000000002d64509e06e76ddbbe418c725291687ec62b41ecfc40386a091fd - 4,487,776 →
0000000000042bb50281ebb2f68d3f9143980b041178849015d95b067d52a841
公式 Ravencoin エクスプローラーと同じハッシュ、同じ三日の空白です。SSP の利用者に求められたことは何もなく、SSP の Ravencoin はこれまでどおりに動いています。
正直な限界
こうした記事は、私たちのアーキテクチャが何から守るのかを説明するために書いています。だからこそ、何から守らないのかも明確にしておく必要があります。
2-of-2 マルチシグが守るのは署名の側です。単独で侵害された端末ではコインを動かせないこと、あらゆる支払いが独立した二台のハードウェアで二度承認されること、あなたのノートパソコンを盗んだ者の手には何も残らないこと。これらの性質は事故のあいだずっと保たれていましたし、人が暗号資産を失う経路の圧倒的多数にとって効くのはまさにこの性質です。
そのどれも、チェーンの再編成には効きません。ハードウェアウォレットも、エアギャップされた署名機も、パスフレーズも、どれほど大きなマルチシグの閾値も同じです。コンセンサスの障害はそれらすべての下にあります。あなたの保管方法ではなく、ネットワークの性質なのです。自社のウォレットが不正なブロックからあなたを守ると言う者がいたら、それは何かを売っています。
ウォレットが正直に差し出せるのは次のことです。本物のノード基盤を運用し、パッチを当て続け、どのチェーンに追随しているかを透明にすること。それは保守の約束であって暗号学的な保証ではなく、そしてそれが主張として正しい大きさです。
八月から持ち帰るべきもう一つのことは、リスクが実際にどこに棲んでいるかという教訓です。Ravencoin の不具合は、誰かが悪用するまで何年もコードの中にあり、想像しうるかぎり最も地味な場所に潜んでいました。誰もが他の誰かが照合していると思い込んでいた、ヘッダーの一フィールドです。Coldcard のエントロピー障害もまったく同じ形でした。小さく、退屈で、誰も検分しなかった一行のコード。外からは見えず、その上のすべてを支えていました。
痛いのはそういう不具合です。奇抜な暗号学的攻撃ではなく、誰もテストを書かなかった前提のほうです。


