标准Python加密库:Cryptography
jopen
10年前
Cryptography的目标是建立一个标准Python加密库。如果你曾经在工作中使用过Python加密技术,那么你很可能知道一些库,例如M2Crypto、PyCrypto或者PyOpenSSL。Cryptography库想要解决已有库中存在的一些问题:
- 缺少PyPy和Python 3支持
- 缺少维护
- 使用了差评的算法实现(例如旁路攻击side-channel attacks)
- 缺少高级(易于使用)的APIs
- 缺少AES-GCM和HKDF等算法
- 经不住测试
- 错误百出的APIs
>>> from cryptography.fernet import Fernet >>> # Put this somewhere safe! >>> key = Fernet.generate_key() >>> f = Fernet(key) >>> token = f.encrypt(b"A really secret message. Not for prying eyes.") >>> token '...' >>> f.decrypt(token) 'A really secret message. Not for prying eyes.'