我得到了这个十六进制字符串中的密钥:"140b41b22a29beb4061bda66b6747e14"
并要求用实现 ECB 的 AES 解密一个分组密码。
我们知道,密钥必须是 16 个字节长。但是给定的键包含对应于大于一个字节的字符的元素(例如0xb2
,其 char 值²
对应于 2 个字节)。
事实上,如果我将十六进制字符串键转换为我获得的键字符串" A²*)¾´Úf¶t~ "
,那么如果我应用该方法key.getBytes().length
,我得到的是键长 21 个字节。
我的问题是:在 Java 中给定这个密钥,有什么方法可以用 AES 加密 16 字节长的密文?