加密算法之对称加密

微信公众号 java猿理
java猿理
现代密码学中,可靠的密码体系必须遵循柯克霍夫原则——“即使除密钥外的整个系统的一切都是公开的,这个密码体制也必须是安全的。

加密算法基本概念

现代密码学中,可靠的密码体系必须遵循柯克霍夫原则——“即使除密钥外的整个系统的一切都是公开的,这个密码体制也必须是安全的。

分组加密通常只使用一个密钥。为了保证加密强度,分组加密遵循香农提出的强加密原则:

混淆(Confusion):使将密钥与密文之间的关系尽可能模糊

扩散(Diffusion):隐藏明文的统计属性

1.png

对称加密:

关键词:初始向量,分组,替换,换位;

定义:对称算法使用一个密钥,给定一个明文和一个密钥,加密产生密文,其长度和明文大致相同,解密时,使用读密钥与加密密钥相同。常见的对称加密算法有DES、3DES、AES、Blowfish、IDEA、RC5、RC6。

对称加密的五种工作模式:

1、电子密码本模式Electronic Code Book(ECB)

定义:将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。

2.png

2、加密块链模式Cipher Block Chaining(CBC)

定义:将明文分成固定长度的块,然后将前面一个加密块输出的密文与下一个要加密的明文块进行异或操作,将计算的结果再用密钥进行加密得到密文。

3.png

3、加密反馈模式Cipher Feedback Mode(CFB)

定义:面向字符应用程序的加密要使用流加密算法,可以使用加密反馈模式进行加密。在此模式下,数据用更小的单元加密,如可以是8位,这个长度小于定义的块长(通常是64位)。

4.png

4、输出反馈模式Output Feedback Mode(OFB)

定义:输出反馈模式与CFB相似,惟一差别是,CFB中密文填入加密过程下一阶段,而在OFB中,初始化向量加密过程的输入填入加密过程下一阶段。

5.png

5、CTR模式

定义:CounTeR模式(计数器模式)。CTR模式是一种通过将逐次累加的计数器进行加密来生成密钥流的流密码。

6.png

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论