您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Python中执行PGP(生成密钥,加密/解密)

如何在Python中执行PGP(生成密钥,加密/解密)

您不需要PyCryptoPyMe,尽管这些软件包可能不错- 您将在Windows下构建各种问题。相反,为什么不避开兔子洞,我该怎么做呢?使用gnupg 1.4.9。你不需要做一个完整的安装在最终用户的机器- 刚刚gpg.exeiconv.dll从分配是足够的,你只需要在一些地方有他们在的路径,或使用一个全路径名从你的Python代码访问。无需更改注册表,如果需要,所有内容(可执行文件和数据文件)都可以限制在一个文件夹中。

一个模块GPG.py最初由Andrew Kuchling编写,由Richard Jones改进,并且由Steve Traugott进一步改进。它在这里可用,但因为它使用,所以它不适合Windowsos.fork()。尽管它最初是其中的一部分PyCrypto, 。

我有一个gnupg.py来自Traugott的版本()GPG.py,该版本使用该subprocess模块。至少出于我的目的,它在Windows下可以正常工作- 我使用它来执行以下操作:

我所获得的模块目前尚不理想,因为它包含了一些其他内容,这些内容不应该存在,这意味着我目前无法按原样发布它。在某个时候,也许在接下来的几周内,我希望能够整理一下,添加更多的单元测试(例如,我没有用于签名/验证的任何单元测试)并释放它(在原始PyCrypto许可或类似的商业友好许可)。如果您迫不及待,请使用Traugott的模块并自行对其进行修改- 使其与subprocess模块一起工作并不需要太多工作。

这种方法比其他方法(例如,SWIG基于解决方案或需要使用MinGW/进行构建的解决方案)要痛苦得多MSYS,这是我考虑并尝试过的。我对其他语言编写的系统使用了相同的(gpg.exe/iconv.dll方法,例如C#,结果同样轻松。

PS它适用于Python 2.4以及Python 2.5及更高版本。没有经过其他版本的测试,尽管我没有发现任何问题。

python 2022/1/1 18:30:17 有394人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