Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在密码中添加一个“salt”;加入;日期时间_Php_Security_Salt - Fatal编程技术网

Php 在密码中添加一个“salt”;加入;日期时间

Php 在密码中添加一个“salt”;加入;日期时间,php,security,salt,Php,Security,Salt,我在其他文章中看到过这一信息,但大多数文章都使用了已知的值(比如用户名)。如果加入的数据未在站点中的任何位置公开,则使用加入的日期时间(或加入的日期时间的MD5)添加密码是否是进一步保护凭据的安全方法 提前谢谢 用真正随机的盐代替。猜测基于日期的salt似乎有点太容易了,特别是如果有人知道此人已经成为该网站的成员多久 你可以这样做: $salt = substr(sha1(uniqid(mt_rand(), true)), 0, 16); 用真正随机的盐代替盐。猜测基于日期的salt似乎有点太

我在其他文章中看到过这一信息,但大多数文章都使用了已知的值(比如用户名)。如果
加入的
数据未在站点中的任何位置公开,则使用
加入的
日期时间(或
加入的
日期时间的MD5)添加密码是否是进一步保护凭据的安全方法


提前谢谢

用真正随机的盐代替。猜测基于日期的salt似乎有点太容易了,特别是如果有人知道此人已经成为该网站的成员多久

你可以这样做:

$salt = substr(sha1(uniqid(mt_rand(), true)), 0, 16);

用真正随机的盐代替盐。猜测基于日期的salt似乎有点太容易了,特别是如果有人知道此人已经成为该网站的成员多久

你可以这样做:

$salt = substr(sha1(uniqid(mt_rand(), true)), 0, 16);

我实际上做了这样的事情:

$password = mysqli_real_escape_string($connect, $_POST['password']);
$salt_shaker = bin2hex(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
$salted = $password.$salt_shaker;

我实际上做了这样的事情:

$password = mysqli_real_escape_string($connect, $_POST['password']);
$salt_shaker = bin2hex(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
$salted = $password.$salt_shaker;

+1:盐应该是随机的,每个用户都不一样。@TaylorOtwell很公平!我在想,因为它的时间缩短到了第二个,我也可以MD5它,我可以避免在用户数据库中添加另一个字段。谢谢。@cbh-是的,你需要继续添加一个“盐田”。“这会安全得多。”泰勒说,“干得好。”。如果用户更改密码,我想我应该更新salt?还是没有必要?@cbh-去做吧。没什么害处。+1:盐应该是随机的,每个用户都不一样。@TaylorOtwell很公平!我在想,因为它的时间缩短到了第二个,我也可以MD5它,我可以避免在用户数据库中添加另一个字段。谢谢。@cbh-是的,你需要继续添加一个“盐田”。“这会安全得多。”泰勒说,“干得好。”。如果用户更改密码,我想我应该更新salt?还是没有必要?@cbh-去做吧。不会受伤的。