分组密码
分组密码解决了这个问题。分组密码(block cipher)是将明文消息编码表示后的数字(简称明文数字)序列划分成长度为 n 个组,每个组有 m 个字节。每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列
分组密码加密固定长度的分组,需要加密的明文长度可能超过分组密码的分组长度,此时就需要对分组密码算法进行迭代,以便将长明文进行加密,迭代的方法就称为分组密码的模式
1.ECB模式(电子密码模式)
ECB模式是将明文消息分成固定大小的分组,当最后一个分组的内容小于分组长度时,需要用特定的数据进行填充以至于长度等于分组长度,每个分组的加密和解密都是独立的,可以进行并行操作。
使用 ECB 模式加密时,相同的明文分组会转换为相同的密文分组,也就是说,我们可以将其理解为是一个巨大的“明文分组->密文分组”的对应表,因此 ECB 模式也称为电子密码模式,但是安全性较低
默认模式,数据按照 8 个字节一段进行加密或解密得到一段 8 个字节的密文或者明文,最后一段不足 8 个字节,则不足 8 个字节进行计算,之后按照顺序将计算所的数据连在一起即可,各段数据之间互不影响
PKCS7Padding(PKCS5Padding