浏览代码

Add another decrypt function. (#5043)

### What problem does this PR solve?



### Type of change

- [x] New Feature (non-breaking change which adds functionality)
tags/v0.17.0
Kevin Hu 8 个月前
父节点
当前提交
e4096fbc33
没有帐户链接到提交者的电子邮件
共有 1 个文件被更改,包括 20 次插入0 次删除
  1. 20
    0
      api/utils/__init__.py

+ 20
- 0
api/utils/__init__.py 查看文件

@@ -351,6 +351,26 @@ def decrypt(line):
line), "Fail to decrypt password!").decode('utf-8')


def decrypt2(crypt_text):
from base64 import b64decode, b16decode
from Crypto.Cipher import PKCS1_v1_5 as Cipher_PKCS1_v1_5
from Crypto.PublicKey import RSA
decode_data = b64decode(crypt_text)
if len(decode_data) == 127:
hex_fixed = '00' + decode_data.hex()
decode_data = b16decode(hex_fixed.upper())

file_path = os.path.join(
file_utils.get_project_base_directory(),
"conf",
"private.pem")
pem = open(file_path).read()
rsa_key = RSA.importKey(pem, "Welcome")
cipher = Cipher_PKCS1_v1_5.new(rsa_key)
decrypt_text = cipher.decrypt(decode_data, None)
return (b64decode(decrypt_text)).decode()


def download_img(url):
if not url:
return ""

正在加载...
取消
保存