作者:KEYHUNTER
擂台回放攻擊-基於弱熵的驚人駭客技術
RingSide 重播攻擊(Milk Sad CVE-2023-39910)是一個教科書式的例子,它顯示了熵源中的缺陷如何對比特幣和其他加密貨幣造成災難性後果。這種攻擊被稱為“密鑰生成中的熵弱點利用”或“偽隨機數生成器種子恢復攻擊”,它從科學的角度說明了加密工程中的一個根本性缺陷如何破壞人們對整類錢包的信任,並在未來幾年內威脅到所有用戶的資產安全。 cve +4
CVE-2023-39910漏洞清楚地表明,加密隨機數產生器選擇上的一個錯誤就可能破壞比特幣的整體安全性,並違背人們對去中心化資產的根本信任。種子和私鑰生成過程中的弱熵為攻擊者提供了複製數百萬用戶金鑰並大規模竊取加密貨幣的絕佳機會——既可以從比特幣網路竊取,也可以透過使用存在漏洞的Libbitcoin錢包從其他區塊鏈竊取 。
攻擊者如果知道隨機數產生器的漏洞(例如,使用小種子的梅森旋轉型偽隨機數產生器),就會上演一場名副其實的「密碼拳擊賽」:他們會觀察發佈在區塊鏈或其他使用 libbitcoin 的協議上的 Borromean 環簽名中的公鑰和鹽值。
私鑰生成的關鍵漏洞:毀滅性的「牛奶悲傷」攻擊對比特幣加密貨幣安全的影響
環簽名中的一個關鍵漏洞及其對比特幣安全的影響
加密貨幣的發展催生了眾多創新的加密協議,其中環簽名系統發揮著至關重要的作用。然而,即使是最先進的方案,也容易受到隨機數產生器實現缺陷的影響。 2023年,一起被廣泛報導的攻擊事件,被命名為「Milk Sad」(漏洞編號CVE-2023-39910),由於libbitcoin庫中偽隨機數產生器的漏洞,導致價值數十萬美元的比特幣被盜 。
脆弱性發生的機制
存在漏洞的 Libbitcoin Explorer 版本(3.0.0–3.6.0)使用 mt19937(梅森旋轉演算法)產生器產生私鑰熵,該生成器將內部熵限制為僅 32 位,而不管使用者如何設定。這意味著攻擊者可以:
- 修復交易的公共參數(公共環、鹽值、挑戰值)。
- 嘗試所有可能的種子值(總共 2^32 個選項)來恢復鹽值和計算私鑰的完整路徑。
- 獲取用戶的私鑰並在所有者不知情的情況下轉移資金。 cryptodeeptech +1
對比特幣加密貨幣攻擊的影響
該漏洞允許攻擊者利用此漏洞,從使用存在漏洞的庫版本創建的錢包中定向大規模竊取比特幣。以下是對後果的科學分析:
- 私鑰洩漏: 攻擊者可以重現金鑰產生過程,如果私鑰是透過「bx 種子」或其他易受攻擊的方法產生的,則可以找到任何已知公鑰位址的私鑰。
- 大規模竊盜: 2023年,超過90萬美元的比特幣錢包被盜,這些用戶的金鑰因使用上述方法洩漏而遭到攻擊。 cryptodeep +2
- 對整個比特幣社群的威脅: 比特幣作為一個基於交易完全不可逆性的系統,在使用私鑰被盜後,沒有任何方法可以找回或返還資產。
- 影響範圍廣泛: 此漏洞不僅影響比特幣,也影響其他使用 Libbitcoin 產生金鑰的加密貨幣(例如以太幣、狗狗幣、Zcash 等) 。
攻擊的科學名稱及其 CVE 編號
- 科學名稱: 牛奶悲傷攻擊(針對私鑰/種子產生中的偽隨機數產生器的弱熵攻擊)。
- CWE 標準類別: CWE-338(使用密碼學上較弱的偽隨機數產生器)。
- 已註冊威脅 ID: CVE-2023-39910.incibe +3
程式碼範例 – 漏洞所在
cpp:// Уязвимый вариант — слабый PRNG!
std::mt19937 rng(seed); // seed — 32-битное значение из системного времени и/или пользователя
uint256 secret;
for (size_t i = 0; i < 32; ++i)
secret[i] = rng() & 0xFF; // всего 2^32 вариантов!
如何預防此類攻擊
- 僅使用加密強度高的隨機數產生器:/dev/urandom、OpenSSL RAND_bytes、系統 CSPRNG。
- 定期對第三方庫進行審核,並仔細檢查其文件。
- 如果私鑰安全已經受到威脅,資金必須立即轉移到新的地址。
一段用於產生私鑰的安全程式碼片段:
cpp:#include <fstream>
void secure_random_bytes(uint8_t* buf, size_t len) {
std::ifstream urandom("/dev/urandom", std::ios::in | std::ios::binary);
if (!urandom) throw std::runtime_error("Cannot open /dev/urandom");
urandom.read(reinterpret_cast<char*>(buf), len);
if (urandom.gcount() != static_cast<std::streamsize>(len))
throw std::runtime_error("Read error from /dev/urandom");
}
// Генерация нормально распределённого защищённого секрета
std::array<uint8_t, 32> secret;
secure_random_bytes(secret.data(), secret.size());
結論
Milk Sad (CVE-2023-39910) 是一個教科書式的例子,它顯示了熵源中的缺陷如何對比特幣和其他加密貨幣造成災難性後果。這種攻擊被稱為“密鑰生成中的熵弱點利用”或“偽隨機數生成器種子恢復攻擊”,它從科學的角度說明了加密工程中的一個根本性缺陷如何破壞人們對整類錢包的信任,並在未來幾年內威脅到所有用戶的資產安全。 cve +4
加密漏洞
對環簽名程式碼中的密碼漏洞進行分析
在分析了提供的 Borromean 環簽章實作程式碼和現有關於密碼系統漏洞的研究之後,我可以確定幾個可能出現與金鑰和私鑰洩漏相關的密碼漏洞的潛在領域。
程式碼中的主要脆弱區域
1. 第 46-59 行:處理與儲存密鑰
cpp:static bool generate_keys_map(secret_keys_map& out,
const secret_list& secrets) NOEXCEPT
{
for (const auto& secret: secrets)
{
ec_compressed public_key;
if (!secret_to_public(public_key, secret))
return false;
out.insert({ public_key, secret });
}
return true;
}
漏洞: 密鑰以明文形式儲存在資料結構中 secret_keys_map。

這種結構可能會在記憶體中停留過長時間,造成透過側通道攻擊或記憶體轉儲外洩資料的風險。 crises -deim.urv+1
2. 第 201-222 行:使用金鑰的關鍵操作
cpp:// Find secret key used for calculation in the next step.
BC_ASSERT(known_key_index < ring.size());
const auto& known_public_key = ring[known_key_index];
BC_ASSERT(secret_keys.find(known_public_key) != secret_keys.end());
const auto& secret = secret_keys[known_public_key];
// Now close the ring using this calculation:
const auto& k = salts[i];
const auto& x = secret;
const auto s = k - e_i_j * x;
if (!s)
return false;
嚴重漏洞: 第 216x行在算術運算中 直接使用了密鑰s = k - e_i_j * x。此運算極易受到以下攻擊:
- 時序攻擊 :執行時間可能取決於金鑰 危機-deim.urv的值
- 功耗分析攻擊 :功耗可以洩漏密鑰訊息
- 故障注入攻擊 :注入錯誤可能導致關鍵資訊洩露
3. 第 29-42 行:Borromean 雜湊函數
cpp:static ec_scalar borromean_hash(const hash_digest& M, const data_slice& R,
uint32_t i, uint32_t j) NOEXCEPT
{
// e = H(M || R || i || j)
hash_digest hash{};
stream::out::fast stream{ hash };
hash::sha256::fast sink(stream);
sink.write_bytes(R);
sink.write_bytes(M);
sink.write_4_bytes_big_endian(i);
sink.write_4_bytes_big_endian(j);
sink.flush();
return hash;
}
潛在漏洞: 雖然函數本身看似安全,但資料連接的順序在某些情況下可能會造成長度擴展攻擊或碰撞攻擊 。 arxiv
4. 第147-168行:鹽的生成與利用
cpp:static bool calculate_e0(ring_signature& out, const key_rings& rings,
const hash_digest& digest, const secret_list& salts,
const index_list& known_key_indexes) NOEXCEPT
{
// ...
const auto last_R = calculate_last_R_signing(ring, i, digest, out,
known_key_index, salts);
// ...
}
漏洞 : 鹽值(salts)用於產生簽名,但程式碼並未檢查其加密強度。如果產生的鹽值熵不足(例如 Milk Sad 漏洞),則可能導致私鑰被恢復 。
Libbitcoin 庫中漏洞的背景
值得注意的是,Libbitcoin函式庫本身已經存在嚴重漏洞:
CVE-2023-39910(Milk Sad) :Libbitcoin Explorer 3.0.0-3.6.0 中的熵產生機制使用了較弱的梅森旋轉偽隨機數產生器 (mt19937),將內部熵限制在 32 位元。這使得攻擊者能夠恢復私鑰並竊取超過 90 萬美元。 incibe +3
安全建議
針對第 216 行(關鍵操作):
- 使用恆定時間運算來防止計時攻擊
- 應用偽裝技術來防禦側通道攻擊
- 使用後清除秘密數據
對於 generate_keys_map 函數:
- 使用安全的記憶體分配來儲存金鑰
- 應用記憶混淆技術
- 使用後請確保金鑰已從記憶體中安全刪除。
一般建議:
- 對鹽生成的熵源進行審計
- 為加密參數添加額外的有效性檢查
- 使用經過驗證的加密庫進行關鍵操作
最關鍵的一行是 第 216 行 ,其中直接使用金鑰進行計算,且未採取任何措施防止側通道攻擊 (sciencedirect+1)。

Btcdetect:比特幣私鑰恢復中熵弱點利用的科學分析
Milk Sad漏洞(CVE-2023-39910)揭示了Libbitcoin庫熵生成機制的一個嚴重缺陷,該機制依賴於非加密的梅森旋轉演算法(mt19937)偽隨機數產生器。這個弱點將產生的比特幣私鑰的搜尋空間縮小到僅有2322^{32}232種可能性,使得攻擊者能夠透過暴力破解確定性輸出來重建錢包金鑰。
為了在研究和防禦環境中應對此類風險,可以利用Btcdetect等專用工具。 Btcdetect是一個加密熵分析和偵測框架,能夠辨識比特幣錢包產生中的弱隨機性,追蹤受感染的金鑰空間,並重建易受攻擊的熵路徑。其方法論既可用於學術研究基於偽隨機數產生器的攻擊,也可用於透過從有缺陷的熵源重新匯出私鑰來恢復遺失的加密貨幣錢包。
Btc檢測的核心機制
Btcdetect 的工作原理是系統地追蹤金鑰產生程式中的熵初始化過程,應用數學分析,並重現潛在的弱種子。其運行模型包含三個主要步驟:
- Btcdetect 透過分析錢包二進位檔案、熵初始化呼叫和金鑰產生程式碼路徑,收集並描述
錢包創建過程中使用的熵。對於 Libbitcoin Explorer 3.0.0 至 3.6.0 版本,Btcdetect 發現其std::mt19937核心弱點在於對熵的特定使用。 - 種子空間耗盡:
由於熵空間有限,僅有 2322^{32}232 個可能的種子,該工具使用並行密鑰空間遍歷執行高效的全搜尋。每個種子候選物件都被擴展為一個私鑰,然後轉換為其壓縮/未壓縮的比特幣位址格式。 - 區塊鏈關聯性分析:
利用即時UTXO集掃描器,將產生的位址與比特幣區塊鏈快速比對。在此階段,Btcdetect會驗證哪些重構的私鑰對應到鏈上現有的位址,從而證明存在洩漏風險並支援復原嘗試。
對比特幣安全的影響
Btcdetect 的研究方法在 CVE-2023-39910 及類似的熵相關漏洞的背景下具有深遠意義。它揭示了弱密鑰產生的確定性本質,表明當熵在密碼學上不安全時,數百萬個錢包可能面臨風險。
- 私鑰重構:
鑑於比特幣地址的可預測性mt19937,攻擊者(或道德操縱的安全分析師)能夠重構與公開公鑰地址關聯的私鑰。這直接動搖了比特幣安全性的根基——私鑰在計算上不可猜測的假設。 - 大規模攻擊風險
:Btcdetect 能夠在現代 GPU 叢集上數小時內遍歷整個易受攻擊的熵空間,這意味著攻擊者可以自動執行大規模錢包掃描。這解釋了 Milk Sad 事件中超過 90 萬美元的大規模竊盜案。 - 在合法情況下,當原始種子或助記詞是在有缺陷的偽隨機數產生器
(PRNG) 條件下生成時,Btcdetect 能夠合乎倫理地恢復用戶資金。透過重建可預測的熵路徑,可以恢復那些被誤認為無法找回的錢包。
密碼學意義
Btcdetect 的科學意義不僅限於 Milk Sad 案例,因為它的方法適用於各種偽隨機數產生器漏洞:
- 弱熵(CWE-338):可預測的數字序列,例如
mt19937線性同餘產生器(LCG)或其他不安全的偽隨機數產生器,屬於可利用的模型。 - 側通道偽影:熵池清除不充分可能導致可預測的系統狀態,可透過熵分析檢測。
- 跨生態系統影響:由於許多加密貨幣採用類似的函式庫,Btcdetect 的模型可以推廣到比特幣以外的以太幣、狗狗幣和 Zcash 生態系統。
研究結果表明,熵本身必須被視為一種密碼學原語。一個弱偽隨機數產生器會破壞從種子產生到交易授權的整個安全鏈。
科學建議
從 Btcdetect 的分析模型中汲取的經驗教訓強調了嚴格的密碼工程原理:
- 強制使用 CSPRNG
將所有過時的或速度最佳化的 PRNG 替換為加密安全的產生器(例如/dev/urandom,OpenSSLRAND_bytes、libsodium 的 randombytes())。 - 熵測試框架
將 Btcdetect 等分析工具整合到開發管道中,以便在部署之前自動識別不安全的熵路徑。 - 安全記憶體處理
透過採用安全記憶體清除和持續執行加密算術來防止種子和鹽的長期暴露。 - 事件緩解措施:
當發現熵值不足時,實施緊急遷移協議,使用基於 CSPRNG 的熵值重置錢包種子,同時監控區塊鏈風險。
結論
Btcdetect透過科學分析和實際應用,展示了熵管理不善如何從根本上破壞比特幣錢包的加密保障。 Milk Sad CVE-2023-39910 案例揭示了依賴不安全的偽隨機數產生器所造成的災難性後果,導致用戶資產大規模被盜。
透過系統地偵測弱熵來源、重現可預測的金鑰產生過程,並將結果與區塊鏈資料集關聯起來,Btcdetect 為攻擊者和防禦者提供了一個強大的熵利用模型。其研究成果強調了加密貨幣安全領域的關鍵公理:系統的韌性取決於其核心隨機性的強度。
如果沒有持續的審計、嚴格避免使用弱偽隨機數產生器以及整合 Btcdetect 等檢測框架,比特幣和其他去中心化系統的完整性將始終容易受到熵驅動的金鑰恢復攻擊。

研究論文:環簽名中的關鍵熵漏洞及其安全消除方法
介紹
環簽名被廣泛應用於各種加密貨幣協議(包括libbitcoin中的Borromean環簽名實作),以確保簽署者的匿名性並保護用戶隱私。然而,隨機數產生機制的不當實現會導致嚴重的加密漏洞:私鑰可能被恢復,從而導致資金被盜。 Milk Sad事件生動地展示了此類攻擊,在該事件中,一個弱隨機數產生器導致大量私鑰洩漏。 pmc.ncbi.nlm.nih +2
脆弱性發生的機制
當使用低熵或過時的演算法(例如梅森旋轉演算法)的偽隨機數產生器 (PRNG) 時,就會出現此漏洞。在許多版本的 libbitcoin 中,類似的漏洞會導致產生的鹽 salts值可預測。攻擊實作方式如下: people.csail.mit+2
- 攻擊者攔截(或在區塊鏈中找到)具有環簽名的交易的公共參數:挑戰、公鑰環、鹽值。
- 遍歷可能的偽隨機數產生器種子(例如,如果熵很低,則只有 2^32 個選項)。
- 找出能夠重現目前特徵鹽分的種子。
- 重現計算過程,並且能夠揭示私鑰,因為主方程式 s=k−e×xs = k — e \times xs=k−e×x 允許在已知 s、e 和 k 的情況下找到秘密。
因此,弱熵直接破壞了簽名的匿名性和強度,並導致所有使用此實作生成簽名的用戶的私鑰完全洩露。 sciencedirect +1
安全的解決方案和正確的實施
選擇合適的隨機數產生器
絕對必要條件是使用密碼學安全的偽隨機數產生器(CSPRNG)。此類生成器包括:
- Unix 系統上的 /dev/urandom 或 /dev/random
- Windows CryptGenRandom
- libsodium 或 OpenSSL 的 RAND_bytes 函式庫
注意:標準或快速產生器(例如 mt19937(梅森旋轉器))絕對不適用!
修正後的程式碼範例(C++)
cpp#include <random>
#include <fstream>
#include <array>
// Получение truly random bytes на платформе Linux:
void secure_random_bytes(uint8_t* buf, size_t len) {
std::ifstream urandom("/dev/urandom", std::ios::in | std::ios::binary);
if (!urandom) throw std::runtime_error("Cannot open /dev/urandom");
urandom.read(reinterpret_cast<char*>(buf), len);
if (urandom.gcount() != static_cast<std::streamsize>(len))
throw std::runtime_error("Could not read enough random bytes");
}
// Генерация криптостойкой соли:
ec_scalar generate_strong_salt() {
std::array<uint8_t, 32> rand_bytes;
secure_random_bytes(rand_bytes.data(), rand_bytes.size());
return ec_scalar(rand_bytes);
}
替代已棄用的 salt 生成調用
曾是:
cppec_scalar salt = mt19937_generate();
它變成了:
cppec_scalar salt = generate_strong_salt();
其他措施
- 使用記憶體清除(memset_s 或 std::fill)來儲存秘密值。
- 確保關鍵操作的恆定時間執行(恆定時間算術運算)。
- 定期更新依賴函式庫並審核第三方程式碼。
預防攻擊的一般建議
對於任何加密軟體而言,在設計和整合階段,獨立的外部熵以及對所有隨機數產生方法的徹底檢查至關重要。強烈建議實施自動化測試和品質保證工具,以檢查熵源和 CSPRNG 的行為。 tsapps.nist +1
結論
密碼系統的強度取決於其最弱的環節。實現錯誤並非源自於理論成熟度不足,而是源自於一些微不足道的工程計算失誤。務必使用經過驗證的、現代的、密碼學上安全的偽隨機數產生器 (PRNG),遵循最佳實踐來清除記憶體中的金鑰,並且不要依賴生成速度,而只關注其強度。只有這樣,按照標準實現的環簽名才能真正保護用戶,而不是損害用戶安全。
關鍵連結:
- 隱私保護應用的安全環簽章方案,2023 pmc.ncbi.nlm.nih
- 如何洩漏秘密:環簽名理論與應用,Rivest、Shamir、Tauman Kalai 著, people.csail.mit
- 抗量子環狀簽名方案,2025 年 sciencedirect
- NIST:熵即服務。釋放安全加密的全部潛力 tsapps.nist
- CVE-2023-39910 和 Milk Sad 加密經濟+1 攻擊
最終科學結論
Milk Sad攻擊和CVE-2023-39910漏洞清楚地表明,加密隨機數產生器選擇上的一個錯誤就可能破壞比特幣的整體安全性,並違背人們對去中心化資產的根本信任。種子和私鑰生成過程中的弱熵為攻擊者提供了複製數百萬用戶金鑰並大規模竊取加密貨幣的絕佳機會——既可以從比特幣網路竊取,也可以透過使用存在漏洞的Libbitcoin錢包從其他區塊鏈竊取 。
這不僅是一次工程上的疏忽,更是生態系統和使用者的悲劇。由於漏洞利用徹底破壞了個人資產的匿名性和主權,使用者失去了對其資金的存取權限。這一事件清楚地表明,忽視基本的加密原則會立即將最先進的協議變成攻擊者的敞開大門。
Milk Sad 的嚴重漏洞給我們敲響了警鐘:即使是單一薄弱的組件(例如,熵值僅為 32 位元的過時 mt19937 偽隨機數產生器)也可能破壞比特幣錢包的完整性,使攻擊者能夠完全控制用戶的私鑰和資產。如果沒有持續的審計、僅使用加密安全的隨機數產生庫以及及時的事件回應,加密貨幣系統的風險將始終是致命的且系統性的。
- https://habr.com/ru/articles/771980/
- https://habr.com/en/articles/771980/comments/
- https://temofeev.ru/info/articles/milk-sad-uyazvimost-v-biblioteke-libbitcoin-explorer-3-x-krupnaya-krazha-na-900-000-u-polzovateley-b/
- https://pikabu.ru/story/milk_sad_uyazvimost_v_biblioteke_libbitcoin_explorer_3x_kak_byila_osushchestvlena_kraha_na__900_000_u_polzovateley_bitcoin_koshelkov_na_1079981
- https://www.securitylab.ru/news/540834.php
- https://dzen.ru/a/ZUeLq8F02UkRfPDV
- https://forklog.com/news/hakery-ukrali-svyshe-900-000-cherez-uyazvimost-utility-dlya-bitcoin-koshelkov
- https://www.kaspersky.ru/blog/vulnerability-in-hot-cryptowallets-from-2011-2015/36592/
- https://www.itsec.ru/articles/ataka-51-i-ustojchivost-blokchejna-bitkoina
- https://cyberleninka.ru/article/n/vyyavlenie-podozritelnyh-uzlov-seti-bitcoin-metodami-analiza-bolshih-dannyh
- https://pmc.ncbi.nlm.nih.gov/articles/PMC10527618/
- https://people.csail.mit.edu/rivest/pubs/RST06.pdf
- https://crypto-economy.com/newly-identified-bitcoin-vulnerability-let-hackers-steal-over-900k/
- https://www.incibe.es/en/incibe-cert/early-warning/vulnerabilities/cve-2023-39910
- https://www.sciencedirect.com/science/article/abs/pii/S1389128625001811
- https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=920992
- https://www.sciencedirect.com/topics/computer-science/ring-signature
- https://arxiv.org/pdf/1612.01188.pdf
- https://www.microsoft.com/en-us/research/publication/leak-secret-theory-applications-ring-signatures/
- https://ora.ox.ac.uk/objects/uuid:f5673699-f68f-4362-8796-7cf1a5878c28/files/sdj52w4960
- https://papers.ssrn.com/sol3/Delivery.cfm/e172cc8b-0789-4859-b4d4-144bf77f2d1d-MECA.pdf?abstractid=4627221&bfid=1
- https://www.getmonero.org/resources/moneropedia/ringsignatures.html
- https://crises-deim.urv.cat/web/docs/publications/lncs/829.pdf
- https://www.sciencedirect.com/science/article/pii/S0304397519300210
- https://arxiv.org/pdf/1405.3177.pdf
- https://crypto-economy.com/newly-identified-bitcoin-vulnerability-let-hackers-steal-over-900k/
- https://www.incibe.es/en/incibe-cert/early-warning/vulnerabilities/cve-2023-39910
- https://crypto.news/libbitcoin-vulnerability-leads-to-900k-theft-from-bitcoin-wallets/
- https://www.opencve.io/cve?vendor=libbitcoin&product=libbitcoin_explorer
- https://ventral.digital/posts/2023/10/17/cryptocurrency-privacy-technologies-borromean-ring-signatures/
- https://arxiv.org/html/2403.05271v2
- https://github.com/libbitcoin/libbitcoin-explorer/wiki/cve-2023-39910
- https://www.publish0x.com/cryptodeep/milk-sad-vulnerability-in-the-libbitcoin-explorer-3x-library-xqqmoqd
- https://www.getmonero.org/es/resources/research-lab/pubs/MRL-0005.pdf
- https://milksad.info/disclosure.html
- https://github.com/demining/Milk-Sad-vulnerability-in-the-Libbitcoin-Explorer-3.x
- https://bitcoinworld.co.in/disappearance-of-900k-puts-focus-on-vintage-bitcoin-project-libbitcoin/
- https://nvd.nist.gov/vuln/detail/CVE-2023-39910
- https://attacksafe.ru/private-keys-attacks/
- https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures
- https://forklog.com/news/hakery-ukrali-svyshe-900-000-cherez-uyazvimost-utility-dlya-bitcoin-koshelkov
- https://bitcoinops.org/en/topics/cve/
- https://diyhpl.us/wiki/bitcoin/big-pile/
- https://www.reddit.com/r/Bitcoin/comments/15nbzgo/psa_severe_libbitcoin_vulnerability_if_you_used/
- https://habr.com/ru/articles/771980/
- https://pmc.ncbi.nlm.nih.gov/articles/PMC10527618/
- https://people.csail.mit.edu/rivest/pubs/RST06.pdf
- https://www.lirmm.fr/~laguillaum/CBTRS.pdf
- https://www.getmonero.org/resources/moneropedia/ringsignatures.html
- https://www.sciencedirect.com/science/article/abs/pii/S0020025524010788
- https://www.sciencedirect.com/topics/computer-science/ring-signature
- https://www.cs.umd.edu/~jkatz/papers/ring_sigs.pdf
- https://iacr.org/archive/pkc2007/44500166/44500166.pdf
- https://www.sciencedirect.com/science/article/pii/S1389128625001811
- https://scholars.cityu.edu.hk/en/publications/publication(450608b5-672c-4957-b493-8d9efb51dcd8).html
- https://github.com/yuxi16/Post-Quantum-Linkable-Ring-Signature
- https://www.sciencedirect.com/science/article/abs/pii/S1389128625001811
主要來源:
- https://feedly.com/cve/CVE-2023-39910
- https://www.incibe.es/en/incibe-cert/early-warning/vulnerabilities/cve-2023-39910
- https://www.cve.org/CVERecord?id=CVE-2023-39910
- https://www.nobsbitcoin.com/milk-sad-vulnerability-disclosure/
- https://cryptodeeptech.ru/milk-sad-vulnerability-in-libbitcoin-explorer/
- https://cryptodeep.ru/milk-sad-vulnerability-in-libbitcoin-explorer/
- https://www.sciencedirect.com/science/article/abs/pii/S092054892100057X
- https://arxiv.org/html/2109.07634v3
- https://pmc.ncbi.nlm.nih.gov/articles/PMC9505189/
- https://arxiv.org/html/2508.01280v1
- https://papers.ssrn.com/sol3/Delivery.cfm/e172cc8b-0789-4859-b4d4-144bf77f2d1d-MECA.pdf?abstractid=4627221&bfid=1
- https://milksad.info
- https://milksad.info/disclosure.html
- https://nvd.nist.gov/vuln/detail/CVE-2023-39910
- https://github.com/libbitcoin/libbitcoin-explorer/wiki/cve-2023-39910
- https://nvd.nist.gov/vuln/detail/CVE-2025-9090
- https://security.snyk.io/vuln/SNYK-UNMANAGED-LIBBITCOINLIBBITCOINEXPLORER-5891151
- https://www.nasdaq.com/articles/the-milk-sad-vulnerability-and-what-it-means-for-bitcoin
- https://www.reddit.com/r/Bitcoin/comments/15nbzgo/psa_severe_libbitcoin_vulnerability_if_you_used/
- https://blog.inhq.net/posts/milk-sad-vuln1/