Example usage for org.apache.commons.ssl SSLServer addTrustMaterial

List of usage examples for org.apache.commons.ssl SSLServer addTrustMaterial

Introduction

In this page you can find the example usage for org.apache.commons.ssl SSLServer addTrustMaterial.

Prototype

public void addTrustMaterial(TrustChain trustChain) throws NoSuchAlgorithmException, KeyStoreException,
            KeyManagementException, IOException, CertificateException 

Source Link

Usage

From source file:servidor.Servidor.java

public static void main(String[] arstring) {
    try {/* ww w  . j a v a 2 s . co  m*/
        SSLServer server = new SSLServer();
        // Server needs some key material.  We'll use an OpenSSL/PKCS8 style key (possibly encrypted).
        String certificateChain = "/lib/server.crt";
        String privateKey = "/lib/server.key";
        char[] password = "clave".toCharArray();
        KeyMaterial km = new KeyMaterial(certificateChain, privateKey, password);

        server.setKeyMaterial(km);

        // These settings have to do with how we'll treat client certificates that are presented
        // to us.  If the client doesn't present any client certificate, then these are ignored.
        server.setCheckHostname(false); // default setting is "false" for SSLServer
        server.setCheckExpiry(true); // default setting is "true" for SSLServer
        server.setCheckCRL(true); // default setting is "true" for SSLServer

        // This server trusts all client certificates presented (usually people won't present
        // client certs, but if they do, we'll give them a socket at the very least).
        server.addTrustMaterial(TrustMaterial.TRUST_ALL);
        SSLServerSocket ss = (SSLServerSocket) server.createServerSocket(7443);
        SSLSocket s = (SSLSocket) ss.accept();
        PrintWriter writer = new PrintWriter(s.getOutputStream());
        BufferedReader reader = new BufferedReader(new InputStreamReader(s.getInputStream()));
        System.out.println(reader.readLine());
    } catch (Exception e) {
    }

}