亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

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

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

【發(fā)明內(nèi)容】

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