Skip to main content

Crate attested_request

Crate attested_request 

Source
Expand description

Sign and verify World App attested-key canonical requests.

A World App request is signed with a device key that the Attestation Gateway attested. The gateway’s JWT (Integrity-Token) carries that key as cnf.jwk; the app signs an RFC 9421 signature base covering the method, scheme, authority, path, query, body digest and the token itself. A verifier rebuilds the same base from the request it received and checks the signature with the attested key.

This crate implements the TFH RFC 9421 integrity request signing profile. It has no transport: verify::Verifier takes a request head and body, and sign produces the headers for a request. attested-request-tower adapts it to tower and axum.

Verification proves that an attested app on an attested device signed this exact request. It does not identify a user or authorize access to anything.

Re-exports§

pub use crate::profile::Component;
pub use crate::profile::Platform;
pub use crate::reject::RejectReason;
pub use crate::reject::Rejection;
pub use crate::verify::VerifiedAttestedKeyContext;
pub use crate::verify::Verifier;

Modules§

base
The RFC 9421 signature base both sides sign and verify.
device
The attested device key and its platform signature encodings.
profile
The fixed parts of the TFH RFC 9421 integrity request signing profile.
reject
Why a canonical request was refused.
replay
Optional server-side replay tracking.
sign
Signing canonical requests on the client.
signature
The Signature-Input and Signature structured fields.
token
Attestation Gateway integrity tokens: the JWT that binds a device key to an attested app.
verify
Verifying a canonical request end to end.