预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局*CN103152171A*(12)发明专利申请(10)申请公布号(10)申请公布号CNCN103152171103152171A(43)申请公布日2013.06.12(21)申请号201310099408.4(22)申请日2013.03.26(71)申请人桂林电子科技大学地址541004广西壮族自治区桂林市金鸡路1号(72)发明人丁勇韦永壮李新国丁继强官秀国(74)专利代理机构桂林市持衡专利商标事务所有限公司45107代理人陈跃琳(51)Int.Cl.H04L9/18(2006.01)H04L9/08(2006.01)权权利要求书4页利要求书4页说明书8页说明书8页附图1页附图1页(54)发明名称密钥可变的内轮置换流密码加密方法(57)摘要本发明公开一种密钥可变的内轮置换流密码加密方法,其采用不同的数学运算符,快速实现密钥比特间的混淆性;在密钥流字节的计算中采用“纵向”扩散和“横向”压缩的相结合的比特混合置乱技术;密钥流字节采用多轮“迭代”方法得到,保证算法抵抗攻击;引入固定常量,破坏内轮函数结构,避免滑动攻击;种子密钥和初始向量的长度保证抵抗时空折中攻击;算法的运算符交替出现,分布均匀以抵抗一般的边信道攻击,特别功耗攻击;采用15轮的迭代内部状态具有足够的稳健性,足以抵抗传统的差分攻击;种子密钥长度可以根据安全强度选择;算法简洁、安全性高;各个密钥流块独立生成,特别适合平行计算,软件和硬件容易、快速实现,各种平台实现灵活。CN103152171ACN103527ACN103152171A权利要求书1/4页1.密钥可变的内轮置换流密码加密方法,其特征是包括如下步骤:(1)内部状态初始化阶段:(1.1)随机选择3~8个32比特的种子密钥K=(k0,k1,…,k7)和3个32比特的初始向量v=(v0,v1,v2),确定3个32比特的常量值c=(c0,c1,c2);启动2个32比特的计数向量t=(t0,t1);(1.2)开辟一个512比特的存储器X,该存储器分为16个字,每个字为32比特,即(1.3)将种子密钥K、初始向量v、计数向量t和常量值c分别注入存储器X中,即令(2)密钥流生成阶段:(2.1)定义Xr=roundr(X),其中roundr(X)又分为行运算roundodd(X)和列运算roundeven(X);(2.2)若r为奇数即roundodd(X)的变化规则为:将存储器X的第一行x=(x0,x1,x2,x3)变化到y=(y0,y1,y2,y3),有:a0=x0+x3,a3=(x2+a0)<<<3a2=x1+a3,a1=(x2+a2)<<<17将存储器X的第二行x=(x4,x5,x6,x7)变化到y=(y4,y5,y6,y7),有:a4=x4+x7,a7=(x6+a4)<<<3a6=x5+a7,a5=(x6+a6)<<<172CN103152171A权利要求书2/4页将存储器X的第三行x=(x8,x9,x10,x11)变化到y=(y8,y9,y10,y11),有:a8=x8+x11,a11=(x10+a8)<<<3a10=x9+a11,a9=(x10+a10)<<<17将存储器X的第四行x=(x12,x13,x14,x15)变化到y=(y12,y13,y14,y15),有:a12=x12+x15,a15=(x14+a12)<<<3a14=x13+a15,a13=(x14+a14)<<<17上述,+表示mod232运算,表示mod2运算,<<<表示左循环移位,>>>表示右循环移位;(2.3)若r为偶数(即roundeven(X))的变化规则为:将存储器X的第一列x=(x0,x4,x8,x12)变化到y=(y0,y4,y8,y12),有:a0=x0+x12,a3=(x8+a0)<<<3a2=x4+a3,a1=(x8+a2)<<<17将存储器X的第二列x=(x1,x5,x9,x13)变化到y=(y1,y5,y9,y13),有:a4=x1+x13,a7=(x9+a4)<<<3a6=x5+a7,a5=(x9+a6)<<<173CN103152171A权利要求书3/4页将存储器X的第三列x=(x2,x6,x10,x14)变化到y=(y2,y6,y10,y14),有:a8=x2+x14,a11=(x10+a8)<<<3a10=x6+a11,a9=(x10+a10)<<<17将存储器X的第四列x=(x3,x7,x11,x15)变化到y=(y3,y7,y11,y15),有:a12=x3+x15,a15=(x11+a12)<<<3a14=x7+a15,a13=(x11+a14)<<<17(2.4)根据步骤(2.2)和(2.3)所述变化规则计算X=round(X),X7=round7(X)和1515(t)