RFR: 8272385: Enforce ECPrivateKey d value to be in the range [1, n-1] for SunEC provider

Weijun Wang weijun at openjdk.java.net
Wed Sep 1 21:54:29 UTC 2021


On Wed, 1 Sep 2021 04:17:23 GMT, Jamil Nimeh <jnimeh at openjdk.org> wrote:

> This fix adds an EC private key range check for the scalar value to be within the range [1, n-1] (n being the order of the generator) for the SunEC ECDSA Signature algorithms and ECDH KeyAgreement algorithms.  While the SunEC KeyGenerator for EC keys will not generate private keys that sit outside the accepted range, it is possible to create and attempt to use ECPrivateKey objects that violate this range through a KeyFactory.
> 
> JBS: https://bugs.openjdk.java.net/browse/JDK-8272385

Looks fine. One nit: how about let `checkPrivateKey` returning the key like `Objects.requireNonNull()` does?

-------------

Marked as reviewed by weijun (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/5324



More information about the security-dev mailing list