Vorrei utilizzare bcrypt
per le password di hash e successivamente verificare se la password fornita è corretta.Come confrontare la password in testo semplice con la password con hash usando bcrypt?
hash delle password è facile:
import bcrypt
password = u'foobar'
password_hashed = bcrypt.hashpw(password, bcrypt.gensalt())
# then store password_hashed in a database
Come posso confrontare una password di testo normale per l'hash memorizzato?
Ottima risposta, ma solo una FYI che 'hash' è una parola chiave riservata Python 2 e 3 (builtin func), e l'impostazione' hash = ... 'sovrascrive il builtin in qualunque ambito tu sia. qualcosa come 'hashed' o' pw_hash', ecc. – alichaudry
Sono d'accordo. Questo 'hash' deve essere sostituito con un altro nome :). – ivanleoncz
Non dimenticare di codificare la stringa, ''secret'.encode()'. Nota: testato in Python 3. – Yamaneko