Об этом инструменте
Генератор и верификатор хешей Bcrypt создаёт и проверяет хеши паролей bcrypt, никогда не отправляя ваш пароль на сервер. Bcrypt, разработанный Provos и Mazières в 1999 году, оборачивает расписание ключей Eksblowfish в адаптивный фактор работы: параметр стоимости задаёт 2^cost раундов установки ключа, поэтому повышение стоимости делает каждую попытку экспоненциально медленнее для атакующего, оставаясь дешёвым для одного законного входа. В режиме генерации читаются 16 случайных байтов соли из crypto.getRandomValues браузера, запускается установка Eksblowfish при выбранной вами стоимости, константа "OrpheanBeholderScryDoubt" в 192 бита шифруется 64 раза, и выдаётся стандартная строка Modular Crypt Format $2b$NN$ + 22-символьная соль base64 + 31-символьный дайджест base64.
Алгоритм работает как WebAssembly-сборка bcrypt без eval, загруженная локально, поэтому ничего не загружается, и инструмент работает офлайн после загрузки. Bcrypt учитывает только первые 72 байта пароля — инструмент предупреждает вас, когда ваш ввод превышает этот предел, чтобы вас никогда не удивило тихое усечение. Фактор стоимости выбирается от 4 до 16 (по умолчанию 10); каждый шаг удваивает работу, поэтому 12 в четыре раза медленнее, чем 10.
В режиме проверки разбирается префикс $2b$/$2a$/$2y$, двузначная стоимость и встроенная соль из существующего хеша, дайджест пересчитывается с кандидатом-паролем и сообщается совпадение или несовпадение. Поскольку соль и стоимость путешествуют внутри самой строки хеша, для проверки входа нужны только пароль и сохранённый хеш. Всё вычисляется на странице — пароли хешируются на 100% в вашем браузере, и ничего не загружается.