[发明专利]一种等长数字加密的实现方法在审
| 申请号: | 202010486988.2 | 申请日: | 2020-05-27 |
| 公开(公告)号: | CN111753317A | 公开(公告)日: | 2020-10-09 |
| 发明(设计)人: | 龙嘉洋;汤铭;张建 | 申请(专利权)人: | 长沙睿永信息技术有限公司 |
| 主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/62 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 410000 湖南省长沙市长沙高新*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数字 加密 实现 方法 | ||
1.一种等长数字加密的实现方法,所述加密方法包括如下步骤:
S1、按顺序截取N(N取值3、6、9、18)位数字明文字符串,转换为整数分别保存到整数数组中;
S2、从明文数组的第一个坐标值起,采用分段加密方法;
S3、计算该段明文数据的字符串长度能表示的最大十进制值、该值的二进制表示位数、右移二进制表示位数后减去1作为最大模数;
S4、取一个小于二进制表示位数的半值的非5的整数作为位移值,如果二进制表示位数为偶数,位移值必须为奇数;
S5、如果是首位数组,则取密钥和最大十进制值相除的余数作为新密钥;
S6、明文数组与密钥相加得到的新值与最大十进制值加1取余保存在该数组中,进入多次循环。
2.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述S1中整数数组的申请大小为SIZE,SIZE=明文串长度Texcl/N+1,其中I=0,L=Texcl。
3.根据权利要求2所述的等长数字加密的实现方法,其特征在于.所述L>N时,截取明文串前N位,转换为数字保存至坐标为I的整数数组中,I=I+1,L=L-N,L<N时,将明文串转换为数字保存至坐标为I的整数组DATA中,I=0,L=Texcl。
4.根据权利要求3所述的等长数字加密的实现方法,其特征在于,所述L>0时,获取数组数据的明文长度Len=L<N,然后调用加密模块,L=L-Len,Key=Key+Data[I],I=I+L,直至L<0,当L<0,且SIZE>1时,Key=Data{SIZE-I},然后调用加密模块,得到L=Texcl,I=0,当L<0,且SIZE<1时,直接得到L=Texcl,I=0。
5.根据权利要求4所述的等长数字加密的实现方法,其特征在于,所述L>0时,Len=L<N,Data[I]前面补0转换为数字字符串拼到结果串的尾部,L=L-Len,I=I+L,直至L<0,当L<0时,保存结果串。
6.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述明文长度能表示的十进制最大数Max=pow(10,Len)-1,所述明文长度能表示的最大二进制位数Bit=Log2(Max)+1,异或操作后不会溢出(十进制)的最大数Max=(1<<iLen)-1。
7.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述S1中整数数组的最后一位保留剩余的不足N位的数字字符串转换来的整数,得到一个明文整数数组。
8.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述S4中取一个小于二进制表示位数的半值的非5的整数作为位移值,如果二进制表示位数为奇数,位移值必须为偶数。
9.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述S5中如果S4的最后结构非首位数组,则密钥与上一个坐标数组值相加后再和最大十进制值相除的余数作为新密钥。
10.根据权利要求1所述的等长数字加密的实现方法,其特征在于,所述S6中多次循环包括四步,其中:
第一步:该数组值右移该值的二进制表示位数后与最大模数取余再加1得到模值;
第二步:该数组值与模值异或;
第三步:该数组值的二进制表示位数内按位移值循环右移,直到得到一个不大于最大十进制值的新数;
第四步:循环完成后,将最后一个字段的值作为密钥,对首数组采用相同方法加密。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长沙睿永信息技术有限公司,未经长沙睿永信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010486988.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种农村建设用地拆旧复垦潜力评估方法及其系统
- 下一篇:一种保护头皮的洗发水





