java pfx 证书_Java将pfx证书转换为jks[通俗易懂]

java pfx 证书_Java将pfx证书转换为jks[通俗易懂]packagecom.yangangus.util;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.security.Key;importjava.security.KeyStore;importjava.security.cert.Certifica…

大家好,又见面了,我是你们的朋友全栈君。

packagecom.yangangus.util;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.security.Key;importjava.security.KeyStore;importjava.security.cert.Certificate;importjava.util.Enumeration;public classConventPFXToJKS {public static final String PKCS12 = “PKCS12”;public static final String JKS = “JKS”;public static final String PFX_KEYSTORE_FILE = “D:\\temp\\certs\\wildcard_test_com.pfx”;//pfx文件位置

public static final String PFX_PASSWORD = “pfx_password”;//导出为pfx文件的设的密码

public static final String JKS_KEYSTORE_FILE = “D:\\temp\\certs\\keystore.jks”; //jks文件位置

public static final String JKS_PASSWORD = “jks_password”;//JKS的密码

public static voidcoverTokeyStore() {

FileInputStream fis= null;

FileOutputStream out= null;try{

KeyStore inputKeyStore= KeyStore.getInstance(“PKCS12”);

fis= newFileInputStream(PFX_KEYSTORE_FILE);char[] pfxPassword = null;if ((PFX_PASSWORD == null) || PFX_PASSWORD.trim().equals(“”)) {

pfxPassword= null;

}else{

pfxPassword=PFX_PASSWORD.toCharArray();

}char[] jksPassword = null;if ((JKS_PASSWORD == null) || JKS_PASSWORD.trim().equals(“”)) {

jksPassword= null;

}else{

jksPassword=JKS_PASSWORD.toCharArray();

}

inputKeyStore.load(fis, pfxPassword);

fis.close();

KeyStore outputKeyStore= KeyStore.getInstance(“JKS”);

outputKeyStore.load(null, jksPassword);

Enumeration enums=inputKeyStore.aliases();while (enums.hasMoreElements()) { //we are readin just one//certificate.

String keyAlias =(String) enums.nextElement();

System.out.println(“alias=[” + keyAlias + “]”);if(inputKeyStore.isKeyEntry(keyAlias)) {

Key key=inputKeyStore.getKey(keyAlias, pfxPassword);

Certificate[] certChain=inputKeyStore.getCertificateChain(keyAlias);

outputKeyStore.setKeyEntry(keyAlias, key, jksPassword, certChain);

}

}

out= newFileOutputStream(JKS_KEYSTORE_FILE);

outputKeyStore.store(out, jksPassword);

out.close();

}catch(Exception e) {

e.printStackTrace();

}finally{if (fis != null) {try{

fis.close();

}catch(IOException e) {

e.printStackTrace();

}

}if (out != null) {try{

out.close();

}catch(IOException e) {

e.printStackTrace();

}

}

}

}public static voidmain(String[] args) {//TODO Auto-generated method stub

coverTokeyStore(); //pfx to jks

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134608.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月6日 下午3:46
下一篇 2022年6月6日 下午4:00


相关推荐

  • 如何在Python程序中运行Unix命令

    如何在Python程序中运行Unix命令Unix是由KenThompson和DennisRitchie在1969年左右在AT&T贝尔实验室开发的操作系统。我们可以使用许多有趣的Unix命令来执行不同的任务。问题是,我们可以直接在Python程序中使用此类命令吗?这就是我将在本教程中向您展示的内容。Unix命令ls列出目录中的所有文件。如果在Python脚本中按原样放置ls,则在运行程序时将得到以下内容:Tra…

    2022年5月10日
    40
  • windows下github 出现Permission denied (publickey).解决方法

    windows下github 出现Permission denied (publickey).解决方法

    2021年10月12日
    79
  • mysql将字符转换成数字

    mysql将字符转换成数字在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下:1.将字符的数字转成数字,比如’0’转成0可以直接用加法来实现例如:将pony表中的d进行排序,可d的定义为varchar,可以这样解决select*fromponyorderby(d+0)2.在进行ifnull处理时,比如ifnull(a/b,’0

    2022年5月29日
    51
  • 前端vue面试题2020及答案_c++ 面试题

    前端vue面试题2020及答案_c++ 面试题总结出来的Vue面试题,持续更新…

    2025年10月6日
    4
  • HashMap扩容全过程

    HashMap扩容全过程 1.如果HashMap的大小超过了负载因子(loadfactor)定义的容量,怎么办?默认的负载因子大小为0.75,也就是说,当一个map填满了75%的bucket时候,和其它集合类(如ArrayList等)一样,将会创建原来HashMap大小的两倍的bucket数组,来重新调整map的大小,并将原来的对象放入新的bucket数组中。这个过程叫作rehashing,因为它调用hash方…

    2025年11月19日
    8
  • vs 下如何调试js

    vs 下如何调试jsvs 能调试 js 这个方法直到今天我知道 现在分享给和我一样初学 vs 或 asp net 开发的朋友们 对于 vs 之前的版本我没试过 我试了 vs2008 版及之后的都是可以的 估计之前的 vs2005 之类的对于调试 js 并不是很完善 首先我们要设置断点 然后我们运行 我这里举一个 web 网站的例子 接下来我们运行 如果不对 vs 进行设置 我们设置了断点 vs 下也不会给予调试 js 的机会 那不是 js 在 vs 设置断

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号