Skip to main content

A simple library to add cryptographic attestation to patches sent via email

Project description

Patatt is a Python library and CLI for adding end-to-end cryptographic attestation to patches sent via email. It adapts the DKIM email signature standard to include cryptographic signatures via the X-Developer-Signature header.

If your project workflow doesn’t use patches sent via email, then you don’t need this and should simply start signing your tags and commits.

Features

  • DKIM-like signature headers that don’t corrupt patch content

  • Multiple signing algorithms: ed25519, OpenPGP, OpenSSH

  • In-repository keyring management via git refs

  • Automatic signing via git sendemail-validate hook

Installation

Install using pipx (recommended):

pipx install patatt

Or with pip:

pip install --user patatt

Quick Start

Generate a new ed25519 signing key:

patatt genkey

Sign a patch:

git format-patch -1 --stdout | patatt sign > signed.patch

Validate a signed patch:

patatt validate signed.patch

Documentation

Full documentation is available at https://patatt.docs.kernel.org

Contributing

Please send patches and support requests to tools@kernel.org.

Submissions must be made under the terms of the Linux Foundation certificate of contribution and should include a Signed-off-by line. See the DCO file for details.

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

patatt-0.8.0.tar.gz (24.6 kB view details)

Uploaded Source

Built Distribution

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

patatt-0.8.0-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

Details for the file patatt-0.8.0.tar.gz.

File metadata

  • Download URL: patatt-0.8.0.tar.gz
  • Upload date:
  • Size: 24.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for patatt-0.8.0.tar.gz
Algorithm Hash digest
SHA256 c226b5e7e449a4981b827c48e2586a928fa45b690af19a3892b9279b334f2551
MD5 dad52bed94578d64e7e369692f4107c4
BLAKE2b-256 6084ce3398941bcb26a5ee12a066a5d2b052bf9211f713d98ed78573b5364fea

See more details on using hashes here.

File details

Details for the file patatt-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: patatt-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 21.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for patatt-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9b8324376619fa8d2d9808e324f3cea4ee7f332d5fe64b770d98578f2b28ea2c
MD5 a572008a2881e6d31502cc84071247c7
BLAKE2b-256 070f51505e1a25f9cf2fec7c026134f93f09731b82ab4b33285611e1b2db4b7f

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