命令“openssl passwd -1”使用基于MD5的BSD密码算法1来计算字符串哈希值。
示例:
openssl passwd -1
$1$./j/us.N$P2tq6IkO0Zu2d3uqkEHpv.
如何在PHP中实现完全相同的功能?我希望它是一个原生的PHP函数,而不是exec / shell_exec返回的东西。
答案 0 :(得分:-1)
示例代码
<?php
define('KEY', 'scret key');
function encrypt($value)
{
$iv = openssl_random_pseudo_bytes(16);
$encrypt = openssl_encrypt($value, 'AES-128-CBC', KEY, 0, $iv);
return base64_encode($encrypt . ':::' . $iv);
}
function decrypt($data)
{
$data = base64_decode($data);
list($data, $iv) = explode(':::', $data);
return openssl_decrypt($data, 'AES-128-CBC', KEY, 0, $iv);
}
$enc = encrypt('password');
echo decrypt($enc);