Add ML-DSA to SSLPrivateKey framework [chromium/src : main]

0 views
Skip to first unread message

David Benjamin (Gerrit)

unread,
Jul 18, 2026, 6:33:38 PM (13 hours ago) Jul 18
to chromium...@chromium.org, net-r...@chromium.org

David Benjamin has uploaded the change for review

Commit message

Add ML-DSA to SSLPrivateKey framework

This is enough to get it working for OpenSSLPrivateKey.

FIXME - While this works, it'd probably be prudent to make the algorithm
types opt in.
Bug: 536164653
Change-Id: I9f9dcb1edde0afdab1381e3f20c958d190c13ba4

Change diff

diff --git a/net/ssl/openssl_private_key_unittest.cc b/net/ssl/openssl_private_key_unittest.cc
index 7fa7fc3c..17fd8123c 100644
--- a/net/ssl/openssl_private_key_unittest.cc
+++ b/net/ssl/openssl_private_key_unittest.cc
@@ -34,6 +34,9 @@
{"ECDSA_P256", "client_4.pem", "client_4.pk8", EVP_PKEY_EC},
{"ECDSA_P384", "client_5.pem", "client_5.pk8", EVP_PKEY_EC},
{"ECDSA_P521", "client_6.pem", "client_6.pk8", EVP_PKEY_EC},
+ {"MLDSA44", "client_9.pem", "client_9.pk8", EVP_PKEY_ML_DSA_44},
+ {"MLDSA65", "client_10.pem", "client_10.pk8", EVP_PKEY_ML_DSA_65},
+ {"MLDSA87", "client_11.pem", "client_11.pk8", EVP_PKEY_ML_DSA_87},
};

std::string TestKeyToString(const testing::TestParamInfo<TestKey>& params) {
diff --git a/net/ssl/ssl_private_key.cc b/net/ssl/ssl_private_key.cc
index bc14ffe..c380e7d 100644
--- a/net/ssl/ssl_private_key.cc
+++ b/net/ssl/ssl_private_key.cc
@@ -41,6 +41,12 @@
SSL_SIGN_ECDSA_SECP256R1_SHA256, SSL_SIGN_ECDSA_SECP384R1_SHA384,
SSL_SIGN_ECDSA_SECP521R1_SHA512, SSL_SIGN_ECDSA_SHA1,
};
+ case EVP_PKEY_ML_DSA_44:
+ return {SSL_SIGN_ML_DSA_44};
+ case EVP_PKEY_ML_DSA_65:
+ return {SSL_SIGN_ML_DSA_65};
+ case EVP_PKEY_ML_DSA_87:
+ return {SSL_SIGN_ML_DSA_87};
default:
NOTIMPLEMENTED();
return {};

Change information

Files:
  • M net/ssl/openssl_private_key_unittest.cc
  • M net/ssl/ssl_private_key.cc
Change size: XS
Delta: 2 files changed, 9 insertions(+), 0 deletions(-)
Open in Gerrit

Related details

Attention set is empty
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: newchange
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I9f9dcb1edde0afdab1381e3f20c958d190c13ba4
Gerrit-Change-Number: 8121956
Gerrit-PatchSet: 1
Gerrit-Owner: David Benjamin <davi...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy
Reply all
Reply to author
Forward
0 new messages