2011-08-21 92 views

回答

0

PEM的文件被读作其他任何文本文件的数字签名。阅读Java tutorial about IO(和集中字符流,因为PEM文件包含文本,并在文件IO,因为这是你想要做什么)

2

我使用此代码

PEMReader pr=new PEMReader(new StringReader(trust_certs)); 
    KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType()); 
    trustStore.load(null, null); 
    Object o; 
    int i=0; 
    while((o=pr.readObject())!=null){ 
     if(o instanceof X509Certificate){ 
      i++; 
      X509Certificate c=(X509Certificate)o; 
      trustStore.setCertificateEntry(Integer.toString(i), c); 
     } 
    } 

http://www.bouncycastle.org/docs/docs1.6/org/bouncycastle/openssl/PEMReader.html

+0

的各种方法我不知道:( –

4

阅读证书确实很简单。

CertificateFactory factory = CertificateFactory.getInstance("X.509"); 
X509Certificate certificate = (X509Certificate) factory.generateCertificate(new FileInputStream("file.pem")); 

这是与标准的API(在try/catch)等,你已经加载你的证书。
现在toString证书的方法不适合你,因为它只是捕获证书的“用户”视图,例如你会用它作为println例如
你不能发送证书对象本身吗?
不知道你的服务器所期望的,所以你可以看看证书
X509Certificate