quantum-resistant-rustykey 0.6.3 → 0.6.5
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 +17 -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)
|
|
@@ -248,3 +242,13 @@ This project was generously supported by:
|
|
|
248
242
|
<img src="./logo-rustykey.png" width="60" alt="RustyKey Logo" />
|
|
249
243
|
<img src="./logo-buzzybee.ai.png" width="60" alt="BuzzyBee Logo" />
|
|
250
244
|
</div>
|
|
245
|
+
|
|
246
|
+
## How we work (aka Conduct)
|
|
247
|
+
**"You are very welcome to our house: It must appear in other ways than words!" - W. Shakespeare**
|
|
248
|
+
- do you think of yourself as total n00b...or seasoned and cynical Cryptologic Scientist. WELCOME one and all!
|
|
249
|
+
- consider helping us build a friendly, safe and welcoming environment for all, regardless of level of experience, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, nationality, or other similar characteristic.
|
|
250
|
+
- please avoid aliases or nicknames that might detract from a friendly, safe and welcoming environment.
|
|
251
|
+
- getting annoyed? First try being kind and courteous: someone may simply have had a bad day.
|
|
252
|
+
- people have differences of opinion, usually every design or implementation choice carries a trade-off and numerous costs. There is seldom a right answer.
|
|
253
|
+
- go light on unstructured critique, encourage others!
|
|
254
|
+
- if you feel you have been or are being harassed or made uncomfortable by a community member, contact BuzzyBee our friendly multi-LLM on the chat widget on our testbed site
|
package/package.json
CHANGED