Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 14, 2011 16:16:40

vkg2
От:
Зарегистрирован: 2010-09-02
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Pyramid - проли

как лучше шифровать пароли?
и как лучше всего и потом сравнивать(проверять)?

p.s. сейчас пытаюсь использовать cryptacular.bcrypt.BCRYPTPasswordManager.
генерю пароль сохраняю его в postgresql, затем пытаюсь авторизоваться, но ни чего не выходит, не проходит сравнение check(шифрованый пароль, введенный пароль).



Офлайн

#2 Ноя. 24, 2011 08:07:07

ziro
От:
Зарегистрирован: 2009-08-13
Сообщения: 225
Репутация: +  8  -
Профиль   Отправить e-mail  

Pyramid - проли

Я обычно использую код, который выдрал из джанги и немного упростил:

from hashlib import sha1

def hash_password(password):
"""
Генерирует новый пароль пользователя
"""
salt = randrange(1000, 10000)
return u'%s$%s' % (salt, sha1((u'%s$%s' % (salt, password)).\
encode('utf-8')).hexdigest())

def check_password(pw_hash, password):
"""
Проверяет соответствие пароля пользователя
"""
if pw_hash is None: return False

salt, pwhash = pw_hash.split('$', 1)
check = sha1((u'%s$%s' % (salt, password)).encode('utf-8')).hexdigest()
return check == pwhash



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version