`

Java 操作PFX JKS keystore

阅读更多

Java中默认keystore类型是JKS格式,CA签发设备证书和个人证书通常是PFX格式,有时需要相互转换。

可以用于转换的工具有keytool或者openssl命令行工具,另外JDK自身也提供了一组API,可以实现各类型相互转换;

以下代码时间将JKS读取为PFX格式到内存:

 

public String readJKSAsPfx(String JKSPath,String pwd){
        String default_pfx_site_certificate_pwd = "11111111";
	StringBuffer b64pfxBuf = new StringBuffer();

	KeyStore keyStore = KeyStore.getInstance("JKS");
	File file = new File(keyStorePath);
	keyStore.load(JKSPath, pwd);

	Enumeration<String> emuAlias = keyStore.aliases();
	KeyStore.Entry jentry = null;

	while (emuAlias.hasMoreElements()) {
		String alias = (String) emuAlias.nextElement();
		if (keyStore.isKeyEntry(alias)) {
			jentry = keyStore.getEntry(alias, new PasswordProtection(pwd.toCharArray()));
			//转换为pfx
			KeyStore p12 = KeyStore.getInstance("PKCS12");
			p12.load(null);//初始化keystroe
			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			//输出到字节数组
			p12.setEntry("p12", jentry, new PasswordProtection(pwd.toCharArray()));
			p12.store(baos, default_pfx_site_certificate_pwd.toCharArray());
			
			b64pfxBuf.append(java.util.Base64.getEncoder().encodeToString(baos.toByteArray()));
			break;
		}
	}
	return b64pfxBuf.toString();
}


 

分享到:
评论

相关推荐

    java keystore导出.pfx .key .crt 私钥

    Java KeyStore文件转换为微软的.pfx文件和OpenSSL的PEM格式文件(.key + .crt) 运行方式: JKS2PFX &lt;KeyStore文件&gt; &lt;KeyStore密码&gt; 别名&gt; &lt;导出文件名&gt; [Java Runtime的目录] Java Runtime的目录,指包含Java.exe和...

    SSL转换工具jks2pfx

    jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 将jks文件生成pfx文件的工具,亲测可以使用。 例如: 1、利用java自带命令生成密钥: keytool -genkey -v -...

    jks2pfx2.rar

    常用证书格式:JKS(.keystore),微软(.pfx),OPSSL之PEM(.key + .crt),其中tomcat使用JKS格式,nginx使用PEM格式。 由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。

    对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,pfx

    对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,pfx

    Tomcat更换SSL证书方法(jks与pfx转换)

    该文档提供JKS转换为PFX的方法 使用JWSDP工具包中的工具 •安装J2SE 1.5,下载并运行jdk-1_5_0_09-windows-i586-p.exe •下载并安装jave web service develop pack, jwsdp-2_0-windows-i586.exe •创建一个新的...

    jks证书格式转换nginx使用格式

    jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:KeyStore文件对应的密码 alias:生成证书CSR时,所起的Alias别名 exportname:准备导出的文件名称 ...

    JKS2PFX证书转换工具

    jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:KeyStore文件对应的密码 alias:生成证书CSR时,所起的Alias别名 exportname:准备导出的文件...

    kestore-export

    c:\temp\kestore-export\kestore-export&gt;JKS2PFX c:\temp\kestore-export\.keystore changeit tomcat c:\temp\kestore-export C:\Program Files (x86)\Java\jdk1.7.0_17\jre\bin Generating new PFX Key/Certificate...

    jks转为bks

    BKS来自BouncyCastleProvider,它使用的也是TripleDES来保护密钥库中的Key,它能够防止证书库被不小心修改(Keystore的keyentry改掉1个bit都会产生错误),BKS能够跟JKS互操作。 JKS和JCEKS是Java密钥库(KeyStore)的...

    keystore-explorer-5.4.1.zip

    Start your own PKI and create all kinds of certificates, requests or CRLs Import and export them in any format like PEM, DER, PKCS#7, PKCS#12 编辑JKS文件、PKCS#12、PFX文件,

    spring-boot-rest-clientcertificate:示例项目,显示了如何提供一个为安全的REST端点提供服务的Spring Boot应用程序,该应用程序使用配置为使用客户端证书和客户端证书的Spring的RestTemplate进行调用

    这是两个Java Keystore-Options(Keystore.jks和Truststore.jks)之间区别的说明: ://stackoverflow.com/a/6341566/4964553 生成通常的.key和.crt-并将它们导入所需的Keystore .jks文件 对于此处的应用程序,如果...

Global site tag (gtag.js) - Google Analytics