运行模式:
填充模式:
密钥长度:
密钥:
明文格式:
密文格式:
Triple DES(3DES)

是一种对称加密算法,旨在提高传统DES算法的安全性。Triple DES通过对数据进行三次加密-解密-加密操作,大大增加了破解的难度。它是为了克服DES的短密钥长度和易于暴力破解的缺点而设计的。

Triple DES 的加解密

三重 DES 的加密机制如图所示。

明文经过三次 DES 处理才能变成最后的密文,由于 DES 密钥的长度实质上是 56 比特, 因此三重 DES 的密钥长度就是 56x3=168 比特。

从图中我们可以发现,三重 DES 并不是进行三次 DES 加密(加密—加密—加密),而是加密—解密—加密的过程。在加密算法中加人解密操作让人感觉很不可思议, 实际上这个方法是 IBM 公司设计出来的, 目的是为了让三重 DES 能够兼容普通的 DES。

运行模式

详情请见:对称密码介绍——分组密码的模式。
填充模式

  • None: 不填充
  • PKCS7: 填充字符串由一个字节序列组成,每个字节填充该字节序列的长度
  • Zeros: 填充字符串由设置为零的字节组成
  • ANSIX923: 填充字符串由一个字节序列组成,此字节序列的最后一个字节填充字节序列的长度,其余字节均填充数字零
  • ISO10126: 填充字符串由一个字节序列组成,此字节序列的最后一个字节填充字节序列的长度,其余字节填充随机数据

密钥(偏移)

  • Text: 表示是文本格式,加密前会使用 UTF-8 编码,把它转成 byte[] 数组
  • Hex 表示是十六进制格式,加密前会把十六进制字符串转成 byte[] 数组
+