问题描述
我正在尝试用 PHP 加密一个字符串,然后直接在 bash 中用 openssh 解密它:
<?PHP
$var = 'hello';
$key = 'key';
$enc = openssl_encrypt($var,"aes-256-cbc",$key);
echo $enc;
?>
然后我直接在bash窗口中使用openssh中的输出:
echo "string get from PHP" | openssl aes-256-cbc -a -d -pass pass:key
但是它不起作用,输出是:
bad magic number
我可以确认bash语句是正确的,因为如果我做下一个,它就可以了:
echo hello | openssl aes-256-cbc -a -pass pass:key | openssl aes-256-cbc -a -d -pass pass:key
结果是你好。
和 PHP 一样使用:
$dec = openssl_decrypt($enc,$key);
知道如何通过交叉它们、用 PHP 加密并用 bash 或相反的方式解密来做到这一点。
EDIT1:好的,我认为这可能与使用不同版本的 openssl 进行加密而不是解密有关,如本主题 (https://unix.stackexchange.com/questions/403314/bad-magic-number-on-decrypt) 中指出的那样
但是我还是不知道怎么做
有什么帮助吗?谢谢!!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)