一种数据混合加密方法技术

技术编号:18416749 阅读:23 留言:0更新日期:2018-07-11 08:47
本发明专利技术提供一种数据混合加密方法,该方法包括步骤S1:发送方发送明文P;步骤S2:运用DES算法对明文P进行加密;步骤S3:在数据传输过程中,运用RSA算法对密钥K进行加密;步骤S4:在RSA算法的基础上,对CK进行解密;步骤S5:用DES算法和密钥K对CP进行解密;步骤S6:接受方获取明文P。与现有技术相比:本发明专利技术提供了一种数据混合加密方法,大大提高了数据传输过程中的安全性;本发明专利技术的混合加密算法综合DES和RSA的加密速度,用于处理大数据传输时,加密速度远快于RSA加密速度本发明专利技术的混合加密算法很好地解决了DES和RSA的密钥生成和管理的问题。

A data mixed encryption method

The present invention provides a data mixed encryption method, which includes step S1: the sender sends plaintext P; step S2: using the DES algorithm to encrypt the plaintext P; step S3: in the process of data transmission, the RSA algorithm is used to encrypt the key K; step S4: on the basis of the RSA algorithm, the CK is decrypted; step S5: CP is decrypted using the DES algorithm and the key K; step S6: the recipient gets the plaintext P. Compared with the existing technology, the invention provides a data mixed encryption method, which greatly improves the security in the data transmission process; the hybrid encryption algorithm of the invention combines the encryption speed of DES and RSA for processing large data transmission, and the encryption speed is much faster than the RSA encryption speed of the hybrid encryption algorithm. The key generation and management of DES and RSA are solved.

