我们正在使用Laravel Framework 5.7.15 with PHP version: 7.2.14-1
,我们使用下面的代码来生成临时密码,然后在数据库中对它进行哈希。在大约80次所有密码哈希与字符串匹配,但有大约3个不匹配的字符串,我搜索了原因,但没有出现...
$input['tmp_password'] = substr(str_shuffle("0123456789"), 0, 4); // Random four digits
$input['password'] = Hash::make($input['tmp_password']);
2条答案
按热度按时间w8f9ii691#
正如注解中所述,除了str_shuffle之外,还有更好的方法来生成随机密码。使用这种方法,生成的密码总是包含相同的字符,只是顺序不同,这使得它很容易被猜测。
一个更好的方法示例是使用Str类中的helper方法
random
bqjvbblv2#
在你的代码的一万次迭代中,我无法导致一个哈希失败。
在你没有显示的代码中,还有一些地方出错了。正如你在注解中指出的,你在用
$user
做一些其他的事情,这些事情根本不在你的代码示例中。