LEVE:关于加密密钥和云,你需要了解的相关问题_Herbalist Token

不管喜欢与否,我们都正在转向公共云。为什么呢?因为这样构建信息系统的成本通常要低得多,我们就不必担心在硬件上的投资。

KMS(密钥管理存储)

在AWS云中,我们使用KMS(密钥管理存储)来创建密钥(图1),然后可以使用密钥来加密/解密数据、签名/验证签名、导出数据密钥和生成/验证MAC(消息身份验证码)。

图1:AWSKMS

总的来说,我们有AWS管理的密钥(例如Lambda服务)、客户管理的密钥(这些是由客户创建和管理的)和自定义密钥存储(这些是客户完全控制密钥的密钥存储)。

AWS可以使用哪些密钥类型?

可以将密钥用于ECS(计算)、EBS和S3(存储)以及一系列其他服务。总的来说,我们使用对称密钥或RSA密钥对来进行加密和解密。对称密钥使用AES加密,而RSA使用2K、3K或4K密钥,并使用「RSAES_OAEP_SHA_1」或「RSAES_OAEP_SHA_256」填充。使用RSA,我们用公钥加密,用私钥解密。对于签名,我们可以使用RSA或ECC签名。对于RSA,我们有2K、3K或4K密钥,而ECC签名使用NISTP256、NISTP384、NISTP521和SECGP256k1(在比特币和以太坊中使用)。

AWS可以访问自己的密钥吗?

KMS使用符合FIPS140-2的硬件安全模块(HSM),AWS员工(或任何其他客户)无法访问这些模块。它们永远不会出现在任何磁盘或备份中,只存在于HSM的内存中,并且只在使用时加载。此外,密钥可以被限制在世界的一个区域(除非由用户定义)。

对于对称密钥,密钥永远不会出现在HSM之外,对于非对称密钥(公钥加密),私钥在HSM内部阶段,只有公钥被导出到外部。

如何审计加密密钥的使用情况?

从安全性和成本的角度来看,审计加密密钥的使用方式非常重要。如图1所示,我们可以启用CloudWatch,它将显示如何以及何时使用加密密钥。

如果我们误删了密钥(或被黑客入侵)会发生什么?

加密密钥最严重的问题之一是密钥在哪里被删除。恶意行为者都可以删除密钥。可设置的密钥删除时间最短为7天(最多为30天):

这种删除的延迟意味着日志将标识一个密钥将被删除,如果删除错误,则很有可能被捕获。必须记住,我们将无法解密由已删除的密钥加密的数据。

我不信任AWS,我能有自己的HSM吗?

虽然KMS使用HSM,但组织也可以使用CloudHSM集群创建自己的HSM。在KMS中创建一个密钥,然后将其存储在集群中:

我们是否限制了对管理和使用的访问?

加密密钥是皇冠上的宝石,访问云中的密钥可以访问敏感数据,或签署有效的交易。一个用例是分离密钥管理者和密钥用户。在本例中,我们可以定义密钥管理(KEY_ADMINISTRATOR)角色并限制对密钥使用的访问。这些密钥管理者可以执行创建、撤销、放置、获取、列出和禁用密钥的操作,例如:

然后,我们可以定义密钥的使用权限,例如使用KEY_WORKER角色。对该角色的操作可以是:

WORKER不能创建或删除密钥,而ADMINISTRATOR不能加密或解密数据。

总的来说,最小访问权限规则是其核心,其通过定义密钥管理和使用角色来简化用户访问。然后将用户添加到这些角色中。

我可以进行密钥轮换吗?

手动更新密钥并不是一件很好的事情,而且有些人可能可以访问以前的密钥。解决这个问题的一种方法是实现密钥轮换,即密钥每年自动更换。但是,如果我们使用以前使用的密钥进行了加密呢?KMS保留所有以前的密钥,并会根据需要使用它们。密钥轮换的使用记录在CloudWatch和CloudTrail上。

密钥管理基础设施是否符合PCIDSSLevel1、FIPS140-2和HIPAA?

许多系统的一个密钥元素是遵从合规标准。KMS符合PCIDSSLevel1、FIPS140-2、FedRAMP、HIPAA和其他定义。AWSKMS(密钥管理系统)加密模块与FIPS140-2Level2匹配,其中一些元素与Level3匹配——包括物理安全方面。

结论

规则很简单,而且是不需要信任的。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

[0:0ms0-8:906ms