OCSP.ResponseSourceModule for encoding and decoding OCSP responses.
type for OCSPResponseStatus
type for CertStatus
pp_cert_status ppf status pretty prints cert status
type for SingleResponse
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.
pp_single_response ppf response pretty prints single response
single_response_cert_id response is cert_id in this single response
single_response_cert_id response is cert_status in this single response
type for ResponderID
create_responder_id pubkey creates responderID identified by this key. Note: octets here contains SHA1 hash of public key, not itself.
pp_responder_id ppf responderID pretty prints responderID
type for OCSPResponse
val create_success :
?digest:Digestif.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.
responder_id request is responder id from response
responses response is a list of responses (status per certificate).
val validate :
t ->
?allowed_hashes:Digestif.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.