python + 加密:使用公钥加密会话密钥

4 投票
3 回答
4026 浏览
提问于 2025-04-15 12:33

我想用公钥来加密会话密钥。PGP软件是怎么做到这一点的?有没有人能具体说明一下在Python中加密的步骤或函数?

3 个回答

0

可以看看这个链接:在Python中最好/最简单的加密库是什么,里面提到了一种与PGP兼容的解决方案,就是gpgme

不知道为什么,在这个讨论如何在Python中使用PGP(生成密钥,加密/解密)里,没人提到gpgme……

1

请查看这个帖子,了解一些关于基本技术的背景信息。这个帖子主要讲的是加密技术的基本知识。如果你想了解如何在Python中使用gpg,可以参考这个链接,里面有相关的信息。

3

还有一个叫做PyCrypto的模块,听起来正是你需要的东西:http://www.dlitz.net/software/pycrypto/,它的API文档在这里:http://www.dlitz.net/software/pycrypto/apidoc/,还有一些很不错的文档,里面有基本的加密和解密示例:http://www.dlitz.net/software/pycrypto/doc/

我得承认我没有用过这个模块,但看起来你可以先用一个公钥建立一个会话,然后用这个公钥来加密或解密信息。接着,你可以生成一个会话密钥,并通过你所用的任何渠道来传递这个密钥。最后,用这个会话密钥来切换到一个Crypto.Cipher对象。

另外,如果安全性对你来说很重要,特别是在多用户或信任度不高的机器上,一定要非常小心你是怎么获取会话密钥的。

撰写回答