On Thu, 19 Dec 2024 13:58:57 GMT, Weijun Wang <[email protected]> wrote:
> > However, we decided not to make `CKM_CONCATENATE_DATA_AND_BASE` a
> > requirement for HKDF services in SunPKCS11.
>
> This sounds perfectly reasonable at token init time. Most HKDF cases do not
> need multiple IKM or salt segments.
>
> What I asked is at key derivation time. By then it seems you no longer
> consult the `disabledMechanisms` configuration anymore.
It's true, we can check when concatenating in case the token has support but
someone wants to block it by configuration. I pushed the change. The error
looks like this:
java.security.ProviderException: Mechanism CKM_CONCATENATE_BASE_AND_KEY is
either not supported in the token or disabled through 'disabledMechanisms' in
SunPKCS11-NSS configuration.
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF$KeyMaterialMerger.p11Merge(P11KDF.java:256)
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF$KeyKeyMaterialMerger.merge(P11KDF.java:312)
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF$KeyMaterialMerger.merge(P11KDF.java:236)
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF.consolidateKeyMaterial(P11KDF.java:359)
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF.derive(P11KDF.java:123)
at
jdk.crypto.cryptoki/sun.security.pkcs11.P11KDF.engineDeriveKey(P11KDF.java:99)
...
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22215#issuecomment-2555640625