RFR: 8257769: Cipher.getParameters() throws NPE for ChaCha20-Poly1305
Sean Mullan
mullan at openjdk.java.net
Mon Dec 7 15:45:17 UTC 2020
On Sat, 5 Dec 2020 23:23:47 GMT, Jamil Nimeh <jnimeh at openjdk.org> wrote:
> This fix corrects a problem where ChaCha20-Poly1305 objects prior to init throw NPE when getParameters() is called. It will now generate parameters containing a random nonce on each pre-init call to getParameters(). Post-initialization calls to the getParameters() method will always return the same set of parameters until the next initialization occurs.
src/java.base/share/classes/com/sun/crypto/provider/ChaCha20Cipher.java line 232:
> 230: // this call should cause a random nonce to be generated.
> 231: if (!initialized || nonce == null) {
> 232: nonce = createRandomNonce(null);
Should nonce be a local variable instead? I think you don't want the nonce field to be set unless the caller passes back in the returned params in an init call.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1644
More information about the security-dev
mailing list