33 lines
1002 B
Python
33 lines
1002 B
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
async def get_key(key_file):
|
|
with open(key_file) as f:
|
|
data = f.read()
|
|
key = RSA.importKey(data)
|
|
return key
|
|
|
|
async def encrypt_data(msg):
|
|
public_key = await get_key('rsa_public_key.pem')
|
|
cipher = PKCS1_v1_5.new(public_key)
|
|
encrypt_text = base64.b64encode(cipher.encrypt(bytes(msg.encode("utf8"))))
|
|
return encrypt_text.decode('utf-8')
|
|
|
|
async def decrypt_data(encrypt_msg):
|
|
private_key = await get_key('rsa_private_key.pem')
|
|
cipher = PKCS1_v1_5.new(private_key)
|
|
back_text = cipher.decrypt(base64.b64decode(encrypt_msg), 0)
|
|
return back_text.decode('utf-8')
|
|
|
|
async def get_decrypt_data(ns={}):
|
|
# encrypt_text = await encrypt_data(ns.get('encrypt_data'))
|
|
decrypt_text = await decrypt_data(ns.get('encrypt_data'))
|
|
print(decrypt_text)
|
|
return {
|
|
'status': True,
|
|
'msg': '解析成功',
|
|
'data': decrypt_text
|
|
}
|
|
|
|
ret = await get_decrypt_data(params_kw)
|
|
return ret |