cryptography (Python)
cryptography.io
1
Leaving SiteNav
External Link Disclaimer
You are about to visit cryptography.io. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
The cryptography package is a widely-used Python library that provides cryptographic primitives and recipes for both high-level secure communication patterns and low-level cryptographic algorithm access. Developed by the Python Cryptographic Authority (PyCA) and maintained by Paul Kehrer, Alex Gaynor, and the broader PyCA community, the library is the de facto standard for cryptography in Python, with over 7,000 GitHub stars and hundreds of millions of PyPI downloads. The library is divided into two main layers. The recipes layer provides high-level, opinionated APIs for common cryptographic tasks including secure message passing via Fernet symmetric encryption (AES-128-CBC with HMAC-SHA256 authentication), password-based key derivation with PBKDF2HMAC, scrypt, and Argon2id, and safe random number generation using the secrets module. The hazardous materials (hazmat) layer provides lower-level access to individual cryptographic primitives including symmetric ciphers (AES with GCM, CBC, CTR, CFB, OFB, XTS modes; ChaCha20-Poly1305; Camellia; 3DES), asymmetric algorithms (RSA with PKCS1 v1.5 and OAEP padding; DSA; ECDSA and EdDSA with NIST P-256, P-384, P-521, Ed25519, Ed448 curves; X25519 and X448 key exchange), key derivation functions (HKDF, KBKDF, X963KDF), message authentication (HMAC with SHA1/SHA224/SHA256/SHA384/SHA512, Poly1305, CMAC), hash functions (SHA-1, SHA-2 family, SHA-3 family, BLAKE2, MD5 for legacy), X.509 certificate parsing, creation, signing, and verification, and key serialization in PEM, DER, OpenSSH, PKCS12, and PKCS8 formats. The library is backed by OpenSSL on most platforms and includes type stubs for mypy/pyright.
Statistics
1
Views
0
Clicks
0
Like
0
Dislike