RFR: 8295919: java.security.MessageDigest.isEqual does not adhere to @implNote
Sean Mullan
mullan at openjdk.org
Wed Sep 27 19:34:11 UTC 2023
On Tue, 26 Sep 2023 19:37:23 GMT, Kevin Driver <kdriver at openjdk.org> wrote:
> Fix JDK-8295919 by updating the javadoc to explain that a null or zero-length `digestb` will also result in a short-circuit response
src/java.base/share/classes/java/security/MessageDigest.java line 464:
> 462: * It does not depend on the length of {@code digestb} or the contents
> 463: * of {@code digesta} and {@code digestb}, unless {@code digestb} is null
> 464: * or has a length of zero bytes.
I think this new text should be moved earlier to the first sentence, since that first sentence is not always true given this condition. I suggest rewording the first two sentences as:
"All bytes in {@code digesta} are examined to determine equality, unless {@code digestb} is {@code null}
or has a length of zero bytes. If {@code digestb} is not {@code null} and does not have a length of zero bytes,
then the calculation time depends only on the length of {@code digesta}."
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15933#discussion_r1339111610
More information about the security-dev
mailing list