All Projects → mpdavis → Python Jose

mpdavis / Python Jose

Licence: mit
A JOSE implementation in Python

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Python Jose

Jose
Universal "JSON Web Almost Everything" - JWA, JWS, JWE, JWT, JWK with no dependencies
Stars: ✭ 1,029 (+28.46%)
Mutual labels:  jwt, jose
Go Jose
An implementation of JOSE standards (JWE, JWS, JWT) in Go
Stars: ✭ 1,849 (+130.84%)
Mutual labels:  jwt, jose
Python Jwt
JSON Web Token library for Python
Stars: ✭ 81 (-89.89%)
Mutual labels:  jwt, jose
Jose Jwt
Ultimate Javascript Object Signing and Encryption (JOSE) and JSON Web Token (JWT) Implementation for .NET and .NET Core
Stars: ✭ 692 (-13.61%)
Mutual labels:  jwt, jose
Jwt
Safe, simple and fast JSON Web Tokens for Go
Stars: ✭ 231 (-71.16%)
Mutual labels:  jwt, jose
Jose
A JOSE implementation
Stars: ✭ 20 (-97.5%)
Mutual labels:  jwt, jose
Cli
🧰 A zero trust swiss army knife for working with X509, OAuth, JWT, OATH OTP, etc.
Stars: ✭ 2,151 (+168.54%)
Mutual labels:  jwt, jose
Jose
JSON Object Signing and Encryption for Node.js and the browser
Stars: ✭ 25 (-96.88%)
Mutual labels:  jwt, jose
Erlang Jose
JSON Object Signing and Encryption (JOSE) for Erlang and Elixir
Stars: ✭ 232 (-71.04%)
Mutual labels:  jwt, jose
Authlib
The ultimate Python library in building OAuth, OpenID Connect clients and servers. JWS,JWE,JWK,JWA,JWT included.
Stars: ✭ 2,854 (+256.3%)
Mutual labels:  jwt, jose
Hs Jose
Haskell JOSE and JWT library
Stars: ✭ 100 (-87.52%)
Mutual labels:  jwt, jose
Jose
🔐 JSON Object Signing and Encryption Framework (JWT, JWS, JWE, JWA, JWK, JWKSet and more)
Stars: ✭ 479 (-40.2%)
Mutual labels:  jwt, jose
Jose2go
Golang (GO) implementation of Javascript Object Signing and Encryption specification
Stars: ✭ 150 (-81.27%)
Mutual labels:  jwt, jose
Json Jwt
JSON Web Token and its family (JSON Web Signature, JSON Web Encryption and JSON Web Key) in Ruby
Stars: ✭ 262 (-67.29%)
Mutual labels:  jwt, jose
Jwt Framework
JWT Framework
Stars: ✭ 577 (-27.97%)
Mutual labels:  jwt, jose
Learning tools
Go 学习、Go 进阶、Go 实用工具类、Go-kit ,Go-Micro 微服务实践、Go 推送
Stars: ✭ 605 (-24.47%)
Mutual labels:  jwt
Jwx
Implementation of various JWx (Javascript Object Signing and Encryption/JOSE) technologies
Stars: ✭ 600 (-25.09%)
Mutual labels:  jwt
Angular Springboot Rest Jwt
Springboot, Angular and JWT security - Example Project based on Northwind Order Processing
Stars: ✭ 603 (-24.72%)
Mutual labels:  jwt
Auth0.js
Auth0 headless browser sdk
Stars: ✭ 755 (-5.74%)
Mutual labels:  jwt
Simplemall
基于SpringCloud的微服务架构实战案例项目,以一个简单的购物流程为示例,融合spring cloud 相关组件,如spring-cloud-netflix、swagger等
Stars: ✭ 687 (-14.23%)
Mutual labels:  jwt

python-jose

A JOSE implementation in Python

|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.

Installation

::

$ pip install python-jose[cryptography]

Cryptographic Backends

As of 3.1.0, python-jose implements four 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 dependencies in production.

#. 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: pip install python-jose[cryptography]

  • Unused dependencies:

    • rsa
    • ecdsa
    • pyasn1

#. pycryptodome

  • This backend uses pycryptodome_ for all cryptographic operations.

  • Installation: pip install python-jose[pycryptodome]

  • 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: pip install python-jose

.. note::

   The native-python backend cannot process certificates.

#. pycrypto

  • This backend uses pycrypto_ for all cryptographic operations.

  • Installation: pip install python-jose[pycrypto]

  • Unused dependencies:

    • rsa

.. warning::

   The `pycrypto`_ project has not been maintained since 2013.
   This backend is maintained for legacy compatibility purposes only.
   Do not use this backend unless you cannot use any of the others.

Usage

.. code-block:: python

>>> 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_.

.. |Build Status| image:: https://travis-ci.org/mpdavis/python-jose.svg?branch=master :target: https://travis-ci.org/mpdavis/python-jose .. |Coverage Status| image:: http://codecov.io/github/mpdavis/python-jose/coverage.svg?branch=master :target: http://codecov.io/github/mpdavis/python-jose?branch=master .. |Docs| image:: https://readthedocs.org/projects/python-jose/badge/ :target: https://python-jose.readthedocs.org/en/latest/ .. _ReadTheDocs: https://python-jose.readthedocs.org/en/latest/ .. _PyJWT: https://github.com/jpadilla/pyjwt .. _pyca/cryptography: http://cryptography.io/ .. _pycryptodome: https://pycryptodome.readthedocs.io/en/latest/ .. _pycrypto: https://www.dlitz.net/software/pycrypto/ .. _python-ecdsa: https://github.com/warner/python-ecdsa .. _python-rsa: https://stuvel.eu/rsa

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].