Skip to content
A JOSE implementation in Python (pycrypto replaced by pycryptodome).
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
jose
tests
.gitignore
.travis.yml
LICENSE
MANIFEST.in
README.rst
TODO.md
requirements-dev.txt
requirements-rtd.txt
requirements.txt
setup.cfg
setup.py
tox.ini

README.rst

python-jose-cryptodome

A JOSE implementation in Python using pycryptodome instead pycrypto. Stop using pycrypto use pycryptodome.

Build Status Coverage Status Docs

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 not compatible with Google App Engine as it uses pycryptodome.

Installation

$ pip install python-jose-cryptodome

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.

You can’t perform that action at this time.