?? httpssocketclient.java
字號:
/*
C:\Book\https\SSL_CLient>java -Djavax.net.ssl.trustStore=mykeyt HttpsClient
http/1.0 200 OK
Content-Length: 52
Content_Type:text/html
<html> <head></head><body> <h1> Good </Body></html>
和https\SSL_from_loadKeyStore配合使用
或
C:\Book\https\SSL_CLient>keytool -export -alias mykey -file mykey.cer -keystore
mykeyt
輸入keystore密碼: mykeyt
保存在文件中的認證 <mykey.cer>
C:\Book\https\SSL_CLient>keytool -import -alias mykey -file mykey.cer -keystore
clienttrust
輸入keystore密碼: password
Owner: CN=XU, OU=Shanghai Univ., O=SHanghai, L=SH, ST=Nanjin, C=CN
發照者: CN=XU, OU=Shanghai Univ., O=SHanghai, L=SH, ST=Nanjin, C=CN
序號: 3dc4eb3d
有效期間: Sun Nov 03 17:24:13 CST 2002 至: Sat Feb 01 17:24:13 CST 2003
認證指紋:
MD5: C0:3C:FE:0B:36:3E:36:36:45:2D:14:D2:0A:DE:6D:92
SHA1: E3:AE:21:37:64:F4:A2:F0:3A:35:5D:4F:86:B6:52:91:E8:A5:E0:5E
信任這個認證? [否]: 是
認證已添加至keystore中
C:\Book\https\SSL_CLient>
java -Djavax.net.ssl.trustStore=clienttrust HttpsClient
*/
import java.net.*;
import javax.net.*;
import java.io.*;
import javax.net.ssl.*;
import java.security.cert.*;
import java.util.*;
import java.math.*;
import java.security.*;
public class HttpsClient {
public static void main(String args[ ])throws Exception {
try {
int port = 443;
String hostname = "127.0.0.1";
SocketFactory socketFactory = SSLSocketFactory.getDefault();
Socket socket = socketFactory.createSocket(hostname, port);
// Create streams to securely send and receive data to the server
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
out.write("\nHi,How are u!\n\n".getBytes("UTF8"));
out.flush();
BufferedReader bin=new BufferedReader(new InputStreamReader(in));
String line=null;
while((line=bin.readLine())!=null){
System.out.println(line);
}
in.close();
out.close();
} catch(IOException e) {
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -