[发明专利]一种中英文字符串的加密、解密方法有效
申请号: | 201910494402.4 | 申请日: | 2019-06-10 |
公开(公告)号: | CN110299989B | 公开(公告)日: | 2022-04-01 |
发明(设计)人: | 盛苏英;张振娟;张小美;陆国平;周磊;高岩波;朱建红;任宇;任洁 | 申请(专利权)人: | 南通大学 |
主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/18;H04L9/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 226019*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种中英文字符串的加密、解密方法,包括:将某段中英文字符串逐个字符转换成数值型数据,并将数值型数据转换成7bits的二进制数据,得到二进制序列;然后根据混沌信号排序前、后的位置变化规则,对二进制序列进行置乱;再通过混沌系统单次迭代、逐个二进制分组序列移位、混沌系统参数调整的循环运算,完成置乱后二进制序列的移位;最后进行数值与字符的转换,得到该段中英文字符串的加密密文,通过类似方法可将密文解密恢复出原始中英文字符串。本发明利用混沌信号的密码特性,对中英文字符串转换而成的二进制序列进行置乱、分组和移位等操作的加密/解密,可抵抗已知/选择明文攻击、唯密文攻击,保证中英文字符串加密与解密的安全性。 | ||
搜索关键词: | 一种 中英文 字符串 加密 解密 方法 | ||
【主权项】:
1.一种中英文字符串的加密方法,其特征在于,包括如下几个步骤:(1)转码:将某段中英文字符串逐个字符转换为数值型数据,得到数值序列P={P1,P2,...,Pi,....,P2×L},再将数值序列P逐个元素转换成7bits的二进制数据,得到二进制序列B={B1,B2,...,Bi,....,B14×L},其中所述中英文字符串的长度为L,所述数值序列P的长度为2×L,所述二进制序列B的长度为14×L;(2)二进制序列B的置乱:首先利用外部加密密钥(α、β),按照如下公式(1)计算分别得到倾斜帐篷混沌映射的初值x1、参数μ和取样间隔m,
其中,PB_1为二进制序列B中元素为二进制‘1’的总个数,PB_0为二进制序列B中元素为二进制‘0’的总个数,然后利用初值x1和参数μ,对如下公式(2)所示的倾斜帐篷混沌映射进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X,从中每隔m个元素取1个,从而形成长度为14×L的混沌序列Y={Y1,Y2,...,Y14×L},最后将混沌序列Y按升序排序,根据序列Y排序前、后的位置变化置乱规则,对二进制序列B={B1,B2,...,Bi,....,B14×L}进行置乱,得到置乱后的二进制序列
(3)置乱后二进制序列
的分组、移位:首先根据switch1_k=mod(PB_1,4),对置乱后的二进制序列
选择不同的分组方式,当switch1_k=0时,将二进制序列
中元素从头到尾依次正向以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止,当switch1_k=1时,将二进制序列
中元素从尾到头依次逆向以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止,当switch1_k=2时,将二进制序列
中元素从两头向中间(依次正向从首端取3个元素、正向从尾端取3个元素,逐步向中间逼近)以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止,当switch1_k=3时,将二进制序列
中元素从两头向中间(依次逆向从尾端取3个元素、逆向从首端取3个元素,逐步向中间逼近)以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止,从而得到分组后的二进制序列,表示为
其中每一个二进制分组序列均包含6个二进制位,且
然后令混沌初值z1=Y14×L、参数μ1=μ,将每一个二进制分组序列BF{i},其中
依次进行如下操作:S11.由混沌信号zi和参数μ1,对如下公式(3)所示的倾斜帐篷混沌映射进行单次迭代,得到混沌信号zi+1,
S12.利用混沌信号zi+1,按照如下公式(4)计算分别得到移位方向B_shift、移位个数B_k,
当B_shift>0时,将二进制分组序列BF{i}中元素循环左移B_k位,得到移位后的二进制分组序列
并利用bin2dec(·)函数将二进制分组序列
转换成数值型数据
当B_shift<0时,将二进制分组序列BF{i}中元素循环右移B_k位,得到移位后的二进制分组序列
并利用bin2dec(·)函数将二进制分组序列
转换成数值型数据
S13.比较i与
的大小,若
则利用数值型数据
对倾斜帐篷混沌映射的参数μ1按照如下公式(5)进行调整,然后转向步骤S11,
若
则停止操作,得到数值序列
(4)转码:将数值序列
进行数值与字符的转换,得到字符序列C,即为该段中英文字符串的加密密文,其中序列C的长度为
且![]()
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南通大学,未经南通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910494402.4/,转载请声明来源钻瓜专利网。