我正试图为我的应用程序创建一些验证密钥,这样它就会以加密的形式生成一些密钥,但问题是当我尝试在xampp服务器中使用它时,它会给出与预期不同的加密结果。
这是我的代码:
# Create PIN
$length = rand(4, 4);
$use_upper_case=false;
$selection = '1234567890abcdefghijklmnopqrstuvwxyz';
$pin = "";
for($i=0; $i<$length; $i++) {
$current_letter = $use_upper_case ? (rand(0,1) ? strtoupper($selection[(rand() % strlen($selection))]) : $selection[(rand() % strlen($selection))]) : $selection[(rand() % strlen($selection))];
$pin .= $current_letter;
}
$url = $CI->config->item('app_name');
$lock = '1234';
$verification_code = $CI->encrypt->encode($url, $pin);
write_file(FCPATH . 'system/temp/verification.dat', $verification_code);
write_file(FCPATH . 'verification.txt', $CI->encrypt->encode($pin, $lock));
chmod(FCPATH . 'system/temp/verification.dat', 0600);
这是我在appserv服务器中得到的
ASUIcgZtAC0=
这是我在xampp服务器中得到的
xhK8/+D+tawgD5+usbt5WpmOe5nDLvfg+jUOFNwI2MHgYQM3iM/oEGZ8Abmw3HCbv0aX/vA9bz9SKni+w20Y/g==
请帮忙,谢谢
我希望我的加密结果是一样的,这都是
听起来你想要一个加密散列函数而不是加密。区别并不微妙。
此外,rand()
是一个不安全的随机数生成器;您想要random_int()
。