使用 Java 1.5 和 ActionScript as3crypto 进行 AES 加密/解密
在我的网站上,我使用 AES 128 位加密/解密字符串。我用 Java 加密了一个字符串,并想在同一网页上运行的 Flash 应用程序中对其进行解密,并将加密的字符串作为 JavaScript 变量传递给该应用程序。
我使用 Java 生成 128 位密钥。我可以在Java中成功地进行加密/解密。 Java 输出密钥的字节数组 (byte[])、加密和解密结果。我使用 Base64 编码/解码来成功获得等效的字符串。
在闪存端,我使用 Java 生成的密钥 (Base64) 来对字符串进行解密,我注意到它没有正确解密。我在 flash 中使用的加密库是 as3crypto。当我使用 Java 生成的密钥 (Base64) 在 as3crypto 项目的演示页面 上进行测试时,我注意到使用所有可能的模式(CBC、CFB 等)我没有得到相同的结果。
导致此错误的可能原因是什么?我做错了什么吗?
问候
On my website I am using AES 128bit encryption/decryption of a string. I encrypt a string in Java and I want to decrypt it in a flash application that I run on the same webpage, to which I pass the encrypted string as a JavaScript variable.
I generate a 128bit key using Java. I can do encryption/decryption in Java successfully. Java outputs byte-array (byte[]) for the key, encrypted and decrypted result. I use Base64 encoding/decoding to successfully get the string equivalent.
On the flash side I use the Java generated key (Base64) to do the decryption of the string and I noticed that it is not correctly decrypted. The cryptography library that I use in flash is as3crypto. When I test this on the demo page of the as3crypto project using my Java generated key (Base64) I noticed that I am not getting the same result using all possible modes (CBC, CFB etc.).
What is the possible cause for this error? Am I doing something wrong?
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
很难说不看一下你的代码,但是......
很少有什么需要注意的。
AES 加密数据可以在语言之间互换,几乎没有什么需要考虑的。
你确定所有这些在Java之间都是相同的吗和动作脚本?
Hard to say without taking a look at your code but...
Few things to notice.
AES encrypted data to be interchangeable between languages there are few things to consider.
Are you sure that all of these are the same between both Java and ActionScript?