使用双分组密码的新型加密方法技术

技术编号:19011538 阅读:199 留言:0更新日期:2018-09-22 10:57
本发明专利技术属于密码学技术领域,特别是涉及一种使用双分组密码的新型加密方法,首先预处理分别得到分组加密算法E1,k1、E2,k2,以及与E1,k1、E2,k2对应的分组解密算法D1,k1、D2,k2;对加密的明文消息按分组加密算法单次处理长度做切分,切分为(M1,M2,M3,M4,…,Mn);利用公式

【技术实现步骤摘要】
使用双分组密码的新型加密方法
本专利技术属于密码学
,特别是涉及一种使用双分组密码的新型加密方法。
技术介绍
分组密码算法是密钥控制下,通过某个置换来实现对明文分组的加密变换。一个安全的分组密码算法要采取适当的工作模式以提高安全性。现有的分组密码加密工作模式都是把单一分组密码算法作为基础模块,搭建相应的加密工作模式算法,无一例外。目前世界上最主流的工作模式有:ECB模式、CBC模式、CTR模式、OFB模式和CFB模式。具体可参考美国NISTFIPSPUB81号标准文件、国际标准化组织ISO/IEC10116:1997第二版标准文件、美国NISTFIPSPUB197号标准文件、美国NIST800-38C号文件等国际规范。其中最为著名的工作模式是密文分组链接CBC模式,参见图1。CBC模式全程使用的是同一个密钥控制下的分组密码算法Ek(这里的要素有两个,一是分组密码算法,用E表示,另一个要素是下标k,表示该分组密码使用的密钥,我们下面记这个分组密码算法的明文分组规模为B比特),具体步骤是:(1)选择B比特随机数C0;(2)将明文按照每B比特进行切分,切分之后的数据为(M1,M2,M3,M4,…,Mn);(3)将第一块的明文数据M1和预先选好的随机数C0做逐位异或操作,并将异或之后的数据通过由密钥控制下的分组密码算法Ek,得到当前时刻的密文数据C1;(4)让第i(2≤i≤n)块的明文数据Mi和上一时刻生成的密文Ci-1做逐位异或操作,并将异或之后的数据通过由密钥控制下的分组密码算法Ek,得到当前时刻的密文数据Ci;(5)输出密文(C1,C2,C3,C4,…,Cn)。上述过程利用数学表达式来表示即为:对于当前时刻的明文数据Mi和上一时刻的密文数据Ci-1,可以通过计算来得到当前时刻的密文。利用单一分组密码的工作模式,其最大的缺点在于安全性完全取决于被调用的分组密码算法的强度,一旦该密码算法不安全,则整个加密系统就会崩溃。典型的例子是MAYA分组算法,该算法在2011年被破译。如果传统的CBC模式调用了MAYA分组密码算法,那么随着该算法的破译,调用了该算法的CBC模式就不再有任何安全性可言。目前被重创的分组密码算法不多,但是单一分组密码算法被破解的风险仍然存在。因此,如何进一步增强工作模式,使之不完全依赖单一密码算法的安全性,是一个值得解决的问题。
技术实现思路
针对现有技术中存在的问题,本专利技术提供一种使用双分组密码的新型加密方法,将传统CBC模式中只调用一个分组密码算法改进成同时调用两个分组密码算法,降低了被破解的风险,使数据更加安全。为了实现上述目的,本专利技术采用以下的技术方案:本专利技术提供一种使用双分组密码的新型加密方法,包括以下步骤:步骤1,预处理分别得到分组加密算法E1,k1、E2,k2,以及与E1,k1、E2,k2对应的分组解密算法D1,k1、D2,k2;步骤2,加密处理对加密的明文消息按分组加密算法单次处理长度做切分,切分为(M1,M2,M3,M4,…,Mn);利用公式对(M1,M2,M3,M4,…,Mn)进行处理,得到密文(C1,C2,C3,C4,…,Cn),其中1≤i≤n;步骤3,解密处理利用公式对加密过程输出的(C1,C2,C3,C4,…,Cn)进行处理,得到明文(M1,M2,M3,M4,…,Mn),其中1≤i≤n。进一步地,所述步骤1的具体实现过程如下:步骤101,选择两个分组规模为B比特的分组密码加密变换E1,E2;步骤102,生成E1,E2所对应的分组密码解密变换D1,D2;步骤103,将密钥k1注入E1和D1中,得到分组加密算法E1,k1和分组解密算法D1,k1;步骤104,将密钥k2注入E2和D2中,得到分组加密算法E2,k2和分组解密算法D2,k2。进一步地,所述步骤2的具体实现过程如下:步骤201,选择B比特随机数C0,并发送给接收方;步骤202,对加密的明文消息按分组加密算法单次处理长度做切分,切分之后的数据为(M1,M2,M3,M4,…,Mn),即每个Mi的长度都是B比特;步骤203,将第一块的明文数据M1和预先选好的随机数C0做逐位异或操作;步骤204,将步骤203异或后的数据作为由密钥控制下的分组加密算法E1,k1的输入;步骤205,将E1,k1的输出作为E2,k2的输入,得到当前时刻的密文数据C1;步骤206,对i从2增至n,将第i块的明文数据Mi和上一时刻生成的密文数据Ci-1做逐位异或操作,并将异或之后的数据通过由密钥控制下的分组加密算法E1,k1,将E1,k1的输出作为E2,k2的输入,得到当前时刻的密文数据Ci;步骤207,输出密文(C1,C2,C3,C4,…,Cn)并发送。进一步地,所述步骤3的具体实现过程如下:步骤301,接收到步骤201发送的B比特随机数C0并存储;步骤302,接收到步骤207发送的(C1,C2,C3,C4,…,Cn)并存储;步骤303,对i从n减至1,将Ci作为输入数据,先通过分组解密算法D2,k2,将输出结果再通过D1,k1,将得到的输出数据与Ci-1做异或操作,得到第i块的明文数据Mi;步骤304,输出明文(M1,M2,M3,M4,…,Mn)。与现有技术相比,本专利技术具有以下优点:利用单一分组密码的工作模式,其最大的缺点在于:算法的安全性完全取决于被调用的分组密码算法的强度,一旦该密码算法不安全,则整个加密系统就会崩溃。这个问题出现的根本在于CBC工作模式仅仅调用了一个分组密码算法。本专利技术提出的利用一种使用双分组密码的新型加密方法,本质上是在CBC模式的基础上提出的一种更先进、更安全、更有效的加密方法,原因如下:单一分组密码算法被破解的风险是存在的,但是同一时期内,两个著名分组密码算法同时被成功攻击的可能性微乎其微。由于我们的方案调用了两个分组密码算法,因此只有在两个分组密码算法同时被攻破的前提下,整个工作模式才会被破解,其中的任何一个分组密码算法被破译,本专利技术仍然能够保证数据安全性。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是传统CBC工作模式的流程示意图;图2是本专利技术的流程示意图。具体实施方式为了便于理解,对本专利技术中出现的部分名词作以下解释说明:分组密码与分组密码工作模式:分组密码是在密钥控制下(也就是说,必须注入密钥才能使用),通过某个固定变换来实现对明文进行逐组加密的函数,每组明文的比特数称为明文分组规模,通常为128比特或64比特。为了在不同的场合安全地使用分组密码,通常需要把分组密码和分组密码工作模式相配合使用。工作模式和分组密码之间的关系,可以类似地理解成子函数和子函数调用方式之间的关系。实施例一,参见图2,本实施例提供一种使用双分组密码的新型加密方法,包括以下步骤:预处理过程:步骤S101,选择两个分组规模为B比特的分组密码加密变换E1,E2;步骤S102,生成E1,E2所对应的分组密码解密变换D1,D2;步骤S103,将密钥k1注入E1和D1中,得到分组加密算法E1,k1和分组解密算法D1,k1;步本文档来自技高网
...
使用双分组密码的新型加密方法

