travist/jsencrypt
A tiny (18.5 kB gzip), zero-dependency, Javascript library to perform OpenSSL RSA Encryption, Decryption, and Key Generation. observed · 2026-08-28
Health v2 · maintenance only
66/100
- Activity 76
- Release rhythm 35
- Longevity 100
Flags: no_releases 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: n/a
- age_days: 4947
- days_rel: n/a
- days_push: 147
- n_releases_24m: 0
Adoption not part of the score
6804 stars · 1995 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
JSEncrypt is a tiny, zero-dependency JavaScript library for OpenSSL-compatible RSA encryption, decryption, signing, and key generation. It works in both browsers and Node.js, supports PEM-formatted keys, and is built on Tom Wu's jsbn library.
Use cases
- encrypt data with rsa in javascript
- decrypt rsa encrypted messages in the browser
- generate rsa key pairs in javascript
- sign and verify data with rsa in node.js
- encrypt user credentials before sending to server
- validate jwt tokens with rsa public keys
- encrypt files before upload in the browser
- work with openssl pem keys in javascript
When to choose
- you need lightweight RSA encryption/decryption in the browser or Node.js with a small bundle size
- you must interoperate with OpenSSL-generated PEM keys
- you want a zero-dependency library with sync and async APIs
- you need RSA signing and verification for tokens or document integrity
When to avoid
- you need modern AEAD symmetric encryption like AES-GCM or ChaCha20
- you need full TLS/protocol-level security rather than application-level RSA
- you require production-grade in-JavaScript key generation (use OpenSSL instead)
- your environment supports the native Web Crypto API, which is faster and more auditable
Facets
library · maturity active
cryptography security sdk security web-development frontend developer-tools browser cross-platform rsa encryption openssl pem-keys zero-dependency digital-signatures key-generation javascript nodejs
9 sources
- readme: https://github.com/travist/jsencrypt · fetched 2026-08-28 · 7081398ae211
- homepage: http://travistidwell.com/jsencrypt · fetched 2026-08-29 · 332510201ce5
- site_page: http://travistidwell.com/jsencrypt/docs · fetched 2026-08-29 · 000469a19999
- site_page: http://travistidwell.com/jsencrypt/docs/getting-started · fetched 2026-08-29 · 5ee20e645d9f
- site_page: http://travistidwell.com/jsencrypt/docs/api · fetched 2026-08-29 · 3194bfdc1fb2
- site_page: http://travistidwell.com/jsencrypt/docs/examples · fetched 2026-08-29 · f81210411787
- site_page: http://travistidwell.com/jsencrypt/docs/key-management · fetched 2026-08-29 · 7a34e0df8480
- site_page: http://travistidwell.com/jsencrypt/docs/security · fetched 2026-08-29 · e9a3163def8c
- registry_npm: https://registry.npmjs.org/jsencrypt · fetched 2026-08-29 · c06886146963
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| travist/jsencrypt | main | 66 |
For agents
markdown · JSON · MCP: product_card(name="travist/jsencrypt")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem