From 364a8c8ec283d728cc7021d7a25ffd832b40cc23 Mon Sep 17 00:00:00 2001 From: Jiang Date: Wed, 25 Feb 2026 16:54:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=A0=E5=AF=86=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E8=84=9A=E6=9C=AC=E4=BB=A5=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E5=8A=A0=E5=AF=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/encrypt_string.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 scripts/encrypt_string.py diff --git a/scripts/encrypt_string.py b/scripts/encrypt_string.py new file mode 100644 index 0000000..eb6e366 --- /dev/null +++ b/scripts/encrypt_string.py @@ -0,0 +1,33 @@ +import os +import sys + +# 将项目根目录添加到 python 路径 +sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) + +from app.core.encryption import get_database_encryptor + + +def main() -> int: + plaintext = None + if not sys.stdin.isatty(): + stdin_text = sys.stdin.read() + if stdin_text != "": + plaintext = stdin_text.rstrip("\r\n") + if plaintext is None and len(sys.argv) >= 2: + plaintext = sys.argv[1] + if plaintext is None: + try: + plaintext = input("请输入要加密的文本: ") + except EOFError: + plaintext = "" + if not plaintext.strip(): + print("Error: plaintext string cannot be empty.", file=sys.stderr) + return 1 + + token = get_database_encryptor().encrypt(plaintext) + print(token) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main())