我将 AES 与 AES/CBC/PKCS5Padding 结合使用,并在 Android 中使用以下加密和解密代码部分:
cipher.init(Cipher.ENCRYPT_MODE, keySpec, new IvParameterSpec(IV1));
cipher.init(Cipher.DECRYPT_MODE, keySpec, new IvParameterSpec(IV2));
其中 IV1 和 IV2 是随机生成的 16 字节初始化向量。我这样做是为了检查加密方和解密方使用不同的 IV 时原始文本和解密文本是否会有所不同。这导致解密文本的前 16 个字节之后的字节与原始文本的字节相同。例如如果原文是:
Enter your message here...
解密后的文本是:
*****************ge here...
其中 * 表示错误解密的字节,因为 IV1 和 IV2 不同,所以它应该是这样的。
我的问题是:如何使用带初始化向量的 AES 加密和解密长度大于 16 字节的文本?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)