@peculiar/asn1-ess
Version:
ASN.1 schema based on Enhanced Security Services (ESS) for S/MIME (RFC 2634)
71 lines (70 loc) • 1.86 kB
TypeScript
import { AlgorithmIdentifier, CertificateSerialNumber, GeneralNames, PolicyInformation } from "@peculiar/asn1-x509";
import { Hash } from "./types";
/**
* ```asn1
* IssuerSerial ::= SEQUENCE {
* issuer GeneralNames,
* serialNumber CertificateSerialNumber
* }
* ```
*/
export declare class IssuerSerial {
issuer: GeneralNames;
serialNumber: CertificateSerialNumber;
constructor(params?: Partial<IssuerSerial>);
}
/**
* ```asn1
* ESSCertID ::= SEQUENCE {
* certHash Hash,
* issuerSerial IssuerSerial OPTIONAL
* }
* ```
*/
export declare class ESSCertID {
certHash: Hash;
issuerSerial?: IssuerSerial;
constructor(params?: Partial<ESSCertID>);
}
/**
* ```asn1
* SigningCertificate ::= SEQUENCE {
* certs SEQUENCE OF ESSCertID,
* policies SEQUENCE OF PolicyInformation OPTIONAL
* }
* ```
*/
export declare class SigningCertificate {
certs: ESSCertID[];
policies?: PolicyInformation[];
constructor(params?: Partial<SigningCertificate>);
}
/**
* ```asn1
* ESSCertIDv2 ::= SEQUENCE {
* hashAlgorithm AlgorithmIdentifier
* DEFAULT {algorithm id-sha256},
* certHash Hash,
* issuerSerial IssuerSerial OPTIONAL
* }
* ```
*/
export declare class ESSCertIDv2 {
hashAlgorithm?: AlgorithmIdentifier;
certHash: Hash;
issuerSerial?: IssuerSerial;
constructor(params?: Partial<ESSCertIDv2>);
}
/**
* ```asn1
* SigningCertificateV2 ::= SEQUENCE {
* certs SEQUENCE OF ESSCertIDv2,
* policies SEQUENCE OF PolicyInformation OPTIONAL
* }
* ```
*/
export declare class SigningCertificateV2 {
certs: ESSCertIDv2[];
policies?: PolicyInformation[];
constructor(params?: Partial<SigningCertificateV2>);
}