package x509

  1. Overview
  2. Docs

Module for encoding and decoding OCSP requests.

type t

type for Request

val pp : t Fmt.t

pp ppf request pretty prints request

val create : ?certs:Certificate.t list -> ?digest:Mirage_crypto.Hash.hash -> ?requestor_name:General_name.b -> ?key:Private_key.t -> cert_id list -> (t, [> `Msg of string ]) Stdlib.result

create ~certs ~digest ~requestor_name ~key certids creates request for given certids and, if key is provided, signs it using digest. requestorName may be used by responder to distinguish requesters. certs may be used by responder to check requestor authority.

val validate : t -> ?allowed_hashes:Mirage_crypto.Hash.hash list -> Public_key.t -> (unit, [> Validation.signature_error | `No_signature ]) Stdlib.result

validate request key validates the signature of request with the pulic key.

val requestor_name : t -> General_name.b option

requestor_name request is requestorName from this request

val cert_ids : t -> cert_id list

cert_ids request is cert ids from this request

val decode_der : Cstruct.t -> (t, Asn.error) Stdlib.result

decode_der buffer decodes request in buffer

val encode_der : t -> Cstruct.t

encode_der request encodes request into buffer