首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加密/解密AES-256-CBC字符串在PHP和BASH保存到/从MySQL?

加密/解密AES-256-CBC字符串在PHP和BASH保存到/从MySQL?
EN

Stack Overflow用户
提问于 2020-04-20 16:42:56
回答 1查看 501关注 0票数 1

我正在尝试解决如何在bash和PHP中使用openSSL对字符串进行加密和解密,并且无论我在哪里执行此操作,都能获得相同的结果。

我需要将加密的字符串保存到MySQL,并从MySQL中检索它,以便回读和解密。我很高兴我可以在MySQL上读写

例如。在PHP中,我可以使用以下代码进行加密和解密:

代码语言:javascript
复制
$textToEncrypt    = "Test Message";
$key              = "Testkey";
$iv               = "+ByrvYwA-4hB^?jF";
$keyHex           = bin2hex($key);
$ivHex            = bin2hex($iv);

//To encrypt
$encryptedMessage = openssl_encrypt($textToEncrypt, "AES-256-CBC", $key, 0, $iv);

//To Decrypt
$decryptedMessage = openssl_decrypt($encryptedMessage, "AES-256-CBC", $key, 0, $iv);

可以在bash中使用以下命令进行解密:

代码语言:javascript
复制
echo -n "3GfrAdvtkHSpalmb4qzEVw==" | openssl aes-256-cbc -d -a -A -K "546573746b6579" -iv "2b427972765977412d3468425e3f6a46"

我正在努力的是在BASH中加密消息,这样它就可以在PHP中解密。

有人对此有什么建议吗?谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-04-20 16:49:43

只需交换openssl参数即可。-d用于解密,-e用于加密

代码语言:javascript
复制
echo -n "Test Message" | openssl aes-256-cbc -e -a -A -K "546573746b6579" -iv "2b427972765977412d3468425e3f6a46"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61318337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档