Однако, есть одно «но» и связано оно с бекапом таблицы пользователей. Пароли в базах данных, как вправило, хранятся в зашифрованном виде, и БД uCoz — не исключение. Таким образом, даже имея на руках таблицу БД, обычно невозможно определить, у какого пользователя какой пароль — в БД хранится только его хэш. Однако, это не значит, что пользователей нельзя экспортировать с паролями — вполне можно импортировать в БД эти хэши, а затем, как это обычно и делается, при входе пользователя сравнивать хэш введённого им пароля и хэш в БД. Для этого нужно только одно — знать алгоритм хэширования.
В бекапе пользователей uCoz третьим значением идёт строка, например, вот такая: $1$SIq1$Z7ujk8SsSwv/TCxmI6NzT0. Именно это значение и является хэшем пароля пользователя. Далее, как уже было сказано, встаёт вопрос: что это за хэш и как он получен?
В сети интернет, есть скрипты, с помощьб которых можно импортировать бекап пользователей uCoz в БД движков Wordpress, Joomla, Drupal. Таким образом, мне стало очевидно, что алгоритм шифрования известен, по крайней мере разработчикам этих плагинов-скриптов.
Служба техподдержки Юкоз дает ответ:
«Расшифровать пароль не представляется возможным и по понятным причинам нам также запрещено вдаваться в подробности обсуждения алгоритма шифрования паролей».
Но как оказалось, расшифровка представляет собой стандартный хэш Unix, получаемый в PHP функцией crypt(), а $1$*$ (* — любые символы) — это соль.
В итоге записать можно так: crypt('pass', '$1$SIq1$');
Затем сравнить результаты совпадений.