python rsa加密解密

在Python中,可以使用rsa库来实现RSA加密和解密。以下是使用rsa库进行加密和解密的步骤:

生成密钥对

from rsa import newkeys

# 生成公钥和私钥
(pubkey, privkey) = newkeys(2048)

保存密钥对

# 将公钥和私钥保存到文件
with open('public.pem', 'w') as f:
    f.write(pubkey.save_pkcs1().decode())

with open('private.pem', 'w') as f:
    f.write(privkey.save_pkcs1().decode())

加载密钥对

# 从文件加载公钥和私钥
with open('public.pem', 'r') as f:
    pubkey = rsa.PublicKey.load_pkcs1(f.read().encode())

with open('private.pem', 'r') as f:
    privkey = rsa.PrivateKey.load_pkcs1(f.read().encode())

加密

# 待加密的消息
message = 'Hello World!'

# 使用公钥加密消息
crypto = rsa.encrypt(message.encode(), pubkey)
print(crypto)

解密

# 使用私钥解密消息
message = rsa.decrypt(crypto, privkey).decode()
print(message)

注意事项

  • 确保已安装rsa库,可以使用pip install rsa进行安装。

  • 密钥长度建议至少为500位,推荐使用1024位或2048位。

  • 加密和解密过程中,公钥用于加密,私钥用于解密。

以上步骤展示了如何使用Python的rsa库进行RSA加密和解密。

Top