LINUX.ORG.RU

Как поменять Хеш пароля в MySQL?

 , , , ,


0

1

Есть проект на CodeIgniter. Он находится в разработке.

От меня хотят, чтобы я поменял пароль от учетки админа в этом проекте.

Нашел таблицу, в которой есть записи учеток:

username, password.

Пароль хранится в зашифорованном виде. Хеш пароля выглядит примерно так «*35A78861803942F155D235791FEB65EC6ACX71CE»

Вопросы:

  • Как понять, какое шифрование используется - MD5 или SHA1? Мне кажется, это SHA1 судя по длине. Пробовал делать sha256, sha512. Хеши длиннее получаются.
  • Что означает звездачка - первый символ в поле пароля в таблице MySQL?
  • Вероятно тут используется соль. Не пойму, соль как прибавляется к паролю? Слева, справа?

Пробавал такой код на питоне и сравнивал с записью в таблице базы данных:

import hashlib

print("SHA1:")
hash_object = hashlib.sha1(b'password')
print(hash_object.hexdigest())

print("MD5:")
hash_object = hashlib.md5(b'password')
print(hash_object.hexdigest())

hash_object = hashlib.sha1(b'saltpassword')
print(hash_object.hexdigest())

print("MD5:")
hash_object = hashlib.md5(b'saltpassword')
print(hash_object.hexdigest())

Пока безуспешно.



Последнее исправление: dopedopedope (всего исправлений: 2)

Обычно в таких случаях я создаю нового пользователя с нужным паролем и беру его хэш. Либо, можно нового пользователя сделать супер-юзером через БД, зайти в админку и поменять оттуда.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Поддерживаю. Из стандартного GUI приложения создаешь пользователя с паролем password, и копипастишь его поле «пароль» нужному человеку в клиенте mysql.

Хэш-функции используются самые разные, в меру испорченности разрабов; в PHP обычно используется bcrypt, соль прямо из коробки. В случае md5 скажи программистам, чтобы так не делали.

anonymous
()
Ответ на: комментарий от true_admin

Получилось. Так и сделал, завел еще одного пользователя и взял его хеш. Спасибо за советы, добрые люди!

dopedopedope
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.