wolfCrypt JNI/JCE manual: sync content with current wolfcrypt-jni, fix table rendering - #276
wolfCrypt JNI/JCE manual: sync content with current wolfcrypt-jni, fix table rendering#276cconlon wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the wolfCrypt JNI/JCE English manual to reflect the current wolfcrypt-jni feature set (notably post-quantum algorithms, JPMS/jlink usage, and WKS KeyStore details) and adds an opt-in CSS tweak to prevent inline-code wrapping inside HTML tables.
Changes:
- Expanded algorithm and configuration documentation (ML-KEM/ML-DSA/SLH-DSA/XMSS/LMS, native wolfSSL configure options, and new usage notes).
- Added Java 9+ guidance (JPMS module info,
jlink, updated installation paths, ServiceLoader discovery, and custom native library loading). - Improved HTML rendering for inline code in tables via
common/table-code.cssand mkdocs configuration.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| wolfCrypt-JNI/src/chapter02.md | Documents additional native wolfSSL feature/configure requirements for PQ/hash-based algorithms. |
| wolfCrypt-JNI/src/chapter03.md | Updates Maven dependency version and adds JPMS/jlink guidance for Java 9+. |
| wolfCrypt-JNI/src/chapter04.md | Updates installation guidance for Java 9+ and documents ServiceLoader + custom native library loading property. |
| wolfCrypt-JNI/src/chapter05.md | Refreshes package/directory layout documentation. |
| wolfCrypt-JNI/src/chapter06.md | Expands supported algorithms/services list and adds ML-KEM notes + native-feature requirements section. |
| wolfCrypt-JNI/src/chapter08.md | Adds System/Security properties tables and hardened-environment provider guidance. |
| wolfCrypt-JNI/src/chapter09.md | Significantly expands WKS design, properties, KEK caching, and conversion guidance. |
| wolfCrypt-JNI/mkdocs.yml | Bumps copyright year and opts into the new table-code CSS. |
| common/table-code.css | Adds CSS to keep inline-code tokens unbroken inside tables (HTML rendering fix). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e92fa4b to
d9ebb98
Compare
| | Algorithm | Native wolfSSL configure option | Notes | | ||
| | --- | --- | --- | | ||
| | ML-KEM (FIPS 203) | `--enable-mlkem` | The `javax.crypto.KEM` service additionally requires running on JDK 21 or later | | ||
| | ML-DSA (FIPS 204) | `--enable-mldsa` | The older `--enable-dilithium` is an accepted alias. Also included by `--enable-all` | |
There was a problem hiding this comment.
ML-DSA was excluded by wolfSSL commit 08b5b65c2. --enable-all chains to --enable-all-crypto, which does not enable quantum-resistant asymmetric algos. --enable-all-quantum-crypto would enable ML-DSA
| char[] password = "your_password".toCharArray(); | ||
|
|
||
| /* Convert to WKS format, fail on insert errors */ | ||
| InputStream wksStream = WolfCryptUtil.convertKeyStoreToWKS(sourceStream, password, true); |
There was a problem hiding this comment.
Correctness: convertKeyStoreToWKS takes four arguments: stream, old pass, new pass, failOnInsertError.
|
|
||
| Java application code will typically create new KeyStore objects with code similar to the following, explicitly getting the a KeyStore instance of type “JKS”, or other KeyStore type: | ||
| Java application code will typically create new KeyStore objects with code | ||
| similar to the following, explicitly getting the a KeyStore instance of type |
| README_JCE.md wolfJCE README | ||
| build.xml ant build script | ||
| docs / Javadocs | ||
| docs / Javadocs and design documents |
There was a problem hiding this comment.
Delete space between docs and /
There was a problem hiding this comment.
Removed space, as well as extra space above on top-level directory
… JPMS, properties)
d9ebb98 to
88dc6bb
Compare
This PR updates the wolfCrypt JNI/JCE manual (English) to match the current state of wolfcrypt-jni, and fixes a table rendering issue in the HTML output.
jlinksectionjre/lib/extremoval), ServiceLoader discovery, custom native library loading (wolfssl.skipLibraryLoad)javax.crypto.KEMservice, new KeyPairGenerator/KeyFactory/SecretKeyFactory entries, RFC 9935 interop notesSecureRandom.getInstanceStrong()setup, filtered Sun providers for hardened/FIPS JREsWolfCryptUtil.convertKeyStoreToWKS()mkdocs.ymlRendering fix: Inline code in HTML tables (e.g.
--enable-slhdsain the Ch 2 configure-option table) wrapped mid-token. New opt-incommon/table-code.csskeeps code spans on one line (display: inline-blockis required for Safari/WebKit, which otherwise breaks nowrap spans during column sizing).