DH_ServerKeyExchange(HandshakeInStream input, ProtocolVersion protocolVersion) throws IOException, GeneralSecurityException { this.protocolVersion = protocolVersion; this.preferableSignatureAlgorithm = null; dh_p = input.getBytes16(); dh_g = input.getBytes16(); dh_Ys = input.getBytes16(); KeyUtil.validate(new DHPublicKeySpec(new BigInteger(1, dh_Ys), new BigInteger(1, dh_p), new BigInteger(1, dh_g))); signature = null; }
} else if (useSmartEphemeralDHKeys) { // matched mode if (key != null) { int ks = KeyUtil.getKeySize(key);
dh_g = input.getBytes16(); dh_Ys = input.getBytes16(); KeyUtil.validate(new DHPublicKeySpec(new BigInteger(1, dh_Ys), new BigInteger(1, dh_p), new BigInteger(1, dh_g)));