Skip to main content

A tool for signing Python package distributions

Project description

sigstore-python

CI PyPI version

⚠️ This project is not ready for general-purpose use! ⚠️

sigstore is a tool for signing and verifying Python package distributions.

Features

  • Support for signing Python package distributions using an OpenID Connect identity
  • Support for publishing signatures to a Rekor instance
  • Support for verifying signatures on Python package distributions

Installation

sigstore requires Python 3.7 or newer, and can be installed directly via pip:

python -m pip install sigstore

Usage

You can run sigstore as a standalone program, or via python -m:

sigstore --help
python -m sigstore --help

Top-level:

Usage: sigstore [OPTIONS] COMMAND [ARGS]...

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  sign
  verify

Signing:

Usage: sigstore sign [OPTIONS] FILE [FILE ...]

Options:
  --identity-token TOKEN          the OIDC identity token to use
  --ctfe FILENAME                 A PEM-encoded public key for the CT log
                                  (conflicts with --staging)
  --oidc-client-id ID             The custom OpenID Connect client ID to use
  --oidc-client-secret SECRET     The custom OpenID Connect client secret to
                                  use
  --oidc-issuer URL               The custom OpenID Connect issuer to use
                                  (conflicts with --staging)
  --staging                       Use the sigstore project's staging
                                  instances, instead of the default production
                                  instances
  --oidc-disable-ambient-providers
                                  Disable ambient OIDC detection (e.g. on
                                  GitHub Actions)
  --output-signature FILE         With a value, write a single signature to
                                  the given file; without a value, write each
                                  signing result to {input}.sig
  --output-certificate FILE       With a value, write a single signing
                                  certificate to the given file; without a
                                  value, write each signing certificate to
                                  {input}.cert
  --fulcio-url URL                The Fulcio instance to use (conflicts with
                                  --staging)  [default:
                                  https://fulcio.sigstore.dev]
  --rekor-url URL                 The Rekor instance to use (conflicts with
                                  --staging)  [default:
                                  https://rekor.sigstore.dev]
  --help                          Show this message and exit.

Verifying:

Usage: sigstore verify [OPTIONS] FILE [FILE ...]

Options:
  --cert FILENAME       [required]
  --signature FILENAME  [required]
  --cert-email TEXT
  --staging             Use the sigstore project's staging instances, instead
                        of the default production instances
  --rekor-url URL       The Rekor instance to use (conflicts with --staging)
                        [default: https://rekor.sigstore.dev]
  --help                Show this message and exit.

Ambient credential detection

For environments that support OIDC natively, sigstore supports automatic ambient credential detection:

Licensing

sigstore is licensed under the Apache 2.0 License.

Contributing

See the contributing docs for details.

Code of Conduct

Everyone interacting with this project is expected to follow the sigstore Code of Conduct.

Security

Should you discover any security issues, please refer to sigstore's security process.

Info

sigstore-python is developed as part of the sigstore project.

We also use a slack channel! Click here for the invite link.

Project details


Release history Release notifications | RSS feed

This version

0.5.0

Download files

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

Source Distribution

sigstore-0.5.0.tar.gz (30.6 kB view details)

Uploaded Source

Built Distribution

sigstore-0.5.0-py3-none-any.whl (41.8 kB view details)

Uploaded Python 3

File details

Details for the file sigstore-0.5.0.tar.gz.

File metadata

  • Download URL: sigstore-0.5.0.tar.gz
  • Upload date:
  • Size: 30.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for sigstore-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1b5d45e6aea43c3b5b398e9f63f4087b76ff6a8766d2325555ae0931f41fe986
MD5 bad7c89dd148a7d1d9069b9e74d3d799
BLAKE2b-256 fff7aa9b032cd193f93595f8991372da091816b66a426937d390e8a068323f76

See more details on using hashes here.

Provenance

File details

Details for the file sigstore-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: sigstore-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 41.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for sigstore-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6f2e76ec5cd9d2fd37ae40c9101f5024425ccc8912b28310516c58f04dd24afb
MD5 cc0bd734bef2f6227784f19fa7959935
BLAKE2b-256 d08b06500d77cfc5169d3f9e3ba3d8524c614b8dc54a3a1d877434c66e50701f

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