一种基于明文随机分割的RSA‑Hill混合加密方法技术

技术编号:15749933 阅读:250 留言:0更新日期:2017-07-03 15:57
一种基于明文随机分割的RSA‑Hill混合加密方法。其是利用生成的Pascal矩阵替换Hill密码的密钥,将混合加密算法中会话密钥转移为明文的随机分割数,再使用RSA密码对其加密。从模拟实验中可以观察到,本发明专利技术提出的方法通过随机分割明文满足了构造混合加密方法的要求,同时避免了哑元问题的出现,实现了一次一密的加密流程,因此该方法具有较好的加密效率和较强的抗攻击性。

【技术实现步骤摘要】
一种基于明文随机分割的RSA-Hill混合加密方法
本专利技术属于计算机网络信息安全
,特别是涉及一种基于明文随机分割的RSA-Hill混合加密方法。
技术介绍
在密码学长期实践过程中,由于混合密码的执行效率较高,因此该密码体制被提出并一直被广泛使用。在混合加密体系中,常常用对称密码加密明文,用公钥密码加密会话密钥。混合加密既利用公钥密码的优点避免密钥配送问题,也利用对称密码的优点提升方法处理速度。2001年Cramer和Shoup第一次形式化定义混合加密模型并提出了KEM-DEM结构模型。他们将混合加密分为密钥封装机制(keyencapsulationmechanism,KEM)模块和数据封装机制(dataencapsulationmechanism,DEM)模块。KEM模块利用接收者的公钥加密随机生成的会话密钥K,得到会话密钥的密文C0。DEM模块利用会话密钥K对明文M加密。同时,作者提到构建混合密码的一个关键前提是KEM模块与DEM模块必须要兼容,即:会话密钥K的长度与DEM模块中对称密码密钥长度相等。因为有了混合密码的形式化定义,国内外学者开展了大量的研究,但对于很多混合加密方案不能简单地套用KEM-DEM结构,这些方案也具有较好的执行效率和安全性。如:DHAES模型、REACT模型和FO模型。针对这样的情况,一种全新的方案TagKEM-DEM被提出,用DEM生成的密文作为TagKEM中的标签,将两个模块关联起来的同时保证了混合密码体制的安全性。由于混合密码形式化结构的限制,使得符合该结构的密码体制较少。一些密码体制因密钥的形式(如:Hill密码)或安全性限制了其无法依据KEM-DEM结构与其它密码组合成混合密码。RSA密码与Hill密码构建混合密码仍处于探索阶段。Rahman等提出了Hill++算法增强了Hill密码对已知明文攻击的抵抗性,Goel通过Hill密码改进了RSA密码的安全性。李文峰提出基于有限域矩阵构造技术的RSA-Sign-Hill算法。该算法以生成Hill密码加密矩阵时产生的关键数字k作为会话密钥,导致其会话密钥过于单一,生成加密矩阵算法固定且代价较高,无法抵抗已知明文攻击等密码分析手段。上述方法重点是对Hill密码的改进,但Hill密码属于古典密码,其安全性较弱。同时,上述方法仍存在哑元问题,虽然相关研究已解决哑元问题,但是并未从本质上提高Hill密码的安全性。
技术实现思路
为了解决上述问题,本专利技术的目的在于提供一种基于明文随机分割的RSA-Hill混合加密方法。为了达到上述目的,本专利技术提供的基于明文随机分割的RSA-Hill混合加密方法包括按顺序进行的下列步骤:步骤1)提交明文阶段:用户提交需要加密的明文,根据字符表将该明文中的字母转化为数字并统计出数字明文字符数;步骤2)生成明文随机分割数的阶段:根据统计出的数字明文字符数n确定明文随机分割数的个数k,再依据个数k生成一组明文随机分割数n1,n2,…,nk;步骤3)判断明文随机分割数是否满足条件的阶段:判断上述生成的一组明文随机分割数n1,n2,…,nk是否满足条件;若则满足条件,进入下一步骤;否则返回步骤2)重新生成一组明文随机分割数;步骤4)实施明文分割的阶段:根据上述生成的一组明文随机分割数n1,n2,…,nk,将步骤1)中的数字明文随机分割成k块,每一块被分割的数字明文字符数为ni,i=1,2,…,k;步骤5)生成Pascal矩阵的阶段:首先定义Pascal矩阵的阶数1,2,…,k,然后用户根据需要选择不同阶数的Pascal公式,最后生成Pascal矩阵;步骤6)明文加密的阶段:将步骤4)中获得的分割后的数字明文与步骤5)中对应阶数的Pascal矩阵采用Hill加密算法进行加密运算,得到加密后的密文列向量,然后通过转置使其变为密文行向量;步骤7)随机数加密的阶段:用RSA密码对明文随机分割数进行加密,得到加密后的明文随机分割数,最后将加密后的明文随机分割数与步骤6)中加密后的密文向量组合成最终密文向量。在步骤2)中,所述的确定明文随机分割数的个数k有两种方法:第一种方法是人为设定固定的个数k的数值;第二种方法是根据明文字符数确定个数k的数值;对于较小的明文,选取第二种方法;而对于较大的明文,选择第一种方法。在步骤5)中,所述的生成Pascal矩阵的具体方法是:步骤一:根据上述一组明文随机分割数n1,n2,…,nk确定加密所需Pascal矩阵的阶数;若某一明文随机分割数为ni,i=1,2,…,k,则对其加密所需要的Pascal矩阵的阶数也为ni;步骤二:确定使用Pascal公式的阶数;若明文随机分割数ni较大,使用高阶的Pascal公式,则能更快生成所需阶数的Pascal矩阵;而若明文随机分割数ni较小,则使用低阶的Pascal公式;步骤三:若选择高阶的Pascal公式,需要先逐行生成该Pascal矩阵前数行的数据作为生成完整Pascal矩阵的基础,然后再根据该阶Pascal公式生成完整Pascal矩阵。本专利技术提供的基于明文随机分割的RSA-Hill混合加密方法是利用生成的Pascal矩阵替换Hill密码的密钥,将混合加密算法中会话密钥转移为明文的随机分割数,再使用RSA密码对其加密。从模拟实验中可以观察到,本专利技术提出的方法通过随机分割明文满足了构造混合加密方法的要求,同时避免了哑元问题的出现,实现了一次一密的加密流程,因此该方法具有较好的加密效率和较强的抗攻击性。附图说明图1为本专利技术提供的基于明文随机分割的RSA-Hill混合加密方法的流程图;图2为经典Hill加密算法流程图;图3为不同加密算法对不同大小文件的加密耗时对比图。具体实施方式下面结合附图和具体实施例对本专利技术提供的基于明文随机分割的RSA-Hill混合加密方法进行详细说明。如图1所示,本专利技术提供的基于明文随机分割的RSA-Hill混合加密方法包括按顺序进行的下列步骤:步骤1)提交明文阶段:用户提交需要加密的明文,根据字符表将该明文中的字母转化为数字并统计出数字明文字符数;例如:明文中的字母Apple转化成数字为36,25,25,21,14,字符数为5;步骤2)生成明文随机分割数的阶段:根据统计出的数字明文字符数n确定明文随机分割数的个数k,再依据个数k生成一组明文随机分割数n1,n2,…,nk;步骤3)判断明文随机分割数是否满足条件的阶段:判断上述生成的一组明文随机分割数n1,n2,…,nk是否满足条件;若则满足条件,进入下一步骤;否则返回步骤2)重新生成一组明文随机分割数;步骤4)实施明文分割的阶段:根据上述生成的一组明文随机分割数n1,n2,…,nk,将步骤1)中的数字明文随机分割成k块,每一块被分割的数字明文字符数为ni,i=1,2,…,k;根据生成的明文随机分割数对明文进行分割可以有效避免哑元问题;哑元的出现是Hill密码定长分割明文所导致的;当明文长度不是加密矩阵阶数的整数倍时,需要补充哑元才可以组合成完整的明文矩阵;但是问题在于Hill密码中对明文有规律的分割已无法抵抗已知明文攻击等密码分析手段。本专利技术使得明文分割不具有规律性,从而保证了密码体制的安全性。步骤5)生成Pascal矩阵的阶段:首先定义Pascal矩阵的阶数1,本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/62/201710241961.html" title="一种基于明文随机分割的RSA‑Hill混合加密方法原文来自X技术">基于明文随机分割的RSA‑Hill混合加密方法</a>

【技术保护点】
一种基于明文随机分割的RSA‑Hill混合加密方法,其特征在于:所述的基于明文随机分割的RSA‑Hill混合加密方法包括按顺序进行的下列步骤:步骤1)提交明文阶段:用户提交需要加密的明文,根据字符表将该明文中的字母转化为数字并统计出数字明文字符数;步骤2)生成明文随机分割数的阶段:根据统计出的数字明文字符数n确定明文随机分割数的个数k,再依据个数k生成一组明文随机分割数n

【技术特征摘要】
1.一种基于明文随机分割的RSA-Hill混合加密方法,其特征在于:所述的基于明文随机分割的RSA-Hill混合加密方法包括按顺序进行的下列步骤:步骤1)提交明文阶段:用户提交需要加密的明文,根据字符表将该明文中的字母转化为数字并统计出数字明文字符数;步骤2)生成明文随机分割数的阶段:根据统计出的数字明文字符数n确定明文随机分割数的个数k,再依据个数k生成一组明文随机分割数n1,n2,…,nk;步骤3)判断明文随机分割数是否满足条件的阶段:判断上述生成的一组明文随机分割数n1,n2,…,nk是否满足条件;若则满足条件,进入下一步骤;否则返回步骤2)重新生成一组明文随机分割数;步骤4)实施明文分割的阶段:根据上述生成的一组明文随机分割数n1,n2,…,nk将步骤1)中的数字明文随机分割成k块,每一块被分割的数字明文字符数为ni,i=1,2,…,k;步骤5)生成Pascal矩阵的阶段:首先定义Pascal矩阵的阶数1,2,…,k,然后用户根据需要选择不同阶数的Pascal公式,最后生成Pascal矩阵;步骤6)明文加密的阶段:将步骤4)中获得的分割后的数字明文与步骤5)中对应阶数的Pascal矩阵采用Hill加密算法进行加密运算,得到加密后的密文列向量,然后通过转置使其变为密文行向量;步骤7)随机数加密的阶段:...

【专利技术属性】
技术研发人员:杨宏宇宁宇光谢丽霞
申请(专利权)人:中国民航大学
类型:发明
国别省市:天津,12

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

1