我可以使用python默认库集加密电子邮件并将其解密吗?

时间:2009-04-30 12:54:27

标签: python encryption

当然在stackoverflow中已经提出了类似的问题,但我不想使用像Crypto之类的任何第三方库。所以我需要从用户电子邮件生成密文并将其解密回明文。我怎么能在python中做到这一点?

3 个答案:

答案 0 :(得分:4)

第三方系统是您最好的选择 如果你真的不能/不想使用第三方,也许简单就足够了。

一个更简单的算法是Tiny Encryption Algorithm(TEA)。 Here's an example of a Python implementation that you could start with.

答案 1 :(得分:3)

是的,你可以。 阅读http://www.amk.ca/python/code/crypto.html 你会在那里找到答案;)

你的问题不够具体,不能多说。您可能需要阅读http://en.wikipedia.org/wiki/Cryptography#Modern_cryptography

干杯,  Tuergeist

更新: 你不能。 (由于出口限制而构建了功能,请参阅http://docs.python.org/library/crypto.html) 但是你可以,如果你实现自己的算法(坏主意)。 因此,最佳解决方案是使用python核心开发人员推荐的扩展。见上文帖子。

再次欢呼。

答案 2 :(得分:1)

如果您想要推出自己的加密系统,那么您可以尝试使用内置的hmachashlib模块。 (hashlib是2.5的新增内容,因此如果您必须使用较早的Python,则您的哈希选项是较旧的md5sha模块。)

如果您反对(或被阻止)安装第三方库,但可以使用第三方算法甚至“轻量级”第三方算法实现(例如已发布) Python源代码驻留在单个.py文件中,您可以在不使用setup.py或任何其他正式安装的情况下自行合并或导入,然后我强烈建议您这样做,因为这些是可能比你自己想出的更好。

我所知道的最小和用户友好的这些被称为 p3 ,由密码学家Paul Rubin编写。原始链接不再有效,但您可以搜索它。谷歌搜索目前产生a near-exact copy以及an adaptation for Python 3

您还可以尝试使用其中一种单模块,纯Python Rijndael (AES)实现,例如thisthis。 (同样,链接不保证是永久性的,因此您可能需要进行一些搜索。)