首页 > 其他分享 >证书私钥公钥PEM格式解析

证书私钥公钥PEM格式解析

时间:2024-07-17 13:11:01浏览次数:8  
标签:公钥 私钥 PRIVATE PEM ----- KEY 格式

PEM格式

PEM,即Privacy Enhanced Mail,直译为保密邮件,是一种数字证书、私钥、公钥等的文本表示格式。
想对应的,DER,即Distinguished Encoding Rules,可分辨编码规则,是一种是一种数字证书、私钥、公钥等二进制表示格式。

PEM包含DER格式内容,也可以说是证书/私钥/公钥DER格式的按Bas64编码后,并添加标识的文本内容。

DER = 证书/私钥/公钥 按ASN.1编码 --> 转二进制
PEM = 标识头(---BEGIN XXX---)  + DER格式 按Base64编码转文本(按长度64换行) + 标识尾(---END XXX---)

PEM格式于DER格式的关系如下图。

image

除了明显PEM格式文件的扩展名通常是.pem.cer,.crt,.key等多种;
DER格式文件扩展名通常为.der,也可以是.cer.crt等,主要通过文件内容格式判断(是否文本格式,是否有PEM标识)是PEM还是DER格式。

常见PEM格式示例

PEM格式X.509证书

PEM格式X.509证书:

-----BEGIN CERTIFICATE-----
MIICeDCCAh6gAwIBAgIDCQiGMAoGCCqGSM49BAMCMIGKMQswCQYDVQQGEwJDTjEQ
MA4GA1UECBMHQmVpamluZzEQMA4GA1UEBxMHQmVpamluZzEfMB0GA1UEChMWd3gt
b3JnMS5jaGFpbm1ha2VyLm9yZzESMBAGA1UECxMJcm9vdC1jZXJ0MSIwIAYDVQQD
ExljYS53eC1vcmcxLmNoYWlubWFrZXIub3JnMB4XDTIyMDYxMDA3MTczNloXDTI3
MDYwOTA3MTczNlowgZExCzAJBgNVBAYTAkNOMRAwDgYDVQQIEwdCZWlqaW5nMRAw
DgYDVQQHEwdCZWlqaW5nMR8wHQYDVQQKExZ3eC1vcmcxLmNoYWlubWFrZXIub3Jn
MQ8wDQYDVQQLEwZjbGllbnQxLDAqBgNVBAMTI2NsaWVudDEuc2lnbi53eC1vcmcx
LmNoYWlubWFrZXIub3JnMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKQK43j7b
gR5l7w6lksM39GPKouVG1APdU2dRSElnGleAwSE6462wcCec/z/X9oLltEH+N7J+
PU6QqNlfdBhdHaNqMGgwDgYDVR0PAQH/BAQDAgbAMCkGA1UdDgQiBCAQI/im5dGN
IruXfy+9prPBpczEAv2pS33Sgf+XZdr8azArBgNVHSMEJDAigCBRi9kSGe5qMbTj
pim5j+50x7ezC5oDQVzXHSLlNIF6czAKBggqhkjOPQQDAgNIADBFAiEApxk8gCH0
uvnkjjO+uI80fWUBmHIkJ2GRIUD1tvyf0FACIDhPPc0j2DjsAg61hlD5682/jwqV
ne776zZIIkR4uZ2r
-----END CERTIFICATE-----

RSA私钥

PEM格式RSA私钥-PKCS#1格式-无加密

-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEA57b1SHQKXl47qa/35WaX3UNI/UTBIPxcJjJIW84hYBOMDWGw
BQHE1n+l+b9FctQXRIpB/DBPasRvg8YfUSN05Rexv3/s+Z/nIXXlVaatwBV+tCb9
7iqKurYJpMuxJmOhe68ENgFGZkUfAMvByHfPVfzKg2y8gZmsxyfPnZ0dPZpm/xSz
dceNI49iWLFvCARkKEjuO0rjL8tqk3cxY5uTDSov68UEbyhQOYTodLlByY9uwzQO
F74TUWV7ZiEfDoFwaiJi7Q+60wQm9oPS/XeoE97IfA9tEKe7kKmBQZxoI8vyStPU
Q1WEFn+wtcB67pS9dEpTRWBgmQYtLtkq4lcHRQIDAQABAoIBAQCcJrKzaefW4oAo
gTp4sKOk64QTkbLozMg4wWf73jSlr2aRWgSpyyBgQNOUM67UjFNF0DpZfiD23Xwc
/HX8Uv2iqU4StF35dyXmabHr/5BVwuaI90Hmr2qgGq7zDIXMThXz6OTYlBFiODCF
c8qakwr5cory+GMsn2hNKeoC2G9tJAirf+5Bj5xDx5JTwtggUr5NUR37fyeAa2Wh
atqY5cb2k3MEqr6p1zZZ5GLNADvgzXWK+XeDNA/x8AqwHM6ETpljwBd8Rx5EHwjd
6tj7K1oBW43s5lMBe4K0cOgLAGpK48Ck0DZ++8CovqQSQUe7OsIY1MX5ZSrwpKuh
vyjiDMehAoGBAP7rtxozJkhXP899UZsB9q5QuRMLTZruFNFEgjRRsEc+Qr6O25qf
cEzE3yO2EpAmSMS570eK596SvjO6Jd1GM/e/AUnGlOJ3fEOt58ICNWV9V3RdhFwi
Nmmqj3yXhiSsQU695+1NwFViajaXTDjXP/LskJP2hLpolIrkwOanKryZAoGBAOiy
F4zP/RdbhM1CjkyJXHaG8Uru/jimOuKSHhpHnANeNQrMylM4IYH33/GFIIS7hsJg
9ohH5XMnslp1CjbEvjDXuurJx5TFBMFCPy3LppQDKZBLnWyNGBsSDu6/oq+/ozIA
KVTEGlQvqZDQCaxXwvxHFB1w+xlHXAdsY0TVL7+NAoGAVXwEHeQTLWUcv969c+aX
q2LkfU9oCdFW58o6g4L1Qx7M0Qwk9lgLF6NZVKdk2DQOaPIVHH+nO8snvz7oHajC
Go1RyESwfrUk1alGs5d8AnmizyHhFehfKNYKYfSKBlhBWj9yu/A71CY5ie74n4MH
LdZIsWWUotIZJe6KBY7/VNkCgYEAscHaW6dHH+C5wlNlgPItwB21lhib+4qA0TPt
6wVpGOmOe4GVzZzDfBVu7YFVJhBbEYIg0lqZ3S4mARQHiW8iGw2xrEoYPH2E9F03
BjTcO5Vu2tvollPyZjuVTKz4CmnKsReOe0KTGlyOnCFQQmeIfE+P/i2go97vXnxe
GOcCYsECgYEAhB0srmyo49HErxPBzVKN1bVz1GczVtUUVx0tJLhvdM43vTZeXMnl
EstwZWXf3UB5FRsmHSZoBhRmkNzFQ54pM/hlGaGrirgYowMfe5j0Zd0jZBQqpApW
YET1/PeQXaF1V9k8wmmZHuLdgo8tw90x0GVCcmxs3UHlGsEJ0ggnCOk=
-----END RSA PRIVATE KEY-----

PEM格式RSA私钥-PKCS#1格式-加密(密码b'123456')

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,D83C87E7C883DBC9A86058511585F8D1

E0mNN1sAM/uN4jG1TSaxn4gUqaazMXEGB7z0wNNAOKa2VcLJF3HOYg/psZv7xsr3
0b4Au1t1hfxU9Zlzx/Pd1kKdVX7Ex6PohU7Jmldn3p6R9SPqAZOz1S3YPTqPfjqQ
VcbCUW1SHdc9OhmanKxhpQUM3kZ7Q0sC37aIoY+mESiKA/oUKbZ3n72gYeZ96+13
oWQK7ewG+nYHD+xz7InWcf7qA02H9rHbREsvhJ75mWA8w7Lg7lDflFI0nS4eaOkU
uf8rym1+x9F4Yno7acfvkhQanWcHjLl4QoEhADMflfNb9KxkRahaiIzDMrROYeN1
1m9XiDfxYkcmeeR2IKKsTVYZwODoDvVFrB1gmWIpHbuDZms/6lj/SDHAxVRlp0iJ
GA4yiT8HYXjpRoIwp7pAq9nFMMWpK09NKUKijUWF/pgs6YEjrAqRPKZhsih6aw9v
5Jci0kj/02QxYCocM15pzuF6eE+gHthCfNDMU0H5MPZNT5iZUBAxyj0ZPJW6RmVi
R1vde1RRHCy4QRHM62KUMeoNQ4FRhyUK7MuuQLP7FmWHsVIAw/tRsmXT5ss2eNUS
qmWQODdgkvnGrEpxjSqPrwYhRDewB1nmiTJMt+Upe5wBCPzX8YKgJqkMB3/cEeEE
u6lJ+tFNcfXbhRfCqTLG/VgQtxSNwQ6+hYzEaspk984G1stRwsuR6O056N4SyEOJ
fddE/ouue6vlcJtRTZqB8vvbJ7VFIciOpvyUF7JwImj4MZJQ2v0/CEQAAaRC9CNr
tLQbLd/3IN/PqOV9+H6y86hLcKUMl4grEQ1RrOfaRrVWV8siMkAGS5W8zvSIhwgn
28+MWwPI2/vU0NZLcgQyDD/pa1ElwyFRRZ8Mr89jB3B2eMuhsZ3X7UEkH11MHT+7
OIhOJc+B/3nMv0rablYPhO3HBkNBG4IjyanSufCTZusWhg48Vz7V4E35YPCQKJnr
l8rcwklNTfD18F2SOIHU3/qalRoVUWX8m6pvE4xjMHlrNOEOVzI3M3XWyjsCT6i2
vd/kanLcApkAvluy7sfjJzUIsr/GsHP2K01U+b1a0Oj2FxnQT1T7orCt/pl7lNS1
NecJ1/Ipob+7q3DGZymVJRd+TbabKfs5NHJmzYTwI4jYy5bgq+tjLXgwKzPPfzuH
bQKX6aRVYxx50RHeo50Tb3ngigShpzwD1W8gcPmsqJjLYxe/JsgE46tErTXueB8T
MeyqYzcGmwimBazVl218OgbfkP+OV0P8LFCUL334UEiiGx9epznuEbOvDp9Qi4DL
bloMZ5WtS8qm57OYWhamQG8XEyUp51P2n4f5o3m/42TQSiF9rPazP7oayHijuFR1
xEaVe2yoRezsigugTlApZzJ4VF9iTpSrbsvH/77qduX200YDGRnYBMw1fVNvECtN
MrT4vaXwKX/B9c7DN0sI/e2ODTsbYaHN8Oiu/d4Im2lf6CGgQUpW4UbgYtBxHRVt
FiehmIcq8qOfrL/gpTE+xwdp0Jc8kUnZm6BsAAjGs9reL34x6OKsLD550cXAyf6e
he4xqohX0kSXnV4pF5F18WVVfCmKoCzxr8decM8GYVK3uSNAWDrzlx2UXhUo0yga
-----END RSA PRIVATE KEY-----

EC(椭圆曲线)私钥

PEM格式EC(椭圆曲线)私钥-PKCS#1格式-无加密

-----BEGIN EC PRIVATE KEY-----
MHcCAQEEILb9XVRPCaPgtmBLTfusYmTDBzACWEIMP7G47ttUSgcZoAoGCCqGSM49
AwEHoUQDQgAEIL5WxHjk/yCczEPlMxcLSSYqsOs4uhGzlq0FQnIx4uJrvDaIq6ht
+tdT2VAnfDTNbyhkJWWfCCpe9meVIQj6hQ==
-----END EC PRIVATE KEY-----

PEM格式EC(椭圆曲线)私钥-PKCS#1格式-加密(密码b'123456')

-----BEGIN EC PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,4E0066D4A2184696A17C26228EC877BC

IqonndTo2J7Av5vqR7N9JaM/P+WLN+eKWFRC9MFfv924c+AVvA1ZuPpGE3VVQn9t
KEZQt/kMW3DFaSaqZDR6rNXsjDp0INohCrEzTqRp0Zt8B5zDv0zQ8pRPHJI9E2vz
LwpTV3ANTiFvKPL+R8cscE2VknDoBgxBocJ7m0vJ2ng=
-----END EC PRIVATE KEY-----

PEM格式EC(椭圆曲线)私钥-PKCS#8格式-无加密

-----BEGIN PRIVATE KEY-----
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgtv1dVE8Jo+C2YEtN
+6xiZMMHMAJYQgw/sbju21RKBxmhRANCAAQgvlbEeOT/IJzMQ+UzFwtJJiqw6zi6
EbOWrQVCcjHi4mu8NoirqG3611PZUCd8NM1vKGQlZZ8IKl72Z5UhCPqF
-----END PRIVATE KEY-----

PEM格式EC(椭圆曲线)私钥-PKCS#8格式-加密(密码b'123456')

-----BEGIN ENCRYPTED PRIVATE KEY-----
MIH0MF8GCSqGSIb3DQEFDTBSMDEGCSqGSIb3DQEFDDAkBBBRZfYgbzli9lpBCQb1
kCHnAgIIADAMBggqhkiG9w0CCQUAMB0GCWCGSAFlAwQBKgQQHEyPD6t4f90hzYVJ
e5gKZASBkMw3IUycIsSHk2NBBM5+cg/B8/u6u66CUtJW9joWCXOo3d3B4TPsT3Bv
O59DWGiIV68UAZYPwx32a2p0vkVOR+ASRaCKBLEgc+Ok16AMsYqV0L1pvzK/torO
WCclp+7i3CQdDCZhoidcJRgAnndveQCub1C1OishpY9XcmsjQSsrkzXM70iOyB2F
wPKBWH5DUw==
-----END ENCRYPTED PRIVATE KEY-----

标签:公钥,私钥,PRIVATE,PEM,-----,KEY,格式
From: https://www.cnblogs.com/superhin/p/18307007

相关文章

  • 高仿imtoken钱包源码/获取助记词/获取私钥/自动归集
    简介:高仿imtoken钱包/获取助记词/获取私钥/自动归集带双端,无纯源码     下载源码 ......
  • 非堆成加密是公私钥使用
    对称加密学习-CSDN博客加密算法学习-CSDN博客非对称加密算法使用一对密钥,包括一个公钥和一个私钥,它们是数学上相关联的,但公钥可以公开分享,而私钥必须保密。以下是使用非对称加密算法的一般步骤:密钥生成:用户首先生成一对密钥,包括一个私钥和一个公钥。私钥必须安全存储,不能......
  • java 用bouncycastle 生成pem格式的rsa
    maven pem.xml<dependency><groupId>org.bouncycastle</groupId><artifactId>bcprov-jdk15on</artifactId><version>1.70</version><!--请根据需要检查最新版本--></dependency> java用bouncyca......
  • PKI公钥基础设施
    PKI体系架构PKI是PublicKeyInfrastructure的缩写,是通过使用公钥技术和数字证书来提供系统信息安全服务,并负责验证数字证书持有者身份的一种体系。一个PKI体系由终端实体、证书认证机构、证书注册机构和证书/CRL存储库四部分共同组成的终端实体EE(EndEntity):也称为PKI实体......
  • 星火绘镜Typemovie:用故事绘制你的视频“镜”
    星火绘镜Typemovie是一个创新的短视频创作平台,它允许用户通过简单的描述来快速生成短视频,将文字转化为视觉艺术。以下是该平台的一些关键特性:核心特性:故事即创作:用户可以用心绘出自己的故事,平台将其转化为视频画面。短视频轻松生成:简化的视频制作流程,即使是视频制作的初学者......
  • ssrf+结合redis 写入crontab或者公钥(两种环境)
    REDISredis作为一种数据库其实是会真的将数据写入到内存中的我们利用ssrf请求请求redis实现服务器对自己的公钥或任务计划写入实现无密码登录或反弹bashredis监听所有地址时才能被外部访问否则只能127.0.0.1本地访问而且开启保护模式后会导致目标端口只能本地访问这......
  • 用故事绘就生活:探索星火绘镜Typemovie的艺术魅力
    在快节奏的生活中,我们常常渴望用一种独特的方式记录和分享我们的故事。星火绘镜Typemovie,一个创新的短视频创作平台,以其独特的即时创作功能,让我们的故事以视频的形式轻松呈现。Typemovie的核心魅力在于它的简单易用和创意无限。用户只需通过描述自己的想法,平台就能智能地将这......
  • PKI公钥加密技术与证书的颁发和应用
    目录一PKI概述二公钥加密技术1、数据加密2、数字签名三证书概述1、证书2、证书包含信息3、CA四证书的颁发和应用【图】1、配置证书服务器2、网站服务器申请证书3、证书服务器颁发证书4、网站服务器使用证书5、客户端验证问答题1数据加密、数字签名的作用......
  • C#版本的sha256withRSA 私钥加密 方法
    publicstaticstringSign(stringcontentForSign,stringprivateKey){ //转换成适用于.Net的秘钥 varnetKey=RSAPrivateKeyJava2DotNet(privateKey); varrsa=newRSACryptoServiceProvider(); rsa.FromXmlString(netKey); //创建一个空对象 varrsaClear=newR......
  • C#生成RSA非对称加密公钥私钥以及加密解密
    usingSystem.Security.Cryptography;usingSystem.Text;usingXunit.Abstractions;namespacexUnit.Tests{///<summary>//////</summary>publicclassRsaKeyPairGenerator{privatereadonlyITestOutputHelper_test......