package tls

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

Install

Dune Dependency

Authors

Maintainers

Sources

tls-0.17.1.tbz
sha256=8010d2b6de148da2286928181d233bd720fa60fa157b3d4250bca0dd008c5d3f
sha512=1cef22fc37b3138d1676f5a2d3000835167fb75dad07cec5e851e19c3af3250a30392a49e279e5b1f3119de29383723fb76f2bd830820b45861053047c85da1a

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: 05 Jul 2023

README

TLS - Transport Layer Security purely in OCaml

v0.17.1

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.

You can also build this locally by conducting the steps:

opam install --deps-only -t . # or a named package instead of `.` - i.e. ./tls-lwt.opam
dune build --profile=release # you can also put a package list here, i.e. tls,tls-lwt -- you can also use `@all` target to compile examples as well

Dependencies (13)

  1. ipaddr
  2. logs
  3. hkdf < "2.0.0"
  4. fmt >= "0.8.7"
  5. domain-name >= "0.3.0"
  6. x509 >= "0.15.0"
  7. mirage-crypto-rng >= "0.8.0" & < "1.0.0"
  8. mirage-crypto-pk < "1.0.0"
  9. mirage-crypto-ec >= "0.10.0" & < "1.0.0"
  10. mirage-crypto >= "0.11.0" & < "1.0.0"
  11. cstruct >= "6.0.0"
  12. dune >= "3.0"
  13. ocaml >= "4.08.0"

Dev Dependencies (4)

  1. randomconv with-test & < "0.2.0"
  2. alcotest with-test
  3. ounit2 with-test & >= "2.2.0"
  4. cstruct-unix with-test & >= "3.0.0"

Used by (53)

  1. albatross >= "1.5.6"
  2. aws-s3-lwt < "3.0.0"
  3. azure-cosmos-db >= "0.1.5" & < "0.2.0"
  4. calculon < "0.5"
  5. capnp-rpc-lwt >= "0.3.1" & < "0.5.0"
  6. capnp-rpc-net < "1.1" | >= "1.2.1"
  7. caqti >= "2.1.1"
  8. caqti-mirage >= "2.1.1"
  9. caqti-tls
  10. comby < "1.7.0"
  11. conduit-mirage = "2.2.0" | >= "4.0.2"
  12. current_github < "0.6.4"
  13. current_slack < "0.6.4"
  14. datakit-ci >= "0.12.1"
  15. dkim-bin >= "0.6.0"
  16. dns-certify < "4.4.0"
  17. dns-resolver >= "6.0.0"
  18. doculib < "1.3.5"
  19. dropbox >= "0.2"
  20. git >= "2.0.0" & < "3.0.0"
  21. git-mirage >= "2.0.0" & < "3.0.0" | >= "3.6.0"
  22. git-paf >= "3.5.0"
  23. git-unix = "2.0.0" | >= "2.1.1" & < "3.0.0" | >= "3.5.0"
  24. github >= "2.0.0" & < "3.0.0"
  25. github-unix < "3.1.0"
  26. gitlab-unix
  27. http-lwt-client >= "0.2.2"
  28. imaplet-lwt >= "0.1.8" & < "0.1.10" | >= "0.1.14"
  29. irc-client-tls < "0.7.0"
  30. ldp_tls
  31. letters >= "0.3.3"
  32. links >= "0.9.6"
  33. mehari >= "0.3"
  34. mehari-eio
  35. mirror
  36. octez-node < "16.0"
  37. opam-publish >= "0.3.5" & < "2.1.0"
  38. paf = "0.0.2" | >= "0.0.6" & < "0.6.0"
  39. quests
  40. sendmail >= "0.4.1" & < "0.8.1"
  41. sendmail-lwt >= "0.8.0"
  42. sihl < "0.1.6" | >= "0.3.0~rc2"
  43. sihl-core
  44. slacko >= "0.13.0"
  45. syndic >= "1.5" & < "1.6.0"
  46. tezos-node != "9.0"
  47. tls-async = "0.17.1"
  48. tls-eio >= "0.17.1" & < "0.17.3"
  49. tls-liquidsoap
  50. tls-lwt = "0.17.1"
  51. tls-mirage = "0.17.1"
  52. tlstunnel >= "0.1.3"
  53. wcs-api = "2017-05-26.02"

Conflicts (1)

  1. result < "1.5"
OCaml

Innovation. Community. Security.