Expand description
Attestation types.
An attestation is a cryptographically signed document issued by a Notary who witnessed a TLS connection. It contains various fields which can be used to verify statements about the connection and the associated application data.
Attestations are comprised of two parts: a Header
and a Body
.
The header is the data structure which is signed by a Notary. It contains a unique identifier, the protocol version, and a Merkle root of the body fields.
The body contains the fields of the attestation. These fields include data which can be used to verify aspects of a TLS connection, such as the server’s identity, and facts about the transcript.
§Extensions
An attestation may be extended using Extension
fields included in the
body. Extensions (currently) have no canonical semantics, but may be used to
implement application specific functionality.
A Prover may append extensions to their attestation request, provided that the Notary supports them (disallowed by default). A Notary may also be configured to validate any extensions requested by a Prover using custom application logic. Additionally, a Notary may include their own extensions.
Structs§
- Attestation
- An attestation document.
- Attestation
Builder - An attestation builder.
- Attestation
Builder Error - Error for
AttestationBuilder
. - Attestation
Config - Attestation configuration.
- Attestation
Config Builder - Builder for
AttestationConfig
. - Attestation
Config Error - Error for
AttestationConfig
. - Attestation
Error - Error for
AttestationProof
. - Attestation
Proof - Proof of an attestation.
- Body
- Attestation body.
- Extension
- An attestation extension.
- Field
- Public attestation field.
- FieldId
- Identifier for a field.
- Header
- Attestation header.
- Invalid
Extension - Invalid extension error.
- Uid
- Unique identifier for an attestation.
- Version
- Version of an attestation.
Enums§
- Field
Kind - Kind of an attestation field.
Constants§
- VERSION
- Current version of attestations.