首页 > 编程语言 >.crt证书转成.pem格式 JAVA实现

.crt证书转成.pem格式 JAVA实现

时间:2022-11-28 16:14:29浏览次数:68  
标签:JAVA crt publicKeyBase64 System pem ----- out

背景知识介绍


图是网上找到, 链接: https://www.zhihu.com/question/29620953

需求

.crt 和 .pem 后缀的都是证书,只是需要用不同的工具才能查看里面的内容,理解是不同的编码方式。
比如.crt需要系统自带的证书工具就能打开,.pem需要做Base64解码才能查看。
有个需要是要在JAVA的项目内将.crt转成.pem这种格式,通过Linux的openssl工具,或者win的keytool工具都能很方便的做转换,JAVA其实也可以,也非常简单 示例代码如下。

// 博客原文地址:https://www.cnblogs.com/mysticbinary/p/16932466.html
String certpath = "E:\\mysticbinary\\mysticbinary.crt";
CertificateFactory cf = CertificateFactory.getInstance("X.509");
FileInputStream in1 = new FileInputStream(certpath);
Certificate c = cf.generateCertificate(in1);
X509Certificate x509Cert = (X509Certificate) c;


// 获取 .pem 格式 证书
System.out.println(X509Factory.BEGIN_CERT);
byte[] encoded = x509Cert.getEncoded();
BASE64Encoder encoder = new BASE64Encoder();
String publicKeyBase64 = encoder.encodeBuffer(encoded);
System.out.print(publicKeyBase64);
System.out.println(X509Factory.END_CERT);
publicKeyBase64 = "-----BEGIN CERTIFICATE-----\n" + publicKeyBase64 + "-----END CERTIFICATE-----";

System.out.println("pblicKeyBase64: "+publicKeyBase64);

标签:JAVA,crt,publicKeyBase64,System,pem,-----,out
From: https://www.cnblogs.com/mysticbinary/p/16932466.html

相关文章