Python 将使用pycrypto 2.0.1保存的RSA公钥导入新版本

Python 将使用pycrypto 2.0.1保存的RSA公钥导入新版本,python,pycrypto,Python,Pycrypto,我有一个使用PyCrypto 2.0.1生成的酸洗RSA公钥。我希望升级我的应用程序以使用PyCrypto 2.5 pickle键数据以开头 iCrypto.PublicKey.RSA\nRSAobj_c 不幸的是,RSAobj_c在PyCrypto>=2.1中被删除,因此解除锁定失败 我应该如何使密钥与新的PyCrypto兼容?为什么不在旧的PyCrypto中使用标准格式(如PEM)导出密钥,然后在新的PyCrypto中导入?假设pk是使用旧PyCrypto的会话中的公钥。您可以执行pk.ex

我有一个使用PyCrypto 2.0.1生成的酸洗RSA公钥。我希望升级我的应用程序以使用PyCrypto 2.5

pickle键数据以开头 iCrypto.PublicKey.RSA\nRSAobj_c

不幸的是,RSAobj_c在PyCrypto>=2.1中被删除,因此解除锁定失败


我应该如何使密钥与新的PyCrypto兼容?

为什么不在旧的PyCrypto中使用标准格式(如PEM)导出密钥,然后在新的PyCrypto中导入?假设
pk
是使用旧PyCrypto的会话中的公钥。您可以执行
pk.exportKey(“PEM”)
以生成一个以PEM格式表示密钥的字符串,并将其保存到文件中。之后,使用新的PyCrypto打开一个新的Python会话,加载刚刚创建的文件,并将其内容存储在变量上,如
pkstring
。最后,您可以通过执行类似于
pk=RSA.importKey(pkstring)
的操作来加载密钥。这能解决你的问题吗?