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.
Principles
This is a JOSE implementation that is fully compatible with Google App Engine which requires the use of the PyCrypto library.
Installation
$ pip install python-jose
Custom Backends
As of 2.0.0, python-jose uses pycryptodome by default for RSA signing and verification. If necessary, other RSA backends are supported. Both pycrpyto and crytography are options.
In order to use a custom backend, install python-jose with the appropriate extra.
$ pip install python-jose[pycrypto] $ pip install python-jose[crytography]
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 2.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-2.0.0.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| python_jose-2.0.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 39.3 kB
Release files / python-jose-2.0.0.tar.gz
| Download URL | python-jose-2.0.0.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
658ecdc0c0c7f5b2fa60d230c61ecbd718dc8b168216c68723f71bf6df7d2c11
|
|
BLAKE2b-256 checksum How to use checksums |
2cdd2e02846618af16587b70e89ddc958e9e4714a96786ed3ee47ceeed4a3e8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / python_jose-2.0.0-py2.py3-none-any.whl
| Download URL | python_jose-2.0.0-py2.py3-none-any.whl |
|---|---|
| Size | 22.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
0f38b5d0bb7df491abcfec5765a2bcd31f28495d366dab05fb15797c2fc8d2ab
|
|
BLAKE2b-256 checksum How to use checksums |
b8abcce1b45f00fccfbf9bf10c49ed2f992dc1268ee6a6514e2f48de76cb80a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |