Skip to main content

BasicOCSPResponse

Represents the BasicOCSPResponse structure described in RFC6960

Extends​

Implements​

Constructors​

Constructor​

new BasicOCSPResponse(parameters?): BasicOCSPResponse

Initializes a new instance of the BasicOCSPResponse class

Parameters​

parameters?​

BasicOCSPResponseParameters = {}

Initialization parameters

Returns​

BasicOCSPResponse

Overrides​

PkiObject.constructor

Properties​

certs?​

optional certs?: Certificate[]

Implementation of​

IBasicOCSPResponse.certs


signature​

signature: BitString

Implementation of​

IBasicOCSPResponse.signature


signatureAlgorithm​

signatureAlgorithm: AlgorithmIdentifier

Implementation of​

IBasicOCSPResponse.signatureAlgorithm


tbsResponseData​

tbsResponseData: ResponseData

Implementation of​

IBasicOCSPResponse.tbsResponseData


CLASS_NAME​

static CLASS_NAME: string = "BasicOCSPResponse"

Name of the class

Overrides​

PkiObject.CLASS_NAME

Accessors​

className​

Get Signature​

get className(): string

Returns​

string

Inherited from​

PkiObject.className

Methods​

fromSchema()​

fromSchema(schema): void

Converts parsed ASN.1 object into current class

Parameters​

schema​

any

ASN.1 schema

Returns​

void

Overrides​

PkiObject.fromSchema


getCertificateStatus()​

getCertificateStatus(certificate, issuerCertificate, crypto?): Promise<CertificateStatus>

Get OCSP response status for specific certificate.

Important: this method only inspects the SingleResponse entries in the response — it does not authenticate the responder. A successful call MUST NOT be relied upon unless verify() has already returned true for this response (under suitable trust parameters). Without verification, an attacker-supplied response can claim any status.

Parameters​

certificate​

Certificate

Certificate to be checked

issuerCertificate​

Certificate

Certificate of issuer for certificate to be checked

crypto?​

ICryptoEngine = ...

Crypto engine

Returns​

Promise<CertificateStatus>


sign()​

sign(privateKey, hashAlgorithm?, crypto?): Promise<void>

Make signature for current OCSP Basic Response

Parameters​

privateKey​

CryptoKey

Private key for "subjectPublicKeyInfo" structure

hashAlgorithm?​

string = "SHA-1"

Hashing algorithm. Default SHA-1

crypto?​

ICryptoEngine = ...

Crypto engine

Returns​

Promise<void>


toJSON()​

toJSON(): BasicOCSPResponseJson

Converts the class to JSON object

Returns​

BasicOCSPResponseJson

JSON object

Overrides​

PkiObject.toJSON


toSchema()​

toSchema(): Sequence

Converts current object to ASN.1 object and sets correct values

Returns​

Sequence

ASN.1 object

Overrides​

PkiObject.toSchema


toString()​

toString(encoding?): string

Parameters​

encoding?​

"hex" | "base64" | "base64url"

Returns​

string

Inherited from​

PkiObject.toString


verify()​

verify(params?, crypto?): Promise<boolean>

Verify the OCSP Basic Response (RFC 6960).

For every candidate matching the ResponderID, three checks are performed in order:

  1. Cryptographic signature verification against the candidate's public key.
  2. Chain validation against trustedCerts (skipped for trustedResponders).
  3. Authorization per RFC 6960 §4.2.2.2: direct issuer, delegated responder with id-kp-OCSPSigning, or explicit trustedResponders entry.

Parameters​

params?​

BasicOCSPResponseVerifyParams = {}

crypto?​

ICryptoEngine = ...

Returns​

Promise<boolean>

true if a candidate passes all checks. Returns false on cryptographic signature mismatch. Throws on hard errors (chain failure, unauthorized responder, unsupported algorithm).


blockName()​

static blockName(): string

Returns block name

Returns​

string

Returns string block name

Inherited from​

PkiObject.blockName


compareWithDefault()​

static compareWithDefault(memberName, memberValue): boolean

Compare values with default values for all class members

Parameters​

memberName​

string

String name for a class member

memberValue​

any

Value to compare with default value

Returns​

boolean


defaultValues()​

Call Signature​

static defaultValues(memberName): ResponseData

Returns default values for all class members

Parameters​
memberName​

"tbsResponseData"

String name for a class member

Returns​

ResponseData

Default value

Overrides​

PkiObject.defaultValues

Call Signature​

static defaultValues(memberName): AlgorithmIdentifier

Returns default values for all class members

Parameters​
memberName​

"signatureAlgorithm"

String name for a class member

Returns​

AlgorithmIdentifier

Default value

Overrides​

PkiObject.defaultValues

Call Signature​

static defaultValues(memberName): BitString

Returns default values for all class members

Parameters​
memberName​

"signature"

String name for a class member

Returns​

BitString

Default value

Overrides​

PkiObject.defaultValues

Call Signature​

static defaultValues(memberName): Certificate[]

Returns default values for all class members

Parameters​
memberName​

"certs"

String name for a class member

Returns​

Certificate[]

Default value

Overrides​

PkiObject.defaultValues


fromBER()​

static fromBER<T>(this, raw): T

Creates PKI object from the raw data

Type Parameters​

T​

T extends PkiObject

Parameters​

this​

PkiObjectConstructor<T>

raw​

BufferSource

ASN.1 encoded raw data

Returns​

T

Initialized and filled current class object

Inherited from​

PkiObject.fromBER


schema()​

static schema(parameters?): any

Returns value of pre-defined ASN.1 schema for current class

Parameters​

parameters?​

SchemaParameters<{ certs?: CertificateSchema; signature?: string; signatureAlgorithm?: AlgorithmIdentifierSchema; tbsResponseData?: ResponseDataSchema; }> = {}

Input parameters for the schema

Returns​

any

ASN.1 schema object

Overrides​

PkiObject.schema