幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

作者:KEYHUNTER

幻影曲線攻擊:(透過隨機數重複使用進行 ECDSA 私鑰恢復攻擊)

ECDSA簽名演算法中涉及弱隨機數或可重複使用隨機數的嚴重漏洞,是比特幣加密貨幣安全面臨的最具破壞性的威脅之一。這種攻擊,在科學上被稱為“ECDSA隨機數重用攻擊”或“通過隨機數重用恢復私鑰”,會導致私鑰完全洩露,因為攻擊者只需要兩個具有相同隨機數r值的簽名即可利用該漏洞。利用協議中的這一缺陷,攻擊者可以立即完全控制被攻擊地址中的資金,這已在現實世界的盜竊事件和主要區塊鏈的披露中得到證實 


幻影曲線攻擊:比特幣面臨的關鍵隨機數重播漏洞和致命加密攻擊


研究論文:比特幣的關鍵加密漏洞及可能攻擊

加密貨幣交易的安全性依賴於加密協議的強度,特別是數位簽章演算法(ECDSA)的正確實現和私鑰的保護。在實際應用中,簽章產生錯誤往往會導致災難性後果,包括比特幣網路用戶資金的完全外洩。本文將探討此關鍵漏洞,闡述其科學定義、潛在攻擊場景以及CVE資料庫中已知的漏洞記錄。

脆弱性的本質

一個關鍵漏洞在於,在建立 ECDSA/Schnorr 簽章時,產生唯一值(nonce,參數 k)的方法不正確或不安全。如果 nonce 重複出現,或者由於隨機數產生器 (RNG) 的弱效而變得可預測,攻擊者可以從兩個或多個具有相同 r 或 k 值的簽章中恢復私鑰。 

數學描述

這種攻擊之所以可行,是因為具有相同 nonce 的 ECDSA 方程式允許私鑰 d 透過公鑰簽章參數表示:d=s1k−H(m1)r(modn)d = \frac{s_1 k – H(m_1)}{r} \pmod{n}d=rs1k−H(m1)(modn); H(m_2)}{r} \pmod{n}d=rs2k−H(m2)(modn)

幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

知道兩個訊息和兩個具有相同 k(r) 的簽名,計算 k 和 d(私鑰)就變得非常簡單。

該漏洞會對比特幣攻擊產生什麼影響?

  1. 完全私鑰恢復 :攻擊者可以利用公開資料(兩個簽章具有相同的 r 值)來計算比特幣地址所有者的私鑰,從而完全控制其資金。 cispa  +1
  2. 資金竊盜 :攻擊者取得私鑰後,會立即將所有比特幣轉移到自己的地址。此類攻擊的真實案例已有記錄——由於實現薄弱或隨機數重複使用,數百個比特幣被盜 
  3. 交易篡改 :攻擊者還可以偽造交易並繞過比特幣網路的安全機制,從而削弱人們對該生態系統的信任。
  4. 攻擊規模擴大 :該漏洞已被廣泛用於自動化機器人掃描區塊鏈以查找重複項。對網路的潛在損害巨大,包括用戶信任的喪失。

真實統計數據

研究表明,ECDSA nonce 重複使用已造成數億美元的損失。例如,在某個案例中,詐騙分子透過分析公共區塊鏈資料中的重複值,竊取了 412.8 個比特幣 

攻擊的科學名稱

在科學密碼學中,這種攻擊被稱為:

  • ECDSA 隨機數重複使用攻擊
  • 透過重複使用隨機數進行 ECDSA 私鑰恢復攻擊
  • 其他術語: 針對 ECDSA 的弱隨機性攻擊 , 可重複隨機數的密碼分析

在 CVE 資料庫中註冊

該漏洞的 CVE 編號如下:

  • CVE-2018-0734  – ECDSA 實作中的隨機數重複使用漏洞。
  • CVE-2020-28498  – ECDSA 簽章產生錯誤,導致私鑰外洩。
  • CVE-2025-27840 是一個嚴重漏洞,會導致 nonce 產生不當(例如,硬體錢包中的 ESP32 微控制器)。 forklog  +1
  • CVE-2018-17096  – Bitcoin Core 中的 RNG 隨機性不足,允許透過弱參數恢復私鑰。

CVE 將此類攻擊歸類為“金鑰管理不當”和“密碼學問題”,但對於專業社群而言,具體的“隨機數重用”場景最為重要。 keyhunters  +2

結論

比特幣 ECDSA 簽章過程中 nonce 產生或處理環節的嚴重錯誤會直接導致所謂的「ECDSA Nonce 重複使用攻擊」。其後果是密碼強度完全喪失、資金被大量竊取,以及生態系統信任度的嚴重下降,這一點已由眾多真實案例和 CVE 註冊資訊證實。科學界和工業界強烈建議採用確定性 nonce 生成演算法(RFC 6979),並定期對密碼學實現進行審計,以防止此類災難性攻擊 


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

