package x509

  1. Overview
  2. Docs
Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

x509-v0.15.1.tbz
sha256=b586dd46f0b55c1738d0c846509eb1b1e7a67d7b657c708e52c5e682f910deb8
sha512=6d836cfd96aee156b6793849fca2d14c25b8454a192f3fbc2ef0dcf6d0ff222358357b02cbf89d5dbd46b6e175b58032a201639405cd2dc6607417b36eb8c80b

Description

X.509 is a public key infrastructure used mostly on the Internet. It consists of certificates which include public keys and identifiers, signed by an authority. Authorities must be exchanged over a second channel to establish the trust relationship. This library implements most parts of RFC5280 and RFC6125. The Public Key Cryptography Standards (PKCS) defines encoding and decoding (in ASN.1 DER and PEM format), which is also implemented by this library - namely PKCS 1, PKCS 5, PKCS 7, PKCS 8, PKCS 9, PKCS 10, and PKCS 12.

Tags

org:mirage

Published: 27 Oct 2021

README

X.509 - Public Key Infrastructure purely in OCaml

v0.15.1 X.509 is a public key infrastructure used mostly on the Internet. It consists of certificates which include public keys and identifiers, signed by an authority. Authorities must be exchanged over a second channel to establish the trust relationship. This library implements most parts of RFC5280 and RFC6125. The Public Key Cryptography Standards (PKCS) defines encoding and decoding in ASN.1 DER and PEM format, which is also implemented by this library - namely PKCS 1, PKCS 7, PKCS 8, PKCS 9 and PKCS 10.

Read further and our Usenix Security 2015 paper.

Documentation

API documentation

Installation

opam install x509 will install this library.

Dependencies (16)

  1. ipaddr >= "5.2.0"
  2. pbkdf
  3. logs
  4. domain-name >= "0.3.0"
  5. gmap >= "0.3.0"
  6. fmt >= "0.8.7"
  7. mirage-crypto-rng < "1.0.0"
  8. mirage-crypto-ec >= "0.10.0" & < "1.0.0"
  9. mirage-crypto-pk < "1.0.0"
  10. mirage-crypto < "1.0.0"
  11. base64 >= "3.3.0"
  12. ptime
  13. asn1-combinators >= "0.2.0" & < "0.3.0"
  14. cstruct >= "6.0.0"
  15. dune >= "1.2"
  16. ocaml >= "4.08.0"

Dev Dependencies (3)

  1. cstruct-unix with-test & >= "3.0.0"
  2. alcotest with-test
  3. mirage-crypto-rng with-test & < "0.11.0"

Used by (29)

  1. albatross >= "1.1.1" & < "2.2.0"
  2. awa >= "0.0.2" & < "0.0.5"
  3. ca-certs >= "0.2.1" & < "1.0.0"
  4. ca-certs-nss >= "3.71.0.1" & < "3.101-1"
  5. capnp-rpc-net >= "1.1"
  6. caqti >= "2.1.1"
  7. castore >= "0.0.2"
  8. current_github >= "0.5"
  9. dkim >= "0.2.0" & < "0.7.0"
  10. dns-certify >= "4.4.0" & != "4.6.3" & < "7.0.0"
  11. dns-cli >= "4.4.0" & < "9.0.0"
  12. git-mirage >= "3.7.0" & < "3.10.0"
  13. irc-client-tls >= "0.7.0"
  14. jose < "0.5.0" | >= "0.6.0"
  15. letsencrypt >= "0.2.5" & < "1.0.0"
  16. letters
  17. paf = "0.0.3"
  18. paf-le >= "0.0.6"
  19. sendmail-lwt
  20. sendmail-miou-unix
  21. sendmail-mirage
  22. tls >= "0.15.0" & < "1.0.0"
  23. tls-async < "1.0.0"
  24. tls-eio < "1.0.0"
  25. tls-lwt < "1.0.0"
  26. tls-mirage < "0.12.6" | >= "0.13.0" & < "1.0.0"
  27. tlstunnel < "0.2.0"
  28. u2f >= "0.1.2"
  29. webauthn < "0.2.0"

Conflicts (1)

  1. result < "1.5"
OCaml

Innovation. Community. Security.