<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法

文檔序號:9891167閱讀:584來源:國知局
一種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法
【技術領域】
[0001] 本發明設及信息安全領域,具體設及一種基于查表和擾動置亂相結合的白盒密碼 非線性編碼保護方法。
【背景技術】
[0002] 在傳統的密碼算法與安全協議的設計和實現,一般是假定密碼算法的運行環境終 端是安全的、可信的,整個系統的安全性在于密鑰的保密性。隨著數字化信息技術的不斷發 展,研究發現密碼軟件通常運行在一個不安全的環境中,比如惡意病毒和不誠實用戶的存 在,在運種環境下,攻擊者可W通過觀察或執行密碼軟件,很容易捕獲密鑰信息,一個新的 安全挑戰是:在軟件代碼開放式的環境下,如何把密鑰信息直接隱藏于算法的實現中,并使 攻擊者無法抽取出密鑰。針對運個問題,化OW等人首先提出了白盒攻擊環境(White-Box Attack Context):攻擊者對密碼算法的軟件執行過程完全可見的環境。在運種環境下,攻 擊者通過觀察或執行密碼程序,很容易提取密鑰。而白盒密碼的主要目的是為了在白盒攻 擊環境中保護密鑰,防范攻擊者利用密碼軟件執行過程捕獲密鑰信息。白盒密碼的基本設 計思想是:對于給定的密碼算法和密鑰信息,明文變換到密文的映射也就確定了;把明文 到密文的映射進行置亂編碼(ob化scation encoding),密碼算法的執行過程通過查找表的 方法來完成,密鑰隱藏在表格中,但是攻擊者無法由查找表抽取出密鑰。然而,目前有關白 盒密碼的方案都存在一個共同問題,即利用查找表的輸入輸出特點,消除內輪置亂編碼的 非線性部分后,而外置編碼僅剩下線性置亂運算,因此在白盒條件下被攻破所需的計算量 較小,密碼的安全性仍需進一步提高。

【發明內容】

[0003] 本發明的目的是針對現有技術的不足,而提供一種基于查表和擾動置亂相結合的 白盒密碼非線性編碼保護方法,其內置編碼與外置編碼同時采用非線性雙射變換實現,從 而能抵抗代數差值攻擊,具有安全性高的特點。
[0004] 實現本發明目的的技術方案:
[0005] 一種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法,包括如下步 驟:
[0006] 1)密碼算法運行過程中的32比特敏感變元平均分為四組,每組8比特,即 (X〇,0, X。, 1,x〇,2, x〇,3),并依次經過狂.化.幻,(?11非線性置亂;
[0007] 2)加入擾亂信息(β>^Υ,〇〇,運里我們選取只加入1組擾亂信息作為說明,計算 ?Τ= F(x 0,0, χ〇,ι,χ〇,2, x〇,3)作為初始擾亂項,其中F為32比特到8比特的映射; 陽00引如將步驟1)和步驟。的輸出依次經過了3, 了2, Ti,T。,Φ*變換;
[0009] 4)修改列混淆變換(MixColumns)操作,修改后的MixColumns操作相對于原始的 4個輸入塊作用仍然相同,設及到的擾亂信息在經過MixColumns操作后消除。將3)所有輸 出結果做列混淆變換(MixColumns);
[0010] W將步驟4)的輸出結果依次經過93,〇2,〇^,〇。非線性置換,且輸出結果作為密 碼算法的下一輪迭代步驟中的輸入,即對5個密碼塊進行操作,也就是在原始密碼算法操 作的基礎上加上混亂項的個數,從而得到白盒密碼的最終輸出結果。
[0011] 步驟2)中,F映射為哈希算法。
[0012] 步驟3)中,改變原密碼算法的加解密流程中每一輪的邊界,W AES算法為例:改 變AES的輪邊界后,把AddRoun化巧和SubB^es組合在一起,運兩個步驟組合起來可W用 T-Box來表示。T-Box的計算公式如下:
[001引其中,Ki,/為第r輪在單元(ij)的子密鑰,sr(ij)表示單元(ij)在經過 ShiftRows操作后的位置,S表示AES的S盒。
[0016] 步驟4)中,MixColumn操作每一次作用在一列上,可W用一個32X32(比特)的矩 陣MC乘W-個32比特的列向量來表示。如果整個MixColumn用一個表格來表示,運個表格 的大小為232X 32 = 16GB。為了防止用如此之大的查找表,把MC按列分成2部分,MixColumn 操作可W用如下公式表示:
[0017]
C3) 陽0化]其中,MC為MixColumn的表格表示方式,MCe、MCi為MC的左右兩部分。
[0019] 因此,MixColumns的計算可W拆分成2個16比特到32比特的變換組成,然后將2 個變換結果進行異或得到最后的MixColumn結果。
[0020] 其中,(β*,γ,Φ*)為非線性擾亂信息。運里,Φ*為一個由0多項式生成的,在絕 大多數情況下取值固定為Θ的多項式。因此可W利用運一個之前已經固定好的取值來構 造 MixColumns矩陣,使得該值在經過MixColumns操作后對原本的矩陣乘法沒有影響,即為 零元。由Φ可角定的固定值Θ運里同樣作為秘密信息在實現時確定。
[0021] 本發明的有益效果:
[0022] 本發明一種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法,內置編 碼與外置編碼同時采用非線性雙射變換,由于單個S盒的代數次數不超過8次,且列混淆部 件和外置放射置亂編碼并不會提高代數次數,故本發明所需的運算較小;此外,本發明在面 對外部代數插值攻擊時,不會直接恢復主密鑰,而是構建出一個等價的解密布爾系統,因此 本發明的保密性和安全性更強。
【附圖說明】
[0023] 圖1為一種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法的關鍵 部件的白盒設計圖。
【具體實施方式】
[0024] 下面結合附圖對本發明做進一步的闡述,但不是對本發明的限定。 陽〇2引實施例:
[00%] -種基于查表和擾動置亂相結合的白盒密碼非線性編碼保護方法,包括如下步 驟:
[0027] 1)密碼算法運行過程中的32比特敏感變元平均分為四組,每組8比特,即 (X。,。,X〇,l,X〇,2, X〇,3),并依次經過狂,狂-,貧,Q;非線性置亂;
[0028] 2)加入擾亂信息(β^^Υ,〇〇,運里我們選取只加入1組擾亂信息作為說明,計算 0 F(x 0,0, χ〇,ι,χ〇,2, x〇,3)作為初始擾亂項,其中F為32比特到8比特的映射;
[0029] 如將步驟1)和步驟。的輸出依次經過了3, 了2, Ti,T。,Φ*變換;
[0030] 4)修改列混淆變換(MixColumns)操作,修改后的MixColumns操作相對于原始的 4個輸入塊作用仍然相同,設及到的擾亂信息在經過MixColumns操作后消除。將3)所有輸 出結果做列混淆變換(MixColumns);
[00川 5)將步驟4)的輸出結果依次經過93,02,0^,0。非線性置換,且輸出結果作為密 碼算法的下一輪迭代步驟中的輸入,即對5個密碼塊進行操作,也就是在原始密碼算法操 作的基礎上加上混亂項的個數,從而得到白盒密碼的最終輸出結果。
[0032] 步驟2)中,F映射為哈希算法;
[0033] 步驟3)中,改變原密碼算法的加解密流程中每一輪的邊界,W AES算法為例:改 變AES的輪邊界后,把AddRoun化巧和SubB^es組合在一起,運兩個步驟組合起來可W用 T-Box來表示。T-Box的計算公式如下:
陽036] 其中,Ki,/為第r輪在單元(i,如的子密鑰,sr (i,如表示單元(i,如在經過 ShiftRow
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影