Створюйте рядки .htpasswd для Apache/nginx із солоними хешами APR1-MD5 чи SHA-1, повністю офлайн у вашому браузері.
— результат з’явиться тут —
Bcrypt не включений. APR1-MD5 солоний і рекомендований; SHA-1 несолоний, лише для застарілих випадків.
Про цей інструмент
Згенеруйте готовий до вставлення рядок облікових даних .htpasswd (username:hash) для HTTP Basic-автентифікації Apache чи nginx. Ім'я користувача, пароль і все хешування відбуваються локально у вашому браузері — нічого не завантажується, і немає eval чи зовнішньої бібліотеки.
Підтримуються два алгоритми. APR1-MD5 (формат Apache $apr1$) реалізований на чистому JavaScript, включно з самодостатнім MD5 і повним циклом солоного crypt на 1000 раундів, з 8-символьною випадковою сіллю з crypto.getRandomValues. SHA-1 використовує вбудований у браузер crypto.subtle.digest, кодований у base64 і з префіксом {SHA}, що відповідає виводу htpasswd -s. Bcrypt навмисно не включений, бо коректний, швидкий bcrypt на чистому JS непрактично запускати на боці клієнта.
Уведіть ім'я користувача й пароль, оберіть алгоритм і скопіюйте отриманий рядок у ваш файл .htpasswd. Використовуйте «Нова сіль», щоб перегенерувати сіль APR1 (кожне збереження дає інший хеш для того самого пароля, що очікувано й правильно).
Поширені запитання
Чи надсилається мій пароль кудись?
Ні. Усе хешування працює повністю у вашому браузері за допомогою вбудованого MD5 для APR1 і рідного crypto.subtle для SHA-1. Нічого не передається, і немає eval.
Який алгоритм обрати?
APR1-MD5 ($apr1$) — рекомендований типовий для Apache і солоний, тож він безпечніший із двох тут. SHA-1 ({SHA}) несолоний і корисний головним чином для застарілих налаштувань чи сумісності з nginx.
Чому хеш APR1 змінюється щоразу?
APR1 використовує випадкову 8-символьну сіль, тож той самий пароль дає інший хеш щоразу. Це задумано; Apache зчитує сіль назад зі збереженого хеша під час перевірки входу.
Чому bcrypt не пропонується?
Bcrypt навмисно виключений. Коректний bcrypt на чистому JavaScript був би великим і повільним у браузері, тож цей інструмент постачає надійні офлайн-режими APR1-MD5 і SHA-1 натомість.