ОП получил идею от пост на ютубе что спорит вокруг MD5.
Вот простой аргумент, если кто-нибудь смотрит видео.
Скорость не означает, что хеш-функция небезопасна, дизайн делает ее безопасной..
С годами исследователи находили слабые места в конструкции MD5 и со временем совершенствовали ее. После выпуска MD5 в 1992 году начались атаки, а в 2010 году Се и Дэнго Фэн объявили первая опубликованная одноблочная (512-битная) коллизия MD5. Конечно, улучшение процессоров и их циклов помогает проводить атаки быстрее, однако основной вклад вносят методологии атак. Учтите, что общая атака столкновений (атака дня рождения) требует $2^{64}$ Хэши MD5 с вероятностью успеха 1/2. Даже сегодня ни один обычный процессор не может $2^{64}$ в разумное время. С другой стороны, теперь у нас есть мгновенное столкновение для MD5, увидеть корками.
С другой стороны, Blake2 является очень быстрая хэш-функция, быстрее, чем MD5 и SHA-1, и не имеет атаки с расширением длины, поскольку использует ХАЙФА структура, исправления оформления МД. Это быстрее, чем MD5 и безопасно по крайней мере, в обозримой особенности. Его выходной размер достаточно безопасен для массивных параллельных атак или даже для Алгоритм квантового поиска Гровера. Серия Blake теперь имеет БЛЕЙК3, это параллельный хеш и очень быстро.
Что важно в скорости и ее отношении к безопасности, так это размер дайджеста. Общие атаки для атаки по прообразу, вторичной атаки по прообразу и общего столкновения: $2^n$,$2^n$, и $2^{n/2}$, соответственно. Если у вас есть 256- или 512-битный вывод, у вас все в порядке с общими атаками. Имейте в виду, что короткое поле ввода является проблемой для атак с предварительным изображением, и рекомендуется использовать HMAC.
PS: хеширование пароля (не требуется сопротивление столкновению), где мы хотим контролируемую скорость, твердость памятии количество потоков хэш-функции пароля. Надо читать канонический вопрос с нашего почтенного сайта, информационной безопасности.. Также, Аргон2 бумага, победитель конкурса хеширования паролей 2015 года, является хорошим выбором для чтения.
Последнее замечание: нужно тщательно определить свою проблему, чтобы они могли достичь безопасного дизайна. Нет настоящей безопасности, если вы не знаете своих рисков.