您的位置:首页 > 运维架构

使用OpenSSL将pfx证书转换成cer格式的证书

2014-10-13 10:28 537 查看
在工作中遇到一个要将pfx格式的的证书转换为cer格式的需求,原有的做法是将pfx格式的证书先倒入到浏览器中,然后再由浏览器导出,但是这样对于批量操作来说效率太慢,看了一下,可以使用OpenSSL自带的命令完成这个需求。

OpenSSL下载:(Windows)

http://dl.pconline.com.cn/download/355862.html

安装好OpenSSL,然后到bin目录下,执行以下命令即可完成转换:

openssl pkcs12 -nodes -nokeys -in 1.pfx -passin pass:证书密码 -out 1.cer

如无需加密pem中私钥,可以添加选项-nodes;

如无需导出私钥,可以添加选项-nokeys;

如果提示:“WARNING: CAN’T OPEN CONFIG FILE: /USR/LOCAL/SSL/OPENSSL.CNF”,

输入“set OPENSSL_CONF=openssl.cfg”。

附一个批量转换的bat

先安装openssl,pfx文件和密码文件需要一样,例如:

证书.pfx

证书.txt(密码文件)

@echo off&setlocal enabledelayedexpansion
set /p mulu=请将pfx所放文件夹拖进本窗口:
set openssl=C:\OpenSSL-Win32\bin\
cls
for /r %mulu% %%i in (*.pfx) do (
set pfxname=%%~ni
set fname=%%i
set passfile=!fname:~0,-4!.txt
echo !pfxname!
::echo !passfile!
set /p pass=<!passfile!
::echo !pass!
set OPENSSL_CONF=%openssl%openssl.cfg
%openssl%openssl pkcs12 -nodes -nokeys -in !fname:~0,-4!.pfx -passin pass:!pass! -out !fname:~0,-4!.cer
)
echo 转换完毕.!
pause>nul
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: