Skip to main content

Implementation of JOSE Web standards

Project description

PyPI Changelog Build Status ppc64le Build Code Scan Documentation Status

JWCrypto

An implementation of the JOSE Working Group documents:

  • RFC 7515 - JSON Web Signature (JWS)
  • RFC 7516 - JSON Web Encryption (JWE)
  • RFC 7517 - JSON Web Key (JWK)
  • RFC 7518 - JSON Web Algorithms (JWA)
  • RFC 7519 - JSON Web Token (JWT)
  • RFC 7520 - Examples of Protecting Content Using JSON Object Signing and Encryption (JOSE)

Installation

pip install jwcrypto

Documentation

http://jwcrypto.readthedocs.org

Deprecation Notices

2020.12.11: The RSA1_5 algorithm is now considered deprecated due to numerous implementation issues that make it a very problematic tool to use safely. The algorithm can still be used but requires explicitly allowing it on object instantiation. If your application depends on it there are examples of how to re-enable RSA1_5 usage in the tests files.

Note: if you enable support for RSA1_5 and the attacker can send you chosen ciphertext and is able to measure the processing times of your application, then your application will be vulnerable to a Bleichenbacher RSA padding oracle, allowing the so-called "Million messages attack". That attack allows to decrypt intercepted messages (even if they were encrypted with RSA-OAEP) or forge signatures (both RSA-PKCS#1 v1.5 and RSASSA-PSS).

Given JWT is generally used in tokens to sign authorization assertions or to encrypt private key material, this is a particularly severe issue, and must not be underestimated.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jwcrypto-1.5.5.tar.gz (86.9 kB view details)

Uploaded Source

Built Distribution

jwcrypto-1.5.5-py3-none-any.whl (92.2 kB view details)

Uploaded Python 3

File details

Details for the file jwcrypto-1.5.5.tar.gz.

File metadata

  • Download URL: jwcrypto-1.5.5.tar.gz
  • Upload date:
  • Size: 86.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for jwcrypto-1.5.5.tar.gz
Algorithm Hash digest
SHA256 59e7d5e4589d1b07170f368e20c32eb32a023911806a9723b1f43a0d8b3028d6
MD5 a3c62043886ab93a36ff0e83279a6ffc
BLAKE2b-256 28b5c29f5bc037d1ae498815f68c180cdd6b7bdfd7b8f42d7536b2c255af3a95

See more details on using hashes here.

Provenance

File details

Details for the file jwcrypto-1.5.5-py3-none-any.whl.

File metadata

  • Download URL: jwcrypto-1.5.5-py3-none-any.whl
  • Upload date:
  • Size: 92.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for jwcrypto-1.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c18b10b2049603bef3ae7b77ad14bded431a9077d113447d62bebd8550b0d5bd
MD5 fbd532348e098b3dcdc430c86e9c9b5c
BLAKE2b-256 6fc3a39c4eb859b9e3730e8ec9a76c50a2ac5ec4e3527cc50008431a02d9d299

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page