Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 829

PKCS#11

PKCS#11 是什么?

PKCS#11一种被称为 Cryptoki 的标准 C 语言 API,允许应用程序在不依赖厂商专有驱动的情况下使用 HSM、智能卡等加密令牌。


PKCS#11(公钥密码学标准第 11 号)最初由 RSA Laboratories 发布,现由 OASIS 维护,定义了一个名为 Cryptoki 的平台无关 C 接口,用于访问加密令牌。令牌通过插槽、会话和对象(密钥、证书、数据)对外暴露,C_Sign、C_Encrypt、C_Wrap、C_DeriveKey 等操作均在设备内部执行,私钥不会离开硬件。它是 TLS 服务器(通过 pkcs11-provider 的 OpenSSL)、PKI 软件、代码签名流水线和 KMIP 客户端访问 HSM、智能卡及 TPM 的事实标准。当前版本 PKCS#11 v3.1 增加了 Ed25519、EdDSA 以及后量子算法等现代原语。

示例

  1. 01

    OpenSSL 通过 pkcs11-provider 调用 YubiHSM 2 来签发 TLS 证书请求。

  2. 02

    代码签名 CI 任务对 AWS CloudHSM 中的密钥调用 C_Sign,而无需导出该密钥。

常见问题

PKCS#11 是什么?

一种被称为 Cryptoki 的标准 C 语言 API,允许应用程序在不依赖厂商专有驱动的情况下使用 HSM、智能卡等加密令牌。 它属于网络安全的 密码学 分类。

PKCS#11 是什么意思?

一种被称为 Cryptoki 的标准 C 语言 API,允许应用程序在不依赖厂商专有驱动的情况下使用 HSM、智能卡等加密令牌。

PKCS#11 是如何工作的?

PKCS#11(公钥密码学标准第 11 号)最初由 RSA Laboratories 发布,现由 OASIS 维护,定义了一个名为 Cryptoki 的平台无关 C 接口,用于访问加密令牌。令牌通过插槽、会话和对象(密钥、证书、数据)对外暴露,C_Sign、C_Encrypt、C_Wrap、C_DeriveKey 等操作均在设备内部执行,私钥不会离开硬件。它是 TLS 服务器(通过 pkcs11-provider 的 OpenSSL)、PKI 软件、代码签名流水线和 KMIP 客户端访问 HSM、智能卡及 TPM 的事实标准。当前版本 PKCS#11 v3.1 增加了 Ed25519、EdDSA 以及后量子算法等现代原语。

如何防御 PKCS#11?

针对 PKCS#11 的防御通常结合技术控制与运营实践,详见上方完整定义。

PKCS#11 还有哪些其他名称?

常见的别称包括: Cryptoki, PKCS11。

相关术语