IBM Cloud Docs
介绍云 HSM- Unified Key Orchestrator 套餐

介绍云 HSM- Unified Key Orchestrator 套餐

IBM Cloud® Hyper Protect Crypto Services 由基于云的 FIPS 140-2 级别 4 认证的硬件安全模块 (HSM) 组成,该模块提供标准化 API 来管理加密密钥和执行加密操作。

什么是云 HSM?

硬件安全模块 (HSM) 是一种物理设备,用于保护和管理用于强认证的数字密钥,并提供加密处理。 HSM 通过在防篡改设备中安全地管理,存储和保护密钥来保护加密基础结构。

Hyper Protect Crypto Services 由基于云的专用 HSM 组成,用于管理加密密钥和执行加密操作。 经 FIPS 140-$tag1 级别 4 认证的 HSM 为云行业的密码术提供最高级别的安全性。 通过“保留自己的密钥”(KYOK) 功能,您可以获取云 HSM 的所有权,这将保证任何人 (包括云管理员) 都无权访问您的密钥。 通过这种方式,您可以从基于硬件的最高级别加密中获益,而无需在工作站或本地服务器上部署真正的 HSM。

要使用 Hyper Protect Crypto Services 云 HSM 来保护密钥和数据,请首先通过装入 主密钥An encryption key that is used to protect a crypto unit. The master key provides full control of the hardware security module and ownership of the root of trust that encrypts the chain keys, including the root key and standard key.来控制 HSM。 主密钥作为密钥包装密钥,拥有用于加密整个加密密钥层次结构的信任根。 有关更多信息,请参阅 初始化服务实例

通过访问云 HSM 来执行加密操作

Hyper Protect Crypto Services 提供了一组在云 HSM 中执行的加密功能。 您可以执行加密操作,例如密钥生成,数据加密和签名验证。 要执行此操作,请使用 PKCS #11 API 或 Enterprise PKCS #11 通过 gRPC (GREP11) 访问云 HSM API。

使用 PKCS #11 API 访问云 HSM

公用密钥密码术标准(PKCS)#11 是一种行业标准,用于定义独立于平台的 API (称为 Cryptoki),用于存储加密信息和执行加密操作的设备 (例如 HSM)。 通过 Hyper Protect Crypto Services,您可以使用标准 PKCS #11 API 通过 PKCS #11 库访问云 HSM。 库将应用程序连接到云 HSM 以执行加密操作。

通过 PKCS #11 API 的支持,您无需更改使用 PKCS #11 标准的现有应用程序。 PKCS #11 库接受来自应用程序的 PKCS #11 API 请求,并远程访问云 HSM 以执行相应的加密功能。 有关 PKCS #11 API 的更多信息,请参阅 PKCS 简介 #11

使用 GREP11 API 访问云 HSM

除了 PKCS #11 API 外,您还可以使用 Enterprise PKCS #11 over gRPC (GREP11) API 来访问 Hyper Protect Crypto Services 云 HSM。 Enterprise PKCS #11(EP11) 是在 Hyper Protect Crypto Services 云 HSM 中启用的 IBM支持的加密 API。 EP11 专为寻求支持开放式标准和增强安全性的用户而设计。 EP11 库 提供了各种通用加密功能,并提供了类似于 PKCS #11 API 的接口。 使用 PKCS #11 的现有应用程序可受益于增强的安全性,因为可以轻松迁移这些应用程序以满足 EP11 需求。

Hyper Protect Crypto Services 利用 gRPC 来启用对云 HSM 的远程应用程序访问。gRPC 是一个现代开放式源代码高性能远程过程调用 (RPC) 框架,可连接数据中心内和数据中心之间的服务,以实现负载均衡,跟踪,运行状况检查和认证。 通过 gRPC,应用程序可以远程访问 Hyper Protect Crypto Services 云 HSM 以调用 EP11 加密功能。 有关 GREP11 API 的更多信息,请参阅 基于 gRPC 的 EP11 简介。

通过 PKCS #11 和 GREP11 API,您可以执行远程加密过程调用,并在缺省情况下施加消息大小限制。 最大接收消息大小为 64 MB,外发消息大小没有限制。

将 PKCS #11 API 与 GREP11 API 进行比较

PKCS #11 API 和 GREP11 API 都可访问由 Hyper Protect Crypto Services 云 HSM 启用的 EP11 库以执行加密功能。 下图说明了与云 HSM 交互的两个选项。

使用 PKCS #11 API 或 GREP11 API 执行加密操作
图 1。 使用 PKCS #11 API 或 GREP11 API
执行加密操作

与 GREP11 API 相比,标准 PKCS #11 API 的实现支持可移植应用程序并提供更广泛的加密操作。 下表显示了两个选项之间的主要差异。

表 1. 将 PKCS #11 API 与 GREP11 API 进行比较
视角 PKCS #11 API GREP11 API
接口实现 有状态接口。 根据隐式状态 (例如,会话状态和用户登录状态),API 请求的结果可能有所不同。 在有状态情况下,数据存储在主机上。 无状态接口。 API 请求的结果始终保持不变。 在无状态情况下,主机上不会存储任何数据。
先前安装 您需要首先在本地工作站上安装 PKCS #11 库,以访问 Hyper Protect Crypto Services 云 HSM。 无需额外安装即可访问 Hyper Protect Crypto Services 云 HSM。
应用程序迁移 如果应用程序使用标准 PKCS #11 API,那么不需要专门针对 EP11 或 gRPC修改现有应用程序。 为了使用 GREP11 API,您需要确保应用程序是根据 EP11 需求和 gRPC 规范开发的。
认证和访问管理 PKCS #11 库具有一组用于认证的标准用户类型。 您需要在独立配置文件中定义这些用户类型,并为不同的用户类型分配相应的 IBM Cloud Identity and Access Management (IAM) 角色以进行访问管理。 有关更多信息,请参阅 设置 PKCS #11 用户类型的最佳实践 GREP11 API 使用标准 IAM 角色来定义相应的访问权。 有关更多信息,请参阅管理用户访问权
其他配置文件 必需。 您需要配置此文件中包含用户角色的所有参数,以确保成功部署 PKCS #11 库。 有关更多信息,请参阅 配置文件模板 不是必需的。 可以设置连接 Hyper Protect Crypto Services 云 HSM 所需的参数以及应用程序代码。
密钥库 由 Hyper Protect Crypto Services提供。 使用 PKCS #11 API 生成的密钥受主密钥保护,并存储在云数据库中。 未由 Hyper Protect Crypto Services提供。 您需要将 GREP11 API 生成的密钥存储在本地工作站或其他设备上。
受支持的加密操作

PKCS #11 API 支持大多数标准 PKCS #11 函数:

  • 一般用途。
  • 插槽和令牌管理。
  • 会话管理
  • 对象管理。
  • 生成密钥。
  • 打包和解包密钥。
  • 派生密钥。
  • 对数据进行加密和解密。
  • 对消息进行签名和验证。
  • 创建消息摘要。
  • 检索机制信息。
  • 检索和设置键属性。

GREP11 API 不支持通用函数和会话管理函数。 它支持大部分 EP11 加密功能:

  • 生成密钥。
  • 打包,解包和重新打包密钥。
  • 派生密钥。
  • 对数据进行加密和解密。
  • 对消息进行签名和验证。
  • 创建消息摘要。
  • 检索机制信息。
  • 检索和设置键属性。