cryptography.hazmat.bindings.openssl.binding
These are CFFI bindings to the OpenSSL C library. Cryptography supports OpenSSL version 1.0.1 and greater.
This is the exposed API for the OpenSSL bindings. It has two public attributes:
ffi
This is a cffi.FFI
instance. It can be used to allocate and otherwise manipulate OpenSSL structures.
lib
This is a cffi
library. It can be used to call OpenSSL functions, and access constants.
init_static_locks
Enables the best available locking callback for OpenSSL. See openssl-threading
.
cryptography
enables OpenSSLs thread safety facilities in several different ways depending on the configuration of your system. For users on OpenSSL 1.1.0 or newer (including anyone who uses a binary wheel) the OpenSSL internal locking callbacks are automatically used. Otherwise, we first attempt to use the callbacks provided by your Python implementation specifically for OpenSSL. This will work in every case except where cryptography
is linked against a different version of OpenSSL than the one used by your Python implementation. For this final case we have a C-based locking callback.