我正在尝试解决如何在bash和PHP中使用openSSL对字符串进行加密和解密,并且无论我在哪里执行此操作,都能获得相同的结果。
我需要将加密的字符串保存到MySQL,并从MySQL中检索它,以便回读和解密。我很高兴我可以在MySQL上读写
例如。在PHP中,我可以使用以下代码进行加密和解密:
$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中使用以下命令进行解密:
echo -n "3GfrAdvtkHSpalmb4qzEVw==" | openssl aes-256-cbc -d -a -A -K "546573746b6579" -iv "2b427972765977412d3468425e3f6a46"我正在努力的是在BASH中加密消息,这样它就可以在PHP中解密。
有人对此有什么建议吗?谢谢
发布于 2020-04-20 16:49:43
只需交换openssl参数即可。-d用于解密,-e用于加密
echo -n "Test Message" | openssl aes-256-cbc -e -a -A -K "546573746b6579" -iv "2b427972765977412d3468425e3f6a46"https://stackoverflow.com/questions/61318337
复制相似问题