package tls-async

  1. Overview
  2. Docs

PKCS12 archive files

type t = X509.PKCS12.t

A PKCS12 encoded archive file,

val encode_der : t -> Cstruct.t

encode_der t is buf, the PKCS12 encoded archive of t.

val create : ?mac:[ `SHA1 | `SHA224 | `SHA256 | `SHA384 | `SHA512 ] -> ?algorithm:[ `AES128_CBC | `AES192_CBC | `AES256_CBC ] -> ?iterations:int -> string -> X509.Certificate.t list -> X509.Private_key.t -> t

create ~mac ~algorithm ~iterations password certificates private_key constructs a PKCS12 archive with certificates and private_key. They are encrypted with algorithm (using PBES2, PKCS5v2) and integrity protected using mac. A local key id is always embedded in the private key and matching certificate.

val decode_der : contents:string -> t Core.Or_error.t
val verify : string -> t -> [ `Certificate of Certificate.t | `Crl of CRL.t | `Decrypted_private_key of Private_key.t | `Private_key of Private_key.t ] list Core.Or_error.t