标签: salt-creation

如何生成随机的长盐用于散列?

在PHP中制作随机可变长度盐用于散列的方法是什么?假设我想制作一个16个字符的长盐 - 我该怎么做?

php salt-creation

14
推荐指数
2
解决办法
3万
查看次数

使用便携式 PHP 密码散列框架创建 salt

我想使用便携式 PHP 密码散列框架来散列密码。但我发现它的演示不使用盐来散列密码。但是它使用了一个虚拟盐来检查密码,我觉得这很奇怪,我根本不明白这个想法,

$dummy_salt = '$2a$08$1234567890123456789012';

if (isset($dummy_salt) && strlen($hash) < 20)
        $hash = $dummy_salt;
Run Code Online (Sandbox Code Playgroud)

我想知道,如果我想使用可以生成唯一盐并将其存储在我的数据库中的每个用户的约定方法,我如何使用便携式 PHP 密码哈希框架来生成盐?

这是我用来散列密码的函数,但有人告诉我 sha512 与 sha1 有相同的问题,明智地信任像便携式 PHP 密码散列框架这样的专家,

function hash_sha512($phrase,&$salt = null)
{
    //$pepper = '!@#$%^&*()_+=-{}][;";/?<>.,';

    if ($salt == '')
    {
        $salt = substr(hash('sha512',uniqid(rand(), true).PEPPER_KEY.microtime()), 0, SALT_LENGTH);
    }
    else
    {
        $salt = substr($salt, 0, SALT_LENGTH);
    }

    return hash('sha512',$salt.PEPPER_KEY.$phrase);
}
Run Code Online (Sandbox Code Playgroud)

如果您有任何想法,请告诉我。谢谢。

php hash hashcode password-protection salt-creation

1
推荐指数
1
解决办法
1558
查看次数

标签 统计

php ×2

salt-creation ×2

hash ×1

hashcode ×1

password-protection ×1