Teo*_*ing 3 php java encryption android aes
我正在使用 AES 加密来加密和解密服务器端 php 和 Android 应用程序(作为客户端)之间的字符串。
PHP中的加密字符串是:
HaxRKnMxT24kCJWUXaVvqDHahzurJQK+sYA4lIHql/U=
Run Code Online (Sandbox Code Playgroud)
在 Java 中它是:
HaxRKnMxT24kCJWUXaVvqD/KMEkJTPTXEcCsHIYGX9TGtCNOHQcJyUURPk8qlgf3
Run Code Online (Sandbox Code Playgroud)
我在 PHP 脚本中使用 phpseclib 进行加密。
我在这里缺少什么?
相关的Java代码在这里
SecretKeySpec skeySpec = new SecretKeySpec(pad16(pass), "AES");
Cipher c = Cipher.getInstance("AES");
c.init(Cipher.ENCRYPT_MODE, skeySpec);
byte[] out = c.doFinal( input )
Run Code Online (Sandbox Code Playgroud)
和这里的 PHP 代码:
$aes = new Crypt_AES();
$aes->setKey('password');
$encrypted_encoded_text = base64_encode($aes->encrypt($plaintext));
Run Code Online (Sandbox Code Playgroud)
对于跨不同语言的加密/解密,几乎没有什么需要相同的。
填充方案
可能还有更多因素......
您确定所有这些在两种语言中都相同吗?如果是,那么您的加密/解密应该完美无缺,除非实现中存在错误(这种情况非常罕见但可能)。
| 归档时间: |
|
| 查看次数: |
2775 次 |
| 最近记录: |