Amazon web services 使用AWS KMS的确定性加密
我需要建立一个身份服务,该服务使用客户提供的密钥加密RDS中存储的敏感ID值,但也必须允许我们稍后使用明文ID查找记录。我们希望使用一个简单的确定性加密算法,但KMS API似乎不允许您指定IV,因此您永远无法获取相同的明文以加密到相同的值两次 我们还需要使用另一个非安全值查找数据,并检索加密的安全值并对其进行解密——因此,不幸的是,单向散列不起作用 综上所述,这意味着如果不使用暴力遍历所有记录并解密它们并与明文值进行比较,我们将无法执行安全ID的查找,而不是简单地使用已知的IV加密明文搜索值,并使用该加密值作为索引来查找数据库中的匹配记录 我猜这是像SSN之类的东西的一个非常常见的要求,那么人们如何解决它呢 提前谢谢 稍后使用纯文本ID查找记录Amazon web services 使用AWS KMS的确定性加密,amazon-web-services,encryption,aws-kms,Amazon Web Services,Encryption,Aws Kms,我需要建立一个身份服务,该服务使用客户提供的密钥加密RDS中存储的敏感ID值,但也必须允许我们稍后使用明文ID查找记录。我们希望使用一个简单的确定性加密算法,但KMS API似乎不允许您指定IV,因此您永远无法获取相同的明文以加密到相同的值两次 我们还需要使用另一个非安全值查找数据,并检索加密的安全值并对其进行解密——因此,不幸的是,单向散列不起作用 综上所述,这意味着如果不使用暴力遍历所有记录并解密它们并与明文值进行比较,我们将无法执行安全ID的查找,而不是简单地使用已知的IV加密明文搜索值,
那你就失去了很多安全感。也许您可以将ID的哈希(例如sha-256)存储在加密数据中,这样可以更容易地查找记录,但不会还原值 这种方法假设ID来自一个相当大的消息空间(可能有很多ID),因此不可能为每个可能的值创建映射 KMS API不允许您指定IV,因此您永远无法获得相同的明文来加密到相同的值两次 是的,KMS似乎为密文提供了自己的IV,以实施良好的安全实践 稍后使用纯文本ID查找记录
那你就失去了很多安全感。也许您可以将ID的哈希(例如sha-256)存储在加密数据中,这样可以更容易地查找记录,但不会还原值 这种方法假设ID来自一个相当大的消息空间(可能有很多ID),因此不可能为每个可能的值创建映射 KMS API不允许您指定IV,因此您永远无法获得相同的明文来加密到相同的值两次
是的,KMS似乎提供了自己的IV for ciphertext强制执行良好的安全实践如果我正确理解您的用例,您的流程如下所示:
其他人可能会有更好的加密解决方案,但这应该是第一次尝试。如果我正确理解您的用例,您的流程如下: