Create, parse, and verify X.509 certificates, certificate requests, and CRLs in browsers and Node.js. @peculiar/x509 is written in TypeScript, signs and verifies with WebCrypto, and is built on @peculiar/asn1-schema.
Parse PEM, Base64, hex, or DER certificates and read the subject, issuer, validity, public key, and typed extensions, or print them all as text.
Create self-signed CA certificates or issue certificates from a CA, with Basic Constraints, Key Usage, Subject Alternative Name, and other extensions.
Generate PKCS#10 certificate signing requests, and verify and issue certificates from requests you receive.
Create and parse CRLs with revocation reasons, verify their signatures, and check whether a certificate is revoked.
Build a chain from a certificate up to its root, and read and write PKCS#7 files and PEM bundles.
RSA (PKCS#1 v1.5 and PSS), ECDSA, Ed25519, Ed448, ML-DSA, and SLH-DSA, with the platform's WebCrypto or any compatible implementation as the provider.