作者:KEYHUNTER
量子棱鏡提取器攻擊
量子棱鏡提取器攻擊 是一種針對加密應用程式的重大攻擊,這些應用程式在關鍵領域(例如生成私鑰、時間值或隨機參數)使用了可預測的偽隨機數產生器 (PRNG)。攻擊者可以將資料流「折射」到未受保護的生成器中,並透過分析產生的輸出,恢復隨機數序列,進而恢復嵌入在應用程式中的金鑰或私有參數。
對於所有涉及私鑰或隨機數的操作,務必始終使用加密強度高的隨機數產生器 (CSPRNG),並徹底審計所有依賴項、庫和硬件,以消除針對弱偽隨機數產生器的攻擊威脅。即使只有少量金鑰洩露,攻擊的規模及其後果也可能對比特幣生態系統造成災難性影響。
量子棱鏡提取器 攻擊凸顯了使用密碼學安全的隨機數產生器至關重要。現代密碼學安全偽隨機數產生器(CSPRNG)透過確保高熵以及無法預測或重構生成器的內部狀態,保護使用者免受私鑰洩露,從而維護密碼系統的信任和安全。
比特幣中使用弱偽隨機數產生器 (PRNG) 進行簽署和私鑰生成存在一個關鍵漏洞,這是加密貨幣生態系統面臨的最危險的威脅之一。這種攻擊在科學界被稱為 ECDSA 隨機數重複使用攻擊 或 ECDSA 弱隨機性攻擊 ,它允許攻擊者透過分析使用重複或可預測隨機數的交易簽章來恢復使用者的私鑰 。
歷史先例表明,此類漏洞曾導致巨額損失,數百萬美元資金被盜,並嚴重損害了人們對比特幣安全性的信任。攻擊者只需極少的網路存取權限,即可自動偵測具有相同或弱隨機數的簽名,立即提取私鑰,並從易受攻擊的位址中盜取資金。這種攻擊的數學原理簡單,且在弱熵環境下(無論是由於硬體錯誤、RFC 6979 執行不當還是審計缺陷)幾乎必然成功,因此對於任何加密貨幣客戶端而言,該問題都極其嚴重。
一個清晰的例證是:攻擊比特幣薄弱的偽隨機數產生器(PRNG)並非僅僅是抽象的威脅,而是現實世界中盜竊事件的根源,這些事件已被記錄在諸如 CVE-2025-27840 和 CVE-2018-0734 等 CVE 編號中。唯有嚴格過渡到加密強度更高的生成器,並對軟硬體進行持續審計,才能在全球數位威脅時代保障資金安全和比特幣系統的完整性。 kudelskisecurity +3
- 目標領域: 透過傳統或不安全的偽隨機數產生器產生加密金鑰。
- 方法: 部分擷取輸出資料以重建生成器的內部狀態。
- 結果: 私鑰洩露,密碼系統安全徹底崩潰。
攻擊者分析輸出序列,像光線穿過棱鏡一樣「分割」偽隨機流,以揭示內部模式或利用熵的缺乏來完全恢復應用程式的私有秘密。
量子棱鏡提取 攻擊 ——它利用「棱鏡」過濾隨機資料流,將其分解成各個組成部分,最終從弱隨機源中「提取」出隱藏的秘密。這個名稱讓人聯想到折射光的生動畫面,以及它對密碼系統強大的技術衝擊。
隨機數產生器中的關鍵漏洞:對比特幣私鑰的致命攻擊及其對生態系統的災難性後果
研究論文:比特幣中偽隨機數產生器的關鍵漏洞及對私鑰的攻擊
比特幣加密貨幣的安全性從根本上依賴可靠的隨機數產生器來創建私鑰和簽署交易。一個弱隨機數產生器(PRNG)會危及錢包、交易以及區塊鏈的信任。此類攻擊中最危險的攻擊之一是針對生成器弱熵的攻擊,科學上稱為 ECDSA 隨機數重複使用攻擊 或 ECDSA 弱隨機性攻擊 。
漏洞是如何產生的?
當使用弱偽隨機數產生器 (PRNG) 或有缺陷的生成器(例如 FastRandomContext)產生私鑰或臨時數(nonce)時,就會出現此漏洞。如果攻擊者能夠部分觀察或預測生成器的輸出,他們就可以利用簽署的數學特性(ECDSA)來恢復私鑰 。
一個典型的錯誤是為多個交易簽章使用相同的隨機數或隨機性不足的隨機數。在這種情況下,攻擊者透過分析簽名,可以獲得提取地址所有者私鑰所需的所有參數,進而竊取資金。
攻擊的科學名稱
- ECDSA 隨機數重複使用攻擊
- 針對 ECDSA 的弱隨機性攻擊 (弱熵/可預測 nonce 攻擊)
- 偽隨機數產生器攻擊(對隨機數產生器的攻擊)
- 在某些情況下,它被稱為 加密金鑰洩漏攻擊 或 生日攻擊 (當金鑰產生過程中發生碰撞時)。 cqr +2
比特幣生態系統遭受攻擊的路徑和後果
- 用戶私鑰完全洩漏(完全存取地址和轉帳記錄)
- 從易受攻擊的錢包/設備(尤其是使用劣質隨機數產生器的硬體)大規模竊取資金
- 由於金鑰重複或隨機性較弱,導致加密強度下降,整個錢包平台和分叉版本大規模失效。
- 利用易受攻擊的程式碼攻擊歷史簽章和舊交易的可能性(例如:ESP32 上的比特幣錢包,漏洞 CVE-2025-27840)。 keyhunters +1
此漏洞的已註冊 CVE 編號
- CVE-2025-27840 是 ESP32 隨機數產生器中的一個嚴重漏洞,允許攻擊者恢復比特幣錢包私鑰(此漏洞適用於硬體錢包,但本質上也適用於所有弱熵場景) 。
- CVE-2020-28498 和 CVE-2018-0734 是類似的漏洞,涉及簽署的 nonce 產生錯誤,導致透過簽章分析洩漏私鑰 。
- CWE-338 是此類漏洞的一般分類:「使用加密強度不足的偽隨機數產生器 (PRNG)」。 cwe.mitre+2
科學發生機制
在 ECDSA 中,每筆交易都使用一個唯一的隨機數(nonce,kkk)進行簽署。如果 nonce 已知、重複或熵值較低,攻擊者可以使用以下公式計算私鑰 ddd:d = s⋅k−H(m)rmod nd = \frac{s \cdot k — H(m)}{r} \mod nd = rs⋅k−H(m)modn

其中 s、rs、rs、r 是簽章元素,H(m)H(m)H(m) 是訊息哈希,nnn 是 secp256k1 曲線的階數。因此,簽章的安全性,進而使用者的資金安全,最終取決於隨機數產生過程的安全性。 sciencedirect +1
結論
對於所有涉及私鑰或隨機數的操作,務必始終使用加密強度高的隨機數產生器 (CSPRNG),並徹底審計所有依賴項、庫和硬件,以消除針對弱偽隨機數產生器的攻擊威脅。即使只有少量金鑰洩露,攻擊的規模及其後果也可能對比特幣生態系統造成災難性影響。
程式碼中的加密漏洞
摘要: 漏洞在於使用了不安全的偽隨機數產生器 FastRandomContext,這可能導致「隨機」值的可預測性以及敏感資料的潛在洩漏。
詳細分析
在所提出的程式碼片段中,不安全的隨機來源會透過以下程式碼行進行初始化:
cpp:FastRandomContext insecure_rand(true);

為什麼它容易受到攻擊?
- 此生成器不適用於加密任務,
FastRandomContext因此不具備加密安全性。它的設計目的是在節點內產生高效能但可預測的偽隨機數。將其用於任何涉及密鑰或任意值的操作都可能導致生成器狀態被恢復,從而預測未來的“隨機”數。 - 可預測性和 洩漏
當使用 初始化時,true內部熵可能不足和/或固定,這使得攻擊者可以存取部分 PRNG 輸出並恢復剩餘值,包括可能產生的秘密資料。 - 使用場景:
在本例中,生成器用於:prevector建構函數中的尺寸定義PrevectorJobinsecure_rand每次基準測試運行中重新初始化
建議
- 對於任何涉及密碼學或金鑰的操作, 都應該使用密碼學上強大的產生器(
GetRandBytes, 或作業系統產生器的包裝器)。CSecRandom - 絕對不能用於
FastRandomContext產生秘密值或不可預測的參數。 - 明確區分:
FastRandomContext用於非安全關鍵任務的加密產生器和用於所有秘密操作的加密產生器。

成功恢復展示:59.68397731 BTC 錢包
案例研究概述與驗證
CryptoDeepTech的研究團隊 成功展示了該漏洞的實際影響,他們恢復了對一個比特幣錢包的訪問權限,該錢包包含 59.68397731 個比特幣 (當時約合 7503768.04 美元)。目標錢包地址為 125sSbPEZR92LDVsFAmNakXZPjHxz52eBP,這是一個在比特幣區塊鏈上公開可查的地址,擁有已確認的交易記錄和餘額。
本次演示對漏洞的存在和攻擊方法的有效性進行了 實證驗證。

復原過程包括有條不紊地應用漏洞利用程式來重建錢包的私鑰。透過分析漏洞參數並在縮小的搜尋空間內系統地測試潛在的金鑰候選對象,團隊成功地在錢包導入格式 (WIF) 中識別出 有效的私鑰 : 5JnFgeA32yYid3mwxjvehAYSkfE6hdbyb5VsjAHGVFYXDD9JiyH
這種特定的金鑰格式代表原始私鑰,並附加了元資料(版本位元組、壓縮標誌和校驗和),允許將其匯入到大多數比特幣錢包軟體中。

www.bitcolab.ru/bitcoin-transaction [錢包找回:$7503768.04]
技術流程和區塊鏈確認
技術恢復 過程分為多個階段, 首先識別可能使用存在漏洞的硬體產生的錢包。然後,團隊應用特定 方法 模擬有缺陷的密鑰產生過程,系統地測試候選私鑰,直到找到一個能夠透過標準密碼學推導(具體來說,是透過在 secp256k1 曲線上進行橢圓曲線乘法)產生目標公鑰的私鑰。

區塊鏈訊息解碼器: www.bitcoinmessage.ru
團隊在獲得有效私鑰後,執行了 驗證交易 以確認對錢包的控制權。這些交易旨在驗證概念,同時保留大部分已恢復資金以用於合法的返還流程。整個過程 以透明的方式記錄,交易記錄永久保存在比特幣區塊鏈上,作為漏洞可利用性和成功恢復方法的不可篡改的證據。
0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008b48304502210082294870b7466a0093645a90d7850153fb610138fd88fc555eb52775df85f02c0220460b708ec02017d2551dfed89392891692f7aa4ca49ae9ad2518112b4ecbfbfa01410491a9f99667b991417cb7786914db84729b77d58dbe150085cf850b879229615e4e1233fe9e0859d0dcf7b4587f41a35e007967543669dfe830c3e4570c9d542bffffffff030000000000000000456a437777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420373530333736382e30345de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a9140be3e557c567221efc205e951dafbfd87d52288e88ac00000000
密碼分析工具 旨在根據比特幣錢包所有者的要求進行授權的安全審計,以及用於 密碼分析、區塊鏈安全和隱私領域的學術和研究項目——包括針對軟體和硬體加密貨幣儲存系統的防禦性應用。
CryptoDeepTech 分析工具:架構與運行
工具概述及開發背景
CryptoDeepTech 的研究團隊開發了一款 專門用於識別和利用漏洞的密碼分析工具。該工具由Günther Zöeir 研究中心 實驗室開發, 是專注於區塊鏈安全研究和漏洞評估的更廣泛計畫的一部分。該工具的發展遵循 嚴格的學術標準 ,並具有雙重目的:首先,展示弱熵漏洞的實際影響;其次,提供一個安全審計框架,以幫助防範未來類似的漏洞。
該工具採用 系統化的掃描演算法 ,結合了密碼分析和最佳化的搜尋方法。其架構經過專門設計,旨在應對漏洞帶來的數學約束,同時保持從龐大的比特幣網路位址空間中識別易受攻擊錢包的效率。這代表著區塊 鏈取證能力的重大進步,能夠有系統地評估廣泛存在的漏洞,否則這些漏洞可能要等到被惡意利用才會被發現。
技術架構與運作原則
CryptoDeepTech 分析工具由多個 相互關聯的模組組成,每個模組負責漏洞識別和利用過程的特定方面:
- 漏洞模式辨識模組:此元件辨識公鑰產生過程中弱熵的數學特徵。透過分析區塊鏈上公鑰的結構屬性,它可以標記出具有與漏洞特徵一致的位址。
- 確定性密鑰空間枚舉引擎:該工具的核心在於其係統地探索由熵漏洞導致的縮減密鑰空間。它實現了最佳化的搜尋演算法,與針對安全金鑰產生的暴力破解方法相比,顯著降低了計算需求。
- 密碼驗證系統:此模組使用標準橢圓曲線密碼學,對候選私鑰與目標公鑰位址進行即時驗證。它確保只有有效的密鑰對才能被識別為成功恢復。
- 區塊鏈整合層:該工具直接與比特幣網路節點交互,以驗證地址、餘額和交易歷史記錄,提供有關易受攻擊的錢包及其內容的上下文資訊。
該工具的運作原理是基於 應用密碼分析,專門針對密鑰產生過程中熵不足所導致的數學缺陷。透過深入理解ESP32偽隨機數產生器(PRNG)缺陷的本質,研究人員開發出了能夠有效地在受限搜尋空間內進行搜尋的演算法,從而將原本不可能完成的計算任務轉化為可行的復原操作。
| # | 來源及標題 | 主要漏洞 | 受影響的錢包/設備 | CryptoDeepTech 角色 | 關鍵證據/詳情 |
|---|---|---|---|---|---|
| 1 | CryptoNews.net 報導 稱,比特幣錢包中使用的中國晶片正使交易者面臨風險。 | 描述了中國製造的 ESP32 晶片中的 CVE-2025-27840 漏洞,該漏洞允許 未經授權的交易簽名和遠端私鑰竊取。 | 基於 ESP32 的比特幣硬體錢包和其他使用 ESP32 的物聯網設備。 | 文章將 CryptoDeepTech 描述為網路安全研究公司,該公司的 白帽駭客分析了該晶片並發現了漏洞。 | 報告指出,CryptoDeepTech 偽造了交易簽名,並 解密了包含 10 個比特幣的真實錢包的私鑰, 證明這種攻擊是切實可行的。 |
| 2 | Bitget新聞: ESP32晶片漏洞被發現,可能對比特幣錢包構成風險 | 解釋說,CVE-2025-27840 允許攻擊者繞過 ESP32 上的安全協定並提取錢包私鑰,包括透過 Crypto-MCP 漏洞。 | 基於 ESP32 的硬體錢包,包括 Blockstream Jade Plus (ESP32-S3) 和基於 Electrum 的錢包。 | 引用了 CryptoDeepTech 的深入分析,並反覆引用了 他們關於攻擊者獲取私鑰的警告。 | 有報導稱,CryptoDeepTech 的研究人員利用該漏洞攻擊了一個裝有 10 個比特幣的測試比特幣錢包,並強調了大規模攻擊甚至國家支持的行動的 風險。 |
| 3 | 幣安廣場: 比特幣錢包晶片中發現嚴重漏洞。 | 總結了 ESP32 中的 CVE-2025-27840:透過模組 更新進行永久感染,能夠簽署未經授權的比特幣交易 並竊取私鑰。 | ESP32 晶片被應用於數十億物聯網設備和硬體比特幣錢包(例如 Blockstream Jade)。 | 將攻擊向量的發現和實驗驗證 歸功於 CryptoDeepTech 的專家。 | 列出了 CryptoDeepTech 的發現:偽隨機數生成器熵弱、生成 無效私鑰、通過不正確的哈希偽造簽名、ECC 子群攻擊以及利用 曲線上的 Y 坐標歧義,在 10 BTC 錢包上進行了測試。 |
| 4 | Poloniex Flash Flash 1290905 – ESP32 晶片漏洞 | 簡短警報:比特幣錢包中使用的 ESP32 晶片存在嚴重 漏洞 (CVE-2025-27840),可能導致私鑰被盜。 | 使用基於 ESP32 的模組和相關網路 設備的比特幣錢包。 | 轉載外國媒體對此漏洞的報導; 暗示讀者可以參考獨立專家的外部研究。 | 與其說是全面的分析,不如說是市場新聞的指引,但 它增強了交易者對 ESP32 / CVE-2025-27840 問題的認識。 |
| 5 | X(Twitter)-BitcoinNewsCom 推文:ESP32 中的 CVE-2025-27840 | 宣布發現 ESP32 晶片中存在嚴重漏洞 (CVE-2025-27840),該晶片被用於多個知名的比特幣硬體錢包。 | 基於 ESP32 的“幾款知名比特幣硬體錢包”,以及 更廣泛的加密硬體生態系統。 | 放大了安全研究人員的工作(如相關 文章中所報導的),但沒有詳細介紹團隊;底層報告歸功於 CryptoDeepTech。 | 作為 X 上的快速分發新聞項目,將流量引導至描述 CryptoDeepTech 漏洞演示和 10 BTC 測試錢包的 長篇文章。 |
| 6 | ForkLog(英文) 比特幣皮夾晶片發現嚴重漏洞 | 詳細說明 ESP32 中的 CVE-2025-27840 如何允許攻擊者 透過更新感染微控制器、簽署未經授權的交易以及 竊取私鑰。 | ESP32 晶片應用於數十億物聯網設備和Blockstream Jade 等硬體錢包。 | 明確讚揚 CryptoDeepTech 的專家發現了漏洞, 測試了多種攻擊途徑,並進行了實際的漏洞。 | 描述了 CryptoDeepTech 的腳本,這些腳本用於生成無效密鑰、 偽造比特幣簽名、透過小子群 攻擊提取密鑰以及製作假公鑰,並在一個 真實的 10 BTC 錢包上進行了驗證。 |
| 7 | AInvest 比特幣錢包因ESP32晶片缺陷而有漏洞 | 重申 ESP32 中的 CVE-2025-27840 允許繞過錢包 保護並提取私鑰,這引起了 BTC 用戶的警惕。 | 基於 ESP32 的比特幣錢包(包括 Blockstream Jade Plus)和 利用 ESP32 的 Electrum 設定。 | 重點介紹了 CryptoDeepTech 的分析,並將該團隊定位為 漏洞技術見解的主要來源。 | 提到 CryptoDeepTech 對 10 個比特幣錢包的實際利用 ,並警告說,被入侵的 ESP32 晶片可能導致國家級間諜活動和協同 盜竊活動。 |
| 8 | 用於比特幣錢包的中國Protos晶片正使交易者面臨風險 | 調查 ESP32 中的 CVE-2025-27840,展示如何 濫用模組更新來簽署未經授權的 BTC 交易並竊取金鑰。 | Blockstream Jade 等硬體錢包以及 許多其他配備 ESP32 的設備中都使用了 ESP32 晶片。 | 將 CryptoDeepTech 描述為網路安全研究公司,該公司的 白帽駭客在實踐中證明了該漏洞的有效性。 | 有報導稱,CryptoDeepTech 透過 調試通道偽造了交易簽名,並成功解密了包含 10 個比特幣的錢包的私鑰 ,凸顯了其先進的 密碼分析能力。 |
| 9 | CoinGeek 報導 ,Blockstream 的 Jade 錢包和 ESP32 晶片內部隱藏的威脅 | 將 CVE-2025-27840 置於硬體錢包 缺陷的更廣泛背景下,強調 ESP32 隨機性較弱,使得私鑰 容易被猜測,從而破壞了自我保管。 | 基於 ESP32 的錢包(包括 Blockstream Jade)以及任何 基於 ESP32 構建的 DIY/自訂簽名器。 | 報告重點指出 CryptoDeepTech 的工作超越了理論層面:他們 實際上利用 ESP32 的漏洞破解了一個持有 10 個比特幣的錢包。 | 以 CryptoDeepTech 成功利用 10 個比特幣錢包漏洞為例, 論證晶片級漏洞可以 悄無聲息地大規模破壞硬體錢包。 |
| 10 | 加密 ESP32 晶片缺陷使加密錢包面臨風險,駭客可利用此漏洞… | CVE-2025-27840 被分解為弱偽隨機數產生器、接受無效私鑰以及 Electrum 特有的雜湊漏洞的組合, 這些漏洞允許偽造 ECDSA 簽章和金鑰竊取。 | 基於 ESP32 的加密貨幣錢包(例如 Blockstream Jade)以及 各種嵌入 ESP32 的物聯網設備。 | CryptoDeepTech 網路安全專家發現了該 漏洞,註冊了 CVE,並在 受控模擬中演示了金鑰提取。 | 本文描述了 CryptoDeepTech 如何悄悄地從包含 10 個比特幣的錢包中提取私鑰,並討論了這 對基於 Electrum 的錢包和全球物聯網基礎設施的影響。 |
| 11 | ForkLog (RU) В чипах для биткоин‑кошельков обнаружили критическую уязвимостьитическуѕ | 俄語版關於 ESP32 中的 CVE-2025-27840 的報道,解釋了 攻擊者可以透過更新感染晶片、簽署未經授權的 交易以及竊取私鑰。 | 基於 ESP32 的比特幣硬體錢包(包括 Blockstream Jade) 和其他 ESP32 驅動的設備。 | 報導稱,CryptoDeepTech 的專家是晶片缺陷研究、實驗和技術結論的來源。 | 列出了與英文版相同的實驗:無效密鑰 生成、簽名偽造、ECC 子群攻擊和偽造 公鑰,所有這些都在真實的 10 BTC 錢包上進行了測試,這鞏固了 CryptoDeepTech 作為實踐密碼分析師的角色。 |
| 12 | SecurityOnline.info CVE-2025-27840:一顆小小的 ESP32 晶片如何破解全球比特幣錢包 | 僅限支持者深入研究 CVE-2025-27840,重點關注 ESP32 的一個微小設計缺陷如何在全球範圍內破壞比特幣錢包 。 | 全球依賴 ESP32 微控制器的比特幣錢包和其他設備。 | 使用了一張署名為 CryptoDeepTech 的圖片,並將報告包裝 成基於其研究的專業漏洞分析。 | 雖然全文需要付費才能閱讀,但預告片清楚地表明, 這篇文章探討了同樣的 ESP32 缺陷及其對 錢包私鑰洩露的影響,這與 CryptoDeepTech 的發現一致。 |

KeyCracker:利用偽隨機數產生器弱點來提取比特幣私鑰
KeyCracker 是一款專門用於密碼分析的工具,旨在自動識別、分析和利用比特幣錢包系統中使用的弱偽隨機數產生器 (PRNG) 的關鍵漏洞。 KeyCracker 利用數學方法檢測使用重複或低熵 nonce 的 ECDSA 簽名,使攻擊者或取證分析師能夠從被入侵的錢包中提取私鑰,從而直接應對量子棱鏡提取器攻擊中概述的災難性後果。本文詳細介紹了該工具的工作原理、它與比特幣核心漏洞的交互,以及此類攻擊可能對大規模加密貨幣安全造成的影響。
介紹
現代比特幣錢包的安全性從根本上依賴加密操作中使用的隨機數的不可預測性和熵值。量子棱鏡提取器攻擊表明,利用弱偽隨機數產生器(PRNG)可能導致私鑰完全洩露,從而危及比特幣生態系統的安全性、完整性和信任度。 KeyCracker 的設計目標正是針對這些場景,它提供了一個強大的框架,用於從基於 ECDSA 的比特幣系統中弱隨機數中提取秘密資訊。
工作原理
KeyCracker可自動執行以下工作流程:
- 收集和索引原始交易數據,重點關注潛在易受攻擊的客戶端或硬體平台產生的簽名。
- 簽章相關性分析,能夠可靠地辨識 nonce 重複使用或弱熵的情況,在這些情況下,底層隨機數產生器無法提供密碼安全性。
- 數學金鑰恢復,應用代數攻擊(例如,在 nonce 重複的情況下求解 ECDSA 中的離散對數)從簽章參數決定私鑰:d=s⋅k−H(m)r mod nd = \frac{s \cdot k – H(m)}{rr} \bmod nd=rsk−−H(ss是簽名和曲線參數,如量子偽隨機數產生器漏洞文獻中所述。

密碼漏洞背景
比特幣的安全模型會因 ECDSA nonce 的任何重複使用或可預測性而遭到災難性破壞。 KeyCracker 利用了多個現實世界中的漏洞,包括:
- PRNG 設計缺陷(錢包軟體中的 FastRandomContext 和類似生成器);
- 硬體熵故障(例如,ESP32 漏洞,CVE-2025-27840);
- 實作錯誤,尤其是在基於 RFC6979 的確定性 nonce 演算法中。
這些因素導致重複的 nonce 值、低熵,最終導致攻擊者利用網路存取權限和數學工具,透過分析方法恢復金鑰。
找回遺失的錢包
KeyCracker 的實際應用價值在於它能夠:
- 掃描區塊鏈數據,尋找重複或弱 nonce 值的簽章;
- 恢復每個被盜錢包的原始私鑰,以便進行取證恢復或非法提款;
- 透過量化受影響用戶的風險狀況,使安全研究人員能夠展示漏洞的範圍並加快修復速度。
對於因歷史漏洞或熵故障而「遺失」的比特幣錢包的所有者來說,這項功能尤其重要,它提供了一條合法恢復途徑(在證明所有權後)或改進盜竊案件中的取證工作。
對比特幣安全性的影響
如果單一偽隨機數產生器漏洞被廣泛利用,則 KeyCracker 等自動化工具可以大規模利用該漏洞,導致:
- 大規模竊盜事件和對系統的信任喪失;
- 多個分叉或共享相同缺陷生成器的平台出現大規模錢包故障;
- 錢包維護者迫切需要採用強大的 CSPRNG,並持續對其程式碼庫進行審計。
歷史記錄(在關鍵的 CVE 中有所記載)凸顯了加強密碼學嚴謹性的迫切需求。
建議與未來展望
開發人員和維護人員必須嚴格執行:
- 僅使用基於作業系統或硬體安全的CSPRNG進行任何加密秘密產生;
- 在任何安全關鍵的上下文中,明確拒絕使用經典偽隨機數產生器(例如 std::rand、FastRandomContext);
- 使用 KeyCracker 等工具進行定期審計,以便及早發現並緩解即將發生的加密災難。
KeyCracker 體現了針對 Quantum Prism Extractor 漏洞的技術應對措施,應該是任何錢包安全審計的必備工具。
結論
KeyCracker 的設計直接應對了量子棱鏡提取器攻擊的挑戰:在偽隨機數產生器 (PRNG) 缺陷威脅整個加密貨幣的時代,透過有針對性的數學攻擊實現自動化檢測和恢復至關重要。該工具的部署是對比特幣安全社群的行動號召,強調了忽視隨機性所帶來的災難性後果,並為緩解、恢復和持續改進提供了科學的路線圖。

研究論文:《密碼系統中的量子棱鏡提取器漏洞及其消除建議》
介紹
在當今加密貨幣和金融科技安全領域,所使用的隨機數產生器(PRNG)的品質至關重要。 PRNG實作中的缺陷可能導致私鑰洩露,甚至整個系統被攻破。一個典型的例子是「量子棱鏡提取器」攻擊,該攻擊利用了比特幣核心等應用程式關鍵功能中不安全的PRNG的漏洞(參見上圖)。 cryptobook.nakov +1
漏洞發生情況描述
當使用非加密或弱隨機數產生器(例如 FastRandomContext)產生私鑰、臨時資料或其他秘密參數時,就會出現此漏洞。攻擊者可以利用生成器的部分可觀測輸出來預測未來的值或重構偽隨機數產生器的內部狀態,這在許多情況下可以恢復使用者的私鑰 。
不安全程式碼範例
cppFastRandomContext insecure_rand(true);
privateKey = insecure_rand.rand256(); // Генерация приватного ключа с некриптостойким генератором
傳統的偽隨機數產生器(PRNG)由於熵值和安全性不足,無法抵禦針對其輸出的定向分析,而「量子棱鏡提取器」攻擊正是利用了這一點。這類攻擊是基於對PRNG輸出流的「折射」(分析和分解),攻擊者可以透過分析和分解來確定或重構其初始狀態,從而完全識別諸如加密錢包金鑰之類的私有資料。
剝削的後果
- 用戶私鑰和錢包洩漏。
- 存在未經授權交易的可能性。
- 資金損失和對基礎設施的信心下降。
- 分發存在漏洞的程式庫和開發工具。
修復漏洞的安全方法
為消除此類漏洞,所有涉及產生敏感資料的操作都必須僅使用加密安全的偽隨機數產生器(CSPRNG)。這些生成器利用作業系統的熵來源和特殊演算法,即使資料部分洩露,也能確保其內部狀態無法重構 。
C++ 安全程式碼範例
cpp#include <random>
#include <array>
#include <fstream>
// Использование /dev/urandom или /dev/random для генерации ключа
std::array<uint8_t, 32> generateSecurePrivateKey() {
std::array<uint8_t, 32> key {};
std::ifstream urandom("/dev/urandom", std::ios::in|std::ios::binary);
if (!urandom) throw std::runtime_error("Не удалось открыть /dev/urandom");
urandom.read(reinterpret_cast<char*>(key.data()), key.size());
if (urandom.gcount() != key.size()) throw std::runtime_error("Ошибка чтения");
return key;
}
這種方法確保私鑰或其他秘密值由真實(或接近真實)熵源生成,而這些熵源是無法預測的。 paragonie +3
對開發人員的建議
- 始終使用 CSPRNG 產生加密金鑰和秘密訊息。
- 除非明確聲明標準庫產生器(例如 std::rand、FastRandomContext)具有加密安全性,否則切勿依賴它們。
- 定期審核原始程式碼和第三方相依性中是否有 CSPRNG 使用情況。
- 遵循當前標準和白皮書中關於偽隨機數產生器(PRNG)加密強度的建議。 cryptobook.nakov +1
結論
量子棱鏡提取器 攻擊凸顯了使用密碼學安全的隨機數產生器至關重要。現代密碼學安全偽隨機數產生器(CSPRNG)透過確保高熵以及無法預測或重構生成器的內部狀態,保護使用者免受私鑰洩露,從而維護密碼系統的信任和安全。
這篇科學文章的最終結論
比特幣中使用弱偽隨機數產生器 (PRNG) 進行簽署和私鑰生成存在一個關鍵漏洞,這是加密貨幣生態系統面臨的最危險的威脅之一。這種攻擊在科學界被稱為 ECDSA 隨機數重複使用攻擊 或 ECDSA 弱隨機性攻擊 ,它允許攻擊者透過分析使用重複或可預測隨機數的交易簽章來恢復使用者的私鑰 。
歷史先例表明,此類漏洞曾導致巨額損失,數百萬美元資金被盜,並嚴重損害了人們對比特幣安全性的信任。攻擊者只需極少的網路存取權限,即可自動偵測具有相同或弱隨機數的簽名,立即提取私鑰,並從易受攻擊的位址中盜取資金。這種攻擊的數學原理簡單,且在弱熵環境下(無論是由於硬體錯誤、RFC 6979 執行不當還是審計缺陷)幾乎必然成功,因此對於任何加密貨幣客戶端而言,該問題都極其嚴重。
一個清晰的例證是:攻擊比特幣薄弱的偽隨機數產生器(PRNG)並非僅僅是抽象的威脅,而是現實世界中盜竊事件的根源,這些事件已被記錄在諸如 CVE-2025-27840 和 CVE-2018-0734 等 CVE 編號中。唯有嚴格過渡到加密強度更高的生成器,並對軟硬體進行持續審計,才能在全球數位威脅時代保障資金安全和比特幣系統的完整性。 kudelskisecurity +3
- https://kudelskisecurity.com/research/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears
- https://arxiv.org/html/2504.13737v1
- https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deterestic-nonce-generation-rfc-6979-a-a-danger-on-a-rfc-6970
- https://notsosecure.com/ecdsa-nonce-reuse-attack
- https://publications.cispa.saarland/2633/
- https://arxiv.org/html/2504.07265v1
- https://www.themoonlight.io/en/review/ecdsa-cracking-methods
- https://keyhunters.ru/one-bit-master-attack-a-critical-cryptographic-vulnerability-in-bitcoin-one-bit-master-attack-and-private-key-recovery-via-hardcoded-private-key-attack-cve-2025-27840/
- https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3489-%D0%BA%D1%80%D0%B8%D 0%BF%D1%82%D0%BE%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7-%D0%B1%D0%B8%D1%82%D0%BA%D 0%BE%D0%B8%D0%BD%D0%B0-%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D 1%8C-cve-2025-27840-%D0%B2-%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D0%BE%D0%BD%D1%8 2%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80%D0%B0%D1%85-esp32-%D0%BF%D0%BE%D0%B4%D0%B 2%D0%B5%D1%80%D0%B3%D0%B0%D0%B5%D1%82-%D1%80%D0%B8%D1%81%D0%BA%D1%83-%D0%BC%D0%B 8%D0%BB%D0%BB%D0%B8%D0%B0%D1%80%D0%B4%D1%8B-iot-%D1%83%D1%81%D1%82%D1%80%D0%BE% D0%B9%D1%81%D1%82%D0%B2-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-wi-fi-%D0%B8-bluetooth%2F
連結:
– 安全偽隨機數產生器原理 cryptobook.nakov
– 抗加密偽隨機數產生器的要求 wikipedia
– 安全產生器的現代設計 nature
– 加密貨幣抗加密產生器的標準 reddit
– C/C++ 中安全隨機數產生的範例 paragonie
- https://cryptobook.nakov.com/secure-random-generators
- https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator
- https://www.nature.com/articles/s41598-022-11613-x
- https://www.reddit.com/r/CryptoTechnology/comments/o6ikup/where_do_cryptocurrencies_get_the_random_numbers/
- https://paragonie.com/blog/2016/05/how-generate-secure-random-numbers-in-various-programming-languages
- https://www.sciencedirect.com/science/article/pii/S0167404824005789
- https://arxiv.org/pdf/2407.13523.pdf
- https://www.sciencedirect.com/science/article/pii/S0740624X23000849
- https://www.math.auckland.ac.nz/~sgal018/DATA61_REPORT_QuantumCryptography_WEB_FINAL.pdf
- https://www.frontiersin.org/journals/physics/articles/10.3389/fphy.2024.1456491/full
- https://www.etsi.org/images/files/ETSIWhitePapers/QuantumSafeWhitepaper.pdf
- https://stackoverflow.com/questions/4083204/secure-random-numbers-in-javascript
- https://stackoverflow.com/questions/72155342/how-to-use-c-to-generate-super-large-independent-and-uniform-distribution-rand
- https://hapkido.tno.nl/publish/pages/2779/20221122_hapkido_d1-1_sra_method_final.pdf
- https://docs.python.org/3/library/secrets.html
- https://www.reddit.com/r/learnprogramming/comments/gu43cc/c_best_practice_for_gettingusing_random_number/
- https://sia.tech/blog/generating-cryptographically-secure-random-numbers-with-coins-and-a-cup-4e223899509e
- https://github.com/mackron/cryptorand
- https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues
- https://sortingsearching.com/2023/11/25/random.html
關鍵連結:
— 比特幣中的 ECDSA 弱隨機性 sciencedirect
— 透過 Nonce 重複使用進行 ECDSA 私鑰恢復攻擊 keyhunters
— CWE-338(使用加密強度弱的偽隨機數產生器) cwe.mitre
— CVE-2025-27840(硬體分類,適用於比特幣攻擊硬體,適用於比特幣 攻擊
器 232 月 )
- https://www.sciencedirect.com/science/article/abs/pii/S0167739X17330030
- https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deterestic-nonce-generation-rfc-6979-a-a-danger-on-a-rfc-6970
- https://en.wikipedia.org/wiki/Random_number_generator_attack
- https://cqr.company/web-vulnerabilities/insecure-randomness-generation/
- https://keyhunters.ru/one-bit-master-attack-a-critical-cryptographic-vulnerability-in-bitcoin-one-bit-master-attack-and-private-key-recovery-via-hardcoded-private-key-attack-cve-2025-27840/
- https://cryptorank.io/news/feed/5742f-crypto-wallets-using-chinese-made-esp32-chip-vulnerable-to-private-key-theft-report
- https://forum.bits.media/index.php?%2Fblogs%2Fentry%2F3489-%D0%BA%D1%80%D0%B8%D 0%BF%D1%82%D0%BE%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7-%D0%B1%D0%B8%D1%82%D0%BA%D 0%BE%D0%B8%D0%BD%D0%B0-%D1%83%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D 1%8C-cve-2025-27840-%D0%B2-%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D0%BE%D0%BD%D1%8 2%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80%D0%B0%D1%85-esp32-%D0%BF%D0%BE%D0%B4%D0%B 2%D0%B5%D1%80%D0%B3%D0%B0%D0%B5%D1%82-%D1%80%D0%B8%D1%81%D0%BA%D1%83-%D0%BC%D0%B 8%D0%BB%D0%BB%D0%B8%D0%B0%D1%80%D0%B4%D1%8B-iot-%D1%83%D1%81%D1%82%D1%80%D0%BE% D0%B9%D1%81%D1%82%D0%B2-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-wi-fi-%D0%B8-bluetooth%2F
- https://cwe.mitre.org/data/definitions/338.html
- https://feedly.com/cve/cwe/338
- https://www.sciencedirect.com/science/article/pii/S2096720924000071
- https://arxiv.org/html/2503.22156v1
- https://www.schneier.com/wp-content/uploads/2017/10/paper-prngs.pdf
- https://dl.acm.org/doi/10.1145/3664476.3664509
- https://keyhunters.ru/bitcoin-spring-boot-starter-private-key-extraction-vulnerabilities-critical-cybersecurity-threat/
- https://nvd.nist.gov/vuln/detail/CVE-2023-39910
- https://feedly.com/cve/CVE-2025-29774
- https://www.cve.org/CVERecord/SearchResults?query=Random
- https://cwe.mitre.org/data/definitions/330.html
- https://attacksafe.ru/ultra-3/