Security boundary
Pickle and joblib can execute arbitrary code while loading. A valid checksum or HMAC does not make an untrusted serialized object safe; it only establishes that the object matches a manifest or was authenticated by a holder of the configured secret.
HMAC uses one shared secret for both signing and verification. A verifier with
the HMAC key can also forge manifests, so the key is not safe to publish or
give to verification-only third parties. modelstamp does not currently offer
asymmetric signatures such as Ed25519 or Sigstore.
- Load artifacts only from trusted producers.
- Keep HMAC keys outside source control, artifact storage, and public clients.
- Rotate keys using an authenticated
key_idand a verification registry. - Use
skops.ioor ONNX when their reduced execution surface fits the model. - Use
inspect(),check(), andverify()when deserialization is unnecessary.
Report suspected vulnerabilities privately according to the repository's security policy.