常见证书密钥格式与标准

文章详细介绍了加密领域的一些关键概念,如PEM用于存储加密密钥和证书,ASN.1作为数据结构描述语言,DER为ASN.1数据的编码方式,X.509标准定义了公钥证书格式,PKCS系列标准涉及密钥管理,包括PKCS#7用于签名和加密,PKCS#8存储私钥,PKCS#12则用于交换公私钥对。此外,文章还提到了公钥基础设施PKI和JavaKeyStore在证书管理中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作为一个加密开发者,一定要熟悉证书密钥的各种格式、编码与标准。

PEM

PEM(Privacy-Enhanced Mail,隐私增强邮件) 是一种事实上的文件格式,用于存储和发送加密密钥、证书和其他数据,它基于一组定义“隐私增强邮件”的 1993 IETF标准。

许多密码学标准使用ASN.1来定义它们的数据结构,并使用可分辨编码规则(DER) 序列化这些结构。

PEM 格式通过使用base64对二进制数据进行编码解决了这个问题。PEM 还定义了一个单行页眉,由 -----BEGIN, a label, and -----组成,以及单行页脚,由-----END, a label, and -----组成。标签确定编码消息的类型。常用标签包括 CERTIFICATE, CERTIFICATE REQUEST, PRIVATE KEY and X509 CRL。

-----BEGIN PRIVATE KEY-----

-----END PRIVATE KEY-----

PEM 数据通常存储在带有“.pem”后缀,“.cer”或“.crt”后缀(用于证书)或“.key”后缀(用于公钥或私钥)的文件中。

ASN.1

Abstract Syntax Notation One ( ASN.1 ) 是一种标准接口描述语言用于定义可以跨平台方式序列化和反序列化的数据结构。它广泛用于电信和计算机网络,尤其是密码学。

DER编码

DER(Distinguished Encoding Rules,可分辨编码规则)是BER的一种受限变体,用于为ASN.1描述的数据结构生成明确的传输语法。

X.509

在密码学中,X.509是定义公钥证书格式的国际电信联盟 (ITU)标准。 X.509 证书用于许多 Internet 协议,包括作为HTTPS基础的TLS/SSL,浏览网页的安全协议。它们还用于离线应用程序,例如电子签名。

证书的结构中Subject Public Key Info 字段用来包含公钥。

证书文件的扩展名

X.509 证书有几种常用的文件扩展名。其中一些扩展还用于其他数据,例如私钥。

  • .cer, .crt, .der– 通常采用二进制DER形式,但 Base64 编码的证书也很常见(见.pem上文)

  • .p7b, .p7c–没有数据的PKCS#7 SignedData 结构,只有证书或CRL

  • .p12–

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

salahi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值