当前位置: 首页 > 知识库问答 >
问题:

如何在microsoft azure Vault中配置RSA HSM私钥和公钥?

欧阳英彦
2023-03-14

我必须在azure密钥库中配置RSA、HSM公钥和私钥,并以加密形式保存数据。

共有1个答案

拓拔德馨
2023-03-14

为了增加保证,当您使用Azure Key Vault时,您可以在硬件安全模块中导入或生成从不离开HSM边界的密钥。这种情况通常被称为带来您自己的钥匙,或BYOK。HSM是经过FIPS 140-2级别2验证的。Azure Key Vault使用nCipher nShield系列HSM来保护您的密钥。

有关通过Internet生成和传输受HSM保护的密钥的详细信息:

  • 您可以从脱机工作站生成密钥,这样可以减少攻击面。
  • 密钥是用密钥交换密钥(KEK)加密的,该密钥在传输到Azure key Vault HSMS之前一直保持加密状态。只有加密版本的密钥离开原始工作站。
  • 工具集设置承租人密钥的属性,该属性将您的密钥绑定到Azure key Vault安全世界。所以在Azure Key Vault HSM接收并解密您的密钥后,只有这些HSM可以使用它。无法导出密钥。此绑定由nCipher HSMS强制执行。
  • 用于加密密钥的密钥交换密钥(KEK)是在Azure Key Vault HSMs中生成的,不可导出。HSMs强制规定,在HSMs之外,不可能有明确的KEK版本。此外,该工具集还包括来自nCipher的证明,即KEK是不可导出的,并且是在nCipher制造的真正HSM中生成的。
  • 工具集包括来自nCipher的证明,即Azure Key Vault安全世界也是在nCipher制造的真正HSM上生成的。此证明向您证明Microsoft使用的是正版硬件。
  • Microsoft在每个地理区域中使用单独的KEK和单独的安全世界。这种分离确保了您的密钥只能在您加密它所在区域的数据中心中使用。例如,来自欧洲客户的密钥不能用于北美或亚洲的数据中心。
 类似资料:
  • 有没有人可以粘贴一些用于存储私钥和公钥的示例代码。 非常感谢!

  • 我想在Java中通过SSL/TLS建立一个客户机服务器通信。服务器是多线程的。使用openssl,我充当自己的CA(为权威创建私钥和自签名证书)。现在我要为我的服务器和客户端创建密钥和证书,这些密钥和证书是从我创建的CA签名的。 1)我必须根据提示为每个客户创建证书和密钥吗?还是另一种“自动”方式,例如使用脚本? 2)我已经看到用于设置密钥库的代码 问题是我如何单独创建这些jks文件?public

  • 我想知道如何使用公钥来验证私钥。 “<代码> <模数> 这是一个字符串,我试图使用Python验证它的私钥(也是作为字符串提供的)。我知道发行人和观众需要做什么,但我不确定如何处理所有这些信息。 我看了一些peoples使用各种包的例子,但我似乎不知道pub_key、private_key和message是什么类型...请帮帮我...我希望学习

  • 我和JWT有一些安全问题。事情是这样的: 首先是创建一个只有一个密钥的令牌,并使用它来注册和验证令牌-(这是许多开发使用的规则)。 第二种是使用私钥和带有私钥的公钥进行注册,创建新的令牌,并且只使用公钥进行令牌验证。点击这里查看第二条规则中的图像 所以我的问题是哪两种方式更安全?第二条安全规则真的必要吗?谢谢

  • 我明白JWT规范没有涵盖这一点:但我很想知道在实际的JWT使用中有哪些常见的做法。 当然,这个问题与HTTPS中涉及的证书无关:我只是在讨论JWT签名和加密中使用的密钥。

  • 问题内容: 我以编程方式创建了jks类型(即默认类型)的Java密钥库。 它最初是空的,所以我创建了DSA证书。 如何查看公钥和私钥? 即有一个命令可以打印我的证书的私钥? 我只能从我的理解中找到哪个可以整体打印证书: 我认为这是整个证书。如何通过keytool查看私钥(或公钥)? 问题答案: 您在密钥库中创建了一个私有(和关联的公共)密钥。要使其真正可用,可以让它由认证机构(CA)签名- 因为这