我在Python中使用RSA解密时遇到了一些麻烦。
我使用OpenSSL命令生成了一对RSA私钥和公钥。字符串“ abcde ”存储在 message.txt 文件中。然后我用这个命令加密文件:
openssl rsautl -in message.txt -encrypt -pubin -inkey public_key.pem > encrypted.txt
如果我使用openssl rsautl
命令解密 message.txt 文件,则没有问题。但是,当我尝试用Python解密消息时,结果很奇怪。
Python代码:
from Crypto.PublicKey import RSA
f = open("encrypted.txt","r")
encrypted = f.read()
f.close()
f = open("private_key.pem","r")
private_key_string = f.read()
private_key = RSA.importKey(private_key_string)
f.close()
decrypted = private_key.decrypt(encrypted)
print decrypted
结果:
字符串“ abcde ”可以解密并显示。但是在它面前也会产生很多奇怪的角色。 Python代码有什么问题?我应该使用Python-Crypto吗?