Module crypto

Source
Expand description

Traits and implementations for the QUIC cryptography protocol

The protocol logic in Quinn is contained in types that abstract over the actual cryptographic protocol used. This module contains the traits used for this abstraction layer as well as a single implementation of these traits that uses ring and rustls to implement the TLS protocol support.

Note that usage of any protocol (version) other than TLS 1.3 does not conform to any published versions of the specification, and will not be supported in QUIC v1.

Modules§

rustls
TLS interface based on rustls

Structs§

CryptoError
Generic crypto errors
ExportKeyingMaterialError
Error returned by Session::export_keying_material.
KeyPair
A pair of keys for bidirectional communication
Keys
A complete set of keys for a certain packet space
UnsupportedVersion
Error indicating that the specified QUIC version is not supported

Traits§

AeadKey
A key for sealing data with AEAD-based algorithms
ClientConfig
Client-side configuration for the crypto protocol
HandshakeTokenKey
A pseudo random key for HKDF
HeaderKey
Keys used to protect packet headers
HmacKey
A key for signing with HMAC-based algorithms
PacketKey
Keys used to protect packet payloads
ServerConfig
Server-side configuration for the crypto protocol
Session
A cryptographic session (commonly TLS)