[size=13px]以下是java开发的AES加密,因为是CBC模式的加密,必须有偏移量,但是现在要用C#解密。
请问下面java的代码,这个偏移量 cipher.getBlockSize() 是什么,用C#怎么写?
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(2, skeySpec, new IvParameterSpec(
new byte[cipher.getBlockSize()]));
byte[] decrypted = cipher.doFinal(encrypted);
return decrypted;[/size]
------解决思路----------------------
不用管偏移量,加密后、解密前Base64下,正常操作就行。约定好算法。
------解决思路----------------------
IV 叫做初始向量,不是叫偏移量吧。这里的block size是16,它相当于用了一个16字节的0当作IV了。.net上解密也就是把IV设置成16字节的0数组就可以了。