IBM Cloud Docs
将加密密钥引入云-标准套餐

将加密密钥引入云-标准套餐

加密密钥包含信息子集,例如可帮助您识别密钥的元数据,以及用于对数据进行加密和解密的密钥资料。

当您使用 IBM Cloud® Hyper Protect Crypto Services 来创建密钥时,服务会代表您生成根植于 Hyper Protect Crypto Services 实例的硬件安全模块 (HSM) 中的密钥资料。 但是,根据您的业务需求,可能需要根据内部解决方案生成密钥资料,然后再通过将密钥导入到 Hyper Protect Crypto Services 中来将内部部署密钥管理基础架构扩展到云。

表 1. 描述导入密钥资料的优点
优点 描述
保留自己的密钥 (KYOK) 如果选择从内部密钥管理基础架构导出对称密钥,那么可以使用 Hyper Protect Crypto Services 将其安全地引入到云。 KYOK 功能可确保您拥有密钥层次结构的根信任,并且除您之外,任何人都无权访问加密密钥。
安全导入根密钥资料 您希望在将密钥导出到云时确保动态密钥资料受到保护。 通过使用导入令牌将根密钥材料安全地导入到 Hyper Protect Crypto Services 服务实例来缓解中间人攻击。

提前计划导入密钥资料

在准备好将根密钥资料导入到服务时,请记住以下注意事项。

查看创建密钥资料的选项
基于您的安全需求,探索创建 256 位对称加密密钥的选项。 例如,可以使用内部密钥管理系统(受经过 FIPS 验证的内部部署硬件安全模块 (HSM) 支持)在将密钥引入到云之前生成密钥资料。 如果要构建概念验证,那么还可以使用密码术工具箱 (例如 OpenSSL ) 来生成可以导入到 Hyper Protect Crypto Services 中以满足测试需要的密钥资料。
选择将密钥资料导入到 Hyper Protect Crypto Services 的选项
根据环境或工作负载所需的安全性级别,从两个用于导入根密钥的选项中进行选择。 缺省情况下,Hyper Protect Crypto Services 使用传输层安全性 (TLS) 1.2 协议加密正在传输的密钥资料。 如果您是首次构建概念验证或试用该服务,那么可以使用此缺省选项将根密钥资料导入到 Hyper Protect Crypto Services 中。 如果工作负载需要 TLS 之外的安全性机制,那么您还可以 使用导入令牌 来加密根密钥资料并将其导入到服务中。
提前计划加密密钥资料
如果选择使用导入令牌对密钥资料进行加密,请确定对密钥资料运行 RSA 加密的方法。 必须使用 PKCS #1 v2.1 标准为 RSA 加密指定的 RSAES_OAEP_SHA_1 加密方案。 查看内部密钥管理系统或内部部署 HSM 的功能来确定您的选项。
提前计划加密现时标志
如果选择使用导入令牌对密钥资料进行加密,那么还必须确定在 Hyper Protect Crypto Services分发的现时标志上运行 AES-GCM 加密的方法。 现时标志充当会话令牌,用于检查请求的原创性,以防止恶意攻击和未经授权的调用。 查看内部密钥管理系统或内部部署 HSM 的功能来确定您的选项。
管理已导入的密钥资料的生命周期
将密钥资料导入服务之后,请记住,您负责管理密钥的整个生命周期。 通过使用 Hyper Protect Crypto Services 密钥管理服务 API,您可以在决定将密钥上载到服务时设置该密钥的到期日期。 但是,如果要 轮换已导入的根密钥,那么必须生成并提供新的密钥资料以作废并替换现有密钥。

使用导入令牌

如果要在将密钥资料导入到 Hyper Protect Crypto Services之前对其进行加密,那么可以使用 Hyper Protect Crypto Services 密钥管理服务 API 为服务实例创建导入令牌。

导入令牌是 Hyper Protect Crypto Services 中的资源类型,用于支持将密钥材料安全导入到服务实例。 通过使用导入令牌的内容对本地密钥材料进行加密,您可以根据指定的策略在根密钥传输到 Hyper Protect Crypto Services 时对其进行保护。 例如,您可以在导入令牌上设置策略,以根据时间和使用计数来限制使用。

运作方式

为服务实例 创建导入令牌 时,Hyper Protect Crypto Services 会从 HSM 生成 4096 位 RSA 密钥对。 当您 检索导入令牌 时,服务会提供可用于将密钥加密并上载到 Hyper Protect Crypto Services的公用密钥。

以下列表描述了导入令牌工作流程。

  1. 发送创建导入令牌的请求。
    1. Hyper Protect Crypto Services 从加密单元 (HSM) 生成 RSA 密钥对。
    2. 根据您在创建时指定的策略,公用密钥可供检索。
    3. 专用密钥变为不可抽取,并且永不离开加密单元。
  2. 发送请求以检索导入令牌。
    1. 您将收到导入令牌内容,包括:
      • 要导入到服务中的加密密钥资料的公用密钥。
      • 用于验证密钥导入请求的现时标志值。
  3. 准备要导入到服务的密钥。
    1. 您可以使用本地密钥管理机制来生成密钥资料。
    2. 使用与您的环境兼容的 AES-GCM 加密方法,使用密钥资料对现时标志值进行加密。
    3. 通过使用与您的环境兼容的 RSA 加密方法,使用公用密钥对密钥资料进行加密。
  4. 发送导入密钥的请求。
    1. 提供由 AES-GCM 算法生成的加密密钥资料,加密现时标志和初始化向量 (IV)。
    2. Hyper Protect Crypto Services 验证请求,解密加密包,并将密钥材料作为根密钥存储在服务实例中。

一次只能为每个服务实例创建一个导入令牌。 要了解有关导入令牌的检索限制的更多信息,请 参阅 Hyper Protect Crypto Services 密钥管理服务 API 参考文档

API 方法

在后台,Hyper Protect Crypto Services 密钥管理服务 API 会驱动导入令牌创建过程。

下表列出了用于为服务实例设置导入令牌的 API 方法。

表 2. 描述密钥管理服务 API 方法
方法 描述
POST api/v2/import_token 创建导入令牌
GET api/v2/import_token 检索导入令牌

下一步