我有一个 .jks 文件,我需要使用 JAX-RS 对消息进行签名。我正在使用 apache-cxf 的其余实现。我已经通过apache cxf站点使用jax-rs对消息进行签名,但对此我并不清楚。
编码:
String keystr = "src/main/resources/keystore.jks";
KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
FileInputStream fis = new FileInputStream(keystr );
keyStore.load(fis, KEYSTORE_PWD.toCharArray());
PrivateKey key = (PrivateKey) keyStore.getKey("", KEYSTORE_PWD.toCharArray());
SSLContext sslCtxt= SSLContexts.custom().loadTrustMaterial(keyStore).build();
SSLConnectionSocketFactory sslConn = new SSLConnectionSocketFactory(sslCtxt, SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
CloseableHttpClient httpclient = HttpClients.custom().setSSLSocketFactory(sslConn ).build();
HttpGet getReq = new HttpGet("http://localhost:8080/xyz?sss=abc");
CloseableHttpResponse response = httpclient.execute(getReq );
HttpEntity entity = response.getEntity();
if (entity != null) {
BufferedReader br = new BufferedReader(new InputStreamReader(entity.getContent()));
StringBuffer result = new StringBuffer();
String line = "";
while ((line = br.readLine()) != null) {
result.append(line);
}
}