Java 证书pem转KeyStore、jks文件
生活随笔
收集整理的這篇文章主要介紹了
Java 证书pem转KeyStore、jks文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?一、服務端pem轉KeyStore
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");FileInputStream caInputStream = new FileInputStream(caPath);List<X509Certificate> caList = certificateFactory.generateCertificates(caInputStream).stream().map(v->(X509Certificate)v).collect(Collectors.toList());KeyStore keystore = KeyStore.getInstance("JKS");keystore.load(null, null);for(X509Certificate ca: caList)keystore.setCertificateEntry(ca.getSubjectDN().getName(), ca);?
二、帶有私key的客戶端pem轉KeyStore
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");FileInputStream caInputStream = new FileInputStream(caPath);List<X509Certificate> caList = certificateFactory.generateCertificates(caInputStream).stream().map(v->(X509Certificate)v).collect(Collectors.toList());KeyStore keystore = KeyStore.getInstance("JKS");keystore.load(null, null);privateKeyBase64 = privateKeyBase64.replace("-----BEGIN PRIVATE KEY-----", "").replace("\n", "").replace("-----END PRIVATE KEY-----", "");byte[] privateKeyBytes = Base64.decodeBase64(privateKeyBase64.getBytes(StandardCharsets.UTF_8));KeyFactory keyFactory = KeyFactory.getInstance("RSA");KeySpec privateKeySpec = new PKCS8EncodedKeySpec(privateKeyBytes);PrivateKey privateKey = keyFactory.generatePrivate(privateKeySpec);keystore.setKeyEntry("alias", privateKey, password.toCharArray(), caList.toArray(new X509Certificate[caList.size()]));三、KeyStore轉jks文件
try(FileOutputStream outputStream = new FileOutputStream("crt.jks")) {keystore.store(outputStream, password.toCharArray());} 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Java 证书pem转KeyStore、jks文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 白素贞扮演者 哪些演员扮演过白素贞
- 下一篇: 闪点测定方法 是怎么规定的