Что такое алгоритм хеширования для паролей owncloud

2543
Slava Knyazev

Мне нужно знать алгоритм, используемый для генерации хэшей паролей, которые выглядят так: $2a$08$ztQUBr1vx97Rc9MiJVr05.LZWg92jGYkRFEJViHhfZjaWpB0xfgGu

Для меня это выглядит как bcrypt, но когда я хэшировал свой пароль с помощью скрипта, они не совпадали. Поэтому я верю, что с паролем делается что-то еще, прежде чем хранить его в базе данных. Это соль? Если так, то, что это?

1
Вы смотрели в исходный код? Или конфигурация? https://github.com/owncloud/core/blob/80b15b48c594a36a2620a48ab92eac9c208073a9/config/config.sample.php#L51 Кажется, что где-то участвует соль. slhck 9 лет назад 0

1 ответ на вопрос

3
jjlin

crypt (3) утверждает, что $2a$префикс указывает Blowfish. Крипт OpenBSD (3) предоставляет некоторые дополнительные сведения о формате.

Если у вас есть glibc с поддержкой Blowfish, вы можете просто позвонить crypt()себе или использовать другую программу, которая делает это. Я нашел makepasswd полезным для этой цели.

Чтобы увидеть детали алгоритма, вы, вероятно, хотите обратиться к фактическому исходному коду. PHP имеет версию crypt со встроенной поддержкой Blowfish, которую можно легко вызвать из интерактивного режима ( php -a). Если это не сработает, вы, вероятно, захотите покопаться в источнике ownCloud.

Похожие вопросы