【发布时间】:2021-09-23 08:18:08
【问题描述】:
在 Jave 中,当为 AES/CBC/PKCS5Padding 创建 Cipher 实例时,当 AES-128 使用 16 字节密钥时,如何使用具有 32 字节(和 16 字节的 IV)的密钥?
【问题讨论】:
-
如果您的密钥是数字使用 BCD 类型,请在它之前使用 \x。 "12" 是 2 个字节,但 "\x1\x2" 是 1 个字节。
-
Java
AES/CBC/PKCS5Padding转换(实际上是所有AES/mode/padding转换)支持所有 AES 密钥大小:128(16 字节)、192(24 字节)或 256 (32 字节)。请注意旧版本的 Java 来自 Sun/Oracle(2017 年之前,特别是低于 8u151 或 9)有一个“有限”加密策略,它不允许 AES 超过 128 位,除非您安装了单独的“无限”政策”文件,该文件应该对“坏”国家不可用。这不再需要,OpenJDK 也不再需要了。 @Majid:Java 中没有这样的类型或语法
标签: java cryptography aes