<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    抗量子計算的密碼就一定安全?

    VSole2021-12-26 05:55:13

    背景介紹

    眾所周知,目前使用的公鑰加密算法都是基于某個數學困難問題,比如大整數分解問題和離散對數問題。但是一旦大型量子計算機研制成功,這兩個問題可以通過肖算法得到有效的解決。因此美國國家標準與技術研究院(NIST)在多年前發起了征集后量子時代密碼算法的項目。

    NIST后量子時代標準化項目目前進行了三輪。第一輪主要關注算法在安全性上的評估;第二輪主要考慮算法的具體實現;第三輪關注算法在側信道攻擊下的安全性。

    第三輪評審的四個候選算法中有三個都是基于格理論的算法,分別是基于NTRU方案的候選者NTRU,基于Learning With Errors(LWE)方案的Kyber和基于Learning With Rounding(LWR)方案的Saber。這三個算法的困難性都來源于向線性方程中插入未知噪聲。

    在2021年的學術會議CHES上,Kalle Ngo等人實現了針對帶掩碼IND-CCA安全的Saber KEM算法實現的側信道攻擊。應用神經網絡學習高階模型,不需要知道隨機掩碼值,并且在建模階段不需要一個可以被完全控制的分析設備。其中,帶掩碼IND-CCA安全的Saber KEM算法由Michiel等人于2020年提出,該算法的開銷是無掩碼版本的2.5倍[1]

    泄露分析

    論文首先介紹了Saber的公鑰加密算法和密鑰封裝算法,具體算法過程如圖1和圖2所示。

    圖1 Saber公鑰加密算法

    圖1中是Saber的公鑰加密算法,同一般的公鑰加密算法,用戶需要生成一對公私鑰,發送方使用公鑰加密要傳遞的信息,接收方收到信息后使用私鑰解密。

    圖2 Saber密鑰封裝算法

    圖2是Saber的密鑰封裝算法,其中應用了圖1中的公鑰加解密算法。密鑰封裝算法一般是用于傳遞對稱加密算法的密鑰,其相比于直接用公鑰加密算法有效率上的優勢。這篇論文攻擊的是密鑰解封算法,具體就是圖2的第1行代碼。

    論文提出了兩個問題,第一個問題是如何確定泄露位置,第二個問題是如何在不知道掩碼的情況下恢復信息message(也就是圖2中密鑰解封算法第一行的m')。

    對于第一個問題,論文提出的解決方案是根據無掩碼的實現方案確定若干大概位置,對于每一個大概位置使用深度學習模型進行學習,如果模型可以學習到一個很高的準確度,則認為這些點有泄露,否則就平移窗口并重復訓練。

    對于第二個問題,在目前場景下,message是一個256比特的數,每個比特是0或者1。對于message的每一個比特m,一階掩碼會將其分為兩個分量r和m?r。在訓練階段,模型將兩個分量對應的波形共同作為輸入,將m的值作為標簽。在攻擊階段,模型將兩個分量對應的波形共同作為輸入,輸出一個概率值,代表該比特為1的概率。

    由于公鑰加密算法可以預計算一組對應于隨機或者選擇message的密文,因此本論文的攻擊方法可以在訓練階段在被攻擊設備上采集能量跡作為訓練集。

    圖3是Saber帶掩碼和不帶掩碼的解密算法源碼,其中標紅的代碼是存在泄露的代碼。

    圖3 不帶掩碼和帶掩碼的Saber解密算法的C源碼

    可以看到,帶掩碼的解密算法存在兩種泄露,第一種泄露是在其第8行代碼,poly_A2A函數將帶掩碼的中間值的兩個分量作為輸入,對其逐比特進行操作。第二種泄露是在其第9和10行代碼,POL2MSG函數的功能是將比特數組轉換為字節數組,因此也存在泄露。

    實驗環境與攻擊模型

    圖4是這篇論文的實驗環境,包括一個ChipWhisperer-Lite板子,一個CW308 UFO板子和一個CW308T-STM32F4目標板。其中D1、D2和D3都是同一種芯片,但是D1和D2是同一廠商生產的芯片,D3是另一廠商生成的芯片。

    圖4 用來采集能量跡的設備以及三種實驗中使用的板子

    論文的攻擊模型取決于攻擊者擁有的攻擊時間長短。如果攻擊者有充足的時間在被攻擊設備上采波,則訓練集和測試集均來源于被攻擊設備,在這種情況下,D1用來訓練和攻擊;如果攻擊者的時間只夠用來采集攻擊波形,則攻擊者需要另一臺類似設備用來建模。在這種情況下, D1用來建模,D2和D3用來攻擊。

    實驗過程與結果

    在實驗的建模階段,采集若干能量跡,按照字節或者比特進行切分,因其是帶有一階掩碼防護的能量跡,因此通過將兩個分量對應的能量跡進行組合,可以將訓練集擴大32(按字節分段)或者256倍(按比特分段)。

    對于poly_A2A函數的泄露,訓練一個模型即可,對于POL2MSG函數的泄露,由于用一個字節需要連續異或8個比特,每次異或時其余的比特狀態不同,因此需要訓練8個模型。

    因為論文數據集中的能量跡在時間軸上非常整齊,因此作者發現MLP的效果要比CNN更好,所以論文最終使用的是MLP。

    圖5(a)Saber密鑰解封部分的初始能量跡;(b)包含poly_A2A(v1,v2),POL2MSG(v1,m1)和POL2MSG(v2,m2)的能量跡;(c)POL2MSG的兩個分量;(d)第一個分量的前15字節。

    圖5是原始能量跡。論文作者首先根據無防護版本算法的經驗確定了一個大概的位置,根據poly_A2A函數中有一個大小為256的循環和POL2MSG函數中有一個大小為32的循環,確定了它們的具體位置。

    圖5(c)是帶掩碼的中間值的兩個分量對應的能量跡,論文作者通過將兩個分量對應的能量跡按字節進行切分,并將對應字節的能量跡進行拼接,構造了神經網絡的訓練和測試集。

    訓練階段,從D1上采集了50K條波,隨機密文和密鑰。對于poly_A2A函數的泄露,構建了4K×256=1.024M訓練集,對于POL2MSG函數的泄露,構建了50K×32=1.6M訓練集。測試階段,從D1,D2和D3上分別采集了1K的波形作為測試集,測試集是隨機密文和固定密鑰。

    圖6 論文實驗結果,從上到下分別是只使用POL2MSG函數的泄露的結果,只是用poly_A2A函數的泄露的結果和兩個函數的泄露都使用的結果。

    圖6是論文中實驗結果的截圖。分別是只使用POL2MSG函數的泄露結果、只使用poly_A2A函數的泄露結果和使用兩個函數的泄露結果。

    由實驗結果發現,對于POL2MSG函數的泄露,第7個比特最難攻破,對于poly_A2A函數的泄露,第0個比特最難攻破。

    為了解釋這一現象,論文對波形做了TVLA和SOST測試。結果如圖7和圖8所示。

    圖7 m?r分量的第一個字節的poly_A2A泄露和POL2MSG泄露的t-test結果

    圖8 POL2MSG泄露逐比特的t-test結果

    論文作者分析后認為,對于poly_A2A泄露,只有第一個比特前的操作和其它比特不同,因此導致了第一個比特的泄露比其它比特低;對于POL2MSG泄露,越靠后異或的比特位的能量泄露越小。

    在成功恢復出中間值message后,論文據此恢復出了密鑰。

    總結

    作者使用了24條能量跡恢復出了帶掩碼的Saber算法的密鑰,提出了模型的訓練過程可以在被攻擊設備上進行,發現了先前從未發現的泄露類型,并且在密鑰恢復階段展示了一種新的密鑰恢復方法可以抵消在中間值恢復時的一些錯誤。

    量子計算機對稱密鑰
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    SIKE入選后量子計算加密第四輪備選方案,但研究人員用一臺PC僅花費一小時就破解了。
    2016年,NIST邀請全球密碼學家設計并審查可能的抗量子方法,以確保從網站到電子郵件的所有通信安全。前不久NIST宣布,僅選擇CRYSTALS-Kyber算法用于后量子世界的通用加密。還有IBM,將Kyber用于其第一款抗量子磁帶機。選定的四種加密算法將成為NIST后量子密碼標準的一部分,預計將在2024年左右最終確定。這一選擇標志著NIST后量化密碼標準化項目的開始。
    CNSA2.0 對稱密鑰算法3、通用抗量子公鑰算法NIST最近才宣布了后量子密碼的標準化選擇,因此,目前既沒有最終標準也沒有現實有效的聯邦信息處理標準。NSA敦促NSS所有者和經營者特別需要注意這要求,在此期間仍需遵守CNSA1.0。NSA預計,符合NSM-10的NSS過渡到QR算法將在2035年完成,NSA敦促供應商、NSS業主和運營商盡一切努力,在這一最后期限前完工。在適當的情況下,CNSA2.0算法將在NSS的商業產品類中強制使用,同時保留允許在特殊情況下使用其他算法的選項。
    人工智能密碼學”為觀察人工智能與密碼系統的互動、影響提供新視角,也為當下后量子密碼技術探索提供新方案,無疑是一個值得探究的新方向。
    攻擊者,尤其是國家支持的網絡黑客,目前正在設法收集加密數據,期望將來能夠解密。針對這一未來的威脅,量子安全公司Qrypt發布了一款產品“Qrypt密鑰生成”,旨在消除傳統密鑰分發的需要,從而消除非對稱加密。但這一說法還有一個重要的附加條件,量子計算機的能力取決于可控制的量子比特數。這個隨機數在云中生成,意味著可根據需求量彈性產生。兩人都是美國前中央情報局官員。
    量子計算綜述報告
    2021-11-19 11:43:31
    對于所有非物理專業的畢業生而言,量子這個概念多半是模糊而又熟悉的,因為沒有系統學習過量子力學,因此對什么是量子往往難以理解并說不清楚,但近年來量子這個詞又不斷高頻出現在大眾視野面前,從量子通信、量子衛星到量子計算···。
    針對后量子密碼算法芯片的側信道攻擊
    量子密鑰分配的安全性包括協議的安全性和實際系統的安全性,協議理論上的信息論安全性已經得到了完整的證明,然而實際系統由于器件存在著非理想性,會導致產生各種安全性漏洞,如何分析和應對實際系統安全性是量子密鑰分配技術走向應用所面臨的重要課題,總結了量子密鑰分配安全性的進展情況和面臨的難點問題,并對未來的研究方向進行了展望。
    量子通信的發展目標是構建全球范圍的廣域量子通信網絡體系。通過光纖實現城域量子通信網絡,進而通過中繼器實現鄰近兩個城市之間的連接,最終通過衛星平臺的中轉實現遙遠區域之間的連接,是廣域量子通信網絡的發展路線。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类