我有一个 pssword 变量,其中包含用户的密码,该密码在密码的开头和结尾包含一些搅拌,以便对密码进行加盐。下面是这个的代码:
$teacherpassword = md5(md5("j92".$teacherpassword."djS"));
显然,为密码加盐的字符将是所有密码的相同字符。
我想要的是创建一个随机字符生成器,以便盐的前 3 个字符和最后 3 个字符都是随机的,因此每个密码都有一个随机盐。
下面是创建随机挑选盐的字符的 php 生成器:
$salt = "";
for ($i = 0; $i < 40; $i++) {
$salt .= substr(
"./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
mt_rand(0, 63),
1);
}
我的问题是,如何让生成器为盐挑选 6 个随机字符,然后将其中 3 个字符放在密码前面,将另外 3 个字符放在密码末尾?
例如:
密码 1 可以是:$teacherpassword = md5(md5("jfs".$teacherpassword."sfS"));
密码 2 可以是:$teacherpassword = md5(md5("4f3".$teacherpassword.pS"));
密码 3 可以是:$teacherpassword = md5(md5("wpw".$teacherpassword."qq2"));
正如您所看到的,所有密码都包含自己的盐,这要归功于盐的 php 随机生成器