Files
2026-08-24 10:59:07 +08:00

25 lines
686 B
Python

"""
@Time :2026/8/24
@Author :tao.chen
"""
import base64
import os
import sys
from cryptography.hazmat.primitives.ciphers.aead import AESGCM
def encrypt(plain_text: str, secret_key: str) -> str:
key_bytes = secret_key.encode("utf-8").ljust(32, b"\0")[:32]
cipher = AESGCM(key_bytes)
nonce = os.urandom(12)
ciphertext = cipher.encrypt(nonce, plain_text.encode("utf-8"), None)
payload = base64.b64encode(nonce + ciphertext).decode("utf-8")
return f"ENC({payload})"
if __name__ == "__main__":
if len(sys.argv) < 3:
print("Usage: python encrypt_secret.py <SECRET_KEY> <PLAIN_TEXT>")
sys.exit(1)
print(encrypt(sys.argv[2], sys.argv[1]))