A JOSE implementation in Python
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
Custom Backends
As of 3.0.0, python-jose uses the pure-python rsa module by default for RSA signing and verification. If necessary, other RSA backends are supported. Options include crytography, pycryptodome, and pycrypto.
In order to use a custom backend, install python-jose with the appropriate extra.
It is reccomended that a custom backend is used in production, as the pure-python rsa module is slow.
The crytography option is a good default.
$ pip install python-jose[crytography] $ pip install python-jose[pycryptodome] $ pip install python-jose[pycrypto]
Usage
>>> from jose import jwt
>>> token = jwt.encode({'key': 'value'}, 'secret', algorithm='HS256')
u'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXkiOiJ2YWx1ZSJ9.FG-8UppwHaFp1LgRYQQeS6EDQF7_6-bMFegNucHjmWg'
>>> jwt.decode(token, 'secret', algorithms=['HS256'])
{u'key': u'value'}
Thanks
This library was originally based heavily on the work of the folks over at PyJWT.
Metadata
Release files for python-jose 3.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| python-jose-3.0.0.tar.gz | 19.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| python_jose-3.0.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 44.5 kB
Release files / python-jose-3.0.0.tar.gz
| Download URL | python-jose-3.0.0.tar.gz |
|---|---|
| Size | 19.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e8255fb3cc524c04f4c790547a6215468f2a32d3a866424175523359e69f3aeb
|
|
BLAKE2b-256 checksum How to use checksums |
f4929f4c77930c18f02931b266229f865273283f8eaaf590ea2abd3f03f89f44
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / python_jose-3.0.0-py2.py3-none-any.whl
| Download URL | python_jose-3.0.0-py2.py3-none-any.whl |
|---|---|
| Size | 25.3 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
e06dd2e5e9125da79b519ff2652b8c666d64a5ea228fcd9862e0b29a534ccc53
|
|
BLAKE2b-256 checksum How to use checksums |
445bc8adb4d8052b2c7ced00888e1cd7b2b18d0493019faf0163617bdbde59d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |