什么是 PKCSPKCSPublic-Key Cryptography Standards公钥加密标准是由 RSA 实验室RSA Laboratories于 1990 年代初与全球安全开发者共同制定的一系列标准。当时公钥密码学如 RSA刚开始商业化但缺乏统一的实现规范。PKCS 的诞生解决了互操作性问题使不同的软件和系统能够安全地交换证书、密钥和加密数据。核心 PKCS 规范一览PKCS 系列最初包含 15 个标准PKCS #1 到 PKCS #15虽然部分标准已被合并或由 IETF 的 RFC 替代但以下几个在现代网络安全中依然至关重要1. PKCS #1RSA 加密标准 (RSA Cryptography Standard)核心作用定义了 RSA 公钥和私钥的数学结构以及 RSA 加密、解密、签名和验签的算法与填充模式如 PKCS#1 v1.5、OAEP、PSS。地位是现代 HTTPS/TLS 证书和 SSH 的底层基石。2. PKCS #7密码消息语法标准 (Cryptographic Message Syntax)核心作用定义了传输加密或签名数据的通用格式。常见应用广泛用于S/MIME安全电子邮件、数字签名如 Windows 代码签名以及包中继。它的现代演进版由 IETF 维护称为CMS (RFC 5652)。3. PKCS #11密码令牌接口标准 (Cryptographic Token Interface)核心作用定义了一个名为Cryptoki的 API 接口。它允许应用程序与硬件安全模块HSM、智能卡Smart Cards或 USB Key 等外部硬件密码设备进行交互而无需关心硬件的底层驱动。地位硬件安全领域的绝对行业标准。4. PKCS #12个人信息交换语法标准 (Personal Information Exchange Syntax)核心作用定义了一种文件格式用于将私钥与对应的公钥证书打包存储在一起并用密码进行保护。文件后缀.pfx或.p12。常见应用在服务器间迁移 SSL 证书或在浏览器中导入个人证书。其他重要 PKCS 规范汇总标准编号名称与核心用途当前状态 / 替代方案PKCS #3Diffie-Hellman 密钥交换标准已部分融入 TLS 协议规范PKCS #5基于密码的加密标准定义了PBKDF2密码哈希算法广泛用于金钥衍生和密码存储PKCS #8私钥信息语法标准定义了私钥的存储格式如通常看到的---BEGIN PRIVATE KEY---现代私钥存储的标准格式PKCS #9扩展属性类型定义了证书和签名中使用的属性如电邮地址、签名时间等由 IETF 维护PKCS #10证书请求语法标准定义了CSR证书签名请求的格式申请 SSL 证书时的标准提交格式注PKCS #2 和 #4 已并入 PKCS #1PKCS #6 已被 X.509 v3 证书替代PKCS #13 和 #14 涉及椭圆曲线和伪随机数目前较少单独提及PKCS #15 规范了智能卡上的密码信息布局。总结PKCS 系列规范如同密码学世界的“度量衡”。虽然诞生于 RSA 公司但如今它们大多已转化为 IETF 的 RFC 国际标准。正是因为有了 PKCS 的规范数字证书、数据加密和硬件安全设备才能在庞大的互联网生态中实现无缝的互联互通。
PKCS(公钥加密标准)系列规范介绍
什么是 PKCSPKCSPublic-Key Cryptography Standards公钥加密标准是由 RSA 实验室RSA Laboratories于 1990 年代初与全球安全开发者共同制定的一系列标准。当时公钥密码学如 RSA刚开始商业化但缺乏统一的实现规范。PKCS 的诞生解决了互操作性问题使不同的软件和系统能够安全地交换证书、密钥和加密数据。核心 PKCS 规范一览PKCS 系列最初包含 15 个标准PKCS #1 到 PKCS #15虽然部分标准已被合并或由 IETF 的 RFC 替代但以下几个在现代网络安全中依然至关重要1. PKCS #1RSA 加密标准 (RSA Cryptography Standard)核心作用定义了 RSA 公钥和私钥的数学结构以及 RSA 加密、解密、签名和验签的算法与填充模式如 PKCS#1 v1.5、OAEP、PSS。地位是现代 HTTPS/TLS 证书和 SSH 的底层基石。2. PKCS #7密码消息语法标准 (Cryptographic Message Syntax)核心作用定义了传输加密或签名数据的通用格式。常见应用广泛用于S/MIME安全电子邮件、数字签名如 Windows 代码签名以及包中继。它的现代演进版由 IETF 维护称为CMS (RFC 5652)。3. PKCS #11密码令牌接口标准 (Cryptographic Token Interface)核心作用定义了一个名为Cryptoki的 API 接口。它允许应用程序与硬件安全模块HSM、智能卡Smart Cards或 USB Key 等外部硬件密码设备进行交互而无需关心硬件的底层驱动。地位硬件安全领域的绝对行业标准。4. PKCS #12个人信息交换语法标准 (Personal Information Exchange Syntax)核心作用定义了一种文件格式用于将私钥与对应的公钥证书打包存储在一起并用密码进行保护。文件后缀.pfx或.p12。常见应用在服务器间迁移 SSL 证书或在浏览器中导入个人证书。其他重要 PKCS 规范汇总标准编号名称与核心用途当前状态 / 替代方案PKCS #3Diffie-Hellman 密钥交换标准已部分融入 TLS 协议规范PKCS #5基于密码的加密标准定义了PBKDF2密码哈希算法广泛用于金钥衍生和密码存储PKCS #8私钥信息语法标准定义了私钥的存储格式如通常看到的---BEGIN PRIVATE KEY---现代私钥存储的标准格式PKCS #9扩展属性类型定义了证书和签名中使用的属性如电邮地址、签名时间等由 IETF 维护PKCS #10证书请求语法标准定义了CSR证书签名请求的格式申请 SSL 证书时的标准提交格式注PKCS #2 和 #4 已并入 PKCS #1PKCS #6 已被 X.509 v3 证书替代PKCS #13 和 #14 涉及椭圆曲线和伪随机数目前较少单独提及PKCS #15 规范了智能卡上的密码信息布局。总结PKCS 系列规范如同密码学世界的“度量衡”。虽然诞生于 RSA 公司但如今它们大多已转化为 IETF 的 RFC 国际标准。正是因为有了 PKCS 的规范数字证书、数据加密和硬件安全设备才能在庞大的互联网生态中实现无缝的互联互通。