1、通过代码代码读取
public static X509Certificate getX509Certificate(String cerPath) {
X509Certificate x509Certificate = null;
try {
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
FileInputStream fileInputStream = new FileInputStream(new File(cerPath));
x509Certificate = (X509Certificate) certificateFactory.generateCertificate(fileInputStream);
fileInputStream.close();
Log.d("[SerialNumber]", "序列号:" + x509Certificate.getSerialNumber());
Log.d("[IssuerDN]", "发布方标识名:" + x509Certificate.getIssuerDN());
Log.d("[SubjectDN]", "主体标识:" + x509Certificate.getSubjectDN());
Log.d("[SigAlgOID]", "证书算法OID字符串:" + x509Certificate.getSigAlgOID());
Log.d("[NotAfter]", "证书有效期:" + x509Certificate.getNotAfter());
Log.d("[SigAlgName]", "签名算法:" + x509Certificate.getSigAlgName());
Log.d("[Version]", "版本号:" + x509Certificate.getVersion());
Log.d("[PublicKey]", "公钥:" + x509Certificate.getPublicKey());
} catch (Exception e) {
e.printStackTrace();
}
return x509Certificate;
}
2、通过JDK,命令读取文件
D:\xxx\Java\jdk1.7.0_21\bin>keytool -printcert -file E:\xxx.cer