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文件和OpenSSL的PEM格式文件(.key + .crt) 运行方式: JKS2PFX <KeyStore文件> <KeyStore密码> 别名> <导出文件名> [Java Runtime的目录] Java Runtime的目录,指包含Java.exe和...
jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 将jks文件生成pfx文件的工具,亲测可以使用。 例如: 1、利用java自带命令生成密钥: keytool -genkey -v -...
常用证书格式:JKS(.keystore),微软(.pfx),OPSSL之PEM(.key + .crt),其中tomcat使用JKS格式,nginx使用PEM格式。 由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。
对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,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 •创建一个新的...
jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:KeyStore文件对应的密码 alias:生成证书CSR时,所起的Alias别名 exportname:准备导出的文件名称 ...
jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:KeyStore文件对应的密码 alias:生成证书CSR时,所起的Alias别名 exportname:准备导出的文件...
c:\temp\kestore-export\kestore-export>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...
BKS来自BouncyCastleProvider,它使用的也是TripleDES来保护密钥库中的Key,它能够防止证书库被不小心修改(Keystore的keyentry改掉1个bit都会产生错误),BKS能够跟JKS互操作。 JKS和JCEKS是Java密钥库(KeyStore)的...
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文件,
这是两个Java Keystore-Options(Keystore.jks和Truststore.jks)之间区别的说明: ://stackoverflow.com/a/6341566/4964553 生成通常的.key和.crt-并将它们导入所需的Keystore .jks文件 对于此处的应用程序,如果...