誰使用 Dual_EC_DRBG?
最近的新聞文章表明,NSA 可能參與試圖影響公共標准或商業部署軟體中的密碼學,以使 NSA 能夠解密加密的流量。例如,請參閱《紐約時報》上的這篇文章。
《紐約時報》的文章特別提到了 2006 年 NIST 標準,兩名微軟工程師後來在該標準中發現了一個嚴重問題。《紐約時報》的文章解釋了 NSA 是如何編寫該標準的,他們大力推動了該計劃:
與此同時,美國國家安全域一直在故意削弱開發人員採用的國際加密標準。該機構 2013 年預算請求的一個目標是“影響商業公鑰技術的政策、標準和規範”,這是最常見的加密方法。
密碼學家長期以來一直懷疑該機構在 2006 年由美國加密標準機構國家標準與技術研究院採用的標準中植入了漏洞,該標准後來由擁有 163 個國家的國際標準化組織採用。
機密的 NSA 備忘錄似乎證實了 2007 年兩名微軟密碼學家發現的致命弱點是由該機構設計的。NSA 編寫了該標準,並積極將其推向國際組織,私下稱這項工作是“技巧上的挑戰”。
經過一番調查,我很確定這是對NIST SP 800-90 中描述的Dual_EC_DRBG偽隨機數生成器方案的引用。缺點是 Dual_EC_DRBG 似乎包含一個後門,任何知道後門的人都可以完全破解 PRNG。該弱點首先在 CRYPTO 2007 的一次臀部會議演講中被描述,隨後Bruce Schneier 在 Wired 中進行了討論。
因此,現在有充分的理由懷疑 Dual_EC_DRBG 包含 NSA 後門,而 NSA 可能能夠監視任何使用 Dual_EC_DRBG 的人。
我的問題:
- 誰使用 Dual_EC_DRBG?
- 是否有任何商業產品使用 Dual_EC_DRBG?
- 有人用嗎?
RSA BSAFE 庫(適用於 Java 和 C/C++)將其用作預設 PRNG。
爪哇:
C/C++:
- https://community.emc.com/servlet/JiveServlet/previewBody/4950-102-2-17171/Share-C_1.1_rel_notes.pdf
這顯然會影響“McAfee Firewall Enterprise Control Center”等庫的使用者。
以下是已通過 NIST 驗證其 EC DRBG 算法的產品和公司列表。 http://csrc.nist.gov/groups/STM/cavp/documents/drbg/drbgval.html
驗證列出了所有已驗證的模式,因此您可以查看哪些模式已努力驗證其 Dual_EC_DRBG 的實現。Tim Dierks 指出,對於 Lancope 的認證(NIST 驗證 #288),Dual_EC_DRBG 是唯一列出的經過測試或驗證的操作模式。很難知道如果 Lancope 不使用它,為什麼會送出他們的庫進行驗證。因此,聽起來至少存在一種使用 Dual_EC_DRBG 的實現。(感謝 Tim Dierks 的分析。)