【发布时间】:2016-05-25 22:24:53
【问题描述】:
比较从服务器提取的公钥和 java 中本地存储的密钥的最佳方法是什么?
这是获取公钥的代码
公共静态PublicKey getPublicKey(){
String hostname = "www.google.com";
SSLSocketFactory factory = HttpsURLConnection.getDefaultSSLSocketFactory();
SSLSocket socket = null;
Certificate[] certs = null;
try {
socket = (SSLSocket) factory.createSocket(hostname, 443);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
socket.startHandshake();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
certs = socket.getSession().getPeerCertificates();
} catch (SSLPeerUnverifiedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Certificate cert = certs[0];
PublicKey key = cert.getPublicKey();
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
System.out.println("Public key \n" + key);
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
return key;
}
我想将响应中的公钥与本地存储的密钥(例如在文本文件中)进行比较。
谢谢
【问题讨论】:
-
这是对象到对象的比较,我打算将公共文件作为文件读取,将字符串与服务器的响应进行比较似乎不是正确的方法。跨度>