我一直致力于加密字符串并将其显示为QR码(在对字符串进行base64编码之后)。
我想使用PyCrypto中的ElGamal私有公钥加密模块进行加密,但问题是它没有将密钥保存到文本文件的导出功能。我是不是错过了什么?如果没有,有没有一种聪明的方法可以出口它,或者我应该考虑其他什么?
PS。使用ElGamal而不是RSA的原因是我可以使密钥小于1024字节,这使得qr码更小、更不复杂。
您可以直接使用访问ElGamal密钥组件,因为它们是密钥对象的成员。
在Python2.x中,可以执行以下操作来打印文本文件中的组件:
from Crypto.PublicKey import ElGamal
from Crypto.Random import get_random_bytes
key = ElGamal.generate(2048, get_random_bytes)
comps = ('p', 'g', 'y', 'x')
out = "n".join(["{} = {}".format(comp, getattr(key, comp)) for comp in comps])
print out