Skip to main content

A library for using DANE for identity-secured JWE and JWS.

Project description

A library for using JWE and JWS with DANE for identity-secured messaging.

This library enables the easy generation of signed and encrypted messages, using TLSA records in DNS for public key discovery. This library places the DNS URI in the x5u protected header field. The receiving party uses this field for discovering the public key which is used for verifying message payload.

Note: Currently, only RSA public keys are supported (RSA-OAEP-256 for encryption and RS256 for signing)

Documentation Status https://circleci.com/gh/ValiMail/dane-jwe-jws.svg?style=shield Maintainability Test Coverage

Quick Start

Installation

pip install dane-jwe-jws

Encrypt a message using a DANE-represented identity

from dane_jwe_jws.encryption import Encryption
test_message = "hello world!!"
identity_name = "dns.name.where.cert.lives.in.a.tlsa.record"
encrypted = Encryption.encrypt(test_message, identity_name)
print(encrypted)

More examples

Changelog

v0.5

Fix

  • Fix issue where only PKIX-CD certs were retrieved for authentication. [Ash Wilson]

    Close #9

v0.4 (2021-05-28)

Changes

  • Improve flexibility of Utility.get_pubkey_from_dns(). [Ash Wilson]

    Unspecified dane_type argument for Util.get_pubkey_from_dns() will cause the first entity certificate of any type to be returned.

    Close #7

v0.3 (2021-05-19)

Changes

  • Update CHANGELOG.rst. [Ash Wilson]

  • Add strict mode support. [Ash Wilson]

    Closes #1

Other

v0.2 (2020-09-14)

Fix

  • Correct parsing of DNS URI for message verification. [Ash Wilson]

v0.1 (2020-08-05)

New

  • Initial commit. [Ash Wilson]

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

dane_jwe_jws-0.5.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dane_jwe_jws-0.5-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file dane_jwe_jws-0.5.tar.gz.

File metadata

  • Download URL: dane_jwe_jws-0.5.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for dane_jwe_jws-0.5.tar.gz
Algorithm Hash digest
SHA256 e407c6c936a81fa5b92816331d118378a8e20a59a1ca12e7080116f0c28158c4
MD5 d6100e8b5a2281f687ac6946d4aaaac4
BLAKE2b-256 bc6ad45ed89cd5babbe178dc138b190974774ec7408fa844d56dc68488265873

See more details on using hashes here.

File details

Details for the file dane_jwe_jws-0.5-py3-none-any.whl.

File metadata

  • Download URL: dane_jwe_jws-0.5-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for dane_jwe_jws-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f5e47c750cc1a855b54117f143dffe9bb9c3f7f119df70b2a1b810f1f2b08621
MD5 31ba72e185d0b090567a307401a47c6e
BLAKE2b-256 a72927927130b312eb83945bd548c1d3ddfcaa07bc913d6d70674822b77e3a54

See more details on using hashes here.

Supported by

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