import rsa
import base64
length = 1024
rsa_length = int(length / 8)
enable_length = rsa_length - 11
pub_key_obj, priv_key_obj = rsa.newkeys(length)
pub_key_str = pub_key_obj.save_pkcs1()
pub_key_code = base64.standard_b64encode(pub_key_str)
priv_key_str = priv_key_obj.save_pkcs1()
priv_key_code = base64.standard_b64encode(priv_key_str)
print(pub_key_code)
print(priv_key_code)
def encrypt(value):
key_str = base64.standard_b64decode(pub_key_code)
pk = rsa.PublicKey.load_pkcs1(key_str)
val_list = []
for i in range(0, len(value), enable_length):
v = value[i:i + enable_length]
val = rsa.encrypt(v.encode('utf-8'), pk)
val_list.append(val)
return b''.join(val_list)
def decrypt(value):
key_str = base64.standard_b64decode(priv_key_code)
pk = rsa.PrivateKey.load_pkcs1(key_str)
val_list = []
for i in range(0, len(value), rsa_length):
v = value[i:i + rsa_length]
val = rsa.decrypt(v, pk)
val_list.append(val)
return b''.join(val_list)
ret = encrypt('abcdefg' * 100)