初始化服务实例- Unified Key Orchestrator 套餐
需要先初始化服务实例,然后才能使用 IBM Cloud® Hyper Protect Crypto Services 来管理加密密钥和执行加密操作。
服务实例初始化是装入主密钥的过程,以便您可以获取 Hyper Protect Crypto Services 的云 硬件安全模块(HSM)A physical appliance that provides on-demand encryption, key management, and key storage as a managed service. 的所有权,并拥有用于加密整个加密密钥层次结构的信任根。
要初始化服务实例,您需要为 加密单元A single unit that represents a hardware security module and the corresponding software stack that is dedicated to the hardware security module for cryptography. 管理员创建 签名密钥An encryption key that is used by the crypto unit administrator to sign commands that are issued to the crypto unit.,设置定额认证阈值以退出 印记方式An operational mode in which crypto units are assigned to a user.,并将 主密钥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 实例时至少分配两个加密单元以实现高可用性。 加密单元位于您在创建服务实例时选择的区域内的不同可用性区域中。 需要配置服务实例中的所有加密单元。 如果无法访问一个可用性区域,那么可以互换使用服务实例中的加密单元。 加密单元包含用于加密密钥存储器内容的主密钥,包括密钥管理密钥库中的根密钥和标准密钥以及 EP11 密钥库中的企业 PKCS #11 (EP11) 密钥。
要为加密单元发出命令以执行操作,您需要将管理员分配给加密单元。 每个管理员都有一个用于身份认证的关联签名密钥。 以下流程图显示如何创建签名密钥并将其分配给具有两个加密单元的服务实例。
通过执行以下过程来创建和分配签名密钥:
- 管理员创建签名密钥对。 专用密钥部件和公用密钥部件存储在本地工作站或智能卡上,具体取决于您初始化服务实例的方式。
- 通过将公用签名密钥部件分配给加密单元来添加管理员。 公用密钥部件放置在安装在目标加密单元中的证书中,以定义加密单元管理员。
了解印记方式和签名阈值
加密单元以称为“印记方式”的明确状态启动。 处于印记方式的加密单元不太安全,因为针对处于印记方式的加密单元的操作不需要使用任何管理员签名密钥进行签名。 分配加密单元管理员后,可以设置签名阈值以控制运行命令所需的管理员签名数。 在印记方式下,签名阈值设置为零。 要退出印记方式并保护加密单元,请将签名阈值设置为大于零的值。
加密单元上有两种类型的签名阈值。 主签名阈值控制运行大多数管理命令所需的签名数。 撤销签名阈值控制除去管理员所需的签名数。 某些命令只需要一个签名,而不考虑如何设置签名阈值。
将签名阈值设置为大于 1 的值将允许来自多个管理员的定额认证以执行敏感操作。 可以设置签名阈值和撤销签名阈值的最大值为 8,这也是可以添加到加密单元的最大管理员数。
配置加密单元时,系统会根据操作类型以及加密单元是否处于印记方式,自动提示您输入所需的签名数。 作为参考,下表包含每个操作的必需签名数。
操作 | 命令 | 印记方式下的必需签名 | 离开印记方式后所需的签名 |
---|---|---|---|
添加 | |||
管理员 | tke cryptounit-admin-add |
不需要签名。 | 当前签名阈值。 |
除去管理员 | tke cryptounit-admin-rm |
不需要签名。 | 当前撤销阈值。 |
设置签名阈值 | tke cryptounit-thrhld-set |
离开印记方式时,新的签名阈值。 | 当前签名阈值。 |
清除新的主密钥寄存器 | tke cryptounit-mk-clrnew |
不允许。 | 一个签名。 |
清除当前主密钥寄存器 | tke cryptounit-mk-clrcur |
不允许。 | 一个签名。 |
装入新的主密钥寄存器 | tke cryptounit-mk-load |
不允许。 | 每个密钥部件一个签名。 此命令生成一个导入器密钥,该密钥还需要一个签名。 同一管理员可用于所有签名。 |
落实新的主密钥寄存器 | tke cryptounit-mk-commit |
不允许。 | 当前签名阈值。 |
立即设置 (完成主密钥寄存器) | tke cryptounit-mk-setimm |
不允许。 | 一个签名。 |
设置控制点 | tke cryptounit-cp-btc tke cryptounit-cp-eddsa tke cryptounit-cp-sig-other |
不允许。 | 当前签名阈值。 |
将加密单元归零 | tke cryptounit-zeroize | 不需要签名。 | 一个签名。 |
了解主密钥
在加密单元退出印记方式后,您可以将主密钥装入到加密单元。 主密钥用于对密钥存储器中的数据进行加密。 通过主密钥,您拥有对整个密钥层次结构进行加密的信任根,包括密钥管理密钥库中的根密钥和标准密钥,以及 EP11 密钥库中的企业 PKCS #11 (EP11) 密钥。 每个服务实例只有一个主密钥。
要装入主密钥,每个加密单元都有两个主密钥寄存器: 一个新的主密钥寄存器和一个当前主密钥寄存器。 当前主密钥寄存器中的值用于加密用户密钥存储器的内容。 新的主密钥寄存器用于更改 主密钥轮换 的当前主密钥寄存器中的值。
以下流程图说明主密钥注册状态如何更改以及如何装入主密钥。
在图表中,每个加密单元通过以下步骤装入主密钥:
- 使用主密钥装入新的主密钥寄存器。 装入主密钥后,新的主密钥寄存器处于
Full uncommitted
状态。 - 落实新的主密钥寄存器。 落实后,新的主密钥寄存器处于
Full committed
状态。 - 激活当前主密钥寄存器。 通过执行此操作,将新的主密钥寄存器值复制到当前主密钥寄存器中,并清除新的主密钥寄存器。
下一步
根据您的业务需求和安全需求,Hyper Protect Crypto Services 为您提供了两个工具和三个选项来初始化服务实例。 有关更多信息,请参阅 介绍服务实例初始化方法。