How sigstore/model-transparency works
Model Transparency is a Python library and CLI for producing and verifying model-integrity signatures. The main workflow hashes model files (or shards) into a manifest, encodes that manifest as a signed payload, and writes a Sigstore bundle; verification checks the signature and recomputes hashes. The README also documents key, certificate, PKCS#11, timestamp-authority, and private Sigstore trust-config options. Edges reflect README statements and source-index references; some lower-level dispatch details were not excerpted, so uncertain wiring is omitted.
Main entry points: signing.py Signing config · verifying.py Verification config · hashing.py Hash config · sign_ec_key.py EC key signer
Components 25
User Interface
- CLI commands
src/model_signing/_cli.py - Public API
src/model_signing/__init__.py
Hashing and Manifest
- Hash config
src/model_signing/hashing.py - File serializer
src/model_signing/_serialization/file.py - Shard serializer
src/model_signing/_serialization/file_shard.py - File hashing
src/model_signing/_hashing/io.py - Hash engines
src/model_signing/_hashing/hashing.py - Memory digests
src/model_signing/_hashing/memory.py - Model manifest
src/model_signing/manifest.py
Signing and Formats
- Signing config
src/model_signing/signing.py - DSSE payload
src/model_signing/_signing/signing.py - Sigstore signer
src/model_signing/_signing/sign_sigstore.py - EC key signer
src/model_signing/_signing/sign_ec_key.py - Certificate signer
src/model_signing/_signing/sign_certificate.py - PKCS11 signer
src/model_signing/_signing/sign_pkcs11.py - Bundle and timestamps
src/model_signing/_signing/sign_sigstore_pb.py
Verification
- Verification config
src/model_signing/verifying.py - Sigstore verifier
src/model_signing/_signing/sign_sigstore.py - EC key verifier
src/model_signing/_signing/sign_ec_key.py - Certificate verifier
src/model_signing/_signing/sign_certificate.py
Other components
- Model user
- Model files
- Signature bundle
- Sigstore services
- Timestamp authority
Connections 34
- Model user → CLI commands: invokes
README.md - Model user → Public API: calls
README.md - CLI commands → Public API: dispatches
src/model_signing/_cli.py - Public API → Signing config: configures
src/model_signing/__init__.py - Model files → Hash config: hashes
README.md - Hash config → File serializer: selects
src/model_signing/hashing.py - Hash config → Shard serializer: selects
src/model_signing/hashing.py - File serializer → File hashing: uses
src/model_signing/_serialization/file.py - Shard serializer → File hashing: uses
src/model_signing/_serialization/file_shard.py - File hashing → Hash engines: computes with
src/model_signing/_hashing/io.py - File serializer → Model manifest: builds items
src/model_signing/_serialization/file.py - Shard serializer → Model manifest: builds items
src/model_signing/_serialization/file_shard.py - Signing config → Hash config: hashes model
src/model_signing/signing.py - Signing config → DSSE payload: creates payload
src/model_signing/signing.py - DSSE payload → Model manifest: encodes
src/model_signing/_signing/signing.py - Signing config → Sigstore signer: dispatches to
src/model_signing/signing.py - Signing config → EC key signer: dispatches to
src/model_signing/signing.py - Signing config → Certificate signer: dispatches to
src/model_signing/signing.py - Signing config → PKCS11 signer: dispatches to
src/model_signing/signing.py - Sigstore signer → Sigstore services: signs with
README.md - EC key signer → Bundle and timestamps: uses
src/model_signing/_signing/sign_ec_key.py - Certificate signer → EC key signer: reuses
src/model_signing/_signing/sign_certificate.py - EC key signer → Timestamp authority: requests timestamp
- Signing config → Signature bundle: writes
README.md - Model user → Verification config: requests verification
README.md - Signature bundle → Verification config: reads
README.md - Verification config → Hash config: recomputes hashes
README.md - Verification config → Model manifest: compares manifest
src/model_signing/verifying.py - Verification config → Sigstore verifier: dispatches to
src/model_signing/verifying.py - Verification config → EC key verifier: dispatches to
src/model_signing/verifying.py - Verification config → Certificate verifier: dispatches to
src/model_signing/verifying.py - Sigstore verifier → Sigstore services: checks transparency
README.md - EC key verifier → Bundle and timestamps: checks timestamp
src/model_signing/_signing/sign_ec_key.py - Certificate verifier → Bundle and timestamps: checks timestamp
src/model_signing/_signing/sign_certificate.py