Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
OCSP.ResponseModule for encoding and decoding OCSP responses.
type for OCSPResponseStatus
type for CertStatus
val pp_cert_status : cert_status Fmt.tpp_cert_status ppf status pretty prints cert status
val create_single_response :
?next_update:Ptime.t ->
?single_extensions:Extension.t ->
cert_id ->
cert_status ->
Ptime.t ->
single_responsecreate_single_response ~next_update ~single_extension cert_id cert_status this_update creates response info for one cert, this_update should be current time.
val pp_single_response : single_response Fmt.tpp_single_response ppf response pretty prints single response
val single_response_cert_id : single_response -> cert_idsingle_response_cert_id response is cert_id in this single response
val single_response_status : single_response -> cert_statussingle_response_cert_id response is cert_status in this single response
type for ResponderID
val create_responder_id : Public_key.t -> responder_idcreate_responder_id pubkey creates responderID identified by this key. Note: Cstruct here contains SHA1 hash of public key, not itself.
val pp_responder_id : responder_id Fmt.tpp_responder_id ppf responderID pretty prints responderID
val create_success :
?digest:Mirage_crypto.Hash.hash ->
?certs:Certificate.t list ->
?response_extensions:Extension.t ->
Private_key.t ->
responder_id ->
Ptime.t ->
single_response list ->
(t, [> `Msg of string ]) resultcreate_success ~digest ~certs ~response_extensions priv_key responderID producedAt responses creates response and signs it with priv_key. producedAt should be current timestamp.
val create :
[ `MalformedRequest
| `InternalError
| `TryLater
| `SigRequired
| `Unauthorized ] ->
tcreate status creates error response. Successful status is not allowed here because it requires responseBytes.
val responder_id : t -> (responder_id, [> `Msg of string ]) resultresponder_id request is responder id from response
val responses : t -> (single_response list, [> `Msg of string ]) resultresponses response is a list of responses (status per certificate).
val validate :
t ->
?allowed_hashes:Mirage_crypto.Hash.hash list ->
?now:Ptime.t ->
Public_key.t ->
(unit, [> Validation.signature_error | `No_signature | `Time_invalid ])
resultvalidate response key validates the signature of response with the pulic key.