<div dir="ltr"><div>Hi,</div><div><br></div><div>I would like to propose a patch for JDK-8029661: JDK-Support TLS v1.2 algorithm in SunPKCS11 provider [1].</div><div><br></div><div> * <a href="http://cr.openjdk.java.net/~akasko/mbalao/jdk_8029661_tls_12_sunpkcs11/2017_11_09/8029661.webrev.01/">http://cr.openjdk.java.net/~akasko/mbalao/jdk_8029661_tls_12_sunpkcs11/2017_11_09/8029661.webrev.01/</a> (browse online)</div><div> * <a href="http://cr.openjdk.java.net/~akasko/mbalao/jdk_8029661_tls_12_sunpkcs11/2017_11_09/8029661.webrev.01.zip">http://cr.openjdk.java.net/~akasko/mbalao/jdk_8029661_tls_12_sunpkcs11/2017_11_09/8029661.webrev.01.zip</a> (download)</div><div><br></div><div>The following algorithms have been implemented in SunPKCS11 provider (based on PKCS#11 v2.40 mechanisms):</div><div><br></div><div> * SunTls12RsaPremasterSecret</div><div> * SunTls12MasterSecret</div><div> * SunTls12KeyMaterial</div><div> * SunTls12Prf</div><div><br></div><div>A minor API change is proposed to expose TLS ProtocolVersion constants (SSL30, TLS10, TLS11, etc.) from java.base to jdk.crypto.cryptoki module. This allows to remove hardcoded TLS int constants in SunPKCS11 classes (required when implementing "Tls"-like algorithms).</div><div><br></div><div>A test case is included with the following:</div><div><br></div><div> * TLS 1.2 communication using SunPKCS11 + NSS (in FIPS mode)</div><div> * Algorithms test against SunJCE</div><div><br></div><div>Regards,</div><div>Martin.-</div><div><br></div><div>--</div><div>[1] - <a href="https://bugs.openjdk.java.net/browse/JDK-8029661">https://bugs.openjdk.java.net/browse/JDK-8029661</a></div></div>