Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.FileInputStream;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.Socket;
- import java.security.KeyStore;
- import java.security.SecureRandom;
- import javax.net.ssl.*;
- public class Baseline {
- public static void main(String[] argv) throws Exception {
- // set up keystore
- String algorithm = KeyManagerFactory.getDefaultAlgorithm();
- KeyManagerFactory kmf = KeyManagerFactory.getInstance(algorithm);
- KeyStore ks = KeyStore.getInstance("JKS");
- InputStream ksIs = new FileInputStream("keystore.jks");
- ks.load(ksIs, "secret".toCharArray());
- kmf.init(ks, "secret".toCharArray());
- KeyManager[] km = kmf.getKeyManagers();
- // set up ssl context
- SSLContext context = SSLContext.getInstance("TLSv1.2");
- context.init(km, new TrustManager[0], new SecureRandom());
- // open socket
- SSLServerSocketFactory factory = context.getServerSocketFactory();
- SSLServerSocket ssocket = (SSLServerSocket) factory.createServerSocket(4444);
- ssocket.setEnabledProtocols(new String[] { "TLSv1.2" });
- ssocket.setNeedClientAuth(false);
- // accept and hello
- Socket socket = ssocket.accept();
- InputStream in = socket.getInputStream();
- OutputStream out = socket.getOutputStream();
- out.write("***hello***\n".getBytes());
- in.close();
- out.close();
- }
- }
Add Comment
Please, Sign In to add comment