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.6.0.tar.gz (8.3 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.6.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aevum_publish-0.6.0.tar.gz
  • Upload date:
  • Size: 8.3 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.6.0.tar.gz
Algorithm Hash digest
SHA256 634485f73a3c22c6d9945028f41123be5c7be23c60e0b1f67b29d6baac640f52
MD5 45de746f92d7d8b181602b423c79b6b3
BLAKE2b-256 5e67b25108723d5b5dc4641847d42d145331291f2dfa0b55f69881b5ddfc11a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aevum_publish-0.6.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.6.0-py3-none-any.whl.

File metadata

  • Download URL: aevum_publish-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 6.9 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.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6e7659bb5dac88013ce1209846d60a150204631878e6594fb935823e0a1fe4f9
MD5 da48095c0ff06ea444eb13cb434d3604
BLAKE2b-256 9ffd4a05f20b76c1538870d1538703294c12687c302a03abf46165a46a9e41f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for aevum_publish-0.6.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