1

我需要保护用于签署区块链交易的私钥。在我们评估使用 HSM(硬件安全模块)的选项时,我同样想知道 Google Cloud KMS 的适用性。如果您能回答我的以下问题,我们将非常感谢您的帮助 :)

  1. 我们可以在 Google Cloud KMS 中保存可能在外部生成的密钥吗?
  2. 假设我已经在 Google Cloud KMS 中保存了我的私钥,以下哪一项是正确/可能的?
    • 使用 API 调用,首先检索存储在 KMS 中的密钥,然后可以将其用于签署区块链交易。但是在这种情况下,一旦密钥在 KMS 之外,安全性就会受到影响。
    • 密钥一旦存储就永远不会离开 Google Cloud KMS。相反,可以将区块链交易发送到 Google Cloud KMS 以使用其管理的密钥对交易进行签名。在这里,我假设 KMS 可能会为我提供一些自定义功能,以便我可以执行签名过程,或者 KMS 可能具有执行一段代码的能力。
    • Google Cloud KMS 无法执行专门的任务(例如签署区块链交易),它只执行加密/解密。
4

1 回答 1

0

Cloud KMS 不存储用于检索的密钥;相反,它存储密钥并保密。我相信你的第三颗子弹最接近情况。

在您的情况下,我建议使用 KMS 密钥包装区块链私钥,然后将包装后的私钥存储在某处。要签署交易,应用程序将使用 KMS 解包密钥,然后在本地软件中对其进行签名。

是的,这会将调用应用程序暴露给私钥,并使您负责该安全性。

一个问题:您希望签名支持哪种算法?Google NEXT 是下周,寻找我们的一些您可能感兴趣的公告。

于 2018-07-20T16:11:06.497 回答