【技术保护点】
1.一种使用双分组密码的新型加密方法,其特征在于,包括以下步骤:步骤1,预处理分别得到分组加密算法E1,k1、E2,k2,以及与E1,k1、E2,k2对应的分组解密算法D1,k1、D2,k2;步骤2,加密处理对加密的明文消息按分组加密算法单次处理长度做切分,切分为(M1,M2,M3,M4,…,Mn);利用公式

【技术特征摘要】
1.一种使用双分组密码的新型加密方法,其特征在于,包括以下步骤:步骤1,预处理分别得到分组加密算法E1,k1、E2,k2,以及与E1,k1、E2,k2对应的分组解密算法D1,k1、D2,k2;步骤2,加密处理对加密的明文消息按分组加密算法单次处理长度做切分,切分为(M1,M2,M3,M4,…,Mn);利用公式对(M1,M2,M3,M4,…,Mn)进行处理,得到密文(C1,C2,C3,C4,…,Cn),其中1≤i≤n;步骤3,解密处理利用公式对加密过程输出的(C1,C2,C3,C4,…,Cn)进行处理,得到明文(M1,M2,M3,M4,…,Mn),其中1≤i≤n。2.根据权利要求1所述的使用双分组密码的新型加密方法,其特征在于,所述步骤1的具体实现过程如下:步骤101,选择两个分组规模为B比特的分组密码加密变换E1,E2;步骤102,生成E1,E2所对应的分组密码解密变换D1,D2;步骤103,将密钥k1注入E1和D1中,得到分组加密算法E1,k1和分组解密算法D1,k1;步骤104,将密钥k2注入E2和D2中,得到分组加密算法E2,k2和分组解密算法D2,k2。3.根据权利要求2所述的使用双分组密码的新型加密方法,其特征在于,所述步骤2的具体实现过程如下:步骤201,选择B比特随机数C0,并发送给接收方;步骤...

【专利技术属性】
技术研发人员:王志伟
申请(专利权)人:成都盛拓源科技有限公司
类型:发明
国别省市:四川,51

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

1