Об этом инструменте
Генератор и верификатор хешей паролей Argon2 вычисляет и проверяет хеши Argon2 полностью в вашем браузере. Argon2 выиграл конкурс Password Hashing Competition 2015 года и стандартизирован в RFC 9106; в отличие от bcrypt он memory-hard, то есть его стоимость доминируется использованием RAM, что затрудняет работу установок для взлома на GPU и ASIC. В режиме генерации берутся 16 случайных байтов соли из crypto.getRandomValues и запускается выбранный вариант с вашими параметрами: t итераций (стоимость времени), m память в KiB, p параллелизм (полосы) и длина выходного хеша в байтах.
Предлагаются три варианта. Argon2id (по умолчанию и рекомендованный RFC выбор) — гибрид, сопротивляющийся как атакам по побочным каналам, так и атакам компромисса время-память; Argon2i оптимизирован против утечки по побочным каналам; Argon2d максимизирует сопротивление взлому на GPU, но небезопасен по побочным каналам. Результат — самоописывающая строка PHC вида $argon2id$v=19$m=65536,t=3,p=1$<base64 salt>$<base64 hash>, поэтому каждый параметр, нужный для проверки, путешествует внутри хеша. Значения по умолчанию (t=3, m=65536 KiB = 64 MiB, p=1) следуют второму рекомендованному профилю RFC 9106.
Поскольку работа выполняется как WebAssembly-сборка без eval под строгой политикой безопасности браузера, память выделяется на странице: очень высокие значения m интенсивны по RAM и могут быть медленными на телефонах, поэтому инструмент предупреждает выше 256 MiB. В режиме проверки разбираются вариант, версия, m/t/p, соль и дайджест из кодированного хеша, пересчитывается с кандидатом-паролем и сообщается совпадение или несовпадение. Пароли хешируются на 100% в вашем браузере, и ничего не загружается.