public void processClientKeyExchange(InputStream input) throws IOException {
    if (dhAgreePublicKey != null) {
      // For dss_fixed_dh and rsa_fixed_dh, the key arrived in the client certificate
      return;
    }

    BigInteger Yc = TlsDHUtils.readDHParameter(input);

    this.dhAgreePublicKey =
        TlsDHUtils.validateDHPublicKey(new DHPublicKeyParameters(Yc, dhParameters));
  }