对称加密类别
对称加密大致分两类:
- 序列型 stream cipher
- 分组型 block cipher
对称加密算法
对称加密算法的模式分类如图所示:
-
序列型 stream cipher:根据密钥生成无穷长的序列。
文本和无限长的密钥进行异或操作得到加密的文本。但是RC4已经被证明是一个不安全的算法,目前的序列型并没有特别好的算法。 -
分组型 block cipher:把数据分成一块一块的
分组型 block cipher有多种工作模式,如下图所示:
-
ECB是简单粗暴的分组,但是问题在于,因为都是重复的内容,所以很容易猜出来。
-
CBC模式:前面块的结果直接参与到后面块的加密当中。
类似链的结构,因为加入了一个随机的变量,所有别人很难猜到你的结果,但是问题在于,CBC是串行的结构,不支持并行计算。 -
CTR 计数器模式,用计数器作为变量进行加密。
利用计数器实现并行计算。 -
GCM:基于计数器模式。
GCM: 计数器模式加上附加消息的MAC签名验证
一般的算法是模式之间的搭配使用:如AES-GCM加密算法。