CN1617493A - 基于群复合轮函数和128比特分组的对称密钥加密方法 - Google Patents
基于群复合轮函数和128比特分组的对称密钥加密方法 Download PDFInfo
- Publication number
- CN1617493A CN1617493A CN 200410046449 CN200410046449A CN1617493A CN 1617493 A CN1617493 A CN 1617493A CN 200410046449 CN200410046449 CN 200410046449 CN 200410046449 A CN200410046449 A CN 200410046449A CN 1617493 A CN1617493 A CN 1617493A
- Authority
- CN
- China
- Prior art keywords
- sub
- key
- bits
- round
- iteration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
密码学、计算机科学。利用模加、模乘和异或运算的性质算设计一个对称密钥密码体制,密钥长度和明文分组长度均为128比特,加密子密钥与解密子密钥源自同一个密钥。加密时,通过加密子密钥、迭代运算(即轮函数)和输出变换把明文转换成密文;解密时,通过解密子密钥以及同样的迭代运算和输出变换把密文还原成明文。本方法可以和公开密钥密码体制结合起来使用,可用于计算机或通信网络中任何文件、数据的保密存储或传输。
Description
1、技术领域
属于密码学和计算机科学。
2、现有技术
在电子商务、电子政务及网络通信中一般采用混合加密技术,即利用对称密钥密码体制来加密明文,然后再用公开密钥密码体制来加密对称密钥。这充分利用了两种体制的优点。目前,普遍使用的对称密钥密码体制有:(1)DES体制;(2)FEAL体制;(3)IDEA体制;(4)MMB体制;(5)GOST体制;(6)RC5体制(参见《应用密码学》,美国BruceSchneier著,吴世忠、祝世雄等译,机械工业出版社,2000年1月)。
上述体制中,DES、FEAL、MMB和RC5体制已被分析为不安全或已有不安全的报道(参见《应用密码学》)。IDEA密钥长度为128比特,明文分组长度为64比特,GOST密钥长度为256比特,分组长度为64比特,由于后两者分组长度仅为64比特,不符合正逐渐被采纳的128比特的高级加密标准AES(Advanced Encryption Standard),且安全性受到越来越快的计算机速度的挑战(参见《密码学与计算机网络安全》,卿斯汉,清华大学出版社,2001年07月)。
3、发明的目的
本发明是一种基于轮函数和128比特分组的对称密钥加密方法(简称REESSE对称密钥密码体制),可用于计算机网络和通信网络中字符、文字、图像和声音等各种文件和数据的加密和解密,以确保文件和数据的保密存储和保密传输。
4、内容
4.1 REESSE对称密钥密码体制的描述
在下文中:
(+)异或运算,代表两个16比特的数据子块做逐位模2加法运算。
⊙模乘运算,代表两个16比特的整数做模(216+1)乘法运算。
[+]模加运算,代表两个16比特的整数做模216加法运算。
它们分别代表三个群上的三种运算。
REESSE对称密钥密码体制的加密与解密操作采用相同的方法,且加密子密钥与解密子密钥也源自同一个密钥,只是两者互逆,即加密和解密操作使用同一个密钥,这正是“对称”的由来。
REESSE对称密钥密码体制是实现密码芯片、密码机等产品所必须遵循的一种基本原理与技术方法,而不是物理产品本身。本发明的技术性体现在对计算机或通信网络中的文件与数据做了编码上的改变。
REESSE对称密钥密码体制的加密或解密操作由子密钥生成、迭代运算(即轮函数)和输出变换三部分组成。加密或解密时,明文或密文按128比特进行分组。
4.1.1加密操作
设PT为128比特的明文分组,K为128比特的密钥。
(1)加密子密钥生成
128比特的密钥K按排列顺序分为8个子密钥,每个子密钥16比特,初始时,令这8个子密钥分别为Z1 (1)、Z2 (1)、Z3 (1)、Z4 (1)、Z5 (1)、Z6 (1)、Z7 (1)和Z8 (1)(上标表示迭代轮次),作为迭代的第一轮密钥输入。下一轮迭代时,先将密钥K整体左环移25(或29)比特,再按排列顺序分为8个子密钥,作为下一轮迭代的密钥输入。依此类推,得到8轮迭代和最后输出变换的加密子密钥如下:
轮次 加密子密钥
R1 Z1 (1) Z2 (1) Z3 (1) Z4 (1) Z5 (1) Z6 (1) Z7 (1) Z8 (1)
R2 Z1 (2) Z2 (2) Z3 (2) Z4 (2) Z5 (2) Z6 (2) Z7 (2) Z8 (2)
R3 Z1 (3) Z2 (3) Z3 (3) Z4 (3) Z5 (3) Z6 (3) Z7 (3) Z8 (3)
R4 Z1 (4) Z2 (4) Z3 (4) Z4 (4) Z5 (4) Z6 (4) Z7 (4) Z8 (4)
R5 Z1 (5) Z2 (5) Z3 (5) Z4 (5) Z5 (5) Z6 (5) Z7 (5) Z8 (5)
R6 Z1 (6) Z2 (6) Z3 (6) Z4 (6) Z5 (6) Z6 (6) Z7 (6) Z8 (6)
R7 Z1 (7) Z2 (7) Z3 (7) Z4 (7) Z5 (7) Z6 (7) Z7 (7) Z8 (7)
R8 Z1 (8) Z2 (8) Z3 (8) Z4 (8) Z5 (8) Z6 (8) Z7 (8) Z8 (8)
输出 Z1 (9) Z2 (9) Z3 (9) Z4 (9) Z5 (9) Z6 (9) Z7 (9) Z8 (9)
(2)将128比特的明文分组划分为8个数据子块,每个子块16比特,初始时,令这8个子块分别为X1、X2、X3、X4、X5、X6、X7和X8,作为迭代的第一轮输入
(3)令i=1
(4)迭代运算
A=X1⊙Z1 (i), B=X2[+]Z2 (i),C=X3[+]Z3 (i),D=X4⊙Z4 (i)
E=X5[+]Z5 (i),F=X6⊙Z6 (i), G=X7⊙Z7 (i), H=X8[+]Z8 (i)
I=A(+)C, J=B(+)D, K=E(+)G, L=F(+)H
M=I⊙J, N=K[+]M, S=L⊙N, P=M[+]S
U=I[+]S, T=L⊙P
X1=A(+)P, X3=C(+)P, X5=E(+)T, X7=G(+)T
X2=B(+)U, X4=D(+)U, X6=F(+)S, X8=H(+)S
(5)i=i+1,如果i≤8,则X2与X3互换、X6与X7互换,并转至(4),否则,下一步
(6)输出变换
Y1=X1⊙Z1 (9),Y2=X2[+]Z2 (9),Y3=X3[+]Z3 (9),Y4=X4⊙Z4 (9)
Y5=X5[+]Z5 (9),Y6=X6⊙Z6 (9),Y7=X7⊙Z7 (9),Y8=X8[+]Z8 (9)
(7)连接Y1、Y2、Y3、Y4、Y5、Y6、Y7和Y8,得到128比特的密文分组CT。
4.1.2解密操作
设CT为128比特的密文分组,K为128比特的密钥,Zi为16比特的子密钥。
用Zi -1表示Zi的乘法逆,即Zi⊙Zi -1mod(216+1)=1
用(-Zi)表示Zi的加法逆,即Zi[+](-Zi)mod216=0
特别,对于mod(216+1)乘法,216的逆仍是216。由于216的低16位全是0,所以,用全0子分组代表216本身及其逆,也就是说0的乘法逆仍是0。
(1)解密子密钥生成
首先按加密子密钥生成方法从K得到加密子密钥,然后,根据加密子密钥的逆得到下列解密子密钥:
轮次 解密子密钥
R1 Z1 (9)-1 -Z2 (9) -Z3 (9) Z4 (9)-1 -Z5 (9) Z6 (9)-1 Z7 (9)-1 -Z8 (9)
R2 Z1 (8)-1 -Z3 (8) -Z2 (8) Z4 (8)-1 -Z5 (8) Z7 (8)-1 Z6 (8)-1 -Z8 (8)
R3 Z1 (7)-1 -Z3 (7) -Z2 (7) Z4 (7)-1 -Z5 (7) Z7 (7)-1 Z6 (7)-1 -Z8 (7)
R4 Z1 (6)-1 -Z3 (6) -Z2 (6) Z4 (6)-1 -Z5 (6) Z7 (6)-1 Z6 (6)-1 -Z8 (6)
R5 Z1 (5)-1 -Z3 (5) -Z2 (5) Z4 (5)-1 -Z5 (5) Z7 (5)-1 Z6 (5)-1 -Z8 (5)
R6 Z1 (4)-1 -Z3 (4) -Z2 (4) Z4 (4)-1 -Z5 (4) Z7 (4)-1 Z6 (4)-1 -Z8 (4)
R7 Z1 (3)-1 -Z3 (3) -Z2 (3) Z4 (3)-1 -Z5 (3) Z7 (3)-1 Z6 (3)-1 -Z8 (3)
R8 Z1 (2)-1 -Z3 (2) -Z2 (2) Z4 (2)-1 -Z5 (2) Z7 (2)-1 Z6 (2)-1 -Z8 (2)
输出 Z1 (1)-1 -Z2 (1) -Z3 (1) Z4 (1)-1 -Z5 (1) Z6 (1)-1 Z7 (1)-1 -Z8 (1)
(2)将128比特的密文分组划分为8个数据子块,每个子块16比特,初始时,令这8个子块分别为X1、X2、X3、X4、X5、X6、X7和X8,作为迭代的第一轮输入
(3)令i=1
(4)迭代运算
A=X1⊙(Z1 (10-i))-1,B=X2[+](-Z2 (10-i)),C=X3[+](-Z3 (10-i)),D=X4⊙(Z4 (10-i))-1
E=X5[+](-Z5 (10-i)), F=X6⊙(Z6 (10-i))-1,G=X7⊙(Z7 (10-i))-1,H=X8[+](-Z8 (10-i))
I=A(+)C, J=B(+)D, K=E(+)G, L=F(+)H
M=I⊙J, N=K[+]M, S=L⊙N, P=M[+]S
U=I[+]S, T=L⊙P
X1=A(+)P, X3=C(+)P, X5=E(+)T, X7=G(+)T
X2=B(+)U, X4=D(+)U, X6=F(+)S, X8=H(+)S
(5)i=i+1,如果i≤8,则X2与X3互换、X6与X7互换,且-Z2 (10-i)与-Z3 (10-i)互换、Z6 (10-i)-1与Z7 (10-i)-1互换,然后转至(4),否则,下一步
(6)输出变换
Y1=X1⊙(Z1 (1))-1,Y2=X2[+](-Z2 (1)),Y3=X3[+](-Z3 (1)),Y4=X4⊙(Z4 (1))-1
Y5=X5[+](-Z5 (1)),Y6=X6⊙(Z6 (1))-1,Y7=X7⊙(Z7 (1))-1,Y8=X8[+](-Z8 (1))
(7)连接Y1、Y2、Y3、Y4、Y5、Y6、Y7和Y8,得到128比特的原明文分组PT。
4.2 REESSE对称密钥密码体制的正确性证明
假设在输出变换之前只有一轮迭代运算(这并不影响密码方法的正确性,因为只要证明轮函数是可逆的即可)。
按照4.2.1加密方法,明文子块Xi和密钥K作为输入,加密的迭代运算如下:
(01)A=X1⊙Z1 (1) (02)B=X2[+]Z2 (1)
(03)C=X3[+]Z3 (1) (04)D=X4⊙Z4 (1)
(05)E=X5[+]Z5 (1) (06)F=X6⊙Z6 (1)
(07)G=X7⊙Z7 (1) (08)H=X8[+]Z8 (1)
(09)I=A(+)C (10)J=B(+)D
(11)K=E(+)G (12)L=F(+)H
(13)M=I⊙J (14)N=K[+]M
(15)θ=L⊙N (16)P=M[+]θ
(17)λ=I[+]θ (18)δ=L⊙P
(19)Q=A(+)P (20)R=C(+)P
(21)S=E(+)δ (22)T=G(+)δ
(23)U=B(+)λ (24)V=D(+)λ
(25)W=F(+)θ (26)ψ=H(+)θ
加密的输出变换如下(注意,因为只有一轮,迭代结果不做交换):
(01)Y1=Q⊙Z1 (2) (02)Y2=U[+]Z2 (2)
(03)Y3=R[+]Z3 (2) (04)Y4=V⊙Z4 (2)
(05)Y5=S[+]Z5 (2) (06)Y6=W⊙Z6 (2)
(07)Y7=T⊙Z7 (2) (08)Y8=ψ[+]Z8 (2)
按照4.2.2解密方法,密文子块Yi和密钥K作为输入,解密的迭代运算如下:
(01)A’=Y1⊙(Z1 (2))-1=Q (02)B’=Y2[+](-Z2 (2))=U
(03)C’=Y3[+](-Z3 (2))=R (04)D’=Y4⊙(Z4 (2))-1=V
(05)E’=Y5[+](-Z5 (2))=S (06)F’=Y6⊙(Z6 (2))-1=W
(07)G’=Y7⊙(Z7 (2))-1=T (08)H’=Y8[+](-Z8 (2))=ψ
(09)I’=A’(+)C’=Q(+)R=A(+)C=I
(10)J’=B’(+)D’=U(+)V=B(+)D=J
(11)K’=E’(+)G’=S(+)T=E(+)G=K
(12)L’=F’(+)H’=W(+)ψ=F(+)H=L
(13)M’=I’⊙J’=I⊙J=M (14)N’=K’[+]M’=K[+]M=N
(15)θ’=L’⊙N’=L⊙N=θ (16)P’=M’[+]θ’=M[+]θ=P
(17)λ’=I’[+]θ’=I[+]θ=λ (18)δ’=L’⊙ P’=L⊙P=δ
(19)Q’=A’(+)P’=Q(+)P=A(+)P(+)P=A
(20)R’=C’(+)P’=R(+)P=C(+)P(+)P=C
(21)S’=E’(+)δ’=S(+)δ=E(+)δ(+)δ=E
(22)T’=G’(+)δ’=T(+)δ=G(+)δ(+)δ=G
(23)U’=B’(+)λ’=U(+)λ=B(+)λ(+)λ=B
(24)V’=D’(+)λ’=V(+)λ=D(+)λ(+)λ=D
(25)W’=F’(+)θ’=W(+)θ=F(+)θ(+)θ=F
(26)ψ’=H’(+)θ’=ψ(+)θ=H(+)θ(+)θ=H
解密的输出变换(注意,因为只有一轮,迭代结果不做交换):
(01)Y1’=Q’⊙(Z1 (1))-1=A⊙(Z1 (1))-1=X1
(02)Y2’=U’[+](-Z2 (1))=B[+](-Z2 (1))=X2
(03)Y3’=R’[+](-Z3 (1))=C[+](-Z3 (1))=X3
(04)Y4’=V’⊙(Z4 (1))-1=D⊙(Z4 (1))-1=X4
(05)Y5’=S’[+](-Z5 (1))=E[+](-Z5 (1))=X5
(06)Y6’=W’⊙(Z6 (1))-1=F⊙(Z6 (1))-1=X6
(07)Y7’=T’⊙(Z7 (1))-1=G⊙(Z7 (1))-1=X7
(08)Y8’=ψ’[+](-Z8 (1))=H[+](-Z8 (1))=X8
解密后,得到原来的明文数据块,所以,4.2节的加密、解密方法是正确的。
4.3 REESSE对称密钥密码体制的安全性
REESSE对称体制在设计上遵循了“混乱”和“扩散”的原则。
REESSE对称体制的轮函数核心部分包含三个“模乘”运算和三个“模加”运算,比较复杂。轮函数越复杂,比特的扩散就越快,混乱就越无特征,差分密码分析方法就越无效。
REESSE对称体制的混乱和扩散是在128比特范围内进行,而不是在64比特范围内进行,由于范围变大,迭代的r-轮特征将得到稀释,所以,差分密码分析的难度将增大。
4.4优点和积极效果
4.4.1安全性好
由4.3节知,REESSE对称体制具有良好的安全性。
4.4.2运算速度快
REESSE对称体制一次加密128比特的明文,减少了分组调用时间,所以,比起明文分组为64比特的算法来速度更快。另外,REESSE对称体制只涉及到16比特的异或运算、模加运算和模乘运算,而这些运算属于基本运算,因此实现起来速度都很快。
4.4.3对信息安全有利
在信息网络化时代与经济全球化时代,开发拥有自主知识产权的对称密钥密码体制对国家信息安全与经济安全都是有好处的。对称密钥密码体制与公开密钥密码体制结合起来使用,能有效地保证各种重要信息的动态传输安全与静态存储安全。
5、附图说明
附图中:
(+)异或运算,代表两个16比特的数据子块做逐位模2加法运算。
⊙模乘运算,代表两个16比特的整数做模(216+1)乘法运算。
[+]模加运算,代表两个16比特的整数做模216加法运算。
(+)、⊙、[+]等每个运算符有两个输入数,一个输出数。指向运算符的箭头代表两个输入数的来源,指出运算符的箭头代表输出数的去向。
其中,Xi(i从1到8)为16比特的明文输入子块、Yi为16比特的密文输出子块,Zi (j)(上标表示迭代轮次)为16比特的密钥子块。Zi (9)以上部分为迭代运算(即轮函数)部分,图中画出了第1轮迭代,其余7轮迭代与第1轮迭代相同,被省略了。加密操作由8轮迭代运算和一个输出变换组成,每一轮的迭代过程如图中所示。解密操作采用与加密操作相同的方法,且解密子密钥与加密子密钥也源自同一个密钥,只是两者互逆。
6、实现方式
REESSE对称密钥密码体制可以由数字逻辑电路或计算机程序来实现。在产品形态上可以是纯粹的数字逻辑电路做成的密码芯片,或者由数字逻辑电路加固化程序做成的密码芯片,或者由计算机硬件加软件组成的密码机等。本发明是一种生产上述密码系统或产品所必须遵循的基本原理与技术方法,而不是物理产品本身。
Claims (1)
1、一种兼有模加、模乘和异或运算的对称密钥加密方法,由子密钥生成、迭代运算(即轮函数)和输出变换三部分组成,密钥长度和明文分组长度均为128比特,加密与解密操作采用相同的方法,且加密子密钥与解密子密钥也源自同一个密钥,只是两者互逆,其特征在于
●加密操作采用了下列步骤:
设PT为128比特的明文分组,K为128比特的密钥
(1)加密子密钥生成
128比特的密钥K按排列顺序分为8个子密钥,每个子密钥16比特,初始时,令这8个子密钥分别为Z1 (1)、Z2 (1)、Z3 (1)、Z4 (1)、Z5 (1)、Z6 (1)、Z7 (1)和Z8 (1)(上标表示迭代轮次),作为迭代的第一轮密钥输入。下一轮迭代时,先将密钥K整体左环移25(或29)比特,再按排列顺序分为8个子密钥,作为下一轮迭代的密钥输入。依此类推,得到8轮迭代和最后输出变换的加密子密钥如下:
轮次 加密子密钥
R1 Z1 (1) Z2 (1) Z3 (1) Z4 (1) Z5 (1) Z6 (1) Z7 (1) Z8 (1)
R2 Z1 (2) Z2 (2) Z3 (2) Z4 (2) Z5 (2) Z6 (2) Z7 (2) Z8 (2)
R3 Z1 (3) Z2 (3) Z3 (3) Z4 (3) Z5 (3) Z6 (3) Z7 (3) Z8 (3)
R4 Z1 (4) Z2 (4) Z3 (4) Z4 (4) Z5 (4) Z6 (4) Z7 (4) Z8 (4)
R5 Z1 (5) Z2 (5) Z3 (5) Z4 (5) Z5 (5) Z6 (5) Z7 (5) Z8 (5)
R6 Z1 (6) Z2 (6) Z3 (6) Z4 (6) Z5 (6) Z6 (6) Z7 (6) Z8 (6)
R7 Z1 (7) Z2 (7) Z3 (7) Z4 (7) Z5 (7) Z6 (7) Z7 (7) Z8 (7)
R8 Z1 (8) Z2 (8) Z3 (8) Z4 (8) Z5 (8) Z6 (8) Z7 (8) Z8 (8)
输出 Z1 (9) Z2 (9) Z3 (9) Z4 (9) Z5 (9) Z6 (9) Z7 (9) Z8 (9)
(2)将128比特的明文分组划分为8个数据子块,每个子块16比特,初始时,令这8个子块分别为X1、X2、X3、X4、X5、X6、X7和X8,作为迭代的第一轮输入
(3)令i=1
(4)迭代运算
A=X1⊙Z1 (i), B=X2[+]Z2 (i),C=X3[+]Z3 (i),D=X4⊙Z4 (i)
E=X5[+]Z5 (i),F=X6⊙Z6 (i), G=X7⊙Z7 (i), H=X8[+]Z8 (i)
I=A(+)C, J=B(+)D, K=E(+)G, L=F(+)H
M=I⊙J, N=K[+]M, S=L⊙N, P=M[+]S
U=I[+]S, T=L⊙P
X1=A(+)P,X3=C(+)P,X5=E(+)1,X7=G(+)1
X2=B(+)U,X4=D(+)U,X6=F(+)S,X8=H(+)S
(5)i=i+1,如果i≤8,则X2与X3互换、X6与X7互换,并转至(4),否则,下一步
(6)输出变换
Y1=X1⊙Z1 (9), Y2=X2[+]Z2 (9), Y3=X3[+]Z3 (9), Y4=X4⊙Z4 (9)
Y5=X5[+]Z5 (9), Y6=X6⊙Z6 (9), Y7=X7⊙Z7 (9), Y8=X8[+]Z8 (9)
(7)连接Y1、Y2、Y3、Y4、Y5、Y6、Y7和Y8,得到128比特的密文分组CT;
●解密操作采用了下列步骤:
设CT为128比特的密文分组,K为128比特的密钥
(1)解密子密钥生成
首先按加密子密钥生成方法从K得到加密子密钥,然后,根据加密子密钥的逆得到下列解密子密钥:
轮次 解密子密钥
R1 Z1 (9)-1 -Z2 (9) -Z3 (9) Z4 (9)-1 -Z5 (9) Z6 (9)-1 Z7 (9)-1 -Z8 (9)
R2 Z1 (8)-1 -Z3 (8) -Z2 (8) Z4 (8)-1 -Z5 (8) Z7 (8)-1 Z6 (8)-1 -Z8 (8)
R3 Z1 (7)-1 -Z3 (7) -Z2 (7) Z4 (7)-1 -Z5 (7) Z7 (7)-1 Z6 (7)-1 -Z8 (7)
R4 Z1 (6)-1 -Z3 (6) -Z2 (6) Z4 (6)-1 -Z5 (6) Z7 (6)-1 Z6 (6)-1 -Z8 (6)
R5 Z1 (5)-1 -Z3 (5) -Z2 (5) Z4 (5)-1 -Z5 (5) Z7 (5)-1 Z6 (5)-1 -Z8 (5)
R6 Z1 (4)-1 -Z3 (4) -Z2 (4) Z4 (4)-1 -Z5 (4) Z7 (4)-1 Z6 (4)-1 -Z8 (4)
R7 Z1 (3)-1 -Z3 (3) -Z2 (3) Z4 (3)-1 -Z5 (3) Z7 (3)-1 Z6 (3)-1 -Z8 (3)
R8 Z1 (2)-1 -Z3 (2) -Z2 (2) Z4 (2)-1 -Z5 (2) Z7 (2)-1 Z6 (2)-1 -Z8 (2)
输出 Z1 (1)-1 -Z2 (1) -Z3 (1) Z4 (1)-1 -Z5 (1) Z6 (1)-1 Z7 (1)-1 -Z8 (1)
(2)将128比特的密文分组划分为8个数据子块,每个子块16比特,初始时,令这8个子块分别为X1、X2、X3、X4、X5、X6、X7和X8,作为迭代的第一轮输入
(3)令i=1
(4)迭代运算
A=X1⊙(Z1 (10-i))-1,B=X2[+](-Z2 (10-i)), C=X3[+](-Z3 (10-i)), D=X4⊙(Z4 (10-i))-1
E=X5[+](-Z5 (10-1)), F=X6⊙(Z6 (10-i))-1,G=X7⊙(Z7 (10-i))-1,H=X8[+](-Z8 (10-1))
I=A(+)C, J=B(+)D, K=E(+)G, L=F(+)H
M=I⊙J, N=K[+]M, S=L⊙N, P=M[+]S
U=I[+]S, T=L⊙P
X1=A(+)P, X3=C(+)P, X5=E(+)T, X7=G(+)T
X2=B(+)U, X4=D(+)U, X6=F(+)S, X8=H(+)S
(5)i=i+1,如果i≤8,则X2与X3互换、X6与X7互换,且-Z2 (10-i)与-Z3 (10-i)互换、Z6 (10-i)-1与Z7 (10-i)-1互换,然后转至(4),否则,下一步
(6)输出变换
Y1=X1⊙(Z1 (1))-1,Y2=X2[+](-Z2 (1)),Y3=X3[+](-Z3 (1)),Y4=X4⊙(Z4 (1))-1
Y5=X5[+](-Z5 (1)),Y6=X6⊙(Z6 (1))-1,Y7=X7⊙(Z7 (1))-1,Y8=X8[+](-Z8 (1))
(7)连接Y1、Y2、Y3、Y4、Y5、Y6、Y7和Y8,得到128比特的原明文分组PT。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410046449 CN1617493A (zh) | 2004-06-09 | 2004-06-09 | 基于群复合轮函数和128比特分组的对称密钥加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410046449 CN1617493A (zh) | 2004-06-09 | 2004-06-09 | 基于群复合轮函数和128比特分组的对称密钥加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1617493A true CN1617493A (zh) | 2005-05-18 |
Family
ID=34763847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410046449 Pending CN1617493A (zh) | 2004-06-09 | 2004-06-09 | 基于群复合轮函数和128比特分组的对称密钥加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1617493A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523086A (zh) * | 2011-12-07 | 2012-06-27 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN104281815A (zh) * | 2013-07-05 | 2015-01-14 | 中国移动通信集团北京有限公司 | 文件加解密的方法和系统 |
CN103812658B (zh) * | 2014-01-21 | 2018-01-16 | 沈阳工业大学 | 一种基于流密码的安全通信协议 |
CN107896149A (zh) * | 2018-01-02 | 2018-04-10 | 南京航空航天大学 | 基于三个群运算的128位对称加密方法 |
CN116436708A (zh) * | 2023-06-14 | 2023-07-14 | 天津星耀九洲科技有限公司 | 一种基于区块链技术的可信数据分享方法和系统 |
-
2004
- 2004-06-09 CN CN 200410046449 patent/CN1617493A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523086A (zh) * | 2011-12-07 | 2012-06-27 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN102523086B (zh) * | 2011-12-07 | 2014-12-24 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN104281815A (zh) * | 2013-07-05 | 2015-01-14 | 中国移动通信集团北京有限公司 | 文件加解密的方法和系统 |
CN104281815B (zh) * | 2013-07-05 | 2017-09-29 | 中国移动通信集团北京有限公司 | 文件加解密的方法和系统 |
CN103812658B (zh) * | 2014-01-21 | 2018-01-16 | 沈阳工业大学 | 一种基于流密码的安全通信协议 |
CN107896149A (zh) * | 2018-01-02 | 2018-04-10 | 南京航空航天大学 | 基于三个群运算的128位对称加密方法 |
CN116436708A (zh) * | 2023-06-14 | 2023-07-14 | 天津星耀九洲科技有限公司 | 一种基于区块链技术的可信数据分享方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1104118C (zh) | 计算机支持的在两个计算机之间的密码交换方法 | |
CN1168041A (zh) | 加密和解密方法以及加密和解密装置 | |
CN1303777C (zh) | 无状态接收机的广播加密和密钥撤销方法 | |
CN1801693A (zh) | 分组加密算法中对短分组的处理方法 | |
CN1282325C (zh) | 能快速解密的密码系统与方法 | |
CN1324831C (zh) | 加密/解密系统和加密/解密方法 | |
CN1146184C (zh) | 第一计算机单元和集群计算机单元之间的集群密码管理方法 | |
CN1172235C (zh) | 扩充密钥发生器、加密/解密单元、扩充密钥产生方法 | |
CN1185821C (zh) | 密码通信方法 | |
CN101061661A (zh) | 加密方法 | |
CN1483271A (zh) | 安全通信包处理装置及其方法 | |
CN1898896A (zh) | 高级加密标准算法的可编程数据加密引擎 | |
CN1929369A (zh) | 以对等方式安全地发送和接收数据的设备和方法 | |
CN101040275A (zh) | 内容加密方法、系统和利用该加密方法通过网络提供内容的方法 | |
CN1503503A (zh) | 数据加密、解密方法及装置 | |
CN1697369A (zh) | 分组密码加密解密的方法及其加密解密器 | |
CN1663172A (zh) | 为aes rijndael分组密码产生轮次密钥 | |
CN101079701A (zh) | 高安全性的椭圆曲线加解密方法和装置 | |
CN1870499A (zh) | 产生新的多变量公钥密码系统的方法 | |
CN1602615A (zh) | 分组路由设备和分组路由方法 | |
CN102255725A (zh) | 随机混合密钥加解密方法 | |
CN1238988C (zh) | 密钥信息生成的方法和装置、内容信息加密与解密的方法和装置 | |
CN1258148C (zh) | 高安全等级对称密钥算法的加密、解密方法及加密器 | |
CN1617493A (zh) | 基于群复合轮函数和128比特分组的对称密钥加密方法 | |
CN1858768A (zh) | 一种对数字内容进行加密和解密的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |