DES密文的大小
Size of DES encrypted text
我正在使用此代码进行 DES 加密:
How do I use 3des encryption/decryption in Java?
我正在加密大小为 8 的字节数组。据我所知,它应该会生成大小为 8 的加密数据。但结果是 16 个字节。
我已经对代码进行了必要的编辑以对字节数组进行 DES 加密。比如将算法名称更改为 DES(比 DEDede),密钥大小为 8 字节(比 24)等
DES 的块大小为 64 位或 8 字节。 CBC 和 ECB 等操作模式是基于块的,但为了加密任意明文,有必要使用填充方案(如 PKCS#5/PKCS#7 填充)将任意明文填充到块大小的下一个倍数。
填充本身包含为 PKCS#5 填充添加了多少字节的信息。由于 8 字节已经是块大小的倍数,因此添加了一个完整的填充块。如果不是这种情况,您将能够在解密后可靠地消除明文和填充的歧义。
我正在使用此代码进行 DES 加密: How do I use 3des encryption/decryption in Java?
我正在加密大小为 8 的字节数组。据我所知,它应该会生成大小为 8 的加密数据。但结果是 16 个字节。
我已经对代码进行了必要的编辑以对字节数组进行 DES 加密。比如将算法名称更改为 DES(比 DEDede),密钥大小为 8 字节(比 24)等
DES 的块大小为 64 位或 8 字节。 CBC 和 ECB 等操作模式是基于块的,但为了加密任意明文,有必要使用填充方案(如 PKCS#5/PKCS#7 填充)将任意明文填充到块大小的下一个倍数。
填充本身包含为 PKCS#5 填充添加了多少字节的信息。由于 8 字节已经是块大小的倍数,因此添加了一个完整的填充块。如果不是这种情况,您将能够在解密后可靠地消除明文和填充的歧义。