Hier die einfachste Variante um in sicheres Passwort Hashing in Python umzusetzen.
Dazu wird die passlib verwendet. Diese kann per pip installiert werden, passlib ist für Python 2.x und 3.x kompatibel.
pip install passlib
Passwort hashen:
>>> # passlib laden >>> from passlib.hash import pbkdf2_sha256 >>> >>> # das passwort zum hashen >>> password = "EinsuperGeheimesPasswort" >>> >>> # ein falsches passwort zum testen >>> password2 = "FalschesPasswort" >>> >>> hash = pbkdf2_sha256.hash(password) >>> # hash ausgeben >>> hash '$pbkdf2-sha256$29000$IQSgdE6p1VoL4fwfQwjBWA$9sy/3NJmX1jP.3kYwgmG96zVpBxoVA5yKA6pB.T5Mrw'
Passwort verifizieren:
>>> # richtiges passwort >>> pbkdf2_sha256.verify(password, hash) True >>> # falsches passwort >>> pbkdf2_sha256.verify(password2, hash) False >>>
Wem pbkdf2_sha256 zu kompliziert ist kann das auch beim Import mit einem Alias versehen.
>>> from passlib.hash import pbkdf2_sha256 as pwhash >>> hash = pwhash.hash(password) >>> hash '$pbkdf2-sha256$29000$Z2zNWYsxBiDEmFPK2XsvZQ$WQ8Urv1d4AmBV4v.vFV01uHeZZ7ya52VuYbLkEHEsWE' >>> pwhash.verify(password, hash) True
Weitere Infos: