package tls

  1. Overview
  2. Docs

Description

Transport Layer Security (TLS) is probably the most widely deployed security protocol on the Internet. It provides communication privacy to prevent eavesdropping, tampering, and message forgery. Furthermore, it optionally provides authentication of the involved endpoints. TLS is commonly deployed for securing web services (HTTPS), emails, virtual private networks, and wireless networks.

TLS uses asymmetric cryptography to exchange a symmetric key, and optionally authenticate (using X.509) either or both endpoints. It provides algorithmic agility, which means that the key exchange method, symmetric encryption algorithm, and hash algorithm are negotiated.

Read further and our Usenix Security 2015 paper.

Tags

org:mirage

Published: 01 Nov 2019

README

TLS - Transport Layer Security purely in OCaml

v0.10.5 Transport Layer Security (TLS) is probably the most widely deployed security protocol on the Internet. It provides communication privacy to prevent eavesdropping, tampering, and message forgery. Furthermore, it optionally provides authentication of the involved endpoints. TLS is commonly deployed for securing web services (HTTPS), emails, virtual private networks, and wireless networks.

TLS uses asymmetric cryptography to exchange a symmetric key, and optionally authenticate (using X.509) either or both endpoints. It provides algorithmic agility, which means that the key exchange method, symmetric encryption algorithm, and hash algorithm are negotiated.

Read further and our Usenix Security 2015 paper.

Documentation

API documentation

Installation

opam install tls will install this library.

Dependencies (15)

  1. lwt >= "2.4.8"
  2. fmt
  3. domain-name >= "0.3.0"
  4. x509 >= "0.7.0" & < "0.9.0"
  5. nocrypto >= "0.5.4"
  6. sexplib
  7. cstruct-sexp
  8. cstruct >= "4.0.0" & < "6.0.0"
  9. ppx_cstruct >= "3.0.0"
  10. ppx_deriving
  11. ppx_sexp_conv
  12. topkg build
  13. ocamlbuild build
  14. ocamlfind build
  15. ocaml >= "4.04.2" & < "4.12.0"

Dev Dependencies (3)

  1. lwt with-test & < "5.0.0"
  2. ounit with-test
  3. cstruct-unix with-test & >= "3.0.0"

Used by (42)

  1. aws-s3-lwt < "3.0.0"
  2. azure-cosmos-db >= "0.1.5" & < "0.2.0"
  3. calculon < "0.5"
  4. capnp-rpc-lwt >= "0.3.1" & < "0.5.0"
  5. capnp-rpc-net < "1.1"
  6. caqti >= "2.1.1"
  7. caqti-mirage >= "2.1.1"
  8. caqti-tls
  9. colombe < "0.2.0"
  10. comby < "1.7.0"
  11. conduit-mirage < "2.1.0"
  12. conduit-tls
  13. current_github < "0.2"
  14. current_slack < "0.3"
  15. datakit-ci >= "0.12.1"
  16. dns-certify < "4.4.0"
  17. dns-resolver >= "6.0.0"
  18. dropbox >= "0.2"
  19. git >= "2.0.0" & < "3.0.0"
  20. git-mirage >= "2.0.0" & < "3.0.0" | >= "3.6.0"
  21. git-unix = "2.0.0" | >= "2.1.1" & < "3.0.0"
  22. github >= "2.0.0" & < "3.0.0"
  23. github-unix < "3.1.0"
  24. imaplet-lwt >= "0.1.8" & < "0.1.10" | >= "0.1.14"
  25. irc-client-tls < "0.7.1"
  26. letters < "0.3.3"
  27. links >= "0.9.6"
  28. mehari-mirage < "0.2"
  29. mirage-conduit != "2.0.0" & < "2.2.0" | >= "3.0.0"
  30. mirror
  31. octez-node < "16.0"
  32. opam-publish >= "0.3.5" & < "2.1.0"
  33. paf-cohttp = "0.0.5"
  34. quests
  35. sendmail >= "0.2.0" & < "0.4.1"
  36. sendmail-lwt < "0.4.1"
  37. slacko >= "0.13.0"
  38. syndic >= "1.5" & < "1.6.0"
  39. tezos-node
  40. tls-liquidsoap
  41. tlstunnel >= "0.1.3"
  42. wcs-api = "2017-05-26.02"

Conflicts (6)

  1. ptime < "0.8.1"
  2. ppx_sexp_conv = "v0.11.0"
  3. sexplib = "v0.9.0"
  4. mirage-clock < "3.0.0"
  5. mirage-flow < "2.0.0"
  6. mirage-kv < "3.0.0"
OCaml

Innovation. Community. Security.