Crate quinn_hyphae

Crate quinn_hyphae 

Source
Expand description

§Hyphae Handshake (Noise Handshakes for QUIC)

Hyphae secures QUIC with Noise instead of TLS.

Unlike other Noise handshake proposals for QUIC, Hyphae supports all Noise handshake patterns (not just IK). Hyphae supports custom Noise payloads.

§Features:

  • Secure QUIC connections with a Noise handshake instead of TLS
  • Use any handshake pattern, AEAD, and hash algorithm (not just IK)
  • Quinn support in the quinn-hyphae crate
  • Customizable:
    • Applications have complete control of the Noise handshake
    • Pluggable cryptographic and Noise backends (with built-in support for Rust Crypto)
  • Optional key-logging for diagnostics
  • QUIC header protection and initial packet space obfuscation

§Examples

See the README for more info and examples.

Re-exports§

pub use builder::HandshakeBuilder;
pub use customization::HyphaePeerIdentity;

Modules§

buffer
Buffer trait used by Hyphae’s handshake customization traits.
builder
Builder to set up typical Hyphae handshake flows.
config
Implementation of quinn::crypto::ClientConfig and ServerConfig for Hyphae HandshakeConfig.
crypto
Re-exported types from hyphae_handshake::crypto.
customization
Traits for full customization of Hyphae’s handshake flow.
helper
Helper functions to create Quinn Endpoints with Hyphae’s QUIC version number configured.
tokenkeys
Adapters from a Hyphae CryptoBackend to Quinn’s reset and retry token generation traits.

Structs§

RustCryptoBackend

Enums§

Error

Constants§

HYPHAE_H_V1_QUIC_V1_VERSION
QUIC version number for QUIC version 1 (RFC 9000) connections secured with the Hyphae version 1 handshake.