跳转到主要内容

为Crypto++库中的几个算法提供Python封装

项目描述

Pycryptopp 是一组对一些优秀加密算法的Python接口的集合。它位于 https://tahoe-lafs.org/trac/pycryptopp

推荐算法

  • XSalsa20 ; 来自Crypto++库 ; 请参阅 pycryptopp.cipher.xsalsa20

  • Ed25519 ; 来自supercop库 ; 请参阅 pycryptopp.publickey.ed25519

已废弃的算法

pycryptopp的维护者计划很快停止支持这些算法。请迁移到不再依赖于pycryptopp对这些算法的实现,或者给我们写信并提供一些继续支持的激励。

  • Crypto++库中的RSA;请参阅pycryptopp.publickey.rsa;已废弃,转而使用Ed25519

  • Crypto++库中的Ecdsa;请参阅pycryptopp.publickey.ecdsa;已废弃,转而使用Ed25519

  • Crypto++库中的SHA-256;请参阅pycryptopp.hash.sha256;已废弃,转而使用Python标准库的hashlib模块

许可证

您可以在GNU通用公共许可证版本2下使用此软件包,或者根据您的选择,使用任何后续版本。您可以在传递性宽限期公共许可证版本1.0下使用此软件包,或者根据您的选择,使用任何后续版本。您还可以在MIT许可证下使用此软件包。您也可以在简单许可许可证下使用此软件包。

(您可以选择根据这些许可证中的任何一项使用此软件包。)

有关GNU通用公共许可证版本2的条款,请参阅COPYING.GPL文件。有关传递性宽限期公共许可证版本1.0的条款,请参阅COPYING.TGPPL.rst文件。有关MIT许可证的条款,请参阅COPYING.MIT.txt文件。有关简单许可许可证的条款,请参阅COPYING.SPL.txt文件。

构建

要构建它,请运行“python setup.py build”。要测试它,请运行“python setup.py test”。要将它安装到您的系统中,请运行“python setup.py install”。要创建一个二进制包,请运行“python setup.py bdist_egg”。

如果“python setup.py test”没有打印出“PASSED”并退出代码为0,那么有严重的问题。不要使用此版本的pycryptopp。请将错误报告给tahoe-dev邮件列表²

要查看一些简单的基准测试,请运行“python setup.py bench”。如果已安装“pyutil”库,则基准测试将包括平均时间、最佳时间、最长时间和四分位数,否则将仅报告每个操作的平均系统时间。

文档

文档位于docstrings中。从命令行使用“pydoc pycryptopp”,“pydoc pycryptopp.cipher”等。从Python解释器内部使用“help(pycryptopp)”,“help(pycryptopp.cipher)”,“help(pycryptopp.cipher.aes)”等。

pycryptopp.publickey.ed25519的文档位于README.ed25519.rst中,该文档是从上游python-ed25519库中改编的。

联系

请将有关此软件包的评论发布到tahoe-dev邮件列表²

书评

如果您不熟悉如何使用现代密码学,请阅读Ferguson,Schneier和Kohno的《密码学工程》。它易于理解,并将大大提高您的理解。

致谢

感谢Wei Dai,Jeffrey Walton和Crypto++的其他贡献者,Andrew M. Kuchling因他的“pycrypto”库启发了这个库,Brian Warner在Python打包问题上的帮助,python-Ed25519,灵感以及许多其他事情,Greg Hazel和Samuel Neves在Windows移植和修复错误方面的帮助,Daira Hopwood在维护pycryptopp方面的帮助,以及Daniel J. Bernstein的Ed25519。

Zooko Wilcox

德国柏林

2016-01-03

项目详情


下载文件

下载适用于您平台的应用文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

由...