作者 | 蔣寶尚
2020年,世界上產生的數據量預計有40ZB,如果一個硬碟的存儲量是1T,那麼一個ZB相當於10億個硬碟。
如果用傳統的儲存方法,根據香飄飄奶茶廣告詞中的計量方式:「香飄飄奶茶,一年賣出三億多杯,杯子連起來可繞地球一圈。」那麼,世界一年產生的數據所需的1T硬碟,至少也能繞地球一圈。
而面對巨量的數據,未來量子存儲設備則只需要指甲蓋大小就能存儲人類幾百年的信息。
除了上述量子計算帶來的好處,它打破傳統計算機二進位基礎之後帶來的威力也是一種威脅。畢竟,量子計算機在0和1之間有無數種可能,一臺真正的量子計算機運算能力可能超過現在世界上所有計算機運算能力之和。
這就意味著量子計算機一旦被率先突破,那麼現在所有的加密算法都會被馬上破解,全世界的信息將沒有安全可言。換句話說,首臺量子計算機誕生,它足以破解當代絕大多數的加密標準。
因此,我們就需要新一代的加密算法來應對這類量子計算的威脅。在介紹後量子時代加密算法之前,我們先介紹公鑰密碼。
1
公鑰密碼與天敵
當前,公鑰密碼已經廣為使用,無論去線下銀行、還是在網上銀行辦業務,都要證明個人身份以避免被人冒用,訪問電商網站或使用手機支付時,其數據也需加密。
除民用用途之外,公鑰密碼算法在海陸空通信方面也有著特定用途,設備間的通信都需要數據加密和身份驗證。比如,對面過來一架飛機,遠處看到一艘船,往往需要判斷對方到底是友是敵,這時也需要用公鑰密碼算法來保護傳輸數據。
隨著量子計算能力的提高,目前已經從數學上證明,經典公鑰密碼算法肯定會被量子計算機所攻破。當前,整個網際網路系統安全和網絡安全,都會用到密碼技術,而目前最不可被取代的正是公鑰密碼模塊。
公鑰密碼算法一旦被量子計算機攻破,整個網際網路將「轟然倒塌」,那時我們將沒法去銀行,也沒法用電,甚至沒法坐飛機和高鐵。整個網際網路系統會因為失去安全而癱瘓,各種網絡攻擊事件將不斷出現。
可以說,全人類都面臨著量子攻擊的風險。因此,學術界正在研究能替換經典公鑰密碼算法的算法,即後量子密碼算法,以有效應對量子計算機技術進步帶來的嚴峻挑戰。
2
後量子密碼算法分類與進程
能有效抵禦量子計算機攻擊的密碼算法,統稱為後量子密碼 (Post-Quantum Cryptography) 或抗量子攻擊密碼 (Quantum-Resistant Cryptography)。後量子,主要是指針對量子計算機時代的安全威脅,所發展出的密碼算法體系。
後量子密碼算法分五大類:第一類是基于格的,第二類是基於編碼的,第三類是基於多變量的,第四類是基於哈希的,第五類是基於超奇異同源的。
其中,第一類基于格的後量子密碼算法由於其計算的相對高效性和通用性,成為最主流的候選算法種類。
業界的一些產業巨頭已經在後量子密碼算法的應用方面進行了一些探索。谷歌於 2016 年在其實驗版瀏覽器中實現了後量子密鑰交換算法 NewHope,雖然可以證明其對量子攻擊防護的一定有效性,但其執行效率限制了其進一步推廣應用。
微軟研究院已推出後量子密碼算法 Picnic 算法和後量子 VPN 算法,亞馬遜公司目前也在其 AWS 密鑰管理系統中的傳輸層安全(Transport layer security, TLS)網絡加密協議中提供後量子密鑰交換支持。
目前,全球尚未就後量子密碼算法形成統一的標準。美國國家標準與技術研究院(National Institute of Standards and Technology,下稱 NIST)正在開展後量子密碼算法的標準化工作,目前已經推進到第三輪。
對於徵集到的每個候選算法,NIST 及密碼領域的研究人員都會對其進行安全評估、數學評估、以及實現性能評估(包括軟體實現和硬體實現)。最終通過評估的算法,將會成為 NIST 的推薦標準。
NIST 的後量子標準化是影響力最大,同時進展最快的,其從第一輪徵集到的 69 個候選算法,到目前第三輪僅剩下 15 個算法,預計至 2021 年底還會淘汰大半,僅選出不到五個算法,直到最後沉澱出的算法成為 NIST 推薦的國際標準。
由於後量子密碼算法要抵抗未來的量子攻擊和當前的經典計算攻擊,因此需考慮未來數年計算機的發展。更重要的是,後量子密碼算法的布局一定要先於量子計算機進入應用。
同時,公鑰密碼的應用廣泛,不計其數的軟硬體主體和企業都在使用公鑰密碼,替換它們將是一個超大系統工程,需提前三至五年布局。
具體的後量子密碼算法:英特爾-BIKE
英特爾團隊開發出了一款應對量子計算的升級版加密算法,可以有效運用於物聯網下的智能家居與工業設備。
這個算法的名字叫作:BIKE(Bit-flipping Key Encapsulation)。
BIKE提供了一種創建共享密鑰的方法。這個共享密鑰能夠對在兩個設備之間交換的敏感信息進行加密。
加密過程要求計算層面的複雜操作,涉及到數學問題,可能會給許多物聯網設備硬體帶來壓力。
針對這個問題,英特爾的研究人員開發了一個硬體加速器,使BIKE軟體能夠在功能較弱的硬體上高效運行。
當BIKE軟體在物聯網設備(尤其是輕量級設備中)上執行時,會造成密集的延遲與功耗,而他們所開發的BIKE硬體加速器能夠在一定程度上解決這個問題。
英特爾一直在與其他公司合作,希望推動BIKE發展成為一種能夠對抗量子計算威脅的加密算法。今年10月13日,英特爾團隊將這個技術拓展為一篇論文,發表在了IEEE國際會議量子計算與工程會議(IEEE International Conference on Quantum Computing and Engineering)上。
論文地址:https://eprint.iacr.org/2020/117.pdf
2020年10月13日在IEEE量子計算與工程國際會議上,論文主要是由英特爾團隊開發的最新版本的BIKE。
「在這三個步驟中,BIKE解碼是計算量最大的操作,」 Ghosh解釋說。
據該論文的共同作者兼英特爾研究科學家Santosh Ghosh介紹,BIKE通過三個步驟,創建了一個安全性較高的共享密鑰。
第一步:主機設備先創建一個「公鑰-私鑰」對,並將公鑰發送至一個客戶;
第二步:該客戶使用公鑰向主機發送一條加密消息;
第三步:主機使用私鑰,通過BIKE解碼過程對加密的消息進行解碼。
在這三個步驟中,BIKE解碼要用到的計算量最大。
BIKE的升級版本很好地利用了對算力要求較小的新型解碼器。測試表明,這個新型解碼器在Intel Arria 10 FPGA上,可以在12毫秒內以110 MHz的頻率在130萬個周期內執行單個BIKE解碼操作的計算。
BIKE不僅適合安裝在用於封裝的物聯網設備上,還能充當主機的角色,生成密鑰並解除封裝。
這也是適用於5級密鑰和密文的BIKE的第一個硬體實現,其中5級為美國國家標準技術研究院(NIST)定義的最高安全級別。安全級別越高,所要求的密鑰與密文就越大,對計算密集型操作的要求也越多。
英特爾團隊先前便專注研究適用於安全級別為1和3的BIKE實現。
BIKE最新的硬體實現將安全級別提高了兩個等級。
級別5提供了與AES-256相當的安全性,而BIKE解碼器支持用於級別5的密鑰和密文。這意味著,量子計算機需要進行2^128次的操作才能破解BIKE。
BIKE硬體加速器的最新版本設計先進,能夠抵抗邊信道攻擊,阻止攻擊者掠奪功率消耗或軟體進程時間的信息,提高安全性。比方說,差分功耗攻擊可以追蹤用於運行某些計算任務的功耗模式,暴露一些隱藏計算。
從理論上講,針對BIKE的此類攻擊可能會試圖針對兩個設備之間的一小塊秘密。密碼塊的大小取決於在隱藏子操作中一同工作的秘密位數量。由於1個BIKE塊的大小為1位,因此1次處理1個秘密位的BIKE硬體設計極易受到差分功耗分析攻擊的攻擊。
新的BIKE硬體加速器可以並行處理128位秘密的計算,使得與各個計算相關的功耗模式難以被找到,因此可以有效抵禦此類攻擊。
BIKE硬體加速器還可以阻止定時攻擊,因為其解碼器始終運行著固定的回合,每個回合與定時的時間相同。
BIKE曾被NIST選為替代現代密碼學標準的方案之一。
參考資料:
https://spectrum.ieee.org/tech-talk/computing/hardware/how-to-protect-the-internet-of-things-in-the-quantum-computing-era