Skip to content

Instantly share code, notes, and snippets.

@ErickMwazonga
Created December 21, 2017 21:29
Show Gist options
  • Save ErickMwazonga/2f5a0c3fc183f3a13a5a4af12b856293 to your computer and use it in GitHub Desktop.
Save ErickMwazonga/2f5a0c3fc183f3a13a5a4af12b856293 to your computer and use it in GitHub Desktop.
Hashing
import uuid
import hashlib
def hash_password(password):
# uuid is used to generate a random number
salt = uuid.uuid4().hex
return hashlib.sha256(salt.encode() + password.encode()).hexdigest() + ':' + salt
def check_password(hashed_password, user_password):
password, salt = hashed_password.split(':')
return password == hashlib.sha256(salt.encode() + user_password.encode()).hexdigest()
new_pass = input('Please enter a password: ')
hashed_password = hash_password(new_pass)
print('The string to store in the db is: ' + hashed_password)
old_pass = input('Now please enter the password again to check: ')
if check_password(hashed_password, old_pass):
print('You entered the right password')
else:
print('I am sorry but the password does not match')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment