utils.hasher 源代码

import hashlib


__all__ = [
    'MyMD5Hasher',
    'MySHA256Hasher',
]

[文档] class MyMD5Hasher(object): def __init__(self, salt: str): self.salt = salt
[文档] def encode(self, message: str) -> str: assert message is not None message_encoded = (message + self.salt).encode("utf-8") return hashlib.md5(message_encoded).hexdigest().upper()
[文档] def verify(self, message: str, encoded: str) -> bool: return encoded.upper() == self.encode(message).upper()
[文档] class MySHA256Hasher(object): def __init__(self, secret: str): self.secret = secret
[文档] def encode(self, identifier: str) -> str: assert identifier is not None plain = (identifier + self.secret).encode("utf-8") return hashlib.sha256(plain).hexdigest().upper()
[文档] def verify(self, identifier: str, encoded: str) -> bool: return encoded.upper() == self.encode(identifier).upper()