Обучение/Помощь новичкам | CRYPT_MD5 и md5
Тема закрыта by
SNEG
Функция md5() и CRYPT_MD5 являются двумя разными способами создания хеш-значения с использованием алгоритма MD5. Однако у них есть определенные различия:
1. Функция md5():
md5() - это встроенная функция во многих языках программирования, включая PHP. Она принимает строку (или массив байтов) в качестве входных данных и возвращает хеш-значение MD5 в виде 32-значного 16-ричного числа. Однако MD5 считается устаревшим и небезопасным алгоритмом для хеширования, так как было обнаружено много возможностей для коллизий (разных входных данных, которые генерируют одинаковое хеш-значение).
Пример использования в PHP:
2. Константа CRYPT_MD5:
CRYPT_MD5 - это одна из возможных констант, которые можно использовать при вызове функции crypt() в некоторых языках, таких как PHP. Она указывает, что для генерации хеш-значения будет использоваться алгоритм MD5, но с дополнительной "солью", что повышает безопасность по сравнению с обычной функцией md5().
Пример использования в PHP:
В итоге, md5() просто создает MD5 хеш без соли, тогда как CRYPT_MD5 обеспечивает дополнительную безопасность, используя алгоритм MD5 вместе с солью. Однако даже с солью MD5 не рекомендуется для защиты паролей и конфиденциальных данных из-за своей уязвимости к атакам, таким как атаки подбора пароля и коллизии
________
посл. ред. 27.08.2023 в 02:20; всего 1 раз(а); by MARAZM
1. Функция md5():
md5() - это встроенная функция во многих языках программирования, включая PHP. Она принимает строку (или массив байтов) в качестве входных данных и возвращает хеш-значение MD5 в виде 32-значного 16-ричного числа. Однако MD5 считается устаревшим и небезопасным алгоритмом для хеширования, так как было обнаружено много возможностей для коллизий (разных входных данных, которые генерируют одинаковое хеш-значение).
Пример использования в PHP:
php
$hash = md5("секретный_пароль");2. Константа CRYPT_MD5:
CRYPT_MD5 - это одна из возможных констант, которые можно использовать при вызове функции crypt() в некоторых языках, таких как PHP. Она указывает, что для генерации хеш-значения будет использоваться алгоритм MD5, но с дополнительной "солью", что повышает безопасность по сравнению с обычной функцией md5().
Пример использования в PHP:
php
$password = "секретный_пароль";
$salt = uniqid(); // Генерируем уникальную соль
$hash = crypt($password, '$1$' . $salt);В итоге, md5() просто создает MD5 хеш без соли, тогда как CRYPT_MD5 обеспечивает дополнительную безопасность, используя алгоритм MD5 вместе с солью. Однако даже с солью MD5 не рекомендуется для защиты паролей и конфиденциальных данных из-за своей уязвимости к атакам, таким как атаки подбора пароля и коллизии
________
посл. ред. 27.08.2023 в 02:20; всего 1 раз(а); by MARAZM
По сути, да. Рекомендуется использовать более современные и безопасные алгоритмы хеширования, такие как bcrypt или Argon2
Стр.: 1, 2