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.4.0.tar.gz (7.0 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.4.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aevum_publish-0.4.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for aevum_publish-0.4.0.tar.gz
Algorithm Hash digest
SHA256 77fc5b8cdc9d01dbc58233f6b660853e885f7270f786d40bf8c377a16f4ee8c8
MD5 ec206c3451ea4beca56971a36a0b547c
BLAKE2b-256 89db4629791fb680b94a78f1c5dba88024c620dab4dba3c4e8c6b2546f6de048

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aevum_publish-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for aevum_publish-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f6e03479c8029180574e7639d8b0a954b10fc6824e5faf8405d2e523bead8780
MD5 a7cfb116dc30d99e083602f721ed9578
BLAKE2b-256 e5aebc1d12795a459db8f4f5102ed163fd73dfc07e81afd571003101f41e62eb

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