Skip to main content

Aevum — Sigstore Rekor v2 transparency log complication.

Project description

aevum-publish

Sigstore Rekor v2 transparency log complication for Aevum.

Submits periodic chain checkpoints to an external transparency log, enabling adversarial-resistant verification: even if an operator is compromised, they cannot silently replace the chain without the external witness detecting the discrepancy.

pip install aevum-publish[rekor]
from aevum.core import Engine
from aevum.publish import PublishComplication

engine = Engine()
comp = PublishComplication(
    rekor_url="https://rekor.sigstore.dev",  # or private Rekor
    every_n_events=100,                      # checkpoint every 100 events
    every_seconds=300,                       # or every 5 minutes
)
engine.install_complication(comp)
engine.approve_complication("aevum-publish")
comp.on_approved(engine)  # must be called explicitly
# Chain now contains signed transparency.checkpoint events with Rekor inclusion proofs

Checkpoint format

Each checkpoint is a SHA-256 digest of:

{"prior_hash": "...", "sequence": 42, "signer_key_id": "...", "system_time": ...}

Submitted to Rekor as a hashedrekord entry. The Rekor log index and inclusion proof are stored in the local sigchain as a transparency.checkpoint AuditEvent, so the chain self-documents its verification history.

Private Rekor

For confidential deployments where checkpoint hashes must not be public:

comp = PublishComplication(rekor_url="https://your-private-rekor.example.com")

Without Rekor

If httpx is not installed or the Rekor endpoint is unreachable, the complication logs a warning and continues. The Engine write path is never blocked.

Environment variables

Variable Default Description
AEVUM_PUBLISH_EVERY_N_EVENTS 100 Submit checkpoint after N events
AEVUM_PUBLISH_EVERY_SECONDS 300 Submit checkpoint after N seconds

See also

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

aevum_publish-0.5.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

aevum_publish-0.5.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aevum_publish-0.5.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for aevum_publish-0.5.0.tar.gz
Algorithm Hash digest
SHA256 7c9d2591a2b64311b74058ccd2b9486808188f29dc6ea73b327f37ecc876894b
MD5 ebbd6ea80c968e480e9856961f058029
BLAKE2b-256 a003bb570e5a36e23d7d5b6b23acf1d73058a7792dff90436c5e3be7efd23c1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for aevum_publish-0.5.0.tar.gz:

Publisher: release.yml on aevum-labs/aevum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: aevum_publish-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for aevum_publish-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 25bd033e8f1b394bdd242d9a740dccaeac7c12a943f31fa5a0dd537b4ccac8dd
MD5 46415abdcdc565070e9a81fdf2fe6db8
BLAKE2b-256 483efa5f692934f38abd04dec7111a01a3b56c05537a05f656ccf8644195af54

See more details on using hashes here.

Provenance

The following attestation bundles were made for aevum_publish-0.5.0-py3-none-any.whl:

Publisher: release.yml on aevum-labs/aevum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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