quantum-resistant-rustykey 0.6.2 → 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 +8 -11
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
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
|
|
5
|
+
## Implementation status: Pre-production (stable for testing)
|
|
6
6
|
|
|
7
|
-
-
|
|
7
|
+
- ***Recommendation***: Await v1.0.0 (following security audit) for production/regulated deployment.
|
|
8
|
+
- includes NIST approved as well as riskier NIST 'on-ramp' variants eg SQISign
|
|
8
9
|
- *signature algorithms (coming soon):*
|
|
9
10
|
- *FN-DSA (Falcon-512, Falcon-1024)*
|
|
10
11
|
- *ML-DSA (Dilithium variants)*
|
|
@@ -12,6 +13,11 @@ Fast, secure WebAssembly implementations of useful post-quantum-resistant tools
|
|
|
12
13
|
- module-lattice-based key-encapsulation mechanism
|
|
13
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**.
|
|
14
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
|
+
|
|
15
21
|
## Security assurance and verification
|
|
16
22
|
|
|
17
23
|
This project relies on upstream `mlkem-native` for arithmetic/security properties.
|
|
@@ -210,15 +216,6 @@ See `examples/browser-demo/README.md` for details.
|
|
|
210
216
|
|
|
211
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`.
|
|
212
218
|
|
|
213
|
-
## Publishing
|
|
214
|
-
|
|
215
|
-
The package is published from the npm package root (`dist/`). To publish a new version:
|
|
216
|
-
1. make a new branch locally from main
|
|
217
|
-
2. edit and test your changes
|
|
218
|
-
3. pnpm changeset
|
|
219
|
-
4. `pnpm lint && pnpm test && pnpm build`
|
|
220
|
-
5. merge to main; CI publishes when the version changed
|
|
221
|
-
|
|
222
219
|
## Security Considerations
|
|
223
220
|
|
|
224
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