在多数情况下,数据加密是保证信息机密性的唯一方法。据不完全统计,到目前为止,已经公开发表的各种加密算法多达数百种。如果按照收发双方密钥是否相同来分类,可以将这些加密算法分为私钥加密算法和公钥加密算法,而分组加密算法属于私钥加密算法。粗略地讲,分组加密算法是用一个固定的变换对一个比较大的明文数组进行操作。
一、分组加密算法的发展
分组加密算法即对明文文件加密时,首先需要对明文进行分组,每组的长度都不相同,然后对每组明文文件分别加密得到等长的密文。分组加密算法的特点是加密密钥与解密密钥相同。分组加密算法主要有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的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。
辛辛苦苦提拔起来的销冠,反手把公司卖了:内部人员泄密如何防范?从行为审计到技术锁死!
2026年硬核干货拆解,企业等保2.0怎么做才能快速通关?企业速通!
离职骨干连夜拷走十几个G,去新公司一双击全成废码:这套图纸加密方法简直绝杀!
研发骨干用几块钱的U盘卷走图纸:员工用U盘拷走图纸怎么办?企业自救方案!
军工软件源代码加密怎么做?五个超顶用的加密方法分享,分分钟教会你!
离职工程师把图纸塞进压缩包带走:图纸防泄密这一记反杀,让他去新公司立功的美梦当场碎掉!
销冠离职带走千万业务大盘?如何防范销售跳槽引发的企业资产与客户流失危机!
源代码加密软件哪个好?安企神软件透明加密+外发管控+权限分级三重守护!
企业数据防泄露措施有哪些?
企业数据防泄露措施有哪些?企业数据防泄露措施有哪些?找谁做?随着信息技术的不断发展,企业数据泄露事件频繁发生,给企业带来了巨大的经济损失和声誉损失。为了保护企业的核心数据,企业需要采取一系列的数据防泄露措施。本文将介绍企业数据防泄露的措施,帮助企业更好地保护数据安全。一、数据加密数据加密是一种常用的数据防泄露措施。通过...
最强干货:企业数据防泄密的26种实战方法
防止内部泄密的方法1、教育员工:不要低估员工教育的力量。CoSoSys的研究显示,60%的员工不知道哪些公司的数据是机密的。因此,他们可能会意外泄漏或使用不当。2、签署法律文件:很多企业在员工入职的时候,都会签署保密协议,尤其是开发人员这样的涉密人员,通过这种方式,可以一定程度上的防止员工主动泄密。3、文件加密:文件加...
如何规范上班时员工行为?
很多公司员工上班期间会打游戏、刷剧、看电影、炒股、干一些与工作无关的事,这极大的影响了公司的业绩和员工的工作效率和氛围。那么应该如何规范员工的行为呢?1、利用安企神软件对员工的办公电脑打游戏、刷剧、看电影、炒股等行为进行禁止。设置方法:打开策略模板管理 > 应用程序管控 > 然后勾选【开启程序黑白名单】然后...
四种屏幕防拍照、截屏、打印等数据泄露水印解决方案
信息媒体的数字化为信息的存取提供了极大的便利性,同时也显著提高了信息表达的效率和准确性。特别是随着计算机网络通讯技术的发展,数据的交换和传输变成了一个相对简单的过程,人们借助于计算机、数字扫描仪、打印机等电子设备可以方便、迅速地将数字信息传输到所期望的任何地方。但随之而来的副作用是这些数字形式的数据文件在流转过程中安全...
商业机密用u盘存储安全吗?
不安全商业机密用u盘存储是不安全的,商场如战场,如今的商业战场竞争越来越激烈,很多公司都会不遗余力的窃取同行的商业机密,而很多的管理者会将企业的重要商业机密存储在u盘中,今天给大家讲一下如何将商业机密更安全的存储起来。1、U盘内数据加密利用安企神可以对公司的机密文件进行加密,然后将加密后的机密文件移到u盘里,这样U盘内...