[发明专利]面向字节的随机多表替换加密与解密方法在审

专利信息
申请号: 202011248734.3 申请日: 2020-11-10
公开(公告)号: CN112422278A 公开(公告)日: 2021-02-26
发明(设计)人: 李春林 申请(专利权)人: 西安培华学院
主分类号: H04L9/08 分类号: H04L9/08;H04L9/14;H04L9/00;H04L29/06
代理公司: 西安智大知识产权代理事务所 61215 代理人: 段俊涛
地址: 710125 陕西省*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 面向 字节 随机 替换 加密 解密 方法
【权利要求书】:

1.面向字节的随机多表替换加密方法,明文、密文和密钥均是有限域GF(28)内的元素,替换表S共有256个元素,工作密钥WKey共有256个元素,用户密钥Key的元素个数可变,最少一个元素,最多256个元素,通过密钥扩展算法生成工作密钥WKey,其特征在于,加密步骤如下:

第(1)步:生成替换表S和工作密钥WKey,产生M个随机数用来改变工作密钥WKey,并生成密文反馈字符FC,具体步骤如下:

第(101)步:生成替换表S,将替换表S中256个元素的值,分别设置为0~255,即S(i)=i,i=0~255;

第(102)步:将用户密钥Key扩展为工作密钥WKey;

第(103)步:根据用户对安全等级的不同要求,分别产生8个、16个或32个GF(28)内的随机数Rnd,进行周期扩展后与第(102)步产生的工作密钥WKey进行mod 256的加法运算,即:WKey(i)=(WKey(i)+Rnd(j))mod 256,i=0~255,j=i mod M,M是系统根据安全等级不同而设定的随机数的个数,将这M个随机数直接输出到密文文件中;

第(104)步:选取工作密钥WKey中的部分元素做mod 256的加法运算,产生初始秘密字符iniSecChar,并将密文反馈字符FC设定为初始秘密字符,即FC=iniSecChar;

第(2)步:循环加密所有明文字符,直到所有明文字符加密完毕,具体步骤如下:

第(201)步:使用工作密钥WKey改变替换表S中元素的位置,i、j是替换表S中元素的编号,j的初始值为0,i从0到255,每次递增1,计算出和当前值i进行交换的值j,j=(j+WKey(i)+S(i))mod 256,然后交换S(i)和S(j)的值;

第(202)步:通过替换表S替换明文字符Pchar,生成相对应的密文字符Cchar,即Cchar=S(Pchar),输出密文字符Cchar;

第(203)步:根据密文字符Cchar的值,改变密文反馈字符FC的值,即FC=(S(Cchar)+iniSecChar)mod 256;

第(204)步:根据替换表S和密文反馈字符FC的值,改变工作密钥WKey的值,即WKey(i)=(WKey(i)+S(WKey(i))+FC)mod 256,i=0~255。

2.根据权利要求1所述面向字节的随机多表替换加密方法,其特征在于,所述第(102)步将用户密钥Key扩展为工作密钥WKey的方法是:首先将用户密钥Key进行周期扩展,直到密钥长度为256个,然后将扩展部分密钥值逐次增加1,并做Mod 256运算,即WKey(i)=Key(i),i=0~N-1,WKey(i)=(Key(j)+i-N+1)mod 256,i=N~255,j=i mod N,N为用户密钥Key的元素个数。

3.根据权利要求1所述面向字节的随机多表替换加密方法,其特征在于,所述第(104)步产生初始秘密字符iniSecChar的方法:在算法中直接设定选取的元素序号,或选择用户密钥Key的元素作为选取的序号,即iniSecChar=(WKey(Key(1))+WKey(Key(2))+…+WKey(Key(N)))mod 256,其中的N为用户密钥Key的元素个数,Key(1)为用户密钥Key的第一个元素。

4.与权利要求1所述面向字节的随机多表替换加密方法对应的解密算法,明文、密文和密钥均是有限域GF(28)内的元素,替换表S和解密替换表DS均有256个元素,工作密钥WKey也有256个元素,用户密钥Key的元素个数可变,最少一个元素,最多256个元素,通过密钥扩展算法生成工作密钥WKey,其特征在于,解密步骤如下:

第(D1)步:生成替换表S、工作密钥WKey和密文反馈字符FC,具体步骤如下:

第(D101)步:生成替换表S,将替换表S中256个元素的值,分别设置为0~255,即S(i)=i,i=0~255;

第(D102)步:将用户密钥Key扩展为工作密钥WKey;

第(D103)步:从加密文件中读出前面的M个随机数Rnd,进行周期扩展后与第(D102)步产生的工作密钥WKey进行mod 256的加法运算,改变工作密钥WKey元素的值,即:WKey(i)=(WKey(i)+Rnd(j))mod 256,i=0~255,j=i mod M,M是系统根据安全等级不同而设定的随机数的个数;

第(D104)步:选取工作密钥WKey中的部分元素做mod 256的加法运算,产生初始秘密字符iniSecChar,并将密文反馈字符FC设定为初始秘密字符,即FC=iniSecChar;

第(D2)步:循环解密所有密文字符,直到所有密文字符解密完毕,具体步骤如下:

第(D201)步:使用工作密钥WKey改变替换表S中元素的位置,i、j是替换表S中元素的编号,j的初始值为0,i从0到255,每次递增1,计算出和当前值i进行交换的值j,j=(j+WKey(i)+S(i))mod 256,然后交换S(i)和S(j)的值;

第(D202)步:计算出解密替换表DS,DS(S(i))=i,i=0~255;

第(D203)步:通过解密替换表DS,将密文字符Cchar替换为明文字符Pchar,即Pchar=DS(Cchar),输出明文字符Pchar;

第(D204)步:根据密文字符Cchar的值,改变密文反馈字符FC的值,即FC=(S(Cchar)+iniSecChar)mod 256;

第(D205)步:根据替换表S和密文反馈字符FC的值,改变工作密钥的值,即WKey(i)=(WKey(i)+S(WKey(i))+FC)mod 256,i=0~255。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安培华学院,未经西安培华学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011248734.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top