sslcrypto is a Python library providing ECIES (Elliptic Curve Integrated Encryption Scheme), AES, and RSA encryption with OpenSSL-based implementation and a pure Python fallback. Current version 5.3 offers multiple backends (OpenSSL, LibreSSL, cryptography, pure Python) and supports a wide range of curves and RSA key sizes. Release cadence is irregular, with occasional major version bumps due to API changes.
pip install sslcryptoVerified import paths — ran on the pinned version, not inferred.
Generate an AES key, IV, encrypt and decrypt a message using CBC mode.
Update to new pattern if you were passing curve as keyword to low-level functions; generally safe if using high-level wrappers.
Encode/decode to base64 manually if needed: base64.b64encode(encrypted)
Use cipher.encrypt(data) instead of cipher.ciphertext
pip install sslcrypto[all]
Run `pip install sslcrypto`
Install sslcrypto with 'all' extra: `pip install sslcrypto[all]`
Ensure iv is bytes: `iv = b'some_16_byte_iv'` or `iv = os.urandom(16)`