【技术实现步骤摘要】
一种数据混合加密方法
本专利技术涉及信息安全领域,具体涉及一种数据混合加密方法。
技术介绍
随着移动互联网和计算机技术的迅速发展,人们的生活水平正逐步提高,智能手机在日常生活中扮演着非常重要的角色。由于手机的轻便、快捷、功能全面等优点,人们越来越依赖于手机,并逐渐代替计算机进行各种通信和数据交换业务。因此,在移动端到服务器数据传输过程中的数据信息安全问题越来越受到重视,在信息化如此发达的社会,一旦移动互联网的安全保障和稳定制度受到威胁,将给运营商和用户带来巨大的经济损失。为了解决上述问题,现代密码学和网络安全技术逐步发展起来。主流密码学分为对称密码学算法和非对称密码学算法,前者的典型代表算法有DES、AES等,后者主要支持RSA算法。DES算法加密速度相当快,可应用于大数据加密,但是由于其密钥长度过短和S盒的不确定性,信息安全性特别低,明文易受攻击,且DES的密钥管理非常消耗系统的开销;RSA算法虽然安全性高,但是,RSA算法存在素数检测和产生大素数等问题,且RSA的密钥生成较困难,很难对所有数据做到一次一密的效果,且加密速度不快,不适合于大数据加密。鉴于上述缺陷,本专利技术创作者经过长时间的研究和实践终于获得了本专利技术。
技术实现思路
为解决上述技术缺陷,本专利技术采用的技术方案在于,提供一数据混合加密方法,该方法包括以下步骤:步骤S1:发送方发送明文P;步骤S2:运用DES算法对明文P进行加密,表示为:CP=ED(K,P),其中,CP是明文P加密后的密文,ED代表DES算法的一系列加密转换公式,K是DES算法的密钥;步骤S3:在数据传输过程中,运用RSA算法对密钥K进行加密,表示为:CK=ER(Ka,K),其中,CK是密钥K加密后的密文,ER代表RSA算法的加密公式,Ka是RSA算法的公钥;步骤S4:在RSA算法的基础上,对CK进行解密,表示为:K=DR(Kb,CK),其中,DR代表RSA算法的解密公式,Ka是RSA算法的私钥;步骤S5:用DES算法和密钥K对CP进行解密,表示为P=DD(K,CP),其中,DD代表DES算法的一系列解密转换公式;步骤S6:接受方获取明文P。较佳的,所述步骤S2具体包括:步骤S21:输入64比特明文P,分别表示为p1,p2,…,p64;步骤S22:对输入的64比特明文P进行初始置换IP,得到置换后的明文P0;步骤S23:将明文P0等分成L0和R0左右两部分,分别表示明文P0的左32比特和右32比特;步骤S24:进行16次相同的迭代步骤,再进行轮加密,将上一轮的Li-1和Ri-1作为下一轮的输入,下一轮的输出为Li和Ri;步骤S25:进行逆置换IP-1,即初始置换的逆运算,得到密文CP;步骤S26:输出64比特的密文C,分别表示为c1,c2,…c64。较佳的,所述步骤S24中的迭代步骤为Li=Ri-1,其中,f是一个置换函数,其包括E变化、S盒和Q变换,Ki为轮密钥。较佳的,所述轮密钥为实际输入的64比特密钥通过循环左移位和压缩置换得到的48比特轮密钥。较佳的,所述步骤S3具体包括:步骤S31:选择两个大素数p和q,且p≠q,计算n=p×q,其中,是n的欧拉函数;步骤S32:选取素数并且a与互素;步骤S33:将(a,n)做为公钥Ka,对密钥K按公式CK≡Kamodn进行加密。较佳的,所述步骤S32通过Miller-Rabin算法检测随机生成的大整数中的素数,并在Miller-Rabin算法之前,在所述随机生成的大整数中,先去除明显合数。较佳的,所述去除明显合数的具体步骤包括:步骤S32-1:随机生成大整数m,并选取从2开始的一组长度为53的素数组,记为v[i];步骤S32-2:设i=0;步骤S32-3:当i<53时,计算的y=mmodv[i]值;步骤S32-4:若y=0,则说明m可以整除,不是素数;否则,i=i+1,转到步骤S32-3。较佳的,所述步骤S4根据Euclidean算法,计算私钥Kb为(b,n),对密文进行解密,公式为K≡CKbmodn,从而得到DES的密钥。与现有技术比较,本专利技术的有益效果在于:本专利技术提供了一种数据混合加密方法,通过RSA加密DES的密钥,大大提高了数据传输过程中的安全性;本专利技术的混合加密算法综合DES和RSA的加密速度,用于处理大数据传输时,加密速度远快于RSA加密速度;本专利技术的混合加密算法中,RSA只需要执行一次,即对DEA密钥进行加密,不需要密钥多次生成,且密钥是经过RSA加密的,不存在密钥保密和管理的问题,因此,本专利技术的混合加密算法很好地解决了DES和RSA的密钥生成和管理的问题。附图说明为了更清楚地说明本专利技术各实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。图1为本专利技术提供的一种数据混合加密方法的流程示意图;图2为本专利技术提供的一种数据混合加密方法的流程框图;图3为本专利技术的步骤S2的流程示意图;图4为本专利技术的步骤S24的E变化扩展规则表;图5为本专利技术的步骤S24的S盒之一的数据表;图6为本专利技术的轮密钥生成装置示意图;图7为本专利技术的步骤S3流程示意图;图8为本专利技术的步骤S32中去除明显合数的流程示意图;图9为本专利技术的Miller-Rabin算法的流程示意图。具体实施方式以下结合附图,对本专利技术上述的和另外的技术特征和优点作更详细的说明。如图1和图2所示,为本专利技术提供的一种数据混合加密方法的流程框图和流程示意图,该方法包括以下步骤:步骤S1:发送方发送明文P。步骤S2:运用DES算法对明文P进行加密,表示为CP=ED(K,P)。其中,CP是明文P加密后的密文,ED代表DES算法的一系列加密转换公式,K是DES算法的密钥。如图3所示,为步骤S2的流程示意图,该步骤S2具体包括:步骤S21:输入64比特明文P,分别为p1,p2,…,p64。步骤S22:对输入的64比特明文P进行初始置换IP,得到置换后的明文P0。P0仍然为64比特,只是改变了明文信息额顺序比特置,提高了加密过程的安全性。在步骤S22中,对于输入的64比特明文P,首先进行的操作是初始置换IP,这些置换只是改变了明文P中信息的排列。在轮加密后,对输出的结果进行逆置换IP-1,这样才能得到最终的密文CP。例如,输入的明文为p1p2Lp64,根据初始置换后,变为p58p50Lp8,即明文的第58比特变为第一比特,明文的第50比特变为第二比特,以此类推,明文的第8比特变为最后一比特,打乱了原始明文的排列顺序。步骤S23:将明文P0等分成L0和R0左右两部分,分别表示明文P0的左32比特和右32比特。步骤S24:进行16次相同的迭代步骤,再进行轮加密,将上一轮的Li-1和Ri-1作为下一轮的输入,下一轮的输出为Li和Ri。其中,i=1,2,L,16,最终输出L16和R16。每一步的迭代步骤是Li=Ri-1,其中,f是一个置换函数,里面包括E变化、S盒和Q变换,符号表示异或逻辑运算,Ki为实际输入的64比特密钥通过循环移位和压缩置换得到的48比特的轮密钥。在步骤S24中,f是一个置换函数,设对于第i次轮加密,已知输入数据是32比特Li-1、32比特Ri-1和48比特的轮密钥Ki,具体的E变化、S盒和Q变换描述如下:(1)E变化是将32比特的Ri-1扩展为48比特,然后再本文档来自技高网...

