首先,生成一对密钥,并保存

def create_keys(): # 生成公钥和私钥
(pubkey, privkey) = rsa.newkeys(1024)
pub = pubkey.save_pkcs1()
with open('public.pem','wb+')as f:
f.write(pub)

pri = privkey.save_pkcs1()
with open('private.pem','wb+')as f:
f.write(pri)


对信息进行加密和解密的过程:

def encrypt(): # 用公钥加密
with open('public.pem', 'rb') as publickfile:
p = publickfile.read()
pubkey = rsa.PublicKey.load_pkcs1(p)
original_text = 'have a good time'.encode('utf8')
crypt_text = rsa.encrypt(original_text, pubkey)
print(crypt_text)
return crypt_text # 加密后的密文


def decrypt(crypt_text): # 用私钥解密
with open('private.pem', 'rb') as privatefile:
p = privatefile.read()
privkey = rsa.PrivateKey.load_pkcs1(p)
lase_text = rsa.decrypt(crypt_text, privkey).decode() # 注意,这里如果结果是bytes类型,就需要进行decode()转化为str

print(lase_text)


if __name__ == '__main__':
crypt_text = encrypt()
lase_text = decrypt(crypt_text)

相关文章:

  • 2021-09-22
  • 2022-02-27
  • 2021-07-04
  • 2022-02-11
  • 2021-06-17
  • 2021-12-05
猜你喜欢
  • 2021-12-05
  • 2021-05-14
  • 2021-09-24
  • 2021-12-21
  • 2021-08-17
相关资源
相似解决方案