Files

31 lines
747 B
Python
Executable File

#!/usr/bin/env python3
from __future__ import annotations
import argparse
import base64
import json
import secrets
def generate_base64_key() -> str:
key_bytes = secrets.token_bytes(32)
return base64.b64encode(key_bytes).decode("utf-8")
def main() -> None:
parser = argparse.ArgumentParser(description="Generate AES-256-GCM audit keyring values")
parser.add_argument("--key-id", default="k1", help="Key ID to generate")
args = parser.parse_args()
key_b64 = generate_base64_key()
keyring = {args.key_id: key_b64}
print("# Base64 key (32 bytes decoded):")
print(key_b64)
print("\n# JSON for AUDIT_KEYRING_JSON:")
print(json.dumps(keyring, ensure_ascii=True))
if __name__ == "__main__":
main()