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.0.tar.gz (86.4 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: jwcrypto-1.5.0.tar.gz
  • Upload date:
  • Size: 86.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for jwcrypto-1.5.0.tar.gz
Algorithm Hash digest
SHA256 2c1dc51cf8e38ddf324795dfe9426dee9dd46caf47f535ccbc18781fba810b8d
MD5 7a5511484efde92f01f18584a01cc469
BLAKE2b-256 ed72b9289ee27d228fc7cae5c83d1c640de2a7cc0621805aa839ba239d6ef8fc

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