pkcs12文件工具,能生成和分析pkcs12文件。

用法:

openssl pkcs12 [-export] [-chain] [-inkey filename] [-certfile filename] [-CApath arg] [-CAfile arg] [-name name] [-caname name] [-in filename] [-out filename] [-noout] [-nomacver] [-nocerts] [-clcerts] [-cacerts] [-nokeys] [-info] [-des] [-des3] [-aes128] [-aes192] [-aes256] [-idea] [-nodes] [-noiter] [-maciter] [-twopass] [-descert] [-certpbe alg] [-keypbe alg] [-keyex] [-keysig] [-password arg] [-passin arg] [-passout arg] [-rand file(s)] [-engine e]

选项:

       -export

              输出pkcs12文件。

       -chain

              添加证书链。

       -inkey filename

              指定私钥文件,如果不用此选项,私钥必须在-in filename中指定。

       -certfile filename

              添加filename中所有的文件。

       -CApath arg

              指定CA文件目录。

       -CApath arg

              指定CA文件。

       -name name

              指定证书和私钥的友好名。

       -caname name

              指定CA友好名,可以多次使用此选项。

       -in filename

              指定私钥和证书读取的文件,必须为PEM格式。

       -out filename

              指定输出的pkcs12文件,默认为标准输出。

       -noout

              不输出信息。

       -nomacver

              读取文件时不验证MAC

       -nocerts

              不输出证书。

       -clcerts

              只输出客户证书,不包含CA证书。

       -cacerts

              只输出CA证书,不包含CA证书。

       -nokeys

              不输出私钥。

       -info

              输出pkcs12结构信息。

       -des3-aes128 -aes192[-aes256[-idea

              私钥加密算法;。

       -nodes

              不对私钥加密。

       -noiter

              不多次加密。

       -maciter

              加强完整性保护,多次计算MAC

       -twopass

              需要用户分别指定MAC口令和加密口令。

       -descert

              3DES加密pkcs12文件,默认为RC2-40

       -certpbe alg

              指定证书加密算法,默认为RC2-40

       -keypbe alg

              指定私钥加密算法,默认为3DES

       -keyex

              设置私钥只能用于密钥交换。

       -keysig

              设置私钥只能用于签名。

       -password arg

              指定导入导出口令来源。

-passin arg

       输入文件保护口令来源。

-passout arg

       指定所有输出私钥保护口令来源。

-rand file(s)

指定随机数种子文件,多个文件间用分隔符分开,windows用“;”,OpenVMS用“,“,其他系统用“:”。

       -engine e

              指定硬件引擎。

       举例:

1)生成pkcs12文件,但不包含CA证书:

openssl pkcs12 -export -inkey ocspserverkey.pem -in ocspservercert.pem  -out ocspserverpkcs12.pfx

2)  生成pcs12文件,包含CA证书:

openssl pkcs12 -export -inkey ocspserverkey.pem -in ocspservercert.pem -CAfile demoCA/cacert.pem -chain -out ocsp1.pfx

3)  pcks12中的信息分离出来,写入文件:

openssl pkcs12 –in ocsp1.pfx -out certandkey.pem

4)  显示pkcs12信息:

openssl pkcs12 –in ocsp1.pfx -info