NIST確定四種后量子密碼算法標準
上個月,美國國家標準與技術研究所(NIST)選擇了四種抗量子密碼算法,用于通用加密和數字簽名。NIST經過六年的時間評估了用于公鑰加密、數字簽名和密鑰交換的抗量子(QR)密碼算法替代方案后,宣布了這四種算法。
當今的密鑰算法包括用于對稱密鑰加密的AES-256、用于哈希函數的SHA-256和SHA-3、用于數字簽名和密鑰建立的RSA公鑰加密、橢圓曲線加密和用于數字簽名和密鑰交換的DSA公鑰加密。
2016年,NIST邀請全球密碼學家設計并審查可能的抗量子方法,以確保從網站到電子郵件的所有通信安全。前不久NIST宣布,僅選擇CRYSTALS-Kyber算法用于后量子世界的通用加密。
互聯網公司Cloudflare已經在其后量子類庫CIRL(即Cloudflare可互操作、可重用密碼庫,該庫使用Go語言編寫)中使用了Kyber算法。除了Cloudflare,自2020年以來亞馬遜也一直支持Kyber作為其傳輸層安全TLS 1.2的后量子密鑰交換算法之一。還有IBM,將Kyber用于其第一款抗量子磁帶機。
除了CRYSTALS-Kyber用于通用加密,NIST還選擇了CRYSTALS-Dilithium,FALCON和SPHINCS+用于后量子時代的數字簽名。
選定的四種加密算法將成為NIST后量子密碼標準的一部分,預計將在2024年左右最終確定。這一選擇標志著NIST后量化密碼標準化項目的開始。
基于美國電話電報公司貝爾實驗室研究員彼得·肖爾的算法Shor,算力強大的量子計算機將使所有主流的公鑰加密算法不安全,這一評估導致NIST在2016年開始尋找后量子加密算法。AES-256只需要更長的密鑰即可達到后量子標準,但SHA-256和SHA-3則需要較大的散列輸出。
雖然投入實際正常使用的量子計算機還有幾年的時間,但根據以往的歷史來看,部署現代公鑰密碼基礎設施卻需要將近20年的時間。除此之外,當下還可以收集大量數據,等到足夠強大的量子計算機可用后再對其進行解密。
破解主流加密的算力需要多大?
美國國土安全部(DHS)和NIST在其“2021關于后量子密碼的常見問題”中指出,一臺能夠運行Shor算法來破解公鑰的量子計算機將需要大約6000個穩定的量子比特位(Qbit),但眾所周知,Qbit量子比特非常的不穩定。
DHS認為,今天的加密算法在像谷歌54Qbit量子梧桐芯片這樣的計算機上仍然非常安全,該公司聲稱該芯片已實現“量子至權”(盡管這一點存有爭議)。去年,IBM表示,到2025年,它的目標是4000Qbit。
“可以破解我們當前密碼算法的計算機,在規模和功率上比現在所實現的‘量子至權’要大得多。”——DHS
盡管如此,白宮在今年5月份出于國家安全擔憂,公布了幾項加快美國量子計算研發的建議,以及聯邦機構部署抗量子密碼的大致時間表,以領先于中國、俄羅斯等競爭對手。包括澳大利亞、法國、英國等其他國家及地方政府,也已經認識到未來網絡通信中的后量子風險。
白宮希望關鍵的聯邦機構將現有的密碼遷移到那些能夠抵抗“密碼分析相關量子計算機”(CRQC)的系統,以便在2035年前“盡可能減少量子風險”。
NIST建議CRYSTALS-Dilithium作為數字簽名的主要算法,而FALCON適用于計算量小于Dilithium的簽名應用。SPHINCS+比其他兩種算法的計算量更大、計算時間更慢,但基于的是與其他三種算法不同的數學方法,因此作為備份的抗量子密碼標準。
“選定的三種算法基于一系列稱為結構格的數學問題,而Spincs+使用哈希函數。仍在考慮的另外四種算法是為通用加密設計的,在其方法中不使用結構格或哈希函數。”
NIST打算在新的公鑰密碼標準中指定“一個或多個額外的非保密、公開披露的數字簽名、公鑰加密和密鑰建立算法,這些算法在全球范圍內可用”,可以在強大的量子計算機出現之后保護敏感的政府信息。