Crate noise_protocol [] [src]

Rust implementation of the Noise Protocol Framework.

Typically, you use HandshakeState::new() or HandshakeStateBuilder to initialize a HandshakeState, then call write_message and read_message to complete the handshake. Once the handshake is completed, you call get_ciphers to get ciphers that you can use to encrypt/decrypt further messages.

This crate only contains an abstract implementation of the protocol. Concrete implementations of the crypo primitives, wrapping around some popular libraries, are provided in sibling crates, e.g., noise-ring, noise-sodiumoxide and noise-rust-crypto.

Modules

patterns

Handshake patterns.

Structs

CipherState

A CipherState can encrypt and decrypt data.

HandshakeState

Noise handshake state.

HandshakeStateBuilder

Builder for HandshakeState.

Enums

NoiseError

Noise error type.

Traits

Cipher

An AEAD.

DH

A DH.

Hash

A hash function.

U8Array

A trait for fixed size u8 array.