# -*- encoding: utf-8 -*- # math_utils.py # This class implements math methods used by the other classes. import base64 import hashlib def str_to_bytes(data): """Convert string to bytes.""" utype = type(b''.decode('utf8')) if isinstance(data, utype): return data.encode('utf8') return data def b64encode(data: str) -> str: """Encode data to base64.""" return base64.b64encode(data).decode('utf-8') def b64decode(data: str) -> str: """Decode base64 data.""" return base64.b64decode(data) def hash256(data: str) -> str: """Hash data with SHA-256.""" return hashlib.sha256(str_to_bytes(data)).digest()