【技术保护点】
1.一种数据混合加密方法,其特征在于,该方法包括以下步骤:步骤S1:发送方发送明文P;步骤S2:运用DES算法对明文P进行加密,表示为:CP=ED(K,P),其中,CP是明文P加密后的密文,ED代表DES算法的一系列加密转换公式,K是DES算法的密钥;步骤S3:在数据传输过程中,运用RSA算法对密钥K进行加密,表示为:CK=ER(Ka,K),其中,CK是密钥K加密后的密文,ER代表RSA算法的加密公式,Ka是RSA算法的公钥;步骤S4:在RSA算法的基础上,对CK进行解密,表示为:K=DR(Kb,CK),其中,DR代表RSA算法的解密公式,Ka是RSA算法的私钥;步骤S5:用DES算法和密钥K对CP进行解密,表示为P=DD(K,CP),其中,DD代表DES算法的一系列解密转换公式;步骤S6:接受方获取明文P。

【技术特征摘要】
1.一种数据混合加密方法,其特征在于,该方法包括以下步骤:步骤S1:发送方发送明文P;步骤S2:运用DES算法对明文P进行加密,表示为:CP=ED(K,P),其中,CP是明文P加密后的密文,ED代表DES算法的一系列加密转换公式,K是DES算法的密钥;步骤S3:在数据传输过程中,运用RSA算法对密钥K进行加密,表示为:CK=ER(Ka,K),其中,CK是密钥K加密后的密文,ER代表RSA算法的加密公式,Ka是RSA算法的公钥;步骤S4:在RSA算法的基础上,对CK进行解密,表示为:K=DR(Kb,CK),其中,DR代表RSA算法的解密公式,Ka是RSA算法的私钥;步骤S5:用DES算法和密钥K对CP进行解密,表示为P=DD(K,CP),其中,DD代表DES算法的一系列解密转换公式;步骤S6:接受方获取明文P。2.根据权利要求1所述的一种数据混合加密方法,其特征在于,所述步骤S2具体包括:步骤S21:输入64比特明文P,分别表示为p1,p2,…,p64;步骤S22:对输入的64比特明文P进行初始置换IP,得到置换后的明文P0;步骤S23:将明文P0等分成左右两部分L0和R0,分别表示明文P0的左32比特和右32比特;步骤S24:进行16次相同的迭代步骤,再进行轮加密,将上一轮的Li-1和Ri-1作为下一轮的输入,下一轮的输出为Li和Ri;步骤S25:进行逆置换IP-1,即初始置换的逆运算,得到密文CP;步骤S26:输出64比特的密文C,分别表示为c1,c2,…c64。3.根据权利要求2所述的一...

【专利技术属性】
技术研发人员:侯大勇李青海简宋全邹立斌
申请(专利权)人:广东精点数据科技股份有限公司
类型:发明
国别省市:广东,44

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

1