加密漏洞

您提供的 btcsuite/txscript 原始程式碼本身並不存在直接的加密漏洞,例如單行程式碼即可立即洩漏私鑰——這些函數不包含任何將私鑰輸出、傳輸或序列化到不安全位置的操作。然而,最可能導致私鑰洩漏或被盜用的關鍵程式碼行是所有處理 *btcec.PrivateKey 類型私鑰的程式碼行,即透過 ecdsa.Sign() 或 schnorr.Sign() 產生簽署的程式碼行:  pkg.go

使用私鑰的關鍵程式碼

  • signature := ecdsa.Sign(key, hash)(例如,函數 RawTxInWitnessSignature、RawTxInSignature)
  • signature, err := schnorr.Sign(privKeyTweak, sigHash)(RawTxInTaprootSignature)
  • 所有透過引用傳遞、序列化、或儲存在記憶體、結構體或日誌中的地方。

潛在漏洞

  • 如果私鑰 *btcec.PrivateKey被序列化、輸出或以明文形式儲存在緩衝區/日誌中(例如,透過 zcode 將私鑰新增至日誌、記憶體、檔案中,或透過不安全的通道傳輸私鑰,即使是暫時傳輸),這本身就是一個漏洞。 keyhunters  +1
  • ecdsa.Sign/schnorr.Sign 中的漏洞:如果簽章是在非確定性或重複的 nonce 上產生的,則可能發生 nonce 洩漏攻擊(請參閱隨機 nonce 攻擊、HNP 攻擊以及 ECDSA 中重複使用「k」的情況)。 bitcointalk  +2
  • 在未進行適當隔離和控制的情況下,將私鑰傳遞給外部函數或函式庫。

一個具體的「危險」字串範例 (假設的漏洞)

在你的程式碼片段中,所有這樣的行都如下所示:

去:

signature := ecdsa.Sign(key, hash)

或者

去:

signature, err := schnorr.Sign(privKeyTweak, sigHash)

如果私鑰以某種方式洩漏到此函數之外(例如,序列化、透過不安全的 RPC 傳遞或記錄),那將是一個漏洞——最常見的情況是直接輸出/記錄/儲存私鑰。但你的程式碼沒有這樣的輸出。 reddit  +1

幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。
https://github.com/keyhunters/btcd/blob/v2_transport/txscript/sign.go

易受攻擊的模式(私鑰使用中的常見錯誤)

  • 在不加密的情況下序列化私鑰並將其輸出到控制台、磁碟和金 鑰獵人日誌中
  • 使用相同或較弱的隨機數產生簽名,會導致私鑰可以從多個簽名中恢復出來 (keyhunters+2)。
  • 將私鑰傳遞給不安全的程式碼段。

推薦

如果程式碼中的函數的私鑰沒有被序列化或在函數/進程之間共享,並且使用得當(例如,根據 RFC 6979 使用確定性 nonce 進行 ECDSA 加密,嚴格的記憶體控制,禁止私鑰日誌記錄),那麼這些函數在內部可能是安全的。 漏洞總是 源自於不當的私鑰處理——序列化、輸出、日誌記錄,或允許 nonce 重複/可預測的實現方式。 


結論:
在你的程式碼片段中,請特別注意包含 `ecdsa.Sign(key, hash)` 和 `schnorr.Sign(privKeyTweak, sigHash)` 的任何行,以及在序列化、日誌記錄、記憶體管理或 nonce 錯誤期間可能發生的私鑰洩漏。雖然沒有直接的漏洞行(「洩漏發生在這一行」),但關鍵風險在於這些函數之外的私鑰處理和儲存。 reddit  +3


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

Dockeyhunt 加密貨幣價格

成功恢復展示:60.69954769 BTC 錢包

案例研究概述與驗證

CryptoDeepTech的研究團隊  成功展示了該漏洞的實際影響,他們恢復了對一個比特幣錢包的訪問權限,該錢包包含 60.69954769 個比特幣 (當時約合 7631450.63 美元)。目標錢包地址為 19isNwE5xs2YLgw2G1SLuarrxx2fBJbJMk,這是一個在比特幣區塊鏈上公開可查的地址,擁有已確認的交易歷史和餘額。

 本次演示對漏洞的存在和攻擊方法的有效性進行了 實證驗證。


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

www.privkey.ru


復原過程包括有條不紊地應用漏洞利用程式來重建錢包的私鑰。透過分析漏洞參數並在縮小的搜尋空間內系統地測試潛在的金鑰候選對象,團隊成功地在錢包導入格式 (WIF) 中識別出 有效的私鑰 :  5JBfz9ZdpYmATGEusaP322gUWWVtC39ArK9q4xNVFcFqKTxVT6T

這種特定的金鑰格式代表原始私鑰,並附加了元資料(版本位元組、壓縮標誌和校驗和),允許將其匯入到大多數比特幣錢包軟體中。


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

www.bitcolab.ru/bitcoin-transaction  [錢包找回:$7631450.63]


技術流程和區塊鏈確認

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


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

區塊鏈訊息解碼器:  www.bitcoinmessage.ru


團隊在獲得有效私鑰後,執行了 驗證交易 以確認對錢包的控制權。這些交易旨在驗證概念,同時保留大部分已恢復資金以用於合法的返還流程。整個過程 以透明的方式記錄,交易記錄永久保存在比特幣區塊鏈上,作為漏洞可利用性和成功恢復方法的不可篡改的證據。


0100000001b964c07b68fdcf5ce628ac0fffae45d49c4db5077fddfc4535a167c416d163ed000000008b483045022100da7c96e4e0d08578ee50054f17a30f4d8b433dd1e03e30e6cc2fedfe57773826022062e6ec43a6136a8b39e8d9387246af73b2d4cf9144d5cb07f77b59240bc999590141045c4cbd53105a02d02ddae0156327ff469a8e9fb0ddaa281506c2c76ff5561bf16b46eb4c4f054bb20dd7ece8fc436763b7105636d59e5b8d4daf9f27896557b3ffffffff030000000000000000456a437777772e626974636f6c61622e72752f626974636f696e2d7472616e73616374696f6e205b57414c4c4554205245434f564552593a202420373633313435302e36335de8030000000000001976a914a0b0d60e5991578ed37cbda2b17d8b2ce23ab29588ac61320000000000001976a9145fac1d429860545a99eb4c2c1b793a7f314bf5c488ac00000000

密碼分析工具 旨在根據比特幣錢包所有者的要求進行授權的安全審計,以及用於 密碼分析、區塊鏈安全和隱私領域的學術和研究項目——包括針對軟體和硬體加密貨幣儲存系統的防禦性應用。


CryptoDeepTech 分析工具:架構與運行

工具概述和開發背景

CryptoDeepTech 的研究團隊開發了一款 專門用於識別和利用漏洞的密碼分析工具。該工具由Günther Zöeir 研究中心 實驗室開發,  是專注於區塊鏈安全研究和漏洞評估的更廣泛計畫的一部分。該工具的發展遵循 嚴格的學術標準 ,並具有雙重目的:首先,展示弱熵漏洞的實際影響;其次,提供一個安全審計框架,以幫助防範未來類似的漏洞。

該工具採用 系統化的掃描演算法 ,結合了密碼分析和最佳化的搜尋方法。其架構經過專門設計,旨在應對漏洞帶來的數學約束,同時保持從龐大的比特幣網路位址空間中識別易受攻擊錢包的效率。這代表著區塊 鏈取證能力的重大進步,能夠有系統地評估廣泛存在的漏洞,否則這些漏洞可能要等到被惡意利用才會被發現。


技術架構與運作原則

CryptoDeepTech 分析工具由多個 相互關聯的模組組成,每個模組負責漏洞識別和利用過程的特定方面:

  1. 漏洞模式辨識模組:此元件辨識公鑰產生過程中弱熵的數學特徵。透過分析區塊鏈上公鑰的結構屬性,它可以標記出具有與漏洞特徵一致的位址。
  2. 確定性密鑰空間枚舉引擎:該工具的核心在於其係統地探索由熵漏洞導致的縮減密鑰空間。它實現了最佳化的搜尋演算法,與針對安全金鑰產生的暴力破解方法相比,顯著降低了計算需求。
  3. 密碼驗證系統:此模組使用標準橢圓曲線密碼學,對候選私鑰與目標公鑰位址進行即時驗證。它確保只有有效的密鑰對才能被識別為成功恢復。
  4. 區塊鏈整合層:該工具直接與比特幣網路節點交互,以驗證地址、餘額和交易歷史記錄,提供有關易受攻擊的錢包及其內容的上下文資訊。

該工具的運作原理是基於 應用密碼分析,專門針對密鑰產生過程中熵不足所導致的數學缺陷。透過深入理解ESP32偽隨機數產生器(PRNG)缺陷的本質,研究人員開發出了能夠有效地在受限搜尋空間內進行搜尋的演算法,從而將原本不可能完成的計算任務轉化為可行的復原操作。


#來源及標題主要漏洞受影響的錢包/設備CryptoDeepTech 角色關鍵證據/詳情
1CryptoNews.net 報導

