RFR: 8293345: SunPKCS11 provider checks on PKCS11 Mechanism are problematic
Valerie Peng
valeriep at openjdk.org
Wed Mar 20 02:48:32 UTC 2024
Existing legacy mechanism check disables mechanism(s) when the support is partial, e.g. supports decryption but not encryption, or supports verification but not signing. Some mechanisms can be used for both encryption/decryption and sign/verify such as RSA related ones. If the particular mechanism supports sign/verify/decryption but not encryption, it'd be disabled as a result. Fine tune the legacy mechanism check with the service type, i.e. supports encryption for Cipher, sign for Signature, so the mechanism is disabled based on the service type.
For completeness sake, I also added a PKCS11 provider configuration option to control this check (default is true, disable mechanisms with partial support).
-------------
Commit messages:
- 8293345: SunPKCS11 provider checks on PKCS11 Mechanism are problematic
Changes: https://git.openjdk.org/jdk/pull/18387/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18387&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8293345
Stats: 51 lines in 2 files changed: 25 ins; 25 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/18387.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18387/head:pull/18387
PR: https://git.openjdk.org/jdk/pull/18387
More information about the security-dev
mailing list