サトシのコードを解読する:ビットコイン・ホワイトペーパーのフォレンジック分析
ビットコインの創設者であるサトシ・ナカモトの正体は、デジタル時代の最大の謎の一つであり続けています。言語学的分析や資金追跡を通じて真実を明らかにしようとする試みは多くありますが、新たなアプローチは、すべてが始まったその文書自体、すなわちビットコイン・ホワイトペーパーに残されたフォレンジック・アーティファクト(鑑識証拠)に焦点を当てています。
最近の研究によれば、ホワイトペーパーはOpenOfficeのPDFエクスポート機能を使用して出力されており、このツールは生成されたファイルに特定のメタデータを埋め込みます。具体的には、このエクスポート機能には、文書が保存されたファイルパスを含むハッシュが含まれています。フォレンジック研究者にとって、これは理論的な機会を提示しています。もし、Windowsアカウントのユーザー名を含む正確なパスを推測できれば、ハッシュを解読し、サトシの実名が判明する可能性があります。
フォレンジックの基盤
この攻撃を現実的なものにするためには、いくつかの仮定を検証する必要があります。研究者たちはまず、PostScript出力がそのソフトウェア特有のカスタム仕様であることから、PDFが実際にOpenOfficeによって作成されたことを突き止めました。
次に、環境をWindows XPに絞り込みました。これは、サトシ自身の通信においてWindows XP Service Pack 2が頻繁に参照され、OSのスクリーンショットが含まれていたことによって裏付けられています。タイムラインをさらに精査するために、研究者たちは初期のビットコイン・リリースで使用された.rarファイルを分析しました。これらのアーカイブをさまざまなバージョンのWinRARと比較した結果、ファイルはWinRAR 3.62(2006年12月リリース)よりも古いバージョンで作成されたものであることが判明し、環境をビットコイン開発以前の時代に確定させました。
探索空間の削減
ミリ秒単位のタイムスタンプと完全なファイルパスを含むハッシュを解読することは、通常、計算量的に不可能です。しかし、研究者たちは、探索空間(キースペース)を大幅に削減するためのいくつかの重要なショートカットを特定しました。
1. タイマー解像度
ハッシュには保存操作のミリ秒が含まれていますが、Windows XPのハードウェアは通常、SYSTEMTIMEを介して64ティック・タイマーを使用します。これは、チェックすべきミリ秒の値が1,000通りではなく、わずか65通りであることを意味します。これにより、ブルートフォース(総当たり)プロセスが15倍高速化されます。
2. 一時ファイル・パス
極めて重要な発見は、OpenOfficeはユーザーが指定した最終的な保存先パスをハッシュ化するのではなく、エクスポート・プロセス中に作成される一時ファイルのパスをハッシュ化するという点です。Windows XPでは、このパスはユーザーのアカウント・フォルダ内にある%TMP%ディレクトリに位置します。
さらに、Windows XPはこれらのパスに対して「短いファイル名」(8.3形式のファイル名)を使用します。例えば、C:\Documents & Settings\User Name\Local Settings\Tempのようなパスは、C:\DOCUME~1\USERNA~1\LOCALS~1\Tempのように短縮されます。この短縮により、解読者がテストすべき文字列の組み合わせが大幅に減少します。
3. Base-26の特性
OpenOfficeは、%TMP%\svXXX.tmp\svYYY.tmpという命名規則を使用して一時ファイルを保存します。研究者たちは、XXXとYYYという文字列が、限定された文字セット(0-p)を用いたbase-26でエンコードされていることを発見しました。ファイルが多くの変更を経ていない場合、これら2つの文字列の間の差は比較的小さいため、一時フォルダ名の探索空間は著しく狭くなります。
計算による攻撃
探索空間が削減されたことで、研究者たちは、修正されたHashcat MD5カーネルとCUDAポートを使用して、高スループットなソルバーを実装しました。vast.aiのようなプラットフォームを介して分散GPUパワーを利用することで、彼らはすでにいくつかの可能性をを排除しています:
- Linux: 全面的に除外されました。考えられるすべての一時ファイル・パスがブルートフォースされました。
- 短いユーザー名: 4文字以下のすべてのユーザー名はチェック済みです。
- 一般的な名前: 小文字、タイトルケース、および辞書ベースの名前の膨大なリストが処理されました。
反論と限界
技術的な独創性にもかかわらず、このアプローチには成功の可能性に関する大きな懐疑論が存在します。批判的な意見を持つ人々は、サトシ・ナカモトのレベルの技術的洗練度とプライバシーへの執覚的なこだわりを持つ人物であれば、Windowsアカウントのユーザー名として実名を使用する可能性は低いと主張しています。
"Computer securityに精通している人物であれば、Windowsのユーザー名として自分の名前を使用することはないでしょう。"
さらに、サトシの正体を突き止めることは倫理的な懸念も伴います。作成者の匿名性がビットコインのネットワークの安定性に不可欠であり、その正体を明明らかにすることは、その個人を危険にさらす可能性があると主張する人々もいます。
結論
まだ名前は特定されていませんが、この手法は、レガシー・ソフトウェアの特性やOSレベルのアーティファクトが、数十年後に機密情報を漏洩させる可能性があることを示しています。プロジェクトは継続中であり、より複雑で、かつ一般的ではないユーザー名のバリエーションをーションバリエーションを、さらに探索するために、さらなるGPUリソースを求めています。