package noise

  1. Overview
  2. Docs
An OCaml implementation of the Noise Protocol Framework (rev 34)

Install

dune-project
 Dependency

Authors

Maintainers

Sources

noise-v0.2.0.tbz
sha256=3970103d44c960cd97a44f571079d0b04c170874a89f8fb1c9cd94ff912952db
sha512=fb5ffc7e3156532444556caf702d14180c94b08f12bd1b7db9febee4a16100868b73b31ff668f09bcfae5de04e973ecc1c4e83cf7630eaa4fd19afecebe5333b

doc/README.html

ocaml-noise

CI

ocaml-noise is an OCaml implementation of the Noise Protocol Framework, revision 34.

Supported algorithms

Component

Supported

DH

Curve25519 (X25519)

AEAD ciphers

AES-256-GCM, ChaCha20-Poly1305

Hashes

SHA-256, SHA-512, BLAKE2s, BLAKE2b

Patterns

all one-way (N, K, X), all 12 fundamental interactive, all 23 deferred

Modifiers

single pskN (e.g. NNpsk0, XXpsk3)

Testing

nix develop
dune runtest --force

Runs three tests:

  • test_vectors: 472 externally generated vectors from cacophony that cover each pattern * suite combination.
  • test_negative: tests for malformed protocol names, truncated/corrupted/replayed messages, prologue and PSK mismatches, oversized messages, and state-machine misuse.
  • test_roundtrip: full handshakes with freshly generated keys.