• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

OpenSSL 轉換 PEM、DER、PKCS#12 憑證格式教學與範例

介紹如何在 Linux 中使用 OpenSSL 指令轉換 PEM、DER 與 PKCS #12 格式的憑證檔案。

SSL 憑證格式

常見的 SSL 憑證的檔案格式大概有以下幾種:

種類 格式 副檔名
Base64 文字 PEM .pem、.crt、.cer、.key
PKCS #7 .p7b、.p7c
二進位 DER .cer、.der
PKCS #12 .pfx、.p12

在這些憑證格式中,PEM 算是比較常見的,若遇到需要換格式的時候,可以使用以下的 OpenSSL 的指令來處理。

PEM 與 DER 格式轉換

以下指令可將 DER 格式的憑證檔案 certificate.der 轉換成 PEM 格式的 certificate.pem:

# DER 格式轉 PEM 格式
openssl x509 -inform der -in certificate.der -out certificate.pem

以下指令可將 PEM 格式的憑證檔案 certificate.pem 轉換成 DER 格式的 certificate.der:

# PEM 格式轉 DER 格式
openssl x509 -outform der -in certificate.pem -out certificate.der

PEM 與 PKCS #12 格式轉換

以下指令可將 PEM 憑證 certificate.crt 與私鑰 private.key 連同 CA 的憑證 CACert.crt 一起轉為 PKCS #12 格式的 keystore.pfx:

# PEM 憑證與私鑰轉 PKCS #12
openssl pkcs12 -export -out keystore.pfx -inkey private.key \
  -in certificate.crt -certfile CACert.crt

以下指令可從 PKCS #12 格式的 keystore.pfx 中轉出 PEM 格式的私鑰與憑證:

# PKCS #12 轉出 PEM 格式的私鑰與憑證
openssl pkcs12 -in keystore.pfx -out keystore.pem -nodes

也可以將 PKCS #12 中的私鑰與憑證個別轉出:

# PKCS #12 轉出 PEM 格式的私鑰
openssl pkcs12 -in keystore.pfx -out private.pem -nodes -nocerts

# PKCS #12 轉出 PEM 格式的憑證
openssl pkcs12 -in keystore.pfx -out certificate.pem -nodes -nokeys

參考資料

  • StackOverflow:How to convert an SSL certificate in linux
  • TutorialsTeacher:SSL Certificate Formats

分類:Linux 標籤:OpenSSL, 資訊安全

主要資訊欄

搜尋

近期文章

  • Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤
  • Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例
  • Linux 網路設定 ip 指令用法教學與範例
  • Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例
  • Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例
  • Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例
  • Linux 以 Cryptsetup 與 LUKS 加密磁碟教學與範例
  • Linux 使用 age 簡潔的加密、解密工具使用教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide