Joomla соль усиленный пароль - PullRequest
0 голосов
/ 11 августа 2009

как я могу узнать значение строки, которая используется в качестве соли для шифрования пароля, улучшенного солью Joomla ??

Ответы [ 4 ]

9 голосов
/ 11 августа 2009

Joomla генерирует случайную соль для каждого пароля. Здесь вы можете найти ценную информацию о том, как работать с методами joomla для генерации паролей:

http://forum.joomla.org/viewtopic.php?f=476&t=308499

Из этого бита видно, что соль хранится после пароля с двоеточием в качестве разделителя.

$salt = JUserHelper::genRandomPassword(32);
$crypt = JUserHelper::getCryptedPassword("blabla", $salt);
$password = $crypt . ':' . $salt;

[EDIT] Мне просто нужно написать авторизационный валидатор с Zend_Auth для проверки установки Joomla (1.0), и я решил обновить информацию об этом. Отрывок моего кода.

$dbAdapter = Zend_Registry::get('jdb');
$this->_authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
$this->_authAdapter->setTableName('jos_users')
->setIdentityColumn('username')
->setCredentialColumn('password');

//Joomla 1.0 uses hashes in the form md5(passwort + salt) + salt
$users = new Users();
$hash = $users->getHash($value);
$salt = substr($hash, strpos($hash, ':') + 1);
$password = md5($context['password'] . $salt) . ':' . $salt;

[/ EDIT]

2 голосов
/ 12 августа 2009

В поле пароля в таблице пользователей, это бит после ":"

Формула что-то вроде

поле пароля базы данных = md5 (пароль + соль) + ":" + соль

0 голосов
/ 21 сентября 2010

Если joomla каждый раз генерирует соль случайным образом, как в мире она проверяет логины пользователей против нее. Я думал, что обычно соленый пароль должен храниться где-то как обычный текст, и вы проверяли его по хешированной версии и хешированному паролю.

0 голосов
/ 11 августа 2009

Не знаком с joomla в частности, но большинство соленых паролей либо содержат соль в строке пароля, разделяя мой разделитель (обычно $ или какой-либо другой не буквенно-цифровой символ). Или он может храниться в отдельном столбце в таблице БД

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...