public CertificateRequest getCertificateRequest() throws IOException { Vector serverSigAlgs = null; if (TlsUtils.isSignatureAlgorithmsExtensionAllowed(serverVersion)) { short[] hashAlgorithms = new short[] { HashAlgorithm.sha512, HashAlgorithm.sha384, HashAlgorithm.sha256, HashAlgorithm.sha224, HashAlgorithm.sha1 }; short[] signatureAlgorithms = new short[] {SignatureAlgorithm.rsa}; serverSigAlgs = new Vector(); for (int i = 0; i < hashAlgorithms.length; ++i) { for (int j = 0; j < signatureAlgorithms.length; ++j) { serverSigAlgs.addElement( new SignatureAndHashAlgorithm(hashAlgorithms[i], signatureAlgorithms[j])); } } } return new CertificateRequest( new short[] {ClientCertificateType.rsa_sign}, serverSigAlgs, null); }