python 密码库_(01)Python密码库Cryptography探究学习---简介和入门

一、简介

Cryptography的目标是建立一个标准Python加密库,支持 Python

2.6-2.7, Python 3.3+, and PyPy 2.6+。如果对密码学领域感兴趣的话,可以学习Crypto

101(作者是 Laurens Van Houtven),链接为Crypto 101,这本教材很不错,适合初学者学习。

1.1 为什么建立一个新的Python密码库?

现有的Python密码库,如M2Crypto, PyCrypto, or PyOpenSSL,存在一些问题:缺少PyPy和Python 3支持

缺少维护

使用了差评的算法实现(例如旁路攻击side-channel attacks)

缺少高级(易于使用)的APIs

缺少AES-GCM和HKDF等算法

经不住测试

错误百出的APIs

1.2 特性

Cyptography密码库包括两个部分:cryptographic

recipes and primitives.这是本密码库非常有意思的地方,很多现有的其他密码库并没有这个特点。cryptographic recipes,直接翻译为密码学菜谱。其实个人也一时找不出合适的词语来解释。cryptographic primitives,即为密码学原语,也就是基本的密码概念,如加密、签名、Hash等算法。但是直接使用密码学原语容易出错,在实际应用中无法保证安全性。基于这一点,该库对密码学原语进行了安全集成,形成了更高层次的“密码学菜谱”。这么说吧,密码学原语像是做菜的原材料,对于初学者来说,虽然手里都有,但是不懂得如何去

你可能感兴趣的:(python,密码库)