【发布时间】:2012-07-23 14:40:17
【问题描述】:
我正在开发一款适用于 Android 的应用。在这个应用程序中,您必须使用 Rijndael 的加密/解密算法。
要使用此算法,我需要安装 IV。在这种情况下是一个字节数组。到目前为止一切顺利。
问题是我必须使用来自用 C# 编写的 Web 服务的相同 IV。
C# 是这样的:
byte[] bytIV = { 121, 241, 10, 1, 132, 74, 11, 39, 255, 91, 45, 78, 14, 211, 22, 62 };
当我尝试在 Java 中做同样的事情时,会发生错误,我建议添加几个数字。是什么让代码变成这样:
byte[] bytIV = { 121, (byte) 241, 10, 1, (byte) 132, 74, 11, 39, (byte) 255, 91, 45, 78, 14, (byte) 211, 22, 62 };
还是不行。
有人对我的工作有什么建议吗?
谢谢!
在我在这里使用的示例中,我使用了 (cast) 而不是 (byte)。示例已更正。注意:我的代码中有(演员)。在代码中是(字节)。
【问题讨论】:
-
首先,请接受您的问题的答案或跟进。其次,IV 中的值现在应该与 C# 中的值相同,所以问题可能出在其他地方。所以下一个问题变成了——这是一个显而易见的问题——“仍然没有工作”是什么意思。意思是?例外?解密不好? CPU烧坏了?会飞的猪?
标签: android arrays int byte rijndael