今天我偶然发现了大约10个月前写的代码:
$password = substr(str_shuffle('abcdefghijklmnopqrstuvwxyz0123456789'), 0, 8);
我相信我选择此代码是因为它非常简单,并且不需要任何额外的维护。
生成密码的需要是因为服务员代表客户填写了快速注册表单,我们只是将密码发送给所述客户。
现在,我的问题围绕着生成" 12345678" 的可能性。密码。在这种情况下,我理解可能性和概率之间的争论,但仍然想象自己正在注册一个程序并且你收到这样一个lazzy密码,不会你质疑他们的安全吗?
答案 0 :(得分:2)
虽然不太可能,但并非不可能
像
这样的简单包装器$characters = 'abcdefghijklmnopqrstuvwxyz0123456789';
do {
$password = substr(str_shuffle($characters), 0, 8);
} while (strpos($characters, $password) !== false);
将确保生成的密码不是在字符串中按顺序显示的序列