python-jose
JOSE implementation in Python
Install
python-jose on PyPI
pip
pip install python-joseuv
uv add python-josepoetry
poetry add python-josePackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — ecdsa, rsa, pyasn1 |
| Maintenance | actively maintained — 442 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: python_jose-3.5.0-py2.py3-none-any.whl
Keywords: jose, jws, jwe, jwt, json, web, token, security, signing
About python-jose
from the package's own PyPI description — quoted content, verbatim
python-jose
A JOSE implementation in Python
|pypi| |Github Actions CI Status| |Coverage Status| |Docs| |style|
Docs are available on ReadTheDocs_.
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.
Installation
::
$ pip install python-jose[cryptography]
Cryptographic Backends
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. We recommend that you remove unnecessary...
Read as markdown · JSON record · Source repository · Homepage · Docs
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Implements JOSE (JSON Object Signing and Encryption) standards including JWS, JWE, JWK, and JWA to sign and encrypt JSON-based content using various cryptographic algorithms.
Low friction installation with pure-Python wheels. Actively maintained (last commit 2026-04-14) with stable production status. Three runtime dependencies (ecdsa, rsa, pyasn1) are used by the native-Python backend; the package recommends removing unused dependencies in production if a different cryptographic backend is selected.
MIT license (permissive) allows commercial and private use with minimal restrictions, requiring only attribution and inclusion of the license notice.
Usage
pip install python-jose
from python_jose import jwt
token = jwt.encode({'key': 'value'}, 'secret', algorithm='HS256')
decoded = jwt.decode(token, 'secret', algorithms=['HS256'])
Requires Python 3.9 or later. The native-Python backend cannot process certificates.
Verdict: Production-ready JOSE library with active maintenance, no known vulnerabilities, and permissive licensing. Low install friction and broad algorithm support make it suitable for JWT and encryption workflows. Choose your cryptographic backend at install time based on performance and feature needs.
Needs verification
- Whether the three runtime dependencies (ecdsa, rsa, pyasn1) are actually needed when using alternative cryptographic backends, and if they can be safely removed post-install
- Performance characteristics and security audit status of each cryptographic backend option
Similar packages
permissive · top 1,000 on PyPI
joserfcpermissive · top 1,000 on PyPI
rsapermissive · top 1,000 on PyPI
PyJWTpermissive · top 100 on PyPI
cryptographypermissive · top 100 on PyPI
jwcryptocopyleft · top 1,000 on PyPI
Authlibpermissive · top 1,000 on PyPI
zeeppermissive · top 1,000 on PyPI
pycryptodomepermissive · top 1,000 on PyPI
pycryptodomexpermissive · top 1,000 on PyPI