Я не знаю, о чем вы спрашиваете:
В соответствии с файлом конфигурации для IonAuth пароли должны быть SHA1.
ОК. Это может быть все, что они решат; pig-latin, если они хотят.
Я запустил пароль, зашифрованный SHA1, известный мне по существующему методу Bcrypt, и он также выдал false как для пароля, так и для пароля с солью, поэтому По крайней мере, я исключил Bcrypt как возможный алгоритм.
SHA-1 - это не шифрование; это хэширование Вы запускали хеш-пароль SHA-1 через bcrypt? Или вы запускали пароль через bcrypt?
и он также имеет значение false для пароля и пароля с солью
Что вы имеете в виду соль? bcrypt поставляет соль. Вы не поставляете соль. Итак, вы удалили bcrypt.
Но в чем проблема? Вы не можете войти? Ваша базовая структура не может проверить свои собственные учетные данные? Вы получаете ошибку аутентификации?
Короткая версия: у меня есть нет идеи о том, что вы делаете.
Но
- независимо от что говорит этот Ion Framework
- независимо от SHA-1
- независимо от соли или нет (?!) соли
- независимо от передачи пароля по сравнению с ша-1 га sh пароля для bcrypt:
Похоже, вы просите идентифицировать хешированные пароли, сгенерированные кем-то.
Оба:
абсолютно точно bcrypt.
Первый - bcrypt с коэффициентом стоимости 8
(т.е. 2 8 раундов).
Второй - bcrypt с фактором стоимости 10
(т.е. 2 10 раундов).
Что бы это ни было, он должен использовать коэффициент стоимости, равный 12, пожалуйста (для генерации ~ 250 мс).
Итак, я бы начал с того, что убрал бы всю хвалу "услужливо" , предоставленную этим фреймом k - и вызовите bcrypt.
Я больше не имею дело с javascript, и при этом я не знаю, что это за библиотека bcrypt. Но каждая библиотека bcrypt, достойная своей соли, имеет такую функцию:
String hash = bcrypt.hashPassword("hunter2", 12);
и
Boolean passwordMatch = bcrypt.verifyPassword("hunter2", hash);
Тот факт, что кто-то пытается добавить соль к паролю:
providedPassword + user.salt
абсолютно неверно.
Независимо от
Если ничего другого: те сохраненные строки, которые вы показали , являются bcrypt.
$1$
: Крипта на основе MD5 ('md5crypt') $2$
: крипта на основе Blowfi sh ('bcrypt') $2a$
: bcrypt; обновлен до документа UTF8 и нулевого терминатора $2b$
: bcrypt; сгенерированные OpenBSD без ошибок в их более ранней версии $2x$
: хэши bcrypt, сгенерированные одной ошибочной php реализацией $2y$
: хэши bcrypt, сгенерированные одной фиксированной реализацией php $sha1$
: крипта на основе SHA-1 ('sha1crypt') $5$
: крипта на основе SHA-256 ('sha256crypt') $6$
: Скрипт на основе SHA-512 ('sha512crypt')
Вы говорите, что удалили bcrypt.
Я гарантирую, что вы bcrypt.
I Предлагаем вам воспользоваться этой модной платформой и использовать bcrypt напрямую. Убедившись, что вы можете правильно:
пароли, используя bcrypt, тогда вы можете попробовать отладить эту недокументированную библиотеку Ion.