兄貴は11年前に数十枚のビットコインを購入し、パスワードを失った後、ハッカーが苦労して取り戻してくれた。
著者:留学生大叔
2022年、スペインのマイケルという男性が難題に悩まされていた。
2013年、彼は5300ドルの総額で、その当時まだ大人気ではなかったビットコインを購入し、合計43枚を手に入れた。
その後、彼はこれらのコインを電子財布に保存し、盗難防止のために、パスワードソフトを使って20桁のランダムなパスワードを生成した。
マイケルは同じソフトでこのパスワードを保存するのが安全ではないと心配し、もしハッカーに解読されたり、コンピュータを失ったりしたら、相手は手がかりをもとにパスワードを見つけ出し、彼のビットコインを引き出すことができると考えた。
そこで、彼はこの長いパスワードを別の文書に貼り付け、誰にもパスワードの用途がわからないようにした。彼はこの文書にもパスワードを設定し、暗号化した。
このように何重にも暗号化した結果、マイケルは自分のビットコインアカウントのパスワードが堅固になったと自負し、ビットコインの価格が上がるのを待っていた。
しかし、予想外のことが起こった。マイケルは自分が保存していた暗号化文書が理由もなく壊れてしまい、全く開けなくなり、20桁のパスワードを貼り付けることもできなくなった。
同時に、彼はビットコインの価値が過去の123ドルから3万ドルを超えるまで上昇するのを目の当たりにした。
「私はこの財産を持っている、見ることはできるが、使うことはできない。なぜなら、パスワードがないからだ。」
過去数年間、マイケルは様々なパスワード解読の専門家を探し、彼らが当時のソフトで生成されたランダムなパスワードを取り戻す手助けができるかどうかを尋ねていた。
しかし、無数のネットワークセキュリティ専門家はマイケルにこう告げた:20桁のランダムなパスワード?!ビットコインを忘れなさい、それらは永遠に取り戻せない。
マイケルはこの悪い知らせを聞いて、自分の生涯でこの巨額の財産を手に入れることはできないと一度は考えた。
2022年、彼はネットを通じてアメリカのハッカー、ジョー(Joe Grand)を知り、彼に助けを求めた。
ジョーは世界的に有名なハードウェアハッカーであり、電気工学のエンジニアで発明家でもあり、彼のハッカー歴は10歳まで遡る。
彼は主流に認められ、システム開発者に対して、彼のようなハッカーからどのように防御すべきかの相談を行っている…
ジョーはまた、二人の見知らぬ人が失った暗号通貨のパスワードを取り戻す手助けをした経験もあった。
一度は、相手がパスワードを保存したUSBメモリを湖に落としてしまい、ダイバーが引き上げた後、ジョーは一連の物理的手段を使ってUSBメモリの機能を復元し、相手が失ったことがないかのようにパスワードを見つけ出すことができた。
もう一度は、パスワードの解読に関するもので、家族の一人が不慮の事故で亡くなり、亡くなる前に兄弟にビットコインのパスワードが彼らの祖母の名前に関連している可能性があると伝えたため、ジョーはこの手がかりをもとに「ブルートフォース検索」を行い、数百万の組み合わせを一つずつ試みた…
2022年、マイケルはネットを通じてジョーに連絡を取ったが、ジョーは以前のように承諾しなかった。
理由は簡単だった:ジョーはハードウェアのハッカーであり、ソフトウェアのランダム生成されたパスワードには不慣れだった。
また、他人の暗号通貨のパスワードを取り戻すことも彼の専門や興味ではなく、相手がどれだけ高い報酬を提示しても関係なかった。
そのため、ジョーはその年、マイケルの依頼を一蹴した。
しかし、昨年の夏、マイケルが絶望の中で再度ジョーに連絡したとき、ジョーは試してみることに同意した。
今回はジョーが心を柔らかくしたからではなく、彼のドイツのパートナーである若いソフトウェアハッカーが、彼らにはマイケルの失ったパスワードを取り戻す可能性があると提案したからだった。
この若いハッカーの名前はブルーノ(Bruno)で、ドイツ人であり、ソフトウェアの脆弱性を専門としており、ジョーと同様に、ブルーノも幼い頃からシステムやソフトウェアのセキュリティホールを見つけることに非常に興味を持っていた。
ブルーノはしばしば人々から失った暗号通貨のパスワードについて助けを求められるが、マイケルのようなケースは初めてだった。
彼はジョーに、彼らにはチャンスがあるかもしれないと提案し、二人の天才ハッカーはこの困難だがわずかな可能性のあるプロジェクトに非常に興味を持った。
ジョーはヨーロッパに飛び、ブルーノとマイケルと合流した。
マイケルは当時、「RoboForm」というソフトウェアを使ってそのランダムパスワードを生成していた。このソフトウェアは世界で最も早くからあるランダムパスワード生成器の一つで、今でも使用されている。
ジョーとブルーノはこのソフトウェアをテストし、発見したのは、このソフトウェアは常に異なるパスワードを生成できるということだった。
二人にとって、ジョーが当時生成したランダムパスワードを見つけることは、まるで海の中から針を探すようなものであった:
「もし私たちがすべての可能なパスワードの組み合わせを試さなければならないなら、それは世界中の水滴の数の100兆倍に相当します。
もし私たちがパスワードを水滴に例えるなら、それは川の底を流れているかもしれないし、空から落ちてくるかもしれないし、世界のどこかの海の中にあるかもしれません。
もし私たちが何らかの方法でこの状況を減らすことができれば、この克服できない問題を成功できることに変えることができるでしょう。」
二人はRoboFormの動作原理を理解した後、時間軸に沿って検索範囲を狭める手がかりを探し始めた。
彼らはすぐに、ソフトウェアのバージョン説明のタイムラインで、2015年のバージョンの更新説明が少し奇妙であることに気づいた:
「パスワード生成のランダム性を増加させました。」
この言葉は二人の天才ハッカーに疑念を抱かせた:ランダム性が増加した??
これは、2015年以前のバージョンで生成されたパスワードがそれほどランダムではなかったことを示しているのか??
ジョーとブルーノはコンピュータのソフトウェアとハードウェアの天才として、実際にはコンピュータが常に「完全にランダム」な数字の列を生成することは「非常に非常に困難」であり、多くのランダム数がしばしばいくつかの参照パラメータに関連していることを知っていた:
「もし私たちがこの『ランダム性』を操作できれば、予測可能な出力を得ることができ、マイケルのウォレットのパスワードを解読するために使用できるかもしれません。」
しかし、今は2023年であり、どうやってマイケルがパスワードを作成した10年前に戻り、ソフトウェアが当時のマイケルの行動を模倣させることができるのだろうか?
この時、二人の専門性が明らかになった:彼らはソフトウェアの逆アセンブルを行い、ソフトウェアのバージョンを2013年のものに戻し、システムデータを改ざんして、ソフトウェアに2013年のユーザーコマンドを実行していると信じ込ませた:
「私たちはシステムを欺いて2013年に戻し、マイケルがパスワードを生成していた時間帯にパスワードを生成していると考えさせることができます。」
「タイムマシン」に乗って10年前に戻った二人は、アメリカ国家安全保障局も使用しているソフトウェアツールを使って、過去のパスワード生成の規則を探ろうとした:
「このソフトウェアはロシアのマトリョーシカのようなものです。私たちの目標は、その中のパスワードを生成する小さな人形です。」
計算とテストを通じて、二人は驚くべき発見をした:当時のランダムパスワード生成には本当に規則があり、その規則はシステム時間だった!
実際、2013年のこのソフトウェアは、ユーザーがパスワードを作成する時間に基づいて、厳密にその時刻に関連付けられた「擬似ランダムパスワード」を生成していた。各時刻のパスワードは作成時間と直接関連していた。
パスワードとマイケルが当時パスワードを作成した時間に関する重要な手がかりを得たジョーとブルーノは興奮した。
これは、彼らの海の中から針を探す範囲を大幅に狭めることを意味していた。マイケルがランダムパスワードを作成した日と大体の時間を知ることができれば、限られた数のパスワードを計算し、それらを一つずつ試すことができる。
しかし、マイケルは10年前にこのソフトウェアを開いてビットコインのパスワードを生成した正確な日を全く覚えていなかった…
ジョーとブルーノは落胆せず、さらに根気強く調査を続けた。
彼らはマイケルがビットコインを電子財布に入れた時間を見つけ出した:2013年4月。
常識的に考えて、マイケルはこの日付の前後数ヶ月の間にランダムパスワードを作成したはずだった。そこで、ジョーとブルーノは検索時間をその年の3月から4月末に設定した。
彼らは徹夜で議論し計算し、コンピュータの結果を待ったが、結果は失望をもたらした:一つもマイケルのビットコインアカウントを解除できる結果は出なかった。
二人は仕方なく再度マイケルに連絡し、正確な日をもう一度思い出すように頼んだ。
しかし、マイケルも頭が混乱してしまい、結局10年前のことを誰がそんなに明確に覚えているだろうか?
ただ、ブルーノは今回、マイケルに当時このソフトウェアを使って作成した他のいくつかのパスワードを送ってもらうように頼んだ。ジョーとブルーノは、マイケルが同じソフトウェアで作成した他のパスワードから手がかりを見つけ出そうとしていた。
二人は、マイケルの他の二つのパスワードには特殊文字(¥……\&など)が含まれていないことを発見した。
特殊文字がランダムパスワードに現れるかどうかはユーザーが設定できるため、ジョーとブルーノは一筋の希望を抱き、検索範囲から特殊文字のオプションを外し、検索時間を2013年の6月1日まで延長した。
そして、ある普通の深夜、ブルーノの前のコンピュータが突然、特定の数字と文字で構成された文字列を表示した:
唯一の結果がコンピュータの画面に現れた!
この結果は、ソフトウェアの専門家であるブルーノ自身も予想していなかったもので、唯一の結果が存在するとは!
狂喜するブルーノ
結果は、マイケルが2013年5月15日の午後4時10分40秒にこのパスワードを作成したことを示していた…
昨年11月、ジョーとブルーノはこの驚くべき知らせをマイケルに隠し、160万ドルの賞金をマイケルに授与するための巨大な泡沫板を作成し、成功裏にその板を飛行機でバルセロナに運んだ。
そして、マイケルがカメラの前で自分がどのようにこの巨額の財産を失ったかの物語を語っているとき、ジョーとブルーノは突然マイケルの前に現れ、メダルを持ってこの知らせを伝えた!
三人は喜びに満ち溢れた。
5ヶ月の努力の結果、ジョーとブルーノは本当に不可能だったことを100%に変えた!
報酬として、ジョーとブルーノはパスワードを成功裏に解読した後、マイケルのビットコインアカウントから特定の割合のビットコインを受け取った(彼らはパスワードを探す前に、解読が成功した場合にのみ報酬を受け取るという合意をマイケルと結んでいた)。
昨年11月、マイケルのビットコインは10年前の5300ドルから160万ドルに上昇していた。
ジョーとブルーノはこの全ての物語を短く精緻なドキュメンタリーにまとめ、今年の5月にドキュメンタリーが放送された時、160万ドルは300万ドルにまで上昇していた…
昨年末、マイケルは一部のコインを売却し、恩人にいくつかのコインを分け、自分は30枚のコインを残した。
彼はビットコインが10万ドル/枚に達した時に残りのコインを売却するつもりだ。
最後に、マイケルはジョーとブルーノに感謝するだけでなく、当時の「賢さが裏目に出た」ことにも感謝した:
「もしパスワードを失っていなければ、10年も待たずに、もっと早く売却していたかもしれない。」
どう言えばいいのか、もし二人の天才ハッカーが心を込めて助けてくれなかったら、さらに過去のバージョンに大きなシステムの脆弱性があったおかげで、マイケルのパスワードはすでに太平洋に消えていたかもしれない。
彼が教訓を得られることを願っている…