Your keys are only as strong
as your weakest randomness.
Known weak-RNG libraries still generate keys in production dependency trees. Paste a lockfile — get an instant weak-entropy exposure report, evidence-signed and independently verifiable.
Free lockfile entropy check
What we catch that scanners miss
Weak key generation
CVE-2026-71851
crypto-js <4.0.0 WordArray.random() — fixed constants + Math.random() fed PRNG. 128-bit nominal, ~2³⁹ real search space. Keys generated this way must be rotated; upgrading does not heal them.
Predictable SM2 keys
CVE-2026-73567
sm-crypto <0.5.0 keygen on Node — Math.random() seeded pool. Affects blockchain account keys, CA and e-signature stacks.
Downstream reach
33.3k/wk
downloads of affected crypto-js 3.x still happening weekly (Oct 2026, npm). Old advisories ≠ old news: keys outlive upgrades.
On-chain SDK advisory board
Wallet / chain SDKs found using weak entropy in key paths during our Oct 2026 public-registry sweep (n=600 popularity-weighted, readonly static analysis). Direct funds-at-risk class — not a style issue.
| SDK | signal | monthly downloads | status |
|---|---|---|---|
@gemini-wallet/core | weak-RNG fingerprints | 2.7M | flagged — manual confirmation advised |
@toruslabs/solana-embed | weak-RNG fingerprints | 645k | flagged — manual confirmation advised |
@waves/ts-lib-crypto | weak-RNG fingerprints | 292k | flagged — manual confirmation advised |
@dynamic-labs-wallet/forward-mpc-client | weak-RNG fingerprints | 316k | flagged — manual confirmation advised |
Pre-screen fingerprints only (Math.random adjacency in crypto/key/token paths, fixed-constant LCG, time-seed tokens). Not a vulnerability claim — graded findings require the signed deep audit. Maintainers: mail wangguigui@correctover.com for a free re-check of your latest version.
The weak-entropy watchlist
Our Oct 2026 sweep: 600 popularity-weighted crypto/random/security packages scanned → 163 with weak-entropy fingerprints, 82 with ≥3 hits. Top of the list:
| package | version | monthly downloads | pattern hits |
|---|---|---|---|
node-forge | 1.4.0 | 150.3M | 12 |
d3-random | 3.0.1 | 84.0M | 3 |
uid | 2.0.2 | 52.7M | 6 |
@lukeed/uuid | 2.0.1 | 23.8M | 3 |
chance | 1.1.13 | 10.8M | 12 |
Full dataset (82 packages × version × traffic × hit counts, Ed25519-signed integrity receipt included) available for security teams and SBOM vendors. Methodology and counts carry their scope; the dataset itself is reproducible from public registry data.
Independent verification, per receipt
Bought or received a CCS audit receipt? Get an independent verification pass — server-side check of signature, fingerprint, evidence-hash chain and canonical form: ¥9.9 / receipt (fiat) or USDC on Base (x402). Fail-closed report, no infrastructure trust required.
The verification service verifies receipts issued under the Correctover Conformance Shape (individual Internet-Draft; not an RFC, not an IETF endorsement). Payment links are issued 1:1 in reply — no prices in cold mail, no auto-billing.
Every finding ships with a signed receipt
- Ed25519 (RFC 8032) signature over JCS (RFC 8785) canonical JSON — third-party verifiable, no trust in our infrastructure required
- Evidence integrity: per-package scan report SHA-256 anchored inside the receipt
- Fail-closed philosophy: machine version status, keygen/ephemeral hit counts, vendored detection — every claim carries its measurement scope
- Deep audit = 116-check manual methodology; automated pre-screen is 14 checks. We say which one produced each number.
Verify a receipt yourself
Received an audit receipt from us? Verify it offline with any RFC 8032 implementation. Reference one-liner:
| Step | Command |
|---|---|
| Canonical payload | jq -S 'del(.signature, .signed_payload)' receipt.json | jcs-canonicalize |
| Verify (Node.js) | crypto.verify(null, Buffer.from(r.signed_payload), createPublicKey(r.verification.public_key), Buffer.from(r.signature,'base64')) |
| Fingerprint match | sha256(SPKI DER) truncated to first 32 hex chars must equal verification.public_key_fingerprint |
Correctover's runtime-verification draft (draft-correctover-ccs) is an individual Internet-Draft submission, not an RFC and not an IETF endorsement. Independent reproduction is the point.