PeculiarVentures/PKI.js
PKI.js is a pure JavaScript library implementing the formats that are used in PKI applications (signing, encryption, certificate requests, OCSP and TSP requests/responses). It is built on WebCrypto (Web Cryptography API) and requires no plug-ins. observed · 2026-08-28
Health v2 · maintenance only
90/100
- Activity 97
- Release rhythm 75
- Longevity 100
Flags: no_license
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 6.0
- age_days: 4591
- days_rel: 168
- days_push: 19
- n_releases_24m: 5
Adoption not part of the score
1396 stars · 216 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
PKI.js is a pure TypeScript library implementing the common formats and protocols used in PKI applications, including X.509 certificates, PKCS#10 certificate requests, CMS signing/encryption, OCSP, CRLs, and RFC 3161 timestamping. It builds on the Web Crypto API rather than implementing its own cryptography, and works uniformly in browsers, Node.js, and Deno.
Use cases
- create and validate X.509 certificates in JavaScript
- generate and parse PKCS#10 certificate signing requests (CSRs)
- sign and encrypt data using CMS (PKCS#7)
- create and parse OCSP requests and responses
- create and validate certificate revocation lists (CRLs)
- apply RFC 3161 trusted timestamps to signatures
- parse PKCS#8 and PKCS#12 private key structures
- build a browser-based certificate enrollment application
When to choose
- you need to work with X.509 certificates, CSRs, CMS, OCSP, or CRLs in JavaScript or TypeScript
- you want a dependency-free PKI library that leverages the platform's Web Crypto implementation
- you need the same PKI code to run in both browsers and Node.js/Deno
- you need standards-compliant handling of specific PKI RFCs (5280, 5652, 2986, 3161, 6960)
When to avoid
- you need to implement the cryptographic primitives themselves rather than use Web Crypto
- your platform lacks a Web Crypto API implementation
- you need a full PKI management service (CA, certificate lifecycle) rather than a format-handling library
- you work in a non-JavaScript ecosystem
Facets
library · maturity stable
cryptography security serialization parser sdk security developer-tools web-development apis browser cross-platform pki x509 webcrypto cms pkcs7 pkcs10 ocsp crl timestamping asn1 certificate-management digital-signatures rfc3161 nodejs deno typescript
5 sources
- readme: https://github.com/PeculiarVentures/PKI.js · fetched 2026-08-28 · 807b0f69281d
- homepage: http://pkijs.org · fetched 2026-08-29 · ab0543f0fee9
- site_page: https://pkijs.org/docs/installation · fetched 2026-08-29 · 5f368cb9f348
- site_page: https://pkijs.org/docs/examples/certificates-and-revocation · fetched 2026-08-29 · 3d1999b98d1d
- site_page: https://pkijs.org/docs/api/pkijs · fetched 2026-08-29 · 9a4f658d322e
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| PeculiarVentures/PKI.js | main | 90 |
For agents
markdown · JSON · MCP: product_card(name="PeculiarVentures/PKI.js")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem