[jdk11u-dev] Integrated: 8255410: Add ChaCha20 and Poly1305 support to SunPKCS11 provider

Goetz Lindenmaier goetz at openjdk.java.net
Tue Mar 1 17:01:10 UTC 2022


On Thu, 3 Feb 2022 19:33:31 GMT, Goetz Lindenmaier <goetz at openjdk.org> wrote:

> I backport this for parity with 11.0.15-oracle.
> 
> I had to do a row of adaptions. There are some implementation
> differences, and many Java 17 usages that had to be changed.
> 
> In the original change in SunPKCS11.java, dA() is used 
> to give alias names of algorithms. It calls to 
> SecurityProviderConstants.getAliases().
> In SunPKCS11.java of jdk11 neither dA() nore getAliases()
> are available. It uses d() instead of da() and calls a 
> s() with a list of literal strings to give the alias names.
> SecurityProviderConstants.java is in java.base. The jdk11 
> version does not contain the list of aliases that can be 
> found in 17.
> 
> I looked up whether there are aliases listed for 
> "ChaCha20-Poly1305" in 17, but found none, so I added
> an empty call s() in SunPKCS11.java.
> 
> In P11AEADCipher.java I had to modify the syntax of 
> a switch statement.
> 
> In CK_SALSA20_CHACHA20_POLY1305_PARAMS.java
> I had to replace HexFormat.of().formatHex(...)
> which is a java.util class not in 11.
> 
> The tests use HexFormat heavily.
> I replaced it by HexToBytes() from TestKATForGCM and 
> by toHexString() from TestLeadingZeroesP11.java.
> To make these methods available I moved them to the 
> superclass PKCS11Test.java. 
> This way they can be used for potential later backports, too.
> I also had to adapt a switch statement using '->' to syntax
> know to 11.

This pull request has now been integrated.

Changeset: 5cad68f5
Author:    Goetz Lindenmaier <goetz at openjdk.org>
URL:       https://git.openjdk.java.net/jdk11u-dev/commit/5cad68f586b1d75403ba7339828221ff6f167c53
Stats:     1683 lines in 18 files changed: 1526 ins; 75 del; 82 mod

8255410: Add ChaCha20 and Poly1305 support to SunPKCS11 provider

Reviewed-by: mdoerr
Backport-of: 5d8c1cc8a05e0d9aedd6d54b8147d374c2290024

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

PR: https://git.openjdk.java.net/jdk11u-dev/pull/805


More information about the jdk-updates-dev mailing list