下面提供两种方式:
1. 使用Portecle
2. 使用Jetty的工具类
3. 使用Keytool GUI(这个工具现在不太好找,功能类似Portecle)
4. 使用OpenSSL + Keytool
5. 自己写代码(使用BouncyCastle的jar)
---------------------------------------
使用Portecle
Most of system administrators use OpenSSL (which is not a good idea, but it’s an another story) to manage their PKI. While OpenSSL is good to create/convert X509 certificates from PEM/DER to PKCS#12 (and vice versa, for sure) it doesn’t understand the JKS (Java KeyStore) format. JKS are used in Java world, for example Glassfish application server, OpenDS and so more. In this post, I’ll explain how to convert a PKCS#12 to a JKS using portecle. portecle is a small, but very useful application (written in Java) to manipulate keystores.
1. Download
portecle, extract it, and lauch it using java -jar portecle.jar
2. Open your PKCS#12 file, provide the password
3. Click on Tools/Change KeyStore Type/JKS menu
4. If you don’t want to use the default password (which is password), click on the menu keystore password
5. Save it, that’s all folks!
You can know list the contents of your JKS using keytool:
% keytool -list -v -keystore yourkeystore.jks
from: http://blog.asyd.net/2009/07/how-to-convert-a-pkcs12-to-jks/
----------------------------------------------
使用Jetty的工具类
java -classpath jetty-6.1.3/lib/jetty-6.1.3.jar org.mortbay.jetty.security.PKCS12Import keystore.pkcs12 keystore.jks
Enter input keystore passphrase: secret
Enter output keystore passphrase: secret
Alias 0: 1
Adding key for alias 1
http://jetty.codehaus.org/jetty/jetty-6/apidocs/org/mortbay/jetty/security/PKCS12Import.html
http://conshell.net/wiki/index.php/OpenSSL_to_Keytool_Conversion_tips
分享到:
相关推荐
PKCS #12 中文版 PKCS #12 是一種個人身份标识信息傳遞語法的标准,允许用户导入、导出并使用一套统一的个人身份标识信息。该标准描述了私钥、证书、各种形式的秘密值及其扩展。PKCS #12 的出现使得计算机、应用...
PKCS#10是这一系列标准中的一个,全称为"Certification Request Syntax Standard",即证书请求语法标准。它定义了一种格式,用于创建和交换证书请求,通常是当用户或系统需要获取数字证书时使用。这个过程涉及到ASN....
本文将详细解析如何将PKCS#1格式的公钥转换为PKCS#8格式,以解决“公钥非法错误”的问题。 首先,理解公钥和私钥的概念至关重要。在公钥加密体系中,如RSA算法,每一对密钥由一个公钥和一个私钥组成。公钥用于加密...
在密码系统中,PKCS#11是公钥加密标准(PKCS, Public-Key Cryptography Standards)中的一份子 ,由RSA实验室(RSA Laboratories)发布[1],它为加密令牌定义了一组平台无关的API ,如硬件安全模块和智能卡。...
PKCS#11应用编程接口的使用示例 PKCS#11是一个公共密钥加密标准,定义了cryptoki接口,提供了一个抽象层次来访问各种加密设备和加密算法。下面我们将从给定的文件中提取相关的知识点,详细解释PKCS#11的使用示例。 ...
PKCS #11,全称为Public-Key Cryptography Standards #11,是由RSA安全公司发起的一套接口标准,用于实现加密令牌(如智能卡、硬件安全模块HSM等)与应用程序之间的交互。版本2.11是这个标准的一个更新,旨在提供...
"C# SHA256 PKCS#7 生成验名、验签源码 中行支付.rar"这个压缩包文件提供了使用C#编程语言实现SHA256哈希算法和PKCS#7标准来创建和验证签名的源代码。以下将详细解释这两个关键概念及其在金融支付中的应用。 1. SHA...
在.NET平台上,C#语言提供了丰富的库和API来处理各种加密和签名操作,其中包括PKCS #7标准。PKCS(Public Key Cryptography Standards)是由RSA安全公司提出的公钥加密标准,其中的第7号标准(PKCS #7)定义了数据的...
PKCS(Public Key Cryptography Standards)是由RSA Security公司制定的一系列加密标准,其中的#12,即PKCS#12,是一种广泛使用的个人身份认证信息的存储格式。这个标准定义了如何在一个单一的文件中安全地存储用户...
### PKCS#11 v2.2:Cryptoki标准详解 #### 一、引言 PKCS#11,也称为Cryptoki标准,是公钥密码学标准集的一部分,由RSA实验室开发并发布。PKCS#11为密码模块定义了一个程序设计接口(API),这个API被命名为Cryptoki...
PKCS#11是RSA安全公司制定的一套标准,全称为Public Key Cryptography Standards #11,主要用于定义智能卡、硬件安全模块(HSM)和其他密码学设备与应用程序之间的接口。这个标准允许软件通过统一的API(应用程序...
填充模式如PKCS#1 v1.5和OAEP(Optimal Asymmetric Encryption Padding)是重要的安全性增强机制。 6. **加密和解密方案** RSA加密通常涉及将明文数据通过幂运算模n转化为密文,而解密则用私钥进行逆运算。PKCS #1...
PKCS#12标准是公钥密码标准(Public Key Cryptography Standards,PKCS)系列中关于个人身份信息交换的语法标准,编号为第12号,版本为1.1。该标准主要描述了用于转移个人身份信息的传输语法,这些信息包括私钥、...
5. **序列化PKCS#7结构**:将封装好的PKCS#7结构转换为字节数组或Base64字符串,以便在网络上传输或存储。 6. **验证签名**: - 接收到PKCS#7签名后,首先将其反序列化为`Pkcs7SignedData`对象。 - 使用`...
PKCS#11是RSA安全公司制定的一套标准接口,全称为Public-Key Cryptography Standards #11,主要用于智能卡、硬件安全模块(HSM)和其他密码学设备与应用程序之间的交互。这个标准允许软件应用程序通过一组统一的API...
越来越多的应用需要我们使用USB接口数字证书进行PKCS#7数字签名。本文分别介绍了使用微软CryptoAPI方式和OpenSSL Engine方式进行数字签名。特别地,提出了OpenSSL Engine简化方式,这种方式更为灵活方便易行。
PKCS #11,全称为“Public Key Cryptography Standards #11”,是由RSA安全公司发起的一套标准,用于定义加密令牌(如智能卡、硬件安全模块HSM等)与应用程序之间的接口。这个标准允许应用程序利用这些物理设备进行...
基于BigInteger类用java封装的PKCS#1 v2.1 全算法实现,模块与规范一一对应。包含 I2OSP OS2IP RSAEP RSADP RSASP1 RSAVP1 RSAES-OAEP RSAES-PKCS1_v1_5 RSASSA-PSS RSASSA-PKCS1-v1_5 以及 MGF SourceAlgrithm等...
文档介绍了pkcs#7的格式和结构,里面虽然是英文的,但是很详细的,能看到,另外用ASN1工具和这个结合能很快的理解pkcs#7的结构。