pub enum CoordinatorKeySource<'a> {
Manifest(&'a Manifest),
UnverifiedAidDangerous,
}Expand description
How verify_session_bundle resolves the coordinator’s public key
(RFC-AITP-0010 §5 step 5).
Variants§
Manifest(&'a Manifest)
The coordinator’s Manifest, as fetched by the caller (for example
with aitp_transport_http::ManifestFetcher::fetch). The verifier
re-runs aitp_manifest::verify_manifest on it (RFC-AITP-0003 §5),
requires manifest.aid == bundle.coordinator, and resolves the key
from manifest.aid. The Manifest’s expires_at also caps every
embedded TCT’s exp (RFC-AITP-0005 §10.4), since the coordinator
is their issuer.
UnverifiedAidDangerous
Skip the Manifest step and derive the key from the
bundle.coordinator AID alone. Not RFC-AITP-0010 §5 step 5
conformant: nothing establishes that the coordinator publishes a
valid, unexpired Manifest. Only for callers that pin the
coordinator out of band and have no Manifest to hand (offline
verification, tests). The conformance adapter and the language
bindings never use it: they require the coordinator’s Manifest.