package tls

  1. Overview
  2. Docs
Transport Layer Security purely in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

tls-v0.12.0.tbz
sha256=a7586790a7d0b44b8b0844347c140f1b641728f3e47f4c566894e5e32b46c33b
sha512=37c4c97cafad6b51f1b8cbfc9b437680a643ea71c340b86a1930e89282d893f266886ffbedb8e239a66754328bc2575e96ffb4dae46ae9df018494f12a94f228

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 our Usenix Security 2015 paper.

Tags

org:mirage

Published: 13 May 2020

README

TLS - Transport Layer Security purely in OCaml

v0.12.0

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 (19)

  1. logs
  2. hkdf < "2.0.0"
  3. fiat-p256
  4. hacl_x25519
  5. ptime >= "0.8.1"
  6. lwt >= "3.0.0"
  7. fmt
  8. domain-name >= "0.3.0"
  9. x509 >= "0.11.0" & < "0.12.0"
  10. mirage-crypto-rng < "0.11.0"
  11. mirage-crypto-pk < "1.0.0"
  12. mirage-crypto < "0.8.1"
  13. sexplib
  14. cstruct-sexp
  15. cstruct >= "4.0.0" & < "6.0.0"
  16. ppx_cstruct >= "3.0.0"
  17. ppx_sexp_conv >= "v0.9.0"
  18. dune >= "1.0"
  19. ocaml >= "4.07.0" & < "4.12.0"

Dev Dependencies (3)

  1. alcotest with-test
  2. ounit with-test & >= "2.2.0"
  3. cstruct-unix with-test & >= "3.0.0"

Used by (47)

  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 < "2.1.2"
  9. colombe < "0.2.0"
  10. comby < "1.7.0"
  11. conduit-mirage >= "2.1.0" & != "3.0.0" & < "7.0.0"
  12. conduit-tls
  13. current_github < "0.6.4"
  14. current_slack < "0.6.4"
  15. datakit-ci >= "0.12.1"
  16. dkim-bin >= "0.6.0"
  17. dns-certify < "5.0.0"
  18. dns-resolver >= "6.0.0" & < "9.0.0"
  19. doi2bib
  20. dropbox >= "0.2"
  21. git >= "2.0.0" & < "3.0.0"
  22. git-mirage >= "2.0.0" & < "3.0.0" | >= "3.6.0" & < "3.17.0"
  23. git-unix = "2.0.0" | >= "2.1.1" & < "3.0.0"
  24. github >= "2.0.0" & < "3.0.0"
  25. github-unix < "3.1.0"
  26. gitlab-unix
  27. imaplet-lwt >= "0.1.8" & < "0.1.10" | >= "0.1.14"
  28. irc-client-tls < "0.7.1"
  29. letters < "0.3.3"
  30. links >= "0.9.6"
  31. mehari-mirage < "0.2"
  32. mirror
  33. octez-node < "16.0"
  34. opam-publish >= "0.3.5" & < "2.1.0"
  35. paf-cohttp = "0.0.5"
  36. quests
  37. sendmail >= "0.2.0" & < "0.4.1"
  38. sendmail-lwt < "0.4.1"
  39. sihl < "0.2.0" | >= "0.3.0~rc2"
  40. sihl-core
  41. slacko >= "0.13.0"
  42. syndic >= "1.5" & < "1.6.0"
  43. tezos-node != "9.0"
  44. tls-liquidsoap
  45. tls-mirage = "0.12.0"
  46. tlstunnel >= "0.1.3"
  47. wcs-api = "2017-05-26.02"

Conflicts

None

OCaml

Innovation. Community. Security.