소스 검색

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
No account linked to committer's email address
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 ""

Loading…
취소
저장