2017-10-24 19:16:36 +05:00
|
|
|
import uuid
|
|
|
|
|
import hashlib
|
2018-11-20 15:43:43 +05:00
|
|
|
import base64
|
2017-10-24 19:16:36 +05:00
|
|
|
|
|
|
|
|
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(':')
|
2018-11-20 15:43:43 +05:00
|
|
|
return password == hashlib.sha256(salt.encode() + user_password.encode()).hexdigest()
|
|
|
|
|
|
|
|
|
|
def generateToken(serverUserName, serverPassword):
|
|
|
|
|
credentials = '{0}:{1}'.format(serverUserName, serverPassword).encode()
|
|
|
|
|
encoded_credentials = base64.b64encode(credentials).decode()
|
|
|
|
|
return 'Basic {0}'.format(encoded_credentials)
|