AES中的AES加密在Node.js解密.失败.
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了AES中的AES加密在Node.js解密.失败.,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1201字,纯文字阅读大概需要2分钟。
内容图文
![AES中的AES加密在Node.js解密.失败.](/upload/InfoBanner/zyjiaocheng/708/76af86e5d84d4681bed67ab39b74cdfe.jpg)
在node.js中,我使用build in函数来加密数据,如下所示:
var text = "Yes";
var password = "123456";
var encrypt = crypto.createCipher('aes-256-cbc', password);
var encryptOutput1 = encrypt.update(text, 'base64', 'base64');
var encryptOutput2 = encrypt.final('base64');
var encryptedText = encryptOutput1 + encryptOutput2;
输出(加密文本)是:OnNINwXf6U8XmlgKJj48iA ==
然后我用PHP解密它:
$encrypted = 'OnNINwXf6U8XmlgKJj48iA==';
(or $encrypted = base64_decode('OnNINwXf6U8XmlgKJj48iA==') );
$dtext2 = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $encrypted, MCRYPT_MODE_CBC);
echo "Decrypted: $dtext2";
我会得到一些有趣的角色,我无法解密它.我尝试使用/不使用base64_decode或MCRYPT_RIJNDAEL_128 ..都失败了.
然后我检查PHP中的加密方式,它看起来与node.js的输出有很大的不同.
$text = "Yes";
$key = "123456";
$eText = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_CBC);
echo "Encrypted: $eText \n";
echo "base64: " . base64_encode($eText) . " \n";
$dtext1 = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $eText, MCRYPT_MODE_CBC);
echo "Decrypted: $dtext1 \n\n";
它可以加密和解密.加密数据为:njCE / fk3pLD1 / JfiQuyVa6w5H Qb / utBIT3m7LAcetM =
这与node.js的输出非常不同请告诉我如何在node.js和amp;之间加密和解密. PHP.谢谢.
内容总结
以上是互联网集市为您收集整理的AES中的AES加密在Node.js解密.失败.全部内容,希望文章能够帮你解决AES中的AES加密在Node.js解密.失败.所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。