import os
from secrets import token_bytes
from Crypto.Hash.Poly1305 import Poly1305_MAC

FLAG = os.getenv("FLAG", "Alpaca{dummy}")
TARGET = b"admin=true"

# Poly1305_MAC clamps r internally
r, s = token_bytes(16), token_bytes(16)
print(f"HINT! r: {r.hex()}")

message = input("message: ").encode()
if not message or message == TARGET:
    raise SystemExit("invalid message")
print(Poly1305_MAC(r, s, message).hexdigest())

if input("tag: ") == Poly1305_MAC(r, s, TARGET).hexdigest():
    print(FLAG)
else:
    print("invalid")
