在多数情况下,数据加密是保证信息机密性的唯一方法。据不完全统计,到目前为止,已经公开发表的各种加密算法多达数百种。如果按照收发双方密钥是否相同来分类,可以将这些加密算法分为私钥加密算法和公钥加密算法,而分组加密算法属于私钥加密算法。粗略地讲,分组加密算法是用一个固定的变换对一个比较大的明文数组进行操作。
一、分组加密算法的发展
分组加密算法即对明文文件加密时,首先需要对明文进行分组,每组的长度都不相同,然后对每组明文文件分别加密得到等长的密文。分组加密算法的特点是加密密钥与解密密钥相同。分组加密算法主要有DES加密算法,AES加密算法。
1、DES加密算法
DES加密算法利用56比特串长度的密钥K来加密长度为64位的明文,得到长度为64位的密文。其主要流程如图:
DES加密算法由四个部分组成:
(1)初始置换函数IP:
X0 = IP(M) = L0R0;
(2)获取子密钥Ki:流程图如图所示。
其中第1、2、9、16轮是循环左移1位,其余轮是循环左移2位;
(3)计算函数F:
F函数由扩展置换(E)、异或、S盒替代和P盒置换组成,可表示为f (Ri-1 , Ki) = P(S(E(Ri-1) ⊕ Ki));
(4)末置换函数IP-1:
C = IP-1(R16L16) 16次迭代可表示为:Li := Ri-1 Ri := Li-1 ⊕ f (Ri-1 , Ki),i = 1, 2, …, 16
2、多重DES加密算法
为提高DES加密算法的安全性能,并充分利用有关DES的现有软件和硬件资源,可以使用多重DES加密算法。多重DES就是是用多个密钥利用DES对明文进行多次加密。使用多重DES可以增加密钥量,从而大大提高抵抗对密钥的穷举搜索攻击的能力。
(1) 双重DES加密算法
设K1和K2是两个长度为56为的密钥,给定明文M,则密文为 C = Ek2(Ek1(M))。其模型为:
如果对于任意两个56为的密钥K1和K2,都存在一个56位的密钥K3,使得DESK2(DESK1(M))=DESK3(M),则双重DES就等价于是用一个56位的单重DES。在这种情况下,双重DES以及任意多重DES都没有任何实际价值,因为它们不仅没有提高安全性能,反而增加了计算量。幸运的是,已经证明双重DES并不等价于是用一个56位密钥的单重DES。
(2)三重DES 加密算法
设K1,K2,K3是三个长度为56位的密钥。给定明文M,则密文为C=DESK3(DESK2-1(DESK1(M))),其模型为:
在三重DES加密算法中,如果K1=K2或K2=K3,则三重DES就退化为使用一个56位密钥的单重DES。在三重DES的中间一步采用解密形式的目的仅仅是为了可以和用三重DES对单重DES加密的数据进行解密。
3、AES加密算法
AES加密算法又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。
AES加密算法被设计为支持128/192/256 bit (/32=Nb)数据块大小,128/192/256 bit (/32=Nk)密钥长度,在10进制里,对应3.4×1038、6.2×1057、1.1×1077个密钥。
AES的迭代次数Nr,分组长度Nb,与密钥长度Nk的关系如表:
AES加密算法中,各种运算是以字节为单位来进行处理,分组长度为128位,分为16个字节,按顺序排列为4×4的矩阵。每一轮迭代都经历字节代替变换SubBytes(),行移位变换ShiftRows(),列混合变换MixColuMns(),和圈密钥加法变换AddRoundKey()。需要注意的是第一轮迭代之先进行一个AddRoundKey(),最后一轮迭代只进行SubBytes(),ShiftRows()和AddRoundKey()。
字节代替变换是一个关于字节的可逆非线性变换,包括有限域 GF(28)上的求逆运算和有限域GF(2)上的放射运算。可以通过查字节代替表来完成字节代替变换; 行移位变换对一个状态的每一行循环左移不同的位移量。第0行不移位,第一行循环左移1个字节,第二行循环左移2个字节,第三行循环左移3个字节; 列混合变换对一个状态逐列进行变换,它将一个状态的每一列视为有限域GF(28)上的一个多项式,并与固定多项式a(x)={03}x3+{01}x2+{01}x+{02}相乘后模x4+1。
圈密钥加法变换将一个圈密钥按位异或到一个状态上,圈密钥的长度为4个字节,圈密钥按顺序取自扩展密钥。扩展密钥是由原始密钥经过扩展后得到的。
二、分组加密算法的安全性
1、DES加密算法的安全性
(1)DES加密算法 的密钥长度( 56 位)可 能太小;
(2)DES 加密算法的迭代次数可能太少;
(3)S 盒中可能有不安全因素;
(4)DES 加密算法的一些关键部分不应当保密;
(5)DES加密算法的密钥中存在弱密钥,半弱密钥和互补密钥。
2、 双重DES加密算法的安全性
双重DES加密算法无法抵抗中途相遇攻击,设K1和K2是两个长度为56位的密钥,C=DESK2(DESK1(M)),则显然有DESK1(M)=DESK2-1(C)。假设明文M以及与之对应的C已知,密钥K1和K2未知。现在我们来利用中途相遇攻击的方法找到正确的K1和K2。
首先,用所有256个可能的密钥K1’对M进行加密,得到256各密文C’,将所有的(K1’, C’)按C’从小到大或从大到小的顺序排成一个表L。
然后,用每一个可能的密钥K2’对C进行解密得到C’’,在表L中查找C’’。满足C’’= C’的(K1’, C’)和(K1’, C’’)可能有很多。
因此,当C’’= C’时,再选择一个明文M’以及对应的密文C1,检验C1=DESK2’(DESK1’(M’))是否成立。
如果上式成立,则我们就接受K1’和K2’为正确的K1和K2。
3、三重DES加密算法的安全性
三重DES加密算法可抵抗中途相遇攻击,可以很好的抗穷举攻击,使用3个不同的密钥,密钥将达到168位,安全性是很好的(目前没有什么密码分析方法可以不使用穷举密钥来攻击DES)。但3重DES加密算法使用不同的3个密钥会增加你系统秘钥管理的负担,软件实现的效率低(每个分组作3次DES _ 变换,DES变换的设计初衷本来就是方便用硬件实现),只支持64位分组(对大量数据来说,分组太小了)。
4、AES 加密算法的安全性
AES加密算法对密钥的选取没有任何限制,每轮常数的不同消除了密钥的对称性,密钥扩展的非线性消除了相同密钥的可能性,加解密使用不同的变换,消除了在DES里出现的弱密钥和半弱密钥存在的可能性。能有效地抵抗密钥已知的攻击方法的攻击,目前最有效的攻击还是穷尽密钥搜索攻击。
分组加密算法的安全性主要依赖于密钥,通过某个置换来实现对明文分组的加密变换。为了保证加密算法的安全强度,对加密算法应有如下要求:
(1)分组长度足够大。当分组长度较小时,分组密码类似于古典的代替密码,它仍然保留了明文的统计信息,这种统计信息将给攻击者留下可乘之机,攻击者可以有效地穷举明文空间,得到密码变换本身。
(2)密钥量足够大。分组密码的密钥所确定密码变换只是所有置换中极小一部分。如果这一部分足够小,攻击者可以有效地穷举明文空间所确定所有的置换。这时,攻击者就可以对密文进行解密,以得到有意义的明文。
(3)密码变换足够复杂。使攻击者除了穷举法以外,找不到其他快捷的破译方法。
小知识之分组加密
分组加密是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。
电子文档管理系统的重要性:企业数字化转型的得力助手
在这个智能信息爆炸的时代,数据成为了企业最宝贵的资产之一。如何有效地管理和使用这种信息,已成为每个企业必须面对的重要课题。电子文档管理系统是解决这一问题的关键工具。今日,我们将探讨电子文档管理系统的重要性。在热点话题中,我们经常听到数据泄漏、信息安全等事件。这些事件不仅给企业带来了极大的经济损失,并且严重影响到企业的声...
it资产管理系统:IT资产大管家
在这个智能飞速发展的时代,公司的IT资产如同无形金矿,非常有价值。可是您有没有经历过这种困扰:IT资产种类繁多,数量庞大,管理耗时费力,还常常担忧数据安全和合规性?别担心,今天就给大家介绍一个IT资产管家——安企神IT资产管理系统。一、IT资产管理,为何如此重要?随着企业业务的不断增加,IT资产的数量和种类也在增加。这...
PHP线上加密解密:确保数据安全的有效途径
在如今智能化快速发展的时代,数据安全成为了人或单位不可忽视的重要话题。据最新统计,过去一年超出50%的企业遭到黑客入侵,数据泄露事件高发,给企业信誉和经济损失导致双重打击。在这种情况下,PHP线上加密解密技术的发展至关重要,既能提升数据安全性,又能帮助企业有效防范潜在威胁。一、PHP在线加密解密是什么意思?PHP是一种...
U盘管理工具大曝光:管理便捷,安全无忧!
在这个信息爆炸的时代,U盘已经成为我们日常生活中不可或缺的小帮手。不论是工作材料的备份或是学习课件的存储,U盘都以其小巧便携、容积丰富的特征受到大家的喜爱。但是,随着U盘的广泛使用,管理里的不便也随之而来。别担心,下面我就给大家介绍一款优秀的U盘管理工具,使你的U盘管理更安全!一、U盘管理,为何这么重要?想象一下,你U...
桌面管理软件怎样帮企业提高管理效益?
近日,一家知名科技公司因为桌面管理不当,造成内部数据泄漏,导致了业内的高度重视。这一事件不但揭露了桌面管理在企业管理中的作用,也催生了对高效安全桌面管理软件的需求。在此背景下,安企神桌面管理软件因其卓越的性能和全面的功能迅速成为很多企业的新宠。一、桌面管理:企业安全高效的基石桌面管理不仅关系到企业日常办公的顺利进行,也...