From 2568238def4063fe1ae49a77138277527c184708 Mon Sep 17 00:00:00 2001 From: Weijun Wang Date: Fri, 31 Jan 2025 12:12:30 -0500 Subject: [PATCH] add back private key clean up --- .../sun/security/provider/ML_DSA_Impls.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/java.base/share/classes/sun/security/provider/ML_DSA_Impls.java b/src/java.base/share/classes/sun/security/provider/ML_DSA_Impls.java index 3c7c7a0c07a41..b324a37bbd3c8 100644 --- a/src/java.base/share/classes/sun/security/provider/ML_DSA_Impls.java +++ b/src/java.base/share/classes/sun/security/provider/ML_DSA_Impls.java @@ -80,11 +80,15 @@ protected byte[][] implGenerateKeyPair(String name, SecureRandom sr) { r.nextBytes(seed); ML_DSA mlDsa = new ML_DSA(name2int(name)); ML_DSA.ML_DSA_KeyPair kp = mlDsa.generateKeyPairInternal(seed); - return new byte[][]{ - mlDsa.pkEncode(kp.publicKey()), - seed, - mlDsa.skEncode(kp.privateKey()) - }; + try { + return new byte[][]{ + mlDsa.pkEncode(kp.publicKey()), + seed, + mlDsa.skEncode(kp.privateKey()) + }; + } finally { + kp.privateKey().destroy(); + } } }