解碼密碼:識別 Satoshi Nakamoto 的鑑識方法
Satoshi Nakamoto,這位比特幣的化名創作者,其身份至今仍是數位時代最大的謎團之一。雖然許多揭露 Satoshi 身份的嘗試都依賴於語言分析或社交工程,但一種新的技術方法顯示,答案可能就隱藏在顯而易見之處——特別是在原始比特幣白皮書的元數據(metadata)中。
透過利用舊版軟體留下的鑑識痕跡,研究人員正試圖對製作白皮書的環境進行逆向工程,以提取可能具有識別性的 Windows 使用者名稱。
鑑識前提:OpenOffice 與 PDF 元數據
這項調查的核心在於 OpenOffice PDF 匯出工具的一個特定怪癖。當 OpenOffice 將文件匯出為 PDF 時,它會在元數據中包含一個雜湊值(hash),該雜湊值結合了 PDF 儲存的路徑。
從歷史上看,人們一直認為破解這個雜湊值是一個難以解決的問題。要成功猜測這個雜湊值,理論上需要知道:
- 確切的文件目的地路徑。
- 使用的特定 Windows 版本(例如,XP 與 Vista 的差異),因為目錄結構不同。
- 文件是否儲存在使用者目錄中。
- 文件儲存時的確切毫秒數。
然而,最近的分析顯示,搜尋空間比先前認為的要小得多。
縮小搜尋空間
為了使暴力破解攻擊變得可行,研究人員根據在 Satoshi 早期發布的版本中發現的證據,應用了幾項限制條件。
1. 作業系統與軟體環境
有壓倒性的證據顯示 Satoshi 使用了 Windows XP Service Pack 2。這點得到了早期比特幣發布版本中的截圖以及 Satoshi 本人提到過未在 Windows Vista 上進行測試的支持。此外,對早期比特幣發布版本所使用的 .rar 檔案的分析顯示,它們是由早於 3.62 版本(2006 年 12 月發布)的 WinRAR 所產生的,這表明該環境早於比特幣專案的正式啟動。
2. 毫秒問題
雖然時間戳記包含毫秒,但研究人員發現 Windows XP 硬體通常透過 SYSTEMTIME 使用 64-tick 計時器。這將可能的毫秒值從 1,000 個減少到 65 個,從而使破解過程提速 15 倍。
3. 路徑名稱捷徑
最關鍵的突破之一是意識到 OpenOffice 並不對使用者提供的最終目的地路徑進行雜湊處理。相反,它對匯出過程中產生的暫存檔路徑進行雜湊處理。
在 Windows XP 上,這些暫存檔儲存在 %TMP% 目錄中。由於 Windows 處理長檔名的機制(8.3 檔名慣例),路徑會被截斷並簡化(例如,C:\Documents & Settings\... 會變成 C:\DOCUME~1\...)。這種截斷大幅降低了使用者名稱的熵值(entropy),使得迭代遍歷潛在候選者的過程變得容易得多。
技術執行方式
為了執行搜尋,研究人員利用了高效能運算架構:
- 自定義核心(Custom Kernels): 一個針對此特定路徑結構優化的修改版 Hashcat MD5 核心。
- LLM 協助: 使用 ChatGPT 生成用於 CUDA port 中的寫實使用者名稱組合的模板實例化。
- 分散式運算: 使用
vast.ai可中斷的 GPU 實例來處理數百萬個潛在的使用者名稱。 - WebGPU 實作: 建立了一個 WASM blob,讓解決方案可以在任何支援 WebGPU 的瀏覽器中執行,從而可能進行群眾募資式的運算力支援。
反對意見與倫理考量
儘管技術上可行,但該專案在社群中引發了爭議。批評者認為這項工作從根本上存在缺陷或在倫理上存疑:
- 隱私悖論: 有些人認為,像 Satoshi 這樣注重隱私的人,絕不會使用真實姓名作為 Windows 使用者名稱,很可能使用化名或隨機字串來避免這種精確的鑑識洩露。
- 右於匿名權: 幾位觀察者質生疑於搜尋背後的動機,認為 Satoshi 有意保持匿名,而揭露其身份可能使其陷入危險。
"Someone aware of computer security will not use their name as windows user."
目前進度
迄今為止,搜尋已排除了一些可能性。研究人員已確認 Satoshi 並未使用 Linux,且 Windows 使用者名稱並非四個字元或更短,也不是在標準字典或 2009 年 Wiktionary 中常見的名稱。
雖然搜尋尚未得出結果,但這種方法展示了如何將舊版軟體的鑑識痕跡武器化,以揭露數十年檔案中的身份,將一個被遺忘的 PDF 匯出怪癖轉化為一場數位追蹤。