On Tue, 16 Sep 2025 14:58:05 GMT, Weijun Wang <[email protected]> wrote:
>> Implement HPKE as defined in https://datatracker.ietf.org/doc/rfc9180/. >> <img alt="image" >> src="https://github.com/user-attachments/assets/df3b454d-2161-4036-9930-c4f84d887b31" >> /> > > Weijun Wang has updated the pull request incrementally with one additional > commit since the last revision: > > more key checks; some small spec change src/java.base/share/classes/com/sun/crypto/provider/DHKEM.java line 31: > 29: import java.io.Serial; > 30: import java.math.BigInteger; > 31: import java.security.AsymmetricKey; Since your original putback used import java.security.* and others below, was it your intent to specify 11 java.security class instead of using a wildcard, or did the IDE do this? src/java.base/share/classes/com/sun/crypto/provider/HPKE.java line 225: > 223: } > 224: > 225: //@Override Do you need this comment here and the next method below? src/java.base/share/classes/com/sun/crypto/provider/HPKE.java line 452: > 450: private static void checkMatch(boolean inSpec, AsymmetricKey k, > int kem_id) > 451: throws InvalidKeyException, > InvalidAlgorithmParameterException { > 452: var p = k.getParams(); nit: It looks like you could have used a `switch (k.params())` here. src/java.base/share/classes/com/sun/crypto/provider/HPKE.java line 499: > 497: DHKEM.I2OSP(params.kdf_id(), 2), > 498: DHKEM.I2OSP(params.aead_id(), 2)); > 499: kdfAlg = switch (params.kdf_id()) { I think it would be more efficient to have one switch that sets both values instead of two identical switches to set each. Similar to what you did in `AEAD()`. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/18411#discussion_r2395233573 PR Review Comment: https://git.openjdk.org/jdk/pull/18411#discussion_r2402601153 PR Review Comment: https://git.openjdk.org/jdk/pull/18411#discussion_r2402807458 PR Review Comment: https://git.openjdk.org/jdk/pull/18411#discussion_r2402688988
