Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >pem 文件详解

pem 文件详解

作者头像
用户8418197
发布于 2022-02-17 13:05:37
发布于 2022-02-17 13:05:37
21.7K0
举报
文章被收录于专栏:howtouselinuxhowtouselinux

Der 、Cer、 Pfx、 Pem它们都是扩展名(文件名的后缀,代表格式)

.DER:用二进制DER编码的证书;.PEM:用ASCLL(BASE64)编码的证书; .CER:存放公钥,没有私钥; .PFX:存放公钥和私钥(pem 后缀的证书都是base64编码;der 后缀的证书都是二进制格式;crt .cer 后缀的文件都是证书文件(编码方式不一定,有可能是.pem,也有可能是.der);.pfx 主要用于windows平台,浏览器可以使用,也是包含证书和私钥,获取私钥需要密码才可以)

X509文件扩展名(x509 这种证书只有公钥,不包含私钥。)

编码(也用作扩展)

DER = DER扩展用于二进制DER编码证书。这些文件也可能带有CER或CRT扩展名。正确的英语用法是“我有DER编码证书”而不是“我有DER证书”。

PEM = PEM扩展名用于不同类型的X.509v3文件,这些文件包含前缀为“-BEGIN ...”行的ASCII(Base64)装甲数据。

组合

在某些情况下,将多个X.509基础结构组合成单个文件是有利的。一个常见的例子是将私钥和公钥组合到同一个证书中。

组合证书密钥和链的最简单方法是将每个密钥转换为PEM编码证书,然后将每个文件的内容简单复制到新文件中。这适用于组合文件以在Apache应用程序中使用。

萃取

有些证书将以合并形式出现。其中一个文件可以包含以下任何一个:证书,私钥,公钥,签名证书,证书颁发机构(CA)和/或授权链。

PEM 格式

PEM格式通常用于数字证书认证机构(Certificate Authorities,CA),扩展名为.pem, .crt, .cer, and .key。内容为Base64编码的ASCII码文件,有类似"-----BEGIN CERTIFICATE-----" 和 "-----END CERTIFICATE-----"的头尾标记。服务器认证证书,中级认证证书和私钥都可以储存为PEM格式(认证证书其实就是公钥)。Apache和类似的服务器使用PEM格式证书。

ssl certificate pem file

DER 格式

DER格式与PEM不同之处在于其使用二进制而不是Base64编码的ASCII。扩展名为.der,但也经常使用.cer用作扩展名,所有类型的认证证书和私钥都可以存储为DER格式。Java使其典型使用平台。

pfx file with examples

可以使用OpenSSL命令行工具在不同证书格式之间的转换

converting cer crt der pem pfx certificate

converting ssl certificate from crt to pem

PEM to DER

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

PEM to PFX

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

DER to PEM

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

PFX to PEM

openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes

PFX转PEM后certificate.cer文件包含认证证书和私钥,需要把它们分开存储才能使用。)

知识点:

1、使用公钥操作数据属于加密

2、使用私钥对原文的摘要操作属于签名

3、公钥和私钥可以互相加解密

4、不同格式的证书之间可以互相转换

5、公钥可以对外公开,但是私钥千万不要泄露,要妥善保存

注意:在我们备份证书信息的时候,最好使用.jks或者.pfx文件进行保存,这样备份的证书文件可以被完整的导出。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
暂无评论
推荐阅读
编辑精选文章
换一批
CA证书介绍与格式转换
PKCS 公钥加密标准(Public Key Cryptography Standards, PKCS),此一标准的设计与发布皆由RSA资讯安全公司(英语:RSA Security)所制定,PKCS 目前共发布过 15 个标准。更多公钥加密标准
Miloce
2022/09/28
5K0
再谈加密-RSA非对称加密的理解和使用
枕边书
2018/01/04
2.7K0
nginx配置证书和私钥进行SSL通信验证
正常项目的私钥和服务端证书会放在项目中或者外挂到linux服务器某个路径下,现在的需求是客户手动创建的新的证书,替换后项目证书仍然生效,且功能能正常使用。
刘大猫
2025/01/26
2500
OpenSSL 转换证书格式
工作中我相信你一定会遇到处理数字证书的时候。各种平台,各种语言,它们采用的证书格式与标准都不相同,多多少少存在一些差异。实际上证书仍然是那个证书,只是格式发生了变化。 公私钥 分开存储 公私钥合并为一个文件 有些采用二进制文件 有些事二进制文件做了BASE64编码 有些证书做了签名 有些证书加入了密码 不同组织有不同的编码。例如微软喜欢使用 x509 下面内容节节选自《Netkiller Cryptography 手札》 接下来几天我们将讨论密钥证书相关话题。 文章出处: http://www.netk
netkiller old
2018/03/05
4.2K0
jks 证书文件的生成步骤
作为文件形式存在的证书,一般有三类: A. 包含有私钥的证书,包含了公钥和私钥,用pkcs12标准,而一般以pfx 作为扩展名; B. DER 编码证书,不含私钥,以cer 结尾,文件是二进制data. 通常CA(无论是intermediate CA还是root CA)证书都是这类; C. BASE64编码的证书,这类证书也不含私钥,一般也以cer结尾,是pem证书, 这类证书可以直接cat 出结果, 特征是”-----BEGIN CERTIFICATE----- “开头,“-----END CERTIFICATE-----”结尾;
qsjs
2022/09/09
6K0
证书,密钥,加密,rsa到底是啥?
证书也叫CA(Certification Authority)证书;密钥就是用来加解密用的文件或者字符串;rsa即非对称加密算法。
老高的技术博客
2022/12/28
4.2K1
证书,密钥,加密,rsa到底是啥?
系统安全加密验证签名之Openssl命令
描述:OpenSSL是一个开源项目,它是安全套接字层密码库(Secrue socket layer)和传输层安全(transport layer security,TLS)协议的实现,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议(SSL/TLS工具集),并提供丰富的应用程序供测试或其它目的使用。
全栈工程师修炼指南
2022/09/29
4.4K0
系统安全加密验证签名之Openssl命令
使用 openssl 生成证书(含openssl详解)
openssl 是目前最流行的 SSL 密码库工具,其提供了一个通用、健壮、功能完备的工具套件,用以支持SSL/TLS 协议的实现。 官网:https://www.openssl.org/source/
菲宇
2019/06/12
17K0
使用 openssl 生成证书(含openssl详解)
密码学系列之:PEM和PKCS7,PKCS8,PKCS12
PEM是一种常见的保存key或者证书的格式,PEM格式的文件一般来说后缀是以.pem结尾的。那么PEM到底是什么呢?它和常用的证书格式PKCS7和PKCS12有什么关系呢?一起来看看吧。
程序那些事
2022/08/04
3.6K0
OpenSSL配置HTTPS
OpenSSL 是一个实现加密和认证的软件,而OpenSSH 是实现 SSH 远程安全登录的软件(其安全功能借用了OpenSSL),其提供秘钥证书管理、对称加密和非对称加密等功能
晚上没宵夜
2021/12/21
1.7K0
OpenSSL配置HTTPS
SSL 证书基本概念扫盲
keytool 是 java JDK 自带的证书管理工具,使用 keytool 可以生成密钥,创建证书。只要装了 jdk,并正确设置了环境变量,就可以之间通过命令行执行 keytool 命令来管理证书。
JMCui
2023/03/02
8470
Nginx证书和Tomcat证书能相互转化吗,请看这里
【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108292030
后端老鸟
2020/08/29
1.4K0
Nginx证书和Tomcat证书能相互转化吗,请看这里
非对称加密与OpenSSL
随着个人隐私越来越受重视, HTTPS也渐渐的流行起来, 甚至有许多网站都做到了全站HTTPS, 然而这种加密和信任机制也不断遭遇挑战,比如戴尔根证书携带私钥,Xboxlive证书私钥泻露, 还有前一段时间的沃通错误颁发Github根域名SSL证书事件. 因此本文从非对称加密说起, 介绍了证书的签证流程, 并且通过openssl的命令行工具对这些过程都转化为相对具体的命令, 也算是一个温故知新的简要记录吧.
evilpan
2023/02/12
9900
非对称加密与OpenSSL
非对称加密与安全证书看这一篇就懂了 转
前几日做支付对接时,被对方文档中的加密方式搞晕乎了一会。意识到证书加密方面的理解不够深入,事后查阅参考资料补习一波。本文是根据期间的学习,以及长期以来的实践做出的总结。
wuweixiang
2018/08/14
1.5K0
非对称加密与安全证书看这一篇就懂了
                                                                            转
Java扩展工具使用说明补充
描述:keytool是JDK中工具对JDK版本要求不高,但基于现在JDK版本的安全性考虑,建议使用JDK8及以上版本
全栈工程师修炼指南
2022/09/29
1K0
如何使用SSL证书
SSL证书是用于在WEB服务器与浏览器以及客户端之间建立加密链接的加密技术,通过配置和应用SSL证书来启用HTTPS协议,来保护互联网数据传输的安全,全球每天有数以亿计的网站都是通过HTTPS来确保数据安全,保护用户隐私。
用户8418197
2021/09/05
3.5K0
openssl原理与操作
OpenSSL 是一个强大的安全套接字层密码库,包括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
五分钟学SRE
2023/11/17
1.2K0
openssl原理与操作
linux openssl制作ssl证书_openssl生成自签名证书 c++代码
最近,被分配了一个任务,完成数字证书管理系统的开发,一开始我是一脸懵逼的,因为以前我对于什么数字证书都没了解过,可谓了一片空白,也不知其是用来干嘛的。于是,我奋发图强,用了一个下午加晚上的时间来脑补这部分概念知识,原来数字证书其实就是网站的身份认证。
全栈程序员站长
2022/11/04
4K0
linux openssl制作ssl证书_openssl生成自签名证书 c++代码
[信息安全] 05 X.509 公钥证书的格式标准
X.509是# 公钥证书的格式标准, 广泛用于TLS/SSL安全通信或者其他需要认证的环境中。X.509证书可以由# CA颁发,也可以自签名产生。
blackheart
2020/02/24
3.3K0
HTTPS证书封装格式详解
证书的封装格式主要包括PEM、DER、PFX/P12、JKS/JCEKS和PKCS#7/P7B等。
运维开发王义杰
2023/08/10
1.9K0
HTTPS证书封装格式详解
相关推荐
CA证书介绍与格式转换
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档