First GitHub release of the JavaScript libVES
Install: npm install libves
Browser: <script src="https://ves.host/pub/libVES.js"></script>
Post-quantum by default (3.1.0)
- New vault keys default to ML-KEM-768 (FIPS 203, via liboqs/wasm) instead
of ECDH P-521. Existing keys are unaffected — the algorithm travels with the
key, and ECDH remains fully supported (WebCrypto primary, wasm fallback).
Recovery: GF(256) Shamir (3.2.0)
- SSS1 — byte-wise Shamir secret sharing over GF(256) — is now the default
scheme for newly created recovery shares (up to 255 shares; integer-domain
RDX1.2is retained verbatim and still dispatched by wire tag, so existing
recovery shares keep working unchanged). - As with all VESrecovery schemes, shares gate a server-mediated, time-delayed
recovery: each share is stored encrypted to its contact's key (the repository
cannot read them), and contacts never receive the encrypted key material — so
neither the repository nor a colluding quorum of contacts can reconstruct
keys on its own.
Packaging (3.0.5 / 3.1.0)
- Relicensed under Apache-2.0.
- Self-contained Node bundle — OQS and ECDH wasm engines embedded
single-file;require('libves')needs no network and nodocument. - Lean browser bundle (~280 KB) — the OQS loader is inlined and fetches
its wasm fromves.host/pub; ECDH loads lazily (WebCrypto handles the
common case without wasm).
Fixes & misc
- 3.0.3: temp key creation fixed.
- 3.0.4: sharing with a section vault corrected.
- 3.2.0: attn processing errors are tracked on
VES.attnErrorsinstead of
being silently swallowed, ML-KEM key format interoperability. - CI, community health files, README badges.