我必须在我的Java类中打开cert文件。 Certyficates由DER算法编码。我该如何解码这个文件?
我将certyficate上传到我的servlet,这样
InputStream in = getResourceAsStream("/certyficate.cer");
BufferedReader br = new BufferedReader(new InputStreamReader(in))
现在我必须解码这个文件,我该怎么做?
现在我遇到了麻烦,get.Instance()
我在文档中使用它的确切方式,但我有一个错误,如在此截图中
我该如何解决?
答案 0 :(得分:1)
鉴于您的InputStream in
包含证书,
你可以解码证书
通过java.security.cert.CertificateFactory
。支持DER和PEM编码。
您需要的进口货物:
import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
解码证书:
try {
CertificateFactory cf = CertificateFactory.getInstance("X.509");
X509Certificate cert = (X509Certificate) cf.generateCertificate(in);
} catch (CertificateException e) {
// handle failure to decode certificate
}
答案 1 :(得分:0)
嗯,你不能使用Reader
作为开始。它是二进制的。此任务通过java.security.CertificateFactory
完成。