Crate mesalink[][src]

Expand description

Mesalink is a OpenSSL-compatible TLS library written in Rust, a programming language that guaranteed memory safety and thread safety.

Feature highlights

  • Memory safety. MesaLink and its dependencies are written in Rust, a programming language that guarantees memory safety. This extremely reduces attack surfaces of an TLS stack exposed in the wild, leaving the remaining attack surfaces auditable and restricted.
  • Flexibility. MesaLink offers flexible configurations tailored to various needs, for example IoT, connected home, automobiles, the cloud and more.
  • Simplicity. MesaLink does not support obselete or legacy TLS features, in case that misconfigurations introduce vulnerabilities.
  • Compatibility. MesaLink provides OpenSSL-compatible APIs. This makes it a breeze to port an existing OpenSSL project.
  • Future proof. MesaLink will support quantum-safe ciphersuites, safe-guarding TLS connections against even quantum computers.

MesaLink depends on two Rust crates: rustls and sct. With them, MesaLink provides the following features that are considered secure for most use cases:

  • TLS 1.2 and TLS 1.3 draft 23
  • ECDSA or RSA server authentication
  • Forced hostname validation
  • Forward secrecy using ECDHE; with curve25519, nistp256 or nistp384 curves.
  • Safe and fast crypto primitives from BoringSSL
  • AES-128-GCM, AES-256-GCM and Chacha20-Poly1305 bulk encryption
  • Built-in Mozilla’s CA root certificates

Modules

The crypo module is the counterpart of the OpenSSL crypto library.

The ssl module is the counterpart of the OpenSSL ssl library.