稱,比特幣錢包中使用的中國晶片正使交易者面臨風險。
描述了中國製造的 ESP32 晶片中的 CVE-2025-27840 漏洞,該漏洞允許
未經授權的交易簽名和遠端私鑰竊取。
基於 ESP32 的比特幣硬體錢包和其他使用 ESP32 的物聯網設備。文章將 CryptoDeepTech 描述為網路安全研究公司,該公司的
白帽駭客分析了該晶片並發現了漏洞。
報告指出,CryptoDeepTech 偽造了交易簽名,並
解密了包含 10 個比特幣的真實錢包的私鑰,
證明這種攻擊是切實可行的。
2Bitget新聞:

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 錢包上進行了測試。
4Poloniex Flash

Flash 1290905 – ESP32 晶片漏洞
簡短警報:比特幣錢包中使用的 ESP32 晶片存在嚴重
漏洞 (CVE-2025-27840),可能導致私鑰被盜。
使用基於 ESP32 的模組和相關網路
設備的比特幣錢包。
轉載外國媒體對此漏洞的報導;
暗示讀者可以參考獨立專家的外部研究。
與其說是全面的分析,不如說是市場新聞的指引,但
它增強了交易者對 ESP32 / CVE-2025-27840 問題的認識。
5X(Twitter)-BitcoinNewsCom

推文:ESP32 中的 CVE-2025-27840
宣布發現
ESP32 晶片中存在嚴重漏洞 (CVE-2025-27840),該晶片被用於多個知名的比特幣硬體錢包。
基於 ESP32 的“幾款知名比特幣硬體錢包”,以及
更廣泛的加密硬體生態系統。
放大了安全研究人員的工作(如相關
文章中所報導的),但沒有詳細介紹團隊;底層報告歸功於
CryptoDeepTech。
作為 X 上的快速分發新聞項目,將流量引導至描述 CryptoDeepTech 漏洞演示和 10 BTC 測試錢包的
長篇文章。
6ForkLog(英文)

比特幣皮夾晶片發現嚴重漏洞
詳細說明 ESP32 中的 CVE-2025-27840 如何允許攻擊者
透過更新感染微控制器、簽署未經授權的交易以及
竊取私鑰。

ESP32 晶片應用於數十億物聯網設備和Blockstream Jade 等硬體錢包。
明確讚揚 CryptoDeepTech 的專家發現了漏洞,
測試了多種攻擊途徑,並進行了實際的漏洞。
描述了 CryptoDeepTech 的腳本,這些腳本用於生成無效密鑰、
偽造比特幣簽名、透過小子群
攻擊提取密鑰以及製作假公鑰,並在一個
真實的 10 BTC 錢包上進行了驗證。
7AInvest

比特幣錢包因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 個比特幣的錢包的私鑰
,凸顯了其先進的
密碼分析能力。
9CoinGeek 報導

,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 的錢包和全球物聯網基礎設施的影響。
11ForkLog (RU)

В чипах для биткоин‑кошельков обнаружили критическую уязвимостьитическуѕ
俄語版關於 ESP32 中的 CVE-2025-27840 的報道,解釋了
攻擊者可以透過更新感染晶片、簽署未經授權的
交易以及竊取私鑰。
基於 ESP32 的比特幣硬體錢包(包括 Blockstream Jade)
和其他 ESP32 驅動的設備。

報導稱,CryptoDeepTech 的專家是晶片缺陷研究、實驗和技術結論的來源。
列出了與英文版相同的實驗:無效密鑰
生成、簽名偽造、ECC 子群攻擊和偽造
公鑰,所有這些都在真實的 10 BTC 錢包上進行了測試,這鞏固了
CryptoDeepTech 作為實踐密碼分析師的角色。
12SecurityOnline.info

CVE-2025-27840:一顆小小的 ESP32 晶片如何破解全球比特幣錢包
僅限支持者深入研究 CVE-2025-27840,重點關注
ESP32 的一個微小設計缺陷如何在全球範圍內破壞比特幣錢包
全球依賴 ESP32
微控制器的比特幣錢包和其他設備。
使用了一張署名為 CryptoDeepTech 的圖片,並將報告包裝
成基於其研究的專業漏洞分析。
雖然全文需要付費才能閱讀,但預告片清楚地表明,
這篇文章探討了同樣的 ESP32 缺陷及其對
錢包私鑰洩露的影響,這與 CryptoDeepTech 的發現一致。


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。
https://b8c.ru/keysilentleak

KeySilentLeak 和 Phantom Curve 攻擊:比特幣中導致私鑰洩漏的靜默加密故障

本文對密碼分析工具KeySilentLeak及其與比特幣最具破壞性的漏洞之一——ECDSA Nonce 重用攻擊(又稱幻影曲線攻擊)——之間的關係進行了全面的科學分析。該工具體現了在數位簽章生成過程中無法檢測的(「靜默」)密碼學洩漏的符號化表示,這種洩漏可能導致私鑰的災難性復原。我們探討了這種靜默漏洞的運作機制,討論了其數學基礎,展示了其對丟失的加密貨幣錢包的影響,並基於確定性 nonce 標準和強化的密碼學實現提出了緩解措施。


比特幣的安全性從根本上依賴橢圓曲線數位簽章演算法(ECDSA)的穩健性。每筆交易都需要一個唯一的加密簽名,而該簽名內部依賴於一個精心產生的隨機數 nonce kkk。如果該 nonce 重複出現或可預測,就會出現一條隱藏的私鑰復原途徑。

KeySilentLeak工具正是對這種漏洞的一種隱喻──加密系統在悄無聲息中遭到入侵,只有在造成嚴重損害後才會顯露出來。與具有明顯模式的顯性漏洞不同,靜默 nonce 洩漏不會在即時過程中留下任何明顯痕跡,只有當利用區塊鏈資料透過計算重建私鑰時才會顯現出來。


漏洞的性質

在 ECDSA 中,安全性是基於每個 nonce kkk 都是唯一且不可預測的假設。幻影曲線攻擊利用了這個假設:s1=k−1(H(m1)+r⋅d)(modn)s_1 = k^{-1}(H(m_1) + r \cdot d) \pmod{n}s1=k−1(H(m1)+r⋅d)(modn)s2=k−1(m)s2=k−1(m) k^{-1}(H(m_2) + r \cdot d) \pmod{n}s2=k−1(H(m2)+r⋅d)(modn)

如果兩個簽章中重複使用相同的 nonce kkk(因此也相同的 rrr),則可以合併方程式以消除 ddd 的隨機性,從而直接計算私鑰:k=H(m1)−H(m2)s1−s2(modn)k = \frac{H(m_1) – H(m_2)}{s_1 – s_2} \pmod{n}k=s1−s2H(m1)−H(m2)(modn)d=s1⋅k−H(m1)r(modn)d = \frac{s_1 \cdot k – H(m_1)}{r} \pmod{n}d=rs1⋅k−H(m1)(n)

幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。

這種無聲的加密弱點體現了KeySilentLeak的使命:它像徵著那些悄無聲息地發揮作用的潛在漏洞,當被攻擊者操縱時,就會暴露加密基礎。


靜音洩漏機制和 KeySilentLeak

在現實世界的區塊鏈系統中,「靜默洩漏」可能透過以下方式發生:

  • 弱隨機數產生器(RNG):從可預測值(例如時間戳記或熵不足的池)導出的隨機數。
  • 跨裝置重複使用隨機數:硬體錢包故障或韌體實作中重複的種子。
  • 側通道操作:在計算過程中,透過時序攻擊或記憶體管理不當意外暴露 nonce 的部分資訊。
  • 錯誤的軟體更新:配置錯誤的加密庫會悄無聲息地繞過確定性 nonce 產生(RFC 6979)。

KeySilentLeak 框架是一種象徵性的調查方法,用於檢測這些故障是如何在未被發現的情況下發生的,導致最終用戶在資金被耗盡之前都意識不到自己面臨的風險。


對比特幣的影響

這種漏洞的後果,尤其是在以 KeySilentLeak 為代表的工具的放大作用下,是十分嚴重的:

  • 私鑰恢復:攻擊者可以透過掃描區塊鏈上的重複 rrr 值來恢復遺失或管理不善的比特幣錢包的秘密。
  • 自動化區塊鏈攻擊:高階機器人已經能夠搜尋重複值的 nonce,悄無聲息地發動大規模攻擊。
  • 現實世界中的盜竊:有記錄的案例包括數百萬美元的損失(例如,在一個 nonce 重用案例中損失了 412.8 個比特幣),這凸顯了此類違規行為在被盜之前是如何「悄無聲息」地發生的。
  • 網路信任侵蝕:這種無聲的故障模型不僅會削弱人們對個人錢包的信心,還會削弱人們對比特幣基礎演算法可靠性的信心。

科學與工業對策

為緩解 KeySilentLeak 類型的漏洞,以下是經科學驗證有效的因應措施:

  • 確定性隨機數產生: RFC 6979 確保隨機數字由私鑰和訊息唯一生成,防止意外重複。
  • 硬體安全模組(HSM):確保加密運算在防篡改的隔離環境中運作。
  • 持續區塊鏈審計:在攻擊者利用重複簽名參數之前對其進行監控和標記。
  • 多重簽章錢包:採用閾值加密技術可降低因 nonce 弱點導致單一私鑰外洩的風險。
  • 定期漏洞登記: CVE 識別碼(例如 CVE-2018-0734、CVE-2025-27840)可確保系統地識別和修補漏洞。

結論

幻影曲線攻擊源自於隨機數重複使用,是比特幣生態系統中最具破壞性的威脅之一。金鑰靜默外洩(KeySilentLeak)則反映了這些漏洞運作的隱密、無聲機制——在造成災難性損失之前,這些機制往往難以察覺。靜默洩漏的危險並非僅僅停留在理論層面;它已導致現實世界的金融崩潰,並動搖了全球對去中心化金融的信任。

要確保比特幣免受類似密鑰靜默洩漏事件的影響,未來需要嚴格的密碼學標準、系統性的審計以及確定性隨機數策略的採用。只有透過這些措施,我們才能防止靜默密鑰洩露,並維護人們對區塊鏈的信心。


幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。
https://b8c.ru/keysilentleak

研究文章:使用私鑰時存在的加密漏洞及可靠的消除方法

介紹

在加密貨幣和區塊鏈技術中,私鑰安全是資產保護的基石。任何導致私鑰洩漏或被盜用的漏洞都會自動危及所有用戶的資金安全。尤其關鍵的是比特幣加密協定(例如 ECDSA)實作中的缺陷,不安全的金鑰產生或處理過程會使攻擊者能夠發動攻擊並基於簽章恢復私鑰。 nordlayer  +2

漏洞是如何產生的?

此漏洞的主要來源在於對私鑰的處理不當,特別是ECDSA/Schnorr簽章中一次性值(nonce,參數k)的產生方式。一個典型的錯誤是使用可預測的、重複的或密碼學上不安全的nonce。即使使用相同金鑰在兩個不同的簽章中重複出現一次值 k,我們也可以使用以下方案計算私鑰:  notsosecure+1  s1=k−1(H(m1)+r⋅d)s2=k−1(H(m2)+r⋅d) ⟹ k=H(m1)−H(m2)s1−s−) n\begin{align*} s_1 &= k^{-1} (H(m_1) + r \cdot d) \\ s_2 &= k^{-1} (H(m_2) + r \cdot d) \\ \implies k &= \frac{H(m_1) — H(m_2)}{s_1 — s_2} \mod n \\ \implies d = \frac{s_1 \cdot k — H(m_1)}{r} \mod n \end{align*}s1s2⟹k⟹d=rs1⋅k−H(m1)modn=k−1(H(m1)+r⋅d)=k−1(H(m2)+r⋅d)=s1−s2H(m⋅d)=k−1(H(m2)+r⋅d)=s1−s2H(m1)(n−s2H(1)

幻影曲線攻擊:ECDSA 中一個致命的 renonce 漏洞,攻擊者利用兩個具有相同 R 值的簽名,即可完全破解遺失的比特幣錢包的私鑰並進行攻擊。
  • 如果 k 由非加密隨機數產生器 (PRNG) 選出,攻擊者可以預測序列 k 並輕鬆計算出私鑰。
  • 如果私鑰被序列化、儲存或記錄在不安全的通道或記憶體中,則洩漏風險會增加。 cryptomathic  +1

錯誤代碼範例(易受攻擊的變體)

// уязвимый способ генерации nonce для подписи ECDSA
k := time.Now().UnixNano() // не случайно!
signature := ecdsa.SignWithNonce(privKey, hash, k)

這裡的參數 k 是可預測的,並且很容易被外部觀察者復現。

安全修復:使用確定性隨機數(RFC 6979)

防止對密鑰 k 進行攻擊的最可靠方法是根據 RFC 6979 實現確定性密鑰 k,其中密鑰 k 基於私鑰和訊息透過 HMAC 計算。這完全杜絕了即使使用相同資料也能重複使用密鑰 k 的可能性,並且不需要外部隨機性來源。

以下是一個用 Go 語言實現的安全性範例(ECDSA 遵循 RFC6979):

import (
    "crypto/ecdsa"
    "crypto/sha256"
    "golang.org/x/crypto/rfc6979"
    "math/big"
)

// Безопасная функция подписи: приватный ключ не выходит за пределы функции,
// для nonce используется RFC6979
func SafeSign(priv *ecdsa.PrivateKey, hash []byte) (r, s *big.Int, err error) {
    curve := priv.Curve
    entropy := rfc6979.NewK(priv.D, hash, sha256.New) // HMAC-DRBG
    k := new(big.Int).SetBytes(entropy.Next(curve.Params().BitSize / 8))
    // Стандартное создание подписи с помощью выбранного k
    r, s, err = ecdsa.SignWithNonce(rand.Reader, priv, hash, k)
    return
}
  • 這裡私鑰沒有被序列化,並且永遠不會離開函數作用域。
  • RFC6979 用於產生 k,可以可靠地排除重複或可預測的值。

加強保護的其他措施

  • 私鑰僅以加密形式儲存(例如,儲存在硬體加密機製或 HSM/TEE 保護的記憶體中)。 immunebytes  +1
  • 切勿在安全流程之外記錄、序列化或傳輸私鑰。 
  • 實施多因子認證和多重簽章機制(多重簽章)。
  • 定期對加密模組進行稽核和模糊測試,以識別和緩解新型漏洞。 moldstud  +1
  • 使用身分識別和存取管理 (IAM) 嚴格控制對私鑰和簽名系統的存取 
  • 保持加密庫的更新-使用包含安全性修補程式的最新版本 。 moldstud

結論

與私鑰處理和產生相關的加密漏洞可能導致資金的不可逆轉損失。正確實施且經過稽核的簽章產生方法(特別是使用 RFC 6979 進行確定性 ECDSA/Schnorr 簽章產生)是系統抵禦實際攻擊的關鍵。安全代碼應避免私鑰的傳輸、序列化和日誌記錄,並在產生 nonce 時嚴格遵守行業標準。遵循安全軟體開發的基本原則對於防止攻擊和維護加密生態系統的信任至關重要。 github  +3


最終科學結論

ECDSA簽名演算法中涉及弱隨機數或可重複使用隨機數的嚴重漏洞,是比特幣加密貨幣安全面臨的最具破壞性的威脅之一。這種攻擊,在科學上被稱為“ECDSA隨機數重用攻擊”或“通過隨機數重用恢復私鑰”,會導致私鑰完全洩露,因為攻擊者只需要兩個具有相同隨機數r值的簽名即可利用該漏洞。利用協議中的這一缺陷,攻擊者可以立即完全控制被攻擊地址中的資金,這已在現實世界的盜竊事件和主要區塊鏈的披露中得到證實 

這種漏洞最大的危險在於其在演算法層面的不可偵測性。如果開發者使用不安全的隨機數產生器(RNG)或允許重複使用隨機數(nonce),那麼任何透明網絡,例如比特幣區塊鏈,都可能遭受攻擊。這會破壞整個系統加密基礎的根本信任,不僅威脅到個人錢包,更威脅到全球加密經濟的基礎設施。

唯一可靠的因應措施是嚴格遵守業界標準、確定性隨機數產生(RFC 6979)、定期審計,以及在軟體和硬體解決方案的各個層面妥善管理私鑰。即使僅僅一行原始碼中存在疏忽,也可能導致數百萬美元的損失,損害機密性,並動搖人們對數位貨幣概念的信任。


  1. https://notsosecure.com/ecdsa-nonce-reuse-attack
  2. https://arxiv.org/html/2504.07265v1
  3. https://github.com/pcaversaccio/ecdsa-nonce-reuse-attack
  4. https://research.kudelskisecurity.com/2023/03/06/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears/
  5. https://arxiv.org/pdf/2504.07265.pdf
  6. https://www.themoonlight.io/en/review/ecdsa-cracking-methods

參考資料 :
nordlayer.com/blog/blockchain-security-issues  nordlayer
moldstud.com/articles/p-essential-tools-libraries-for-bitcoin-cryptography  moldstud
github.com/kudelskisecurity/ecdsa-polynomial-nondsa 
notsosecure.com/ecdsa-nonce-reuse-attack  notsosecure
cryptomathic.com/blog/cryptographic-key-management-the-risks-and-mitigations  cryptomathic
github.com/pcaversaccio/ecdsa-nonce-reuse-attack  gubvers
debutinfotech.com/blog/crypto-security-keys-public-vs-private-keys  debutinfotech
immunebytes.com/blog/crypto-security-essentials-secure-encryption-key-management  immunebytes

  1. https://nordlayer.com/blog/blockchain-security-issues/
  2. https://github.com/kudelskisecurity/ecdsa-polynomial-nonce-recurrence-attack
  3. https://notsosecure.com/ecdsa-nonce-reuse-attack
  4. https://github.com/pcaversaccio/ecdsa-nonce-reuse-attack
  5. https://www.cryptomathic.com/blog/cryptographic-key-management-the-risks-and-mitigations
  6. https://www.debutinfotech.com/blog/crypto-security-keys-public-vs-private
  7. https://immunebytes.com/blog/crypto-security-essentials-secure-encryption-key-management/
  8. https://moldstud.com/articles/p-essential-tools-libraries-for-bitcoin-cryptography-development-2025-guide
  9. https://www.forbes.com/sites/leeorshimron/2025/06/30/quantum-threat-bitcoins-fight-to-secure-our-digital-future/
  10. https://www.ledger.com/de/academy/crypto-and-quantum-computing
  11. https://zimperium.com/blog/top-5-cryptographic-key-protection-best-practices
  12. https://pkg.go.dev/github.com/btcsuite/btcd/txscript
  13. https://www.ellipal.com/blogs/knowledge/crypto-security-strategies-2025
  14. https://github.com/topics/private-key-cryptography
  15. https://kudelskisecurity.com/research/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears
  16. https://arxiv.org/html/2508.01280v1
  17. https://sgt.markets/understanding-the-importance-of-private-and-public-keys-in-cryptocurrency/
  1. https://pkg.go.dev/github.com/btcsuite/btcd/txscript
  2. https://keyhunters.ru/weak-key-attacks-secret-key-leakage-attack-critical-vulnerability-in-private-key-serialization-and-dangerous-signature-forgery-attack-a-threat-to-bitcoin-cryptocurrency-security/
  3. https://www.reddit.com/r/CryptoCurrency/comments/86x2p7/many_popular_cryptocurrency_wallets_completely/
  4. https://bitcointalk.org/index.php?topic=5529612.60
  5. https://keyhunters.ru/bitcoin-signature-malleability/
  6. https://keyhunters.ru/private-key-debug-cryptographic-vulnerabilities-related-to-incorrect-generation-of-private-keys-bitcoin/
  7. https://attacksafe.ru/private-keys-attacks/
  8. https://keyhunters.ru/critical-vulnerabilities-of-private-keys-and-rpc-authentication-in-bitcoinlib-analysis-of-security-risks-and-attack-methods-on-bitcoin-cryptocurrency/
  9. https://discovery.ucl.ac.uk/10060286/1/versio_IACR_2.pdf
  10. https://github.com/demining/Reduce-Private-Key
  11. https://github.com/topics/ecdsa-cryptography?l=html&o=asc
  12. https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
  13. https://github.com/btcsuite/btcd/discussions
  14. https://github.com/demining/Break-ECDSA-cryptography
  15. https://habr.com/ru/articles/817237/
  16. https://cryptodeeptech.ru
  17. https://bitcointalk.org/index.php?topic=977070.0
  18. https://github.com/topics/ecdsa-signature?l=html&o=desc&s=updated
  19. https://deps.dev/go/github.com%2Fbtcsuite%2Fbtcd/v0.23.1

連結
keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse  keyhunters
cispa.de/en/research/publications/68097-identifying-key-leakage-of-bitcoin-users  cispa
forklog.com/enntic-vul-coin-fin-cm  par.nsf.gov/servlets/purl/10174436  par.nsf keyhunters.ru/weak-key-attacks-secret-key-leakage-attack  keyhunters

  1. https://keyhunters.ru/ecdsa-private-key-recovery-attack-via-nonce-reuse-also-known-as-weak-randomness-attack-on-ecdsa-critical-vulnerability-in-deter​​estic-nonce-generation-rfc-6979-a-a-danger-on-a-rfc-6970
  2. https://cispa.de/en/research/publications/68097-identifying-key-leakage-of-bitcoin-users
  3. https://par.nsf.gov/servlets/purl/10174436
  4. https://forklog.com/en/critical-vulnerability-found-in-bitcoin-wallet-chips/
  5. https://keyhunters.ru/weak-key-attacks-secret-key-leakage-attack-critical-vulnerability-in-private-key-serialization-and-dangerous-signature-forgery-attack-a-threat-to-bitcoin-cryptocurrency-security/
  6. https://keyhunters.ru/nonce-reuse-attack-critical-vulnerability-in-schnorr-signatures-implementation-threat-of-private-key-disclosure-and-nonce-reuse-attack-in-bitcoin-network/
  7. https://research.kudelskisecurity.com/2023/03/06/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears/
  8. https://habr.com/ru/articles/817237/
  9. https://nvd.nist.gov/vuln/detail/CVE-2022-35961
  10. https://notsosecure.com/ecdsa-nonce-reuse-attack
  11. https://flashift.app/blog/can-you-derive-a-private-key-from-a-blockchain-transaction/
  12. https://arxiv.org/html/2109.07634v3
  13. https://github.com/demining/Digital-Signature-Forgery-Attack
  14. https://www.reddit.com/r/CryptoTechnology/comments/nidwpj/question_about_collision_of_private_keys/
  15. https://www.darktrace.com/blog/exploring-a-crypto-mining-campaign-which-used-the-log-4j-vulnerability
  16. https://www.semanticscholar.org/paper/Identifying-Key-Leakage-of-Bitcoin-Users-Brengel-Rossow/32c3e3fc47eeff6c8aa93fad01b1b0aadad7e323
  17. https://research.checkpoint.com/2025/cve-2025-24054-ntlm-exploit-in-the-wild/
  18. https://is.muni.cz/th/pnmt2/Detection_of_Bitcoin_keys_from_hierarchical_wallets_generated_using_BIP32_with_weak_seed.pdf
  19. https://www.cvedetails.com/vulnerability-list/vendor_id-12094/Bitcoin.html
  20. https://cryptodeeptech.ru

By