AES中的初始化矢量长度

时间:2012-05-11 19:55:11

标签: android aes initialization-vector

我在AES中使用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个字节的文本?

0 个答案:

没有答案