我正在用 Python 编写加密函数,我想使用公钥加密随机数。
我想知道如果我使用 Crypto 包 (Crypto.publicKey.pubkey
),我该如何使用像...这样的方法
def encrypt(self,plaintext,k)
这里的k
本身就是一个随机数,这就是 key 的意思。有人可以帮我解决一些相关问题吗?
最佳答案
您是否正在尝试使用收件人的公钥来加密 session /消息 key 以进行对称加密?在这些情况下,使用 SSH 或 TLS 可能更直接。
回到你的问题:
Me Too Crypto (M2Crypto) 是一个很好的 openssl 包装器。
首先需要获取接收方的公钥:
recip = M2Crypto.RSA.load_pub_key(open('recipient_public_key.pem','rb').read())
现在您可以加密您的消息了:
plaintext = random_integer_you_want_to_encrypt
msg = recip.public_encrypt(plaintext,RSA.pkcs1_padding)
现在只有拥有收件人的私钥的人才能解密它。
关于python - 用 Python 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1130687/