import argparse, os, sys from cryptography.fernet import Fernet, InvalidToken ENV = "FLARE_TOKEN_KEY" def get_fernet(key_arg: str | None) -> Fernet: key = key_arg or os.getenv(ENV) if not key: print(f"[HATA] Anahtar yok. --key parametresi verin veya {ENV} ortam değişkenini ayarlayın.", file=sys.stderr) sys.exit(1) try: return Fernet(key.encode()) except Exception as e: print(f"[HATA] Anahtar geçersiz: {e}", file=sys.stderr) sys.exit(1) def main(): parser = argparse.ArgumentParser(description="String şifreleyici") parser.add_argument("plain", help="Şifrelenecek string") parser.add_argument("--key", help="Fernet anahtarı (opsiyonel, yoksa env kullanılacak)") args = parser.parse_args() f = get_fernet(args.key) enc = f.encrypt(args.plain.encode()).decode() print(f"enc:{enc}") if __name__ == "__main__": main()