1. 程式人生 > >使用openssl進行證書格式轉換

使用openssl進行證書格式轉換

各類證書由於儲存的內容不同(如是否包含公鑰/私鑰是否加密儲存/單一證書或多證書等)、採用編碼不同(DER/BASE64)、標準不同(如PEM/PKCS),所以儘管X.509標準規定了證書內容規範,但證書檔案還是五花八門。好在openssl對這些不同的標準都有著不錯的支援,可以用來進行不同格式證書的轉換。

大體來說,證書轉換要作的工作有這麼幾種


編碼轉換:DER<-->BASE64
不同證書標準的轉換:PKCS系列<-->PEM/CER
私鑰的增/減/提取/轉換

...

PEM--DER/CER(BASE64--DER編碼的轉換)

       openssl x509 -outform der -in certificate.pem -out certificate.der

PEM--P7B(PEM--PKCS#7)

       openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cer

PEM--PFX(PEM--PKCS#12)

       openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt

PEM--p12(PEM--PKCS#12)

       openssl pkcs12 -export -out Cert.p12 -in Cert.pem -inkey key.pem

CER/DER--PEM(編碼DER--BASE64)

       openssl x509 -inform der -in certificate.cer -out certificate.pem

P7B--PEM(PKCS#7--PEM)

       openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

P7B--PFX(PKCS#7--PKCS#12)

       openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
       openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile CACert.cer

PFX/p12--PEM(PKCS#12--PEM)

       openssl pkcs12 -in certificate.pfx -out certificate.cer
       如無需加密pem中私鑰,可以新增選項-nodes;
       如無需匯出私鑰,可以新增選項-nokeys;

PEM BASE64--X.509文字格式

       openssl x509 -in Key.pem -text -out Cert.pem

PFX檔案中提取私鑰(.key)

       openssl pkcs12 -in mycert.pfx -nocerts -nodes -out mycert.key

PEM--SPC

       openssl crl2pkcs7 -nocrl -certfile venus.pem -outform DER -out venus.spc

PEM--PVK(openssl 1.x開始支援)

       openssl rsa -in mycert.pem -outform PVK -pvk-strong -out mypvk.pvk

PEM--PVK(對於openssl 1.x之前的版本,可以下載pvk轉換器後通過以下命令完成)

       pvk -in ca.key -out ca.pvk -nocrypt -topvk

openssl更多選項及功能,請參考openssl手冊

相關推薦

使用openssl進行證書格式轉換

各類證書由於儲存的內容不同(如是否包含公鑰/私鑰是否加密儲存/單一證書或多證書等)、採用編碼不同(DER/BASE64)、標準不同(如PEM/PKCS),所以儘管X.509標準規定了證書內容規範,但證書檔案還是五花八門。好在openssl對這些不同的標準都有著不錯的支援,可

OpenSSL證書格式的相互轉換, 例如.pem,.crt,.cer,.pfx

PEM格式 PEM格式是證書頒發機構頒發證書的最常見格式.PEM證書通常具有副檔名,例如.pem,.crt,.cer和.key。它們是Base64編碼的ASCII檔案,包含“----- BEGIN CERTIFICATE -----”和“----- END CERTIFIC

OpenSSL證書格式的區別以及格式轉換

       之前沒接觸過證書加密的話,對證書相關的這些概念真是感覺挺棘手的,因為一下子來了一大堆新名詞,看起來像是另一個領域的東西,而不是我們所熟悉的程式設計領域的那些東西,起碼我個人感覺如此,且很長時間都沒怎麼搞懂。寫這篇文章的目的就是為了理理清這些概念,搞清楚它們的含

使用Gson進行資料格式轉換時的問題

Gson是谷歌出的解析json資料的工具. 在專案測試中, 出現了空指標異常,很是奇妙, 傳的引數沒有接收到..  發現是前端傳的引數, 沒有正確的解析, 所以沒有識到到引數.. com.****.****.****.****: java.lang.IllegalSta

從WS查出的 RESULT 來進行資料 格式轉換 組裝成MAP

   IPoApplyWsProxy proxy = new IPoApplyWsProxy();             String result = proxy.getCheckerConfigList(json.toString());   JSONObject j

使用TFRecord進行圖片格式轉換以及搭建神經網路實驗全過程,使用Tensorflow訓練自己的資料集

最近一個大作業需要進行影象處理可是網上的資源太分散,於是想整合網上資源,形成一個系統: 主要包括 圖片預處理 圖片轉TFrecord格式 TFrecord格式轉圖片檢視 簡單神經網路搭建 TFrecord格式在神經網路中的讀取 batch方法提取資料

springmvc提交資料到controller進行日期格式轉換

jsp提交資料型別預設為String型別,如果不進行資料型別轉換直接插入到資料庫會報型別不匹配的異常 package com.zipx.controller.converters;import

golang 執行命令列進行圖片格式轉換(jpg轉png)

1.golang 執行命令列     cmd := exec.Command(命令, 傳入引數1, 傳入引數2,...)     cmd.Stdout = os.Stdout     if err := cmd.Run(); err != nil {        

【JAVA】JAVA使用ffmpeg進行視訊格式轉換以及截圖

JAVA 處理視訊檔案,需要用到 ffmpeg  這個工具。不需要依賴jar包。無論是在windows伺服器還是linux伺服器,想要使用 ffmpeg 都需要先安裝。 附上Linux下  *.tar.gz/*.tgz、*.bz2形式的原始碼軟體包    安裝方法:

用XSL進行日期格式轉換

文章來源:https://blog.csdn.net/yjs_lh/article/details/330911XSL做日期格式轉換的函式原始碼如下:<?xml version="1.0"enco

IOS 遠端推送證書系列二:證書格式轉換(cer轉pem)

具體步驟如下: 1、通過雙擊.cer檔案將你的aps_development.cer和aps.cer引入Keychain中。 2、在Mac上啟動Keychain助手,然後分別匯出。 3、開啟終端,通過終端命令將這些檔案轉換為PEM格式: 3.1、測試證書 openssl

常用證書格式轉換

PKCS 全稱是 Public-Key Cryptography Standards ,是由 RSA 實驗室與其它安全系統開發商為促進公鑰密碼的發展而制訂的一系列標準,PKCS 目前共釋出過 15 個標準。  常用的有: PKCS#7 Cryptographic Message Syntax Stand

SSL 證書格式轉換

SSL 證書格式轉換 不同伺服器情況下,需要不同的證書格式。 比如 pem 轉 pfx。 pem在window 平臺下可以匯入,但

java實現擷取PDF指定頁並進行圖片格式轉換

1、引入依賴 <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.16&l

.NET Core RSA密鑰的xml、pkcs1、pkcs8格式轉換和JavaScript、Java等語言進行對接

math sax generator 支持 pkcs8 www stl body down 眾所周知在.NET下的RSA類所生成的密鑰為Xml格式,而其他語言比如java一般使用pkcs8格式的密鑰,JavaScript一般使用pkcs1格式。我們在開發過程中很可能遇到需要

Java中如何使用Json進行格式轉換常用方法

首先要在pom.xml檔案加入以下一依賴,這是阿里巴巴的開源格式轉換技術 <dependency>     <groupId>com.alibaba</groupId>     

圖片格式轉換PDF如何進行操作

在工作中有時候需要將圖片格式轉換成PDF我們該怎麼解決呢?在有些領域中,現在使用普通的圖片都行不通了,那我們就要想別的辦法了,如將圖片格式中轉換成PDF格式,那麼該如何進行操作呢?那種方法行的通? 1、對於圖片格式轉換為PDF格式的話,小夥伴可以藉助到轉換型別

使用CxImage進行圖形和格式轉換(CBitmap to jpg or png or gif or bmp)

CxImage類庫介紹 CxImage類庫是一個幾乎可以管理所有的圖象檔案的C++類庫。它可以快捷地存取、顯示、轉換各種影象。 其他的圖形庫?有那麼多優秀的圖形庫,如OpenIL,FreeImage,PaintLib等等,它們是功能強大,齊全,而且是經常更新的。然而,如果

OpenSSL建立CA和簽發證書轉換成java可以載入的jks

java的keytool工具本來就可以生成互動式認證的證書, 不過其他語言處理互動式認證的流程貌似和java的keytool的認證流程有些差別,  而openssl是比較通用的工具。大部分語言都會支援openssl生成的證書檔案。用openssl簽發的證書如何才能轉化為key

Linux下使用RecordMyDesktop進行螢幕錄影 輸出影象格式轉換

輸出影象格式轉換 ffmpeg -i input_file.ogv -acodec libmp3lame -acodec ac3 -ab 128k -ac 2 -vcodec libx264 -pre