使用Keytool的ssl Java HTTPS服务器
我使用下面的代码来初始化HTTPS驱动的服务器,以获得一个安全的网站。keystore命令如下所示:
keytool-genkey-keyalg RSA-alias mykey-keystore密钥库。jks-密钥传递密码-storepass密码-有效期365-密钥大小2048
运行代码后,当我尝试加载我的网站时,会收到一条错误消息,并出现一个黄色屏幕。我做错了什么
String path = "C:\\Users\\Administrator\\Documents\\NetBeansProjects\\SSLTest5";
String file = path + "\\" + "keystore.jks";
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(file),"password".toCharArray());
// Create key manager
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance("SunX509");
keyManagerFactory.init(keyStore, "password".toCharArray());
KeyManager[] km = keyManagerFactory.getKeyManagers();
// Create trust manager
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("SunX509");
trustManagerFactory.init(keyStore);
TrustManager[] tm = trustManagerFactory.getTrustManagers();
// Initialize SSLContext
SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(km, tm, null);
SSLServerSocketFactory sslServerSocketFactory = sslContext.getServerSocketFactory();
SSLServerSocket sslServerSocket = (SSLServerSocket) sslServerSocketFactory.createServerSocket(443);
System.out.println("Waiting for client...");
SSLSocket sslSocket = (SSLSocket) sslServerSocket.accept();
HandleAccept(sslSocket);
共 (0) 个答案