宋何穎秀
(解放軍信息工程大學, 河南 鄭州 450001)
一種類PRESENT算法型分組密碼算法設計
宋何穎秀
(解放軍信息工程大學, 河南 鄭州 450001)
所設計的算法(PRESENT2.0算法)設計思路來源于PRESENT算法,與PRESENT-80相同,采用64比特分組長度、80比特密鑰長度,包括31輪函數變換以及最后的密鑰白化過程,其S盒來自PRESENT算法S盒的仿射等價類.因此,其安全性與PRRESENT算法基本一致,甚至在實現(xiàn)效率方面優(yōu)于PRESENT.
分組密碼;PRESENT算法;S盒;仿射等價
1.1 加密過程
PRESENT2.0算法與PRESENT相同,也可以歸類為一種SPN結構的超輕量級分組密碼算法,其分組長度為64比特,密鑰長度為80比特.該算法包括31輪函數變換及最后的輸出密鑰白化.算法具體結構如圖1所示.
圖1 PRESENT2.0算法結構
與PRESENT算法相同,PRESENT2.0算法的輪函數也由三個部分組成,分別是:輪密鑰加、S盒代換和P盒置換.其中的S盒代換由16個4×4的S盒完成,S盒代換是PRESENT2.0算法中唯一的非線性過程.
1)輪密鑰加:設bj(0≤j≤63)為當前狀態(tài),ki,j(0≤i≤32,0≤j≤63)是輪密鑰Ki的第j比特子密鑰,則變換如下:
bj→bj⊕ki,jbj,ki,j∈GF(2)
2)S盒代換:設狀態(tài)為b63,b62,……,b0,可表示成16個4比特數wi=b4*i+3b4*i+2b4*i+1b4*i,其中0≤i≤15.則變換如下:
wi=S(wi) 0≤i≤15
S盒代換表見表1:
表1 S盒代換表
3)P盒置換:P盒置換將64比特的狀態(tài)進行重排,為明文提供擴散效果.P盒置換表見表2:
表2 P盒置換表
1.2 密鑰生成
將密鑰寄存器中存儲的80比特用戶密鑰記為K=k79k78……k0.在加密算法第j輪中,首先提取64比特子密鑰Kj,
Kj=k63k62……k0=k79k78……k16
之后通過以下三步更新密鑰寄存器K=k79k78……k0;
1)左移61比特:[k79k78……k1k0]=[k18k17……k19k20]
2)S盒代換:[k79k78k77k76]=S[k79k78k77k76]
3)[k19k18k17k16k15]=[k19k18k17k16k15]⊕round_counter
在文獻[1]中,張文濤等人提出了一種4比特最優(yōu)S盒的新的分類方法.所有4比特最優(yōu)S盒可以分為183個不同的類,其中有3個類別可稱為白金類.依據PRESENT算法的S盒設計準則,可以通過在S盒前后添加常數得到8 064個不同的S盒.這8 064個S盒分別屬于3個不同的類別,與其他類別中的S盒相比,從這3類S盒中選出的S盒具有較好的抵抗線性分析的能力.
通過研究,可以得出以下結論:首先,S盒的選擇對于算法的安全性具有極大的影響;其次,對于選擇4比特S盒作為擴散層的分組密碼算法和哈希函數,設計者可以在這3個白金類S盒中選擇;因此,利用上述結論,以Leander等人[2]的仿射等價類研究為基礎(見表3),設計時選擇了一個與原PRESENT算法的S盒等價的S盒作為PRESENT2.0的非線性模塊.
表3 最優(yōu)4比特S盒的16個仿射等價類
S盒設計準則[1]對于分組長度為64比特的算法來說,線性層固定為PRESENT的P置換,若想得到更好的抗線性攻擊能力,除了PRESENT算法原本的S盒設計準則之外,還要加入一條設計準則,即單比特輸入掩碼與單比特輸出掩碼對應偏差非零的線性特征個數為4,完整的設計準則如下:
1) S盒必須是最優(yōu)S盒;
2) 單比特輸入差分能引起單比特輸出差分的差分特征個數為0;
5) 單比特輸入掩碼與單比特輸出掩碼對應偏差非零的線性特征個數為4.
綜上,在選擇PRESENT算法的新S盒時,只要在3個白金等價類中選擇滿足上述條件的,即可得到具有較好抗差分以及抗線性攻擊能力的改進算法.
由于置換層采用了PRESENT算法的P盒,通過對此次選擇的S盒進行分析,可以得到新算法的抗差分攻擊與抗線性攻擊能力見表4:
表4 PRESENT2.0算法抗差分攻擊/線性攻擊能力
其中括號中的數字分別表示單比特輸入差分能引起單比特輸出差分的差分特征個數和單比特輸入掩碼輸出掩碼對應偏差非0的線性特征個數,Rm表示攻擊輪數,NumRm表示符合條件的S盒個數,ProbRm和Cor2Rm分別表示差分概率和線性概率.
分組密碼算法設計中,無論采用廣義Feistel結構還是SPN結構,S盒都是常用的非線性模塊,其密碼學性質直接影響到整個算法的安全性,其大小也對算法實現(xiàn)效率有著直接關系.因此,S盒的設計是分組密碼算法設計過程中需要考慮的一個重要因素.采用仿射等價類的方式尋找具有相近密碼學性質的S盒的研究對分組密碼算法的設計有著重要意義,這些分類S盒的性質也為相關算法的分析提供了很好的依據.
[1]ZHANG W, BAO Z and RIJMEN V et al. A New Classification of 4-bit Optimal S boxes and Its Application toPRESENT, RECTANGLE and SPONGENT[J]. FSE2015:494-515.
[2]LEANDER G, POSCHMANN A. On the Classification of 4 bit S-boxes. WAIFI 2007:LNCS, vol. 4547, 159-176.
[3]WANG M.Differential cryptanalysis of reduced-round PRESENT[C].Proceeding of 1stInternational Conference on Cryptology in Africa-AFRICACRYPT 2008,Casablanca, Morocco,2008:40-49.
[4]LIU G Q,JIN C H and KONG Z Y.Key recovery attack for PRESENT using slender-set linear cryptanalysis[J]. Science China Information Sciences,2016, 59(3):123-136.
[5]OHKUMA K. Weak keys of reduced-round PRESENT for linear cryptanalysis[C].Proceeding of 24thAnnual ACM Symposium on Applied Computing-SAC 2009,Honolulu,Hawaii,USA: 249-265.
[6]CHO J Y.Linear Cryptanalysis of Reduced-Round PRESENT[C].Proceeding of the Cryptographers’ Track at the RSA Conference,San Francisco,CA,USA,2010:302-317.
[7]LIU G Q and JIN C H.Differential cryptanalysis of PRESENT-like cipher[J].Designs, Codes and Cryptography,2015,76(3):385-408.
[8]BLOUDEAU C and GERARD B.Multiple differential cryptanalysis: Theory and practice[C].Proceeding of 18thInternational Workshop on Fast Software Encryption-FSE 2011,Lyngby,Denmark,2011: 35-54.
[9]IGARASHI Y,KANEKO T and SETOGUCHI S et al.The Improved 16th-Order Differential Attack on 10-Round Variant of Block Cipher PRESENT[J],Lecture Notes in Electrical Engineering,2015,330:35-40.
Design of a PRESENT-like Block Cipher Algorithm
SONGHE Ying-xiu
(PLA Information Engineering University,Zhengzhou Henan 450001, China)
The designed algorithm (PRESENT2.0) is based on PRESENT algorithm and also has the same characteristics with PRESENT-80, with 64 bits block length and 80 bits key length, including the transformation of a 31-round function and the final key whitening process, and the S-boxes are affine equivalent with PRESENT. Therefore, the security of PRESENT2.0 algorithm is basically the same as and even better than PRESENT in terms of efficiency.
block cipher; PRESENT; S boxes; affine equivalence
1673-2103(2017)02-0008-04
2017-03-14
宋何穎秀(1992-),女,新疆阿勒泰人,在讀碩士,研究方向:密碼學.
TP918.1
A