Description |
The JavaScript Object Signing and Encryption (JOSE) technologies - JSON Web
Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), and JSON Web
Algorithms (JWA) - collectively can be used to encrypt and/or sign content
using a variety of algorithms. While the full set of permutations is extremely
large, and might be daunting to some, it is expected that most applications
will only use a small set of algorithms to meet their needs.
As of 3.3.0, python-jose implements three different cryptographic backends. The
backend must be selected as an extra when installing python-jose. If you do not
select a backend, the native-python backend will be installed.
Unless otherwise noted, all backends support all operations.
Due to complexities with setuptools, the native-python backend is always
installed, even if you select a different backend on install.
- cryptography
This backend uses pyca/cryptography for all cryptographic operations.
This is the recommended backend and is selected over all other
backends if any others are present.
Installation: dnf install python3-jose+cryptography
* Unused dependencies:
- rsa
- ecdsa
- pyasn1
- pycryptodome
This backend uses pycryptodome for all cryptographic operations.
Installation: not available because pycryptodome (which, unlike
pycryptodomex, conflicts with pycrypto) is not packaged
* Unused dependencies:
- rsa
- native-python
This backend uses python-rsa and python-ecdsa for all cryptographic
operations. This backend is always installed but any other backend
will take precedence if one is installed.
Installation: dnf install python3-jose
Note
The native-python backend cannot process certificates.
|