组件和概念- Unified Key Orchestrator 套餐
在可以使用 IBM Cloud® Hyper Protect Crypto Services 来管理加密密钥和保护数据之前,请学习 Hyper Protect Crypto Services的基本组件和概念。
密钥管理服务
了解与 Hyper Protect Crypto Services 密钥管理功能 相关的概念,以管理加密密钥。 该列表以最基本的概念开头。
根密钥
根密钥 (也称为客户根密钥 (CRK)) 是 Hyper Protect Crypto Services中的主资源。 它们是对称密钥打包密钥,用作信任的根,用于打包 (加密) 和解包 (解密) 存储在数据服务中的其他数据加密密钥 (DEK)。 通过 Hyper Protect Crypto Services,您可以创建,存储和管理根密钥的生命周期。 在 Hyper Protect Crypto Services 中创建的根密钥是对称 256 位 AES 密钥。 与标准密钥不同,根密钥永远不能离开 Hyper Protect Crypto Services 服务的边界。 要了解更多信息,请参阅 管理密钥。
标准密钥
标准密钥是 Hyper Protect Crypto Services 中的另一个资源,用于直接对数据进行加密和解密。 您可以按照管理密钥中的步骤来管理标准密钥。
数据加密密钥
数据加密密钥 (DEK) 是用于数据加密的密钥。 它们由用户拥有的应用程序提供,用于对存储在应用程序中的数据进行加密。 您在 Hyper Protect Crypto Services 中管理的根密钥用作包装密钥以保护 DEK。
包络加密
包络加密是使用 DEK 对数据进行加密,然后使用可完全管理的根密钥对 DEK 进行加密的做法。
云硬件安全模块
本部分涵盖与 Hyper Protect Crypto Services Cloud Hardware Security Module(HSM)功能部件 相关的概念。 该列表以最基本的概念开头。
硬件安全模块
硬件安全模块 (HSM) 是一种物理设备,用于保护和管理用于强认证的数字密钥,并提供加密处理。 IBM Cloud Hyper Protect Crypto Services 的 HSM 已进行 FIPS 140-2 4 级认证,这是加密硬件的最高级别安全性。 在此安全级别,物理安全性机制围绕加密模块提供完整的保护边界,旨在检测所有未授权的物理访问尝试并对其做出响应。
加密单元
加密单元是表示 HSM 以及专用于 HSM for cryptography 的相应软件堆栈的单个单元。 在 Hyper Protect Crypto Services中,提供了以下类型的加密单元:
-
操作加密单元
创建 Hyper Protect Crypto Services 实例时,您指定的加密单元数是可操作加密单元数。 为了实现高可用性和灾难恢复,您需要设置至少两个可操作的加密单元。 这些操作加密单元位于服务实例所在区域的不同 可用性区域 中。 操作加密单元用于管理加密密钥和执行加密操作。 每个操作加密单元最多可管理 5000 个数字密钥。
-
恢复加密单元
如果在马德里 (
eu-es
) 以外的受支持区域中创建服务实例,那么会自动将两个恢复加密单元分配给服务实例,而不会产生额外成本; 一个在同一区域中,另一个在该区域的灾难恢复区域中。 恢复加密单元用于生成随机主密钥,然后将该密钥安全地导出到可操作的加密单元和其他恢复加密单元以 初始化服务实例。恢复加密单元还可用作备份加密单元,用于保存操作加密单元所使用的主密钥值的副本。 如果主密钥丢失或损坏,那么可以使用已签名的 TKE 管理命令 从恢复加密单元恢复主密钥。
如果使用智能卡来装入主密钥,那么恢复加密单元不适用并且可以忽略。 在这种情况下,主密钥的备份依赖于智能卡的备份。
-
故障转移加密单元
故障转移加密单元备份另一个区域中的操作加密单元和密钥库,并初始化以在发生灾难时提供快速故障转移。 故障转移加密单元 收取额外费用,此选项现在仅在
us-south
和us-east
区域中可用,这意味着如果在这两个区域中的任何一个区域中创建实例,那么故障转移加密单元位于另一个区域中。 有关在区域灾难中使用故障转移加密单元的更多信息,请参阅 使用故障转移加密单元复原数据。
管理员
可将管理员添加到目标加密单元中,以向加密单元发出命令。 您最多可以将 8 个管理员添加到一个加密单元以提高安全性。 每个管理员拥有一个专用签名密钥,用于进行身份认证。
签名密钥
管理员必须使用签名密钥对向加密单元发出的任何命令进行签名。 在 Hyper Protect Crypto Services 中创建的签名密钥是 P521 椭圆曲线 (EC) 密钥。 签名密钥的专用部分用于创建签名。 公共部分置于安装在目标加密单元中的证书中,以定义加密单元管理员。 在 imprint mode 中发出的命令不需要使用任何签名密钥进行签名。
印记模式
分配给 IBM Cloud 用户的加密单元将以称为 印记方式的已清除状态启动。 大多数加密单元操作在印记方式下禁用,而在印记方式下的加密单元不安全。 您可以使用已签名的命令以印记方式添加管理员并退出印记方式。 在加密单元退出印记方式后,必须对用于配置加密单元的所有命令进行签名。 必须先退出印记方式,然后才能装入 主密钥。
定额认证
定额认证是由设置数量的加密单元管理员核准操作的方法。 某些敏感操作需要足够数量的加密单元管理员来输入其凭证。 定额认证可确保没有任何单个人员可以在加密单元上进行关键更改。 相反,必须有最少数量的加密单元管理员 (至少两个) 配合执行这些操作。 定额认证需要多个加密单元管理员来核准操作,这将在加密单元上启用额外的保护层。
签名阈值
加密单元的签名阈值控制运行命令所需的管理签名数。 在印记方式下,签名阈值设置为零。 要退出印记方式,请将签名阈值设置为大于零的值。 将加密单元归零时,会将签名阈值重置为零。
加密单元上有两种类型的签名阈值。 主签名阈值控制运行大多数管理命令所需的签名数。 撤销签名阈值控制除去管理员所需的签名数。 某些命令只需要一个签名,而不考虑如何设置签名阈值。
将签名阈值设置为大于 1 的值将允许来自多个管理员的定额认证以执行敏感操作。 可以设置签名阈值和撤销签名阈值的最大值为 8,这也是可以添加到加密单元的最大管理员数。
主密钥
主密钥 (也称为 HSM 主密钥) 用于加密密钥存储的服务实例。 它是对称 256 位 AES 密钥。 通过主密钥,您将获得云 HSM 的所有权,并拥有用于加密整个加密密钥层次结构的信任根,包括密钥管理密钥库中的根密钥和标准密钥以及 EP11 密钥库中的企业 PKCS #11 (EP11) 密钥。 您需要先配置主密钥,然后才能管理加密密钥。 一个服务实例只能有一个主密钥。 如果删除服务实例的主密钥,那么可以有效加密所有使用服务中管理的密钥加密的数据。
主密钥部件
如果使用密钥部件文件或使用智能卡与管理实用程序一起初始化服务实例,那么主密钥由两个或三个主密钥部件组成。 在 Hyper Protect Crypto Services 中创建的主密钥部件是对称 256 位 AES 密钥。 出于安全性考虑,每个密钥部件可以由不同的人员拥有。 当使用 IBM Cloud TKE CLI 插件 来装入主密钥时,密钥部件存储在工作站密钥部件文件中。 当 Hyper Protect Crypto Services 管理实用程序 用于装入主密钥时,密钥部件存储在 智能卡 上。 密钥部件所有者需要是唯一知道密钥部件的文件密码或智能卡个人标识号 (PIN) 的人员。
IBM Cloud 可信密钥条目 CLI 插件
可信密钥条目 (TKE) 命令行界面 (CLI) 插件是使用 IBM Cloud CLI 的 CLI 插件。 TKE 插件提供了一组用于管理分配给 IBM Cloud 用户帐户的加密单元的函数。 您可以使用 TKE 插件来设置管理员,并根据中等安全级别的需求来装入主密钥。 TKE CLI 插件提供了两种方法来初始化服务实例: 使用密钥部件文件初始化服务实例 和 使用恢复加密单元初始化服务实例。 有关完整的命令参考,请参阅 Trusted Key Entry CLI 插件参考。
管理实用程序
“管理实用程序”提供了另一种配置服务实例的方法,这些服务实例具有存储在具有最高安全级别的智能卡上的签名密钥和主密钥部件。 要使用管理实用程序,必须订购 IBM支持的智能卡读卡器和智能卡。 有关安装和配置管理实用程序的详细指示信息,请参阅 设置智能卡和管理实用程序 以及 使用智能卡和管理实用程序初始化服务实例。
智能卡
一张智能卡看起来就像一张带有嵌入式芯片的信用卡。 该芯片可执行一组有限的加密操作,并装入定制软件。 在“管理实用程序”中,“智能卡实用程序”装入智能卡上的定制软件以创建两种类型的智能卡:
- 认证中心智能卡-建立一组可协同工作的智能卡,称为智能卡区域。
- 企业 PKCS #11 (EP11) 智能卡-保留管理员签名密钥和最多 85 个主密钥部件。 使用 EP11 智能卡,您可以使用存储在智能卡上的专用签名密钥对命令进行签名,并对主密钥部件进行加密以传递到加密单元。
智能卡受个人识别号 (PIN) 保护,在智能卡执行操作之前,必须在智能卡读卡器 PIN 板上输入个人识别号 (PIN)。 EP11 智能卡具有单个 PIN。 认证中心智能卡有两个 PIN,必须输入这两个 PIN 才能启用操作。
在 EP11 智能卡上,如果输入了三次不正确的 PIN,那么智能卡将被阻塞,无法用于需要 PIN 输入的操作。 可以使用“智能卡实用程序”来取消阻止 EP11 智能卡。 您需要用于初始化 EP11 智能卡以取消阻塞 EP11 智能卡的认证中心智能卡。 要取消阻止 EP11 智能卡,请从菜单中选择 EP11 智能卡 > 取消阻止 EP11 智能卡,然后遵循提示。
如果输入了 5 次不正确的 PIN,那么认证中心智能卡将被阻塞。 如果认证中心智能卡被阻塞,那么无法将其取消阻塞。
智能卡读卡器
智能卡读卡器是连接到工作站并允许工作站与智能卡通信的设备。 要访问智能卡,必须在智能卡读卡器中插入智能卡。 大多数智能卡操作都需要在智能卡读卡器 PIN 板上输入智能卡 PIN。
必须先在工作站上安装智能卡读卡器的驱动程序,然后才能使用智能卡读卡器。 有关更多信息,请参阅 安装智能卡读卡器驱动程序。
智能卡实用程序
智能卡实用程序是作为管理实用程序的一部分安装的两个应用程序之一。 它设置和管理可信密钥条目 (TKE) 应用程序所使用的智能卡。
“可信密钥输入”应用程序
“可信密钥条目”(TKE) 应用程序是作为管理实用程序的一部分安装的两个应用程序之一。 它使用智能卡在服务实例中装入主密钥,并对服务实例执行其他配置任务。
保留自己的密钥
Hyper Protect Crypto Services 支持“保留自己的密钥”(KYOK) 功能。 您可以配置主密钥以获取对云 HSM 的完全控制,以便您对可带来,控制和管理的加密密钥具有完全控制和权限。 除您有权访问加密密钥外,任何人都无权访问加密密钥。
PKCS #11
公用密钥密码术标准 (PKCS) #11 API 将独立于平台的 API 定义到加密令牌,例如 HSM 和智能卡。 使用 PKCS #11 的现有应用程序可以通过使用安全密钥密码术和无状态接口从增强的安全性中获益,这使加密操作更加高效。 有关更多信息,请参阅 PKCS #11 API。
隐斯基
PKCS #11 标准中定义的加密令牌接口。 Cryptoki 遵循简单的基于对象的方法,解决技术独立和资源共享的目标。
PKCS #11 库
用于实现 PKCS #11 标准中指定的 Cryptoki API 函数的 PKCS #11 库。 通过 PKCS #11 库,应用程序可以使用 PKCS #11 API 来访问 Hyper Protect Crypto Services 云 HSM 以执行加密操作。 要了解有关如何设置库的更多信息,请参阅 使用 PKCS #11 API 执行加密操作。
Cryptoki 令牌
由 Cryptoki 定义的加密设备的逻辑视图。 有关更多信息,请参阅 PKCS #11 Cryptographic Token Interface Usage Guide Version 2.40-令牌的逻辑视图。
Cryptoki 会话
应用程序与令牌之间的逻辑连接。 Cryptoki 要求应用程序使用令牌打开一个或多个会话,以获取对令牌的对象和功能的访问权。 会话可以是读/写 (R/W) 会话或只读 (R/O) 会话。 有关更多信息,请参阅 PKCS 简介 #11 -会话。
Cryptoki 对象
存储在令牌上的项。 对象可以是数据,证书或密钥。 数据对象由应用程序定义。 证书对象存储证书。 密钥对象存储密钥。 对象的每个特征都在 属性中定义。 有关更多信息,请参阅 PKCS 简介 #11 -密钥对象。
机制
实现加密操作的过程。
企业 PKCS #11
Enterprise PKCS #11 (EP11) 专为寻求支持开放式标准和增强安全性的客户而设计。 EP11 库提供了与业界标准 PKCS #11 API 类似的无状态接口。 在其上运行加密单元的 HSM 支持 EP11 库,因此用户可以通过 gRPC 调用 EP11 API 以进行自己的密钥管理和数据加密。 有关更多信息,请参阅 Enterprise PKCS #11(EP11)Library structure 文档。
gRPC
gRPC 是一种现代开放式源代码高性能远程过程调用 (RPC) 框架,可以在数据中心之内和之间连接服务,以实现负载均衡、跟踪、运行状况检查和认证。 应用程序通过通过 gRPC远程调用 EP11 API 来访问 Hyper Protect Crypto Services EP11 库。 有关 gRPC的更多信息,请参阅 gRPC 文档。
通过 gRPC 执行的企业 PKCS #11
IBM Cloud® Hyper Protect Crypto Services 提供了一组基于 gRPC API 调用 (也称为 GREP11) 的企业 PKCS #11 (EP11),通过这些调用在云 HSM 中执行所有加密功能。 EP11 over gRPC 是用于云上加密操作的无状态接口。 有关 GREP11 API 的更多信息,请参阅 通过 gRPC 和 GREP11 API 参考简介 EP11。
Unified Key Orchestrator
本部分涵盖与 Unified Key Orchestrator 相关的概念。
Unified Key Orchestrator
Unified Key Orchestrator 是用于多云和混合云密钥编排的公共云控制平面。 作为 IBM Cloud® Hyper Protect Crypto Services的一部分,它根据 NIST 建议提供密钥生命周期管理,并将密钥安全传输到内部密钥库和外部密钥库。
保险库
保险库文件是单个存储库,用于通过 Identity and Access Management (IAM) 控制用户或访问组对密钥和密钥库的访问。 只能在保险库文件中创建受管密钥或内部密钥库。 当您连接到外部密钥库时,需要将其分配给保险库文件。 要将受管密钥用于加密和解密,需要将其安装在同一保险库文件中的一个或多个密钥库中。 保险库文件使受管密钥的所有安装保持同步。
密钥模板
密钥模板指定要创建的受管密钥的属性,例如命名约定,密钥算法和密钥长度。
受管密钥
受管密钥是在保险库文件中创建并分配给保险库文件的密钥。 仅当在至少一个密钥库中激活受管密钥时,才能将其用于加密和解密。
密钥库
需要将密钥库分配给保险库文件。 如果它是内部密钥库,那么只能在保险库文件中创建。
内部密钥库
内部密钥库是在 Hyper Protect Crypto Services 实例中创建的密钥库,用于在服务实例中存储密钥。 您最多可以创建五个免费内部密钥库来管理密钥。
外部密钥库
外部密钥库是不在 Hyper Protect Crypto Services 实例中的密钥库。 您可以将服务实例连接到 IBM Cloud 上的另一个密钥管理实例,例如 Hyper Protect Crypto Services,Key Protect或 Satellite上的 Key Protect (可能位于另一个区域中)。 或者,可以将服务实例从其他云提供者 (例如,Microsoft Azure Key Vault,AWS Key Management Service (KMS) 和 Google Cloud KMS) 连接到外部密钥库。