Skip to content

Commit 11d7ddd

Browse files
committed
BCJSSE: Don't enable ML-DSA signature schemes by default
1 parent 400e147 commit 11d7ddd

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

tls/src/main/java/org/bouncycastle/jsse/provider/SignatureSchemeInfo.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -596,11 +596,12 @@ private static int[] createCandidatesDefault()
596596
{
597597
int signatureScheme = values[i].signatureScheme;
598598

599-
/*
600-
* SLH-DSA signing is quite slow; users will most likely be interested in it for the certificate
601-
* chain, so we'll leave it to them to configure signature_algorithms_cert.
602-
*/
603-
if (!SignatureScheme.isSLHDSA(signatureScheme))
599+
if (SignatureScheme.isMLDSA(signatureScheme) ||
600+
SignatureScheme.isSLHDSA(signatureScheme))
601+
{
602+
// For the time being, do not enable stand-alone PQ schemes by default
603+
}
604+
else
604605
{
605606
result[pos++] = signatureScheme;
606607
}

tls/src/test/java/org/bouncycastle/jsse/provider/test/MLDSACredentialsTest.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,23 @@
2222
public class MLDSACredentialsTest
2323
extends TestCase
2424
{
25+
private static final String PROPERTY_CLIENT_SIGNATURE_SCHEMES = "jdk.tls.client.SignatureSchemes";
26+
private static final String PROPERTY_SERVER_SIGNATURE_SCHEMES = "jdk.tls.server.SignatureSchemes";
27+
2528
protected void setUp()
2629
{
2730
ProviderUtils.setupLowPriority(false);
31+
32+
String signatureSchemes = "mldsa44, mldsa65, mldsa87";
33+
34+
System.setProperty(PROPERTY_CLIENT_SIGNATURE_SCHEMES, signatureSchemes);
35+
System.setProperty(PROPERTY_SERVER_SIGNATURE_SCHEMES, signatureSchemes);
36+
}
37+
38+
protected void tearDown()
39+
{
40+
System.clearProperty(PROPERTY_CLIENT_SIGNATURE_SCHEMES);
41+
System.clearProperty(PROPERTY_SERVER_SIGNATURE_SCHEMES);
2842
}
2943

3044
private static final String HOST = "localhost";

0 commit comments

Comments
 (0)