Skip to content

Conversation

sabrinajlee
Copy link

The cleaner is the replacement for the deprecated finalize() method for cleaning objects before garbage collection.

Each class that was previously using finalize() will have an anonymous function that cleans up the necessary resources. The number of cleaner threads can be set by a property with the default value being 2. The object and its anonymous function are registered to one of the cleaner threads in round robin order.

Signed-off by: Sabrina Lee [email protected]

@sabrinajlee sabrinajlee force-pushed the multicleaner-main branch 2 times, most recently from d817ad3 to db8dc3c Compare October 9, 2025 16:04
dev-koan and others added 3 commits October 14, 2025 09:46
This update adds support for both PBKDF2WithHmacSHA512/224 and
PBKDF2WithHmacSHA512/256 SecretKeyFactory algorithms. These algorithms
were only added to OpenJCEPlus and are not yet available in OpenJCEPlusFIPS.

Signed-off-by: Dev Agarwal <[email protected]>
A new checkstyle rule is added to enforce whitespace
after certain characters.

Code is updated to follow new checkstyle rule.

Additional typos are fixed.

Signed-off-by: Kostas Tsiounis <[email protected]>
The services `KEM` , `KeyFactory`, and `KeyPairGenerator` for `ML-KEM`
and `ML-DSA` algorithms appear to differ in a few ways compared to
`OpenJDK` providers. The following changes were made to align the
algorithms supported in OpenJCEPlus:
1. The `KeyFactory` alias names `ML-KEM` and `ML-DSA` have been
introduced. `ML-KEM` defaults to `ML_KEM_768` and `ML-DSA` defaults to
`ML_DSA_65`.
2. The `KeyPairGenerator` alias names `ML-KEM` and `ML-DSA` have been
introduced. `ML-KEM` defaults to `ML_KEM_768` and `ML-DSA` defaults to
`ML_DSA_65`.
3. The `Signature` alias `ML-DSA` was introduced. This alias defaults to
`ML_DSA_65`.
4. The `Signature` alias `ML-KEM` now uses `ML_KEM_768` as the default. Previously
this was set to `ML_KEM_512`.
5. Various PQC related algorithms now use alias names `OID.*` to
match OpenJDK.

Tests to exercise the above changes were also made accordingly. One
thing to note is that interop testing with bouncy castle failed since
BC castle provider had a different default value for ML-DSA alias name.
We choose to match OpenJDK providers instead of BC in this case.

Other updates made include:
1. References to the `ML-DSA-XX` set of algorithms were added to the
README in the `KeyPairGenerator` section.
2. The OpenJCEPlus provider string representation was updated to include
the `ML-KEM-XX` algorithms.

Fixes: IBM#839

Fixes: IBM#738

Signed-off-by: Jason Katonica <[email protected]>
The cleaner is the replacement for the deprecated finalize() method for
cleaning objects before garbage collection.

Each class that was previously using finalize() will have an anonymous
function that cleans up the necessary resources. The number of cleaner
threads can be set by a property with the default value being 2. The
object and its anonymous function are registered to one of the cleaner
threads in round robin order.

Signed-off by: Sabrina Lee <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants