一种对称密钥加密算法制造技术

技术编号:26797336 阅读:26 留言:0更新日期:2020-12-22 17:14
本发明专利技术涉及一种对称密钥加密算法,属于电通信与改进算法优化技术领域。首先将原始明文进行奇偶变换处理,调整明文的字符位置,并将变换后的奇数位记作L0,偶数位记作R0。然后将任意有限长度的密匙进行分组,通过密匙来决定迭代次数。最后将Li64位和Ri64位为第i次迭代结果的左半部分与右半部分,子密钥Ki为第i轮的96位加密密钥,通过P函数,得到最终加密后的数据。本发明专利技术大幅度增加了破解的难度,提升了信息传递的安全性。

【技术实现步骤摘要】
一种对称密钥加密算法
本专利技术涉及一种对称密钥加密算法,属于电通信与改进算法优化

技术介绍
现有技术中采用对称加密算法对待加密数据进行加密,对称加密算法的有效密匙长度为56位,密匙长度较短,这样对数据的加密性较低。待加密数据在进行迭代的过程比较单一,即使将密匙的长度增加,但是其迭代过程不会发生改变。因为此本专利技术提出用户可以使用任意有限长度的密匙,其迭代过程中的循环方向、循环次数等都与密匙相关,这样增加了信息传递的安全性与可靠性。
技术实现思路
本专利技术要解决的技术问题是提供一种对称密钥加密算法,用以解决上述问题,从而弥补现有技术的缺陷。本专利技术的技术方案是:一种对称密钥加密算法,具体步骤为:Step1:奇偶变换将原始明文进行奇偶变换处理,调整明文的字符位置,并将变换后的奇数位记作L0,偶数位记作R0。Step2:生成子密匙将任意有限长度的密匙进行分组,通过密匙来决定迭代次数。Step3:迭代过程Li(64位)和Ri(64位)为第i次迭代结果的左半部分与右半部分,子密钥Ki为第i轮的96位加密密钥,通过P函数,得到最终加密后的数据。所述Step2具体步骤为:Step2.1:将任意有限长度的密匙进行分组处理,分成N个128bit的数据,不足128bit的进行补位,可以将首位补1,其余位补0。Step2.2:对于单个128bit的数据,每8bit为一个校验位,将这些去除掉,然后进行置换,得到112bit的数据。Step2.3:将112bit位的数据进行分组,把前56bit作为C,后56bit的数据作为D。Step2.4:将前56bit数据进行分组,分成7个8bit的数据,将其第一小组作为循环方向,将前4bit转换为10进制后作为行,后4bit转换为10进制后作为列,查询相对应表格。Step2.5:将后56bit数据进行分组,分成7个8bit的数据,将其第一小组作为单次循环移位数,将前4bit转换为10进制后作为行,后4bit转换为10进制后作为列,查询相对应表格。Step2.6:将Step2.1中的N作为迭代次数,当N大于或等于12时,则只循环12次。Step2.7:得到的子密匙是112bit的数据,通过密匙压缩表进行有损压缩,得到96bit的数据。Step2.8:将奇偶变换得到的报文通过扩展置换变成96bit后,令其为X,则子密匙为Y。Step2.9:判断子密匙首位字符,如果子密匙的首位字符为0,则使用H函数,如果子密匙的首位字符为1,则使用I函数。Step2.10:通过H函数或者I函数的96位报文12字符长度为1组,共计8组。Step2.11:如果通过H函数得到的数据,那么将每组的前4位去除。如果通过I函数得到的数据,那么将每组的后4位去除。进行有损压缩,得到64字节的数据,通过运算规则,得到第一次迭代的结果。所述Step3中,将初始置换进行数次的迭代,即进行加密变换,得到Li和Ri,将此进行组合,得到最终的密文输出块。本专利技术的有益效果是:增加了密匙的长度,使得密匙的有效位不是56bit,至少是112bit,并且在迭代过程中,有密匙来控制迭代次数、循环方向、单次循环位移数等。这样大大提升了信息传递的安全性。附图说明图1是本专利技术的流程示意图;图2是本专利技术的生成子密匙的步骤流程图;图3是本专利技术的迭代过程示意图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本专利技术进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。对称密钥加密算法算法基础循环加工过程,准备需要用到的数据包括:5815212450512589443711812187191527310812290119126125228565319341161006972110381021015498597812754760492070238318109466123336711162682910537410779931330715327178628106949914366926451134363119182551178410375114766157469539110115428177712924135秘钥置换表41252274267104362398592010541512805514301117101505887619537810090864616544921852931121037911107191747261028134717437106833977499669760738475291362437254825194336488...

【技术保护点】
1.一种对称密钥加密算法,其特征在于:/nStep1:将原始明文进行奇偶变换处理,调整明文的字符位置,并将变换后的奇数位记作L0,偶数位记作R0;/nStep2:将任意有限长度的密匙进行分组,通过密匙来决定迭代次数;/nStep3:Li64位和Ri64位为第i次迭代结果的左半部分与右半部分,子密钥Ki为第i轮的96位加密密钥,通过P函数,得到最终加密后的数据。/n

【技术特征摘要】
1.一种对称密钥加密算法,其特征在于:
Step1:将原始明文进行奇偶变换处理,调整明文的字符位置,并将变换后的奇数位记作L0,偶数位记作R0;
Step2:将任意有限长度的密匙进行分组,通过密匙来决定迭代次数;
Step3:Li64位和Ri64位为第i次迭代结果的左半部分与右半部分,子密钥Ki为第i轮的96位加密密钥,通过P函数,得到最终加密后的数据。


2.根据权利要求1所述的对称密钥加密算法,其特征在于所述Step2具体步骤为:
Step2.1:将任意有限长度的密匙进行分组处理,分成N个128bit的数据,不足128bit的进行补位,可以将首位补1,其余位补0;
Step2.2:对于单个128bit的数据,每8bit为一个校验位,将这些去除掉,然后进行置换,得到112bit的数据;
Step2.3:将112bit位的数据进行分组,把前56bit作为C,后56bit的数据作为D;
Step2.4:将前56bit数据进行分组,分成7个8bit的数据,将其第一小组作为循环方向,将前4bit转换为10进制后作为...

【专利技术属性】
技术研发人员:杜庆治刘思玮
申请(专利权)人:昆明理工大学
类型:发明
国别省市:云南;53

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1