quantum-resistant-rustykey 0.6.3 → 0.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -13
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Fast, secure WebAssembly implementations of useful post-quantum-resistant tools both for backend (node) and frontend web.
|
|
4
4
|
|
|
5
|
-
## Implementation status
|
|
6
|
-
|
|
7
|
-
- This package is in pre-production, functionally complete and stable for integration testing.
|
|
8
|
-
- We recommend waiting for the v1.0.0 release - which will follow our security audit - before deploying any variant for production, healthcare or government workloads.
|
|
5
|
+
## Implementation status: Pre-production (stable for testing)
|
|
9
6
|
|
|
7
|
+
- ***Recommendation***: Await v1.0.0 (following security audit) for production/regulated deployment.
|
|
10
8
|
- includes NIST approved as well as riskier NIST 'on-ramp' variants eg SQISign
|
|
11
9
|
- *signature algorithms (coming soon):*
|
|
12
10
|
- *FN-DSA (Falcon-512, Falcon-1024)*
|
|
@@ -15,6 +13,11 @@ Fast, secure WebAssembly implementations of useful post-quantum-resistant tools
|
|
|
15
13
|
- module-lattice-based key-encapsulation mechanism
|
|
16
14
|
- **ML-KEM-512**, **ML-KEM-768**, and **ML-KEM-1024** using the same stack: [mlkem-native](https://github.com/pq-code-package/mlkem-native) built with **Emscripten**.
|
|
17
15
|
|
|
16
|
+
## user-friendly live example testbed and playground
|
|
17
|
+
|
|
18
|
+
- live test environment (NEW!) where users can encrypt and descrypt, using all 3 varients of KEM and a test WebAuthn implementation so users can learn how signature algorithms are used to keep logins safe
|
|
19
|
+
- lattice-based key encapsulation mechanism: run tests to see if Montgomery constant tim runs are good enough for your use case. Suggest improvements, see how PQC works under the hood!
|
|
20
|
+
|
|
18
21
|
## Security assurance and verification
|
|
19
22
|
|
|
20
23
|
This project relies on upstream `mlkem-native` for arithmetic/security properties.
|
|
@@ -213,15 +216,6 @@ See `examples/browser-demo/README.md` for details.
|
|
|
213
216
|
|
|
214
217
|
ML-KEM logic comes from **mlkem-native** (C), compiled with **Emscripten** under `wasm/`, wrapped by TypeScript in `mlkem-src/`, then bundled into `src/vendor/mlkem*.js`.
|
|
215
218
|
|
|
216
|
-
## Publishing
|
|
217
|
-
|
|
218
|
-
The package is published from the npm package root (`dist/`). To publish a new version:
|
|
219
|
-
1. make a new branch locally from main
|
|
220
|
-
2. edit and test your changes
|
|
221
|
-
3. pnpm changeset
|
|
222
|
-
4. `pnpm lint && pnpm test && pnpm build`
|
|
223
|
-
5. merge to main; CI publishes when the version changed
|
|
224
|
-
|
|
225
219
|
## Security Considerations
|
|
226
220
|
|
|
227
221
|
This implementation includes patches to withstand side-channel attacks. For more information about the security improvements, see: [RaspberryPi recovers secret keys from NIST winner implementation...within minutes](https://kannwischer.eu/papers/2024_kyberslash_preprint20240628.pdf)
|
package/package.json
CHANGED