В мане по php столкнулся с такой функцией хэширования password_hash()
в эту функцию передается три аргумента: пароль, алгоритм шифрования, дополнительные опции
Дополнительные опции здесь передаются как ассоциативный массив...в одном примере мана написано так:
$options = [
'cost' => 11,
'salt' => mcrypt_create_iv(22, MCRYPT_DEV_URANDOM),
];
Понятно что salt - это соль и под значением понимается функция которая генерирует эту соль, но мне неясно одно, что такое cost, и какую роль оно играет при шифровании?
Ответ
Вот достаточно развернутый ответ на английском языке. А на Wiki есть описание алгоритма, где вы можете понять, в каком месте используется cost.
Если коротко, то cost влияет на количество операций при получении хэша, как степень числа 2. При cost = 11 у вас будет 2**11 повторений алгоритма для вычисления.
Комментариев нет:
Отправить комментарий