summaryrefslogtreecommitdiffstats
path: root/authentication/utils.py
blob: f383969afcb7c4b775d4db6bdac736d431816fec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import base64
import hashlib
import bcrypt


def bcrypt_sha256_hash(password: str) -> str:
    digest = hashlib.sha256(password.encode("utf-8")).digest()
    encoded = base64.b64encode(digest)
    return bcrypt.hashpw(encoded, bcrypt.gensalt()).decode("utf-8")


def bcrypt_sha256_verify(password: str, hashed: str) -> bool:
    digest = hashlib.sha256(password.encode("utf-8")).digest()
    encoded = base64.b64encode(digest)
    return bcrypt.checkpw(encoded, hashed.encode('utf-8'))