Guest User

Untitled

a guest
Jun 24th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. import java.io.FileInputStream;
  2. import java.io.InputStream;
  3. import java.io.OutputStream;
  4. import java.net.Socket;
  5. import java.security.KeyStore;
  6. import java.security.SecureRandom;
  7.  
  8. import javax.net.ssl.*;
  9.  
  10. public class Baseline {
  11. public static void main(String[] argv) throws Exception {
  12. // set up keystore
  13. String algorithm = KeyManagerFactory.getDefaultAlgorithm();
  14. KeyManagerFactory kmf = KeyManagerFactory.getInstance(algorithm);
  15. KeyStore ks = KeyStore.getInstance("JKS");
  16. InputStream ksIs = new FileInputStream("keystore.jks");
  17. ks.load(ksIs, "secret".toCharArray());
  18. kmf.init(ks, "secret".toCharArray());
  19. KeyManager[] km = kmf.getKeyManagers();
  20.  
  21. // set up ssl context
  22. SSLContext context = SSLContext.getInstance("TLSv1.2");
  23. context.init(km, new TrustManager[0], new SecureRandom());
  24.  
  25. // open socket
  26. SSLServerSocketFactory factory = context.getServerSocketFactory();
  27. SSLServerSocket ssocket = (SSLServerSocket) factory.createServerSocket(4444);
  28. ssocket.setEnabledProtocols(new String[] { "TLSv1.2" });
  29. ssocket.setNeedClientAuth(false);
  30.  
  31. // accept and hello
  32. Socket socket = ssocket.accept();
  33. InputStream in = socket.getInputStream();
  34. OutputStream out = socket.getOutputStream();
  35. out.write("***hello***\n".getBytes());
  36. in.close();
  37. out.close();
  38. }
  39. }
Add Comment
Please, Sign In to add comment