package com.ssl;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.security.Key;
import java.security.KeyStore;
import java.security.cert.Certificate;
import java.util.Enumeration;
public class ConvertPFX {
public static final String PKCS12 = "PKCS12";
public static final String JKS = "JKS";
public static final String PFX_KEYSTORE_FILE = "G:\\test.pfx";
public static final String KEYSTORE_PASSWORD = "123456";
public static final String JKS_KEYSTORE_FILE = "G:\\study\\ssl\\sm\\Server1Keystore.jks";
public static void coverTokeyStore() {
try {
KeyStore inputKeyStore = KeyStore.getInstance("PKCS12");
FileInputStream fis = new FileInputStream(PFX_KEYSTORE_FILE);
char[] nPassword = null;
if ((KEYSTORE_PASSWORD == null)
|| KEYSTORE_PASSWORD.trim().equals("")) {
nPassword = null;
} else {
nPassword = KEYSTORE_PASSWORD.toCharArray();
}
inputKeyStore.load(fis, nPassword);
fis.close();
KeyStore outputKeyStore = KeyStore.getInstance("JKS");
outputKeyStore.load(null, KEYSTORE_PASSWORD.toCharArray());
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, nPassword);
Certificate[] certChain = inputKeyStore
.getCertificateChain(keyAlias);
outputKeyStore.setKeyEntry(keyAlias, key, KEYSTORE_PASSWORD
.toCharArray(), certChain);
}
}
FileOutputStream out = new FileOutputStream(JKS_KEYSTORE_FILE);
outputKeyStore.store(out, nPassword);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void coverToPfx() {
try {
KeyStore inputKeyStore = KeyStore.getInstance("JKS");
FileInputStream fis = new FileInputStream(JKS_KEYSTORE_FILE);
char[] nPassword = null;
if ((KEYSTORE_PASSWORD == null)
|| KEYSTORE_PASSWORD.trim().equals("")) {
nPassword = null;
} else {
nPassword = KEYSTORE_PASSWORD.toCharArray();
}
inputKeyStore.load(fis, nPassword);
fis.close();
KeyStore outputKeyStore = KeyStore.getInstance("PKCS12");
outputKeyStore.load(null, KEYSTORE_PASSWORD.toCharArray());
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, nPassword);
Certificate[] certChain = inputKeyStore
.getCertificateChain(keyAlias);
outputKeyStore.setKeyEntry(keyAlias, key, KEYSTORE_PASSWORD
.toCharArray(), certChain);
}
}
FileOutputStream out = new FileOutputStream(PFX_KEYSTORE_FILE);
outputKeyStore.store(out, nPassword);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
coverToPfx();
}
}
分享到:
相关推荐
jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 将jks文件生成pfx文件的工具,亲测可以使用。 例如: 1、利用java自带命令生成密钥: keytool -genkey -v -...
将jks文件生成pfx文件的工具,亲测可以使用。 例如: JKS2PFX server.jks 123456 tomcat exportfile c:\progra~1\Java\jre1.5.0_06\bin 该命令将server.jks中别名为tomcat的SSL证书导出,运行后将产生3个文件 ...
《使用jks2pfx工具将JKS转换为PFX:详细步骤与原理解析》 在数字证书领域,JKS(Java Key Store)和PFX(Personal Information Exchange)是两种常见的密钥存储格式。JKS主要用于Java应用程序,而PFX则广泛应用于...
标题中的"JKS2PFX证书转换工具"指的是一个用于将Java Key Store (JKS)格式的证书转换为Personal Information Exchange (PFX)格式的工具。这种转换在IT行业中经常进行,因为不同的软件和系统可能需要不同的证书格式来...
使用keytool.exe,将jks格式证书转换成pfx格式证书。由于本工具未包括keytool.exe 需要安装jdk 才能够正常运行。 没有积分的用户可以根据以下命令行手动导出(keytool.exe 可以在jdk安装目录中找到): keytool.exe ...
### Tomcat更换SSL证书方法(JKS与PFX转换) 在IT行业中,为了保障网络通信的安全性,使用SSL证书加密已经成为了一种标准做法。对于使用Tomcat作为应用服务器的企业或个人来说,有时候会遇到需要更换SSL证书的情况,...
常用证书格式:JKS(.keystore),微软(.pfx),OPSSL之PEM(.key + .crt),其中tomcat使用JKS格式,nginx使用PEM格式。 由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。
由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。 jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:...
SSL证书通常存储在密钥库中,有多种格式,如JKS(Java Key Store)和PFX(Personal Information Exchange)。本文将深入探讨"JKS2PFX转换工具"及其在IT安全领域的重要性。 JKS,全称为Java Key Store,是由Java平台...
而"JKS2PFX证书转换工具"就是针对这些需求应运而生的,它专门用于处理Java Key Store(JKS)和PKCS#12(PFX)格式的证书,以适应不同环境和应用场景。 首先,我们需要理解JKS和PFX这两种类型的证书存储格式。Java ...
jks2pfx -src keystore.jks -srcstorepass password -dest certificate.pfx ``` 其中,`-src`参数是jks文件路径,`-srcstorepass`是jks的密码,`-dest`是目标pfx文件路径。 4. **导入到Nginx**:生成pfx文件后,...
pfx与jks 互转
Java KeyStore文件转换为微软的.pfx文件和OpenSSL的PEM格式文件(.key + .crt) 运行方式: JKS2PFX 文件> 密码> 别名> <导出文件名> ...JKS2PFX server.jks 123456 tomcat exportfile c:\progra~1\Java\jre1.5.0_06\bin
本文将深入探讨“pgpjks2pfx”这个转换工具,以及它如何帮助用户处理JKS(Java Key Store)文件类型,并将其转换为PFX(Personal Information Exchange)格式。 首先,我们要理解JKS文件是什么。JKS是Java平台中的...
把这个放在任何位置,cmd窗口cd到存放的位置,就能使用命令pfx2jks,应该是把pfx文件转化成jks
在安装pfx证书之前,需要将pfx格式证书转换为JKS格式证书或PFX格式证书。可以使用openssl命令行工具完成证书格式转换。命令如下: `openssl pkcs12 -export -out 214756945520466.pfx -inkey 214756945520466.key -...
密钥、密钥对、公钥、证书、、私钥、jks、keystore、truststore、cer、pfx 等概念是信息安全领域中密钥管理和加密技术的重要组成部分。下面对这些概念进行详细的解释和说明: 1. 密钥:指的是公钥和私钥的统称。...
- 使用场景差异: PFX更多用于Web服务器和浏览器间通信,而JKS适用于Java平台的应用程序。 #### 五、HTTPS **HTTPS** (Hypertext Transfer Protocol Secure)是在HTTP基础上加入了TLS/SSL协议的安全版本。HTTPS使用...