# Combine timestamp and unique ID combined_string = timestamp + unique_id
# Create an HMAC object using the secret key and combined string registration_code = hmac.new(self.secret_key, combined_string.encode('utf-8'), hashlib.sha256).digest() timetophoto registration code hot
# Generate a unique ID unique_id = str(uuid.uuid4()) # Combine timestamp and unique ID combined_string =
class RegistrationCodeGenerator: def __init__(self, secret_key): self.secret_key = secret_key.encode('utf-8') max_age=3600): # max_age in seconds
def validate_registration_code(self, registration_code, max_age=3600): # max_age in seconds, default 1 hour try: registration_code_bytes = base64.b64decode(registration_code) except Exception as e: return False, "Invalid registration code format"
# Encode the registration code in Base64 for easier handling and storage encoded_registration_code = base64.b64encode(registration_code).decode('utf-8')
return encoded_registration_code