--- a/jdk/src/share/classes/com/sun/crypto/provider/DHKeyAgreement.java Wed Aug 22 21:40:19 2012 -0400
+++ b/jdk/src/share/classes/com/sun/crypto/provider/DHKeyAgreement.java Mon Oct 22 07:28:51 2012 -0700
@@ -41,6 +41,8 @@
import javax.crypto.SecretKey;
import javax.crypto.spec.*;
+import sun.security.util.KeyUtil;
+
/**
* This class implements the Diffie-Hellman key agreement protocol between
* any number of parties.
@@ -200,6 +202,9 @@
throw new InvalidKeyException("Incompatible parameters");
}
+ // validate the Diffie-Hellman public key
+ KeyUtil.validate(dhPubKey);
+
// store the y value
this.y = dhPubKey.getY();