Към съдържанието

Генератор на Argon2

Генерирайте Argon2id хеш на парола с произволен 16-байтов salt и избрани от вас памет, итерации, паралелизъм и дължина на хеша. Паметта е ограничена до 64 MiB, а итерациите — до 4; стойностите по подразбиране следват базовите настройки на OWASP: 19 MiB и 2 преминавания. Инструментът връща стандартен PHC низ, започващ с $argon2id$v=19$, който се проверява от PHP, libsodium и библиотеките argon2. Паролата никога не се показва.

Нулиране

Често задавани въпроси

Какво е Argon2id?

Argon2 спечели конкурса за хеширане на пароли през 2015 и е специфициран в RFC 9106. Argon2id е хибридният вариант, който защитава както от атаки по странични канали, така и от GPU атаки. Това е вариантът, препоръчан от OWASP и RFC за съхранение на пароли.

Какво означават настройките за памет, итерации и паралелизъм?

Паметта задава колко MiB използва всеки хеш, итерациите — колко преминавания се правят над тази памет, а паралелизмът — броя на нишките. Повече памет и итерации оскъпяват всяко предположение за нападателите. Тук паметта е от 1 до 64 MiB, итерациите — от 1 до 4, а паралелизмът — от 1 до 4.

Какви настройки да използвам?

Стойностите по подразбиране са 19 MiB, 2 итерации и 1 нишка — минималните стойности на OWASP за Argon2id. Стойностите по подразбиране на PHP са 64 MiB и 4 итерации; можете да ги възпроизведете и тук. В продукционна среда използвайте толкова памет за всяко влизане, колкото сървърите ви могат да осигурят.

Защо паметта и итерациите са ограничени?

Всеки хеш действително заделя заявената памет и изпълнява всяко преминаване на споделен сървър. Ограниченията от 64 MiB и 4 итерации свеждат всяка заявка до част от секундата, като същевременно обхващат често използвани продукционни настройки.

Какво съдържа изходният низ?

Резултат като $argon2id$v=19$m=19456,t=2,p=1$, последван от salt и хеша, указва варианта, версията, паметта в KiB, итерациите и нишките. Salt и хешът са в непадирана форма на Base64. Съхранявайте целия низ, защото при проверката от него се прочита всеки параметър.

Защо хешът е различен всеки път?

При всяка заявка се използва нов произволен 16-байтов salt, затова една и съща парола създава различен низ всеки път. Всички тези хешове се потвърждават с правилната парола.

Мога ли да избера дължината на хеша?

Да, от 16 до 64 байта; стойността по подразбиране е 32 байта. По-дългите тагове не затрудняват отгатването, затова 32 байта са достатъчни за съхранение на пароли.

Кои системи приемат тези хешове?

PHP password_verify, crypto_pwhash_str_verify на libsodium, пакетът argon2 за Node.js, argon2-cffi за Python и Spring Security четат формата PHC string. Верификаторът Argon2 на този сайт проверява и тях.

Съхранява ли се паролата ми или се връща в отговора?

Не. Паролата се използва само в паметта за изчисляване на хеша и се премахва от отговора. Никога не се записва в лог или не се запазва.

Мога ли да генерирам хешове Argon2i или Argon2d?

Не. Инструментът създава само Argon2id, тъй като това е препоръчителният вариант за пароли. Верификаторът Argon2 все пак приема хешове Argon2i и Argon2d.

За OneClick Pro

OneClick Pro е безплатна колекция от над 150 уеб инструмента за ежедневна работа: преобразуване на изображения и единици, форматиране и валидиране на код, проверка на домейни и SEO, както и работа с текст, дати и числа. Всеки инструмент работи без регистрация или абонамент, а въведеното от вас се използва само за изчисляване на резултата и никога не се съхранява. Използвайте го като бърз набор от инструменти за еднократни задачи или добавете в отметките инструментите, на които разчитате всеки ден.