我正在尝试加密我的敏感数据,如用户电子邮件地址到数据库使用aws kms CMK。 我在Java使用的是aws SDK。
我已经将字段加密并存储在数据库中。
我也可以解密数据。
但最主要的问题是当我必须查询数据时。。。 因为我正在取回aws SDK字节,我正在将它转换为基68并存储它。
为什么aws总是在加密后返回相同数据的不同SDK字节? 我不能简单地通过数据搜索。 我得带上所有的清单,解密数据,然后匹配数据。 这要花很多时间。
请建议我使用aws cmk密钥加密数据的好方法。
谢谢Ankit
通过以这种方式使用KMS,您正在执行客户端加密,这将使您在检索到数据之后负责解密。
目前还没有在SQL操作中显式使用KMS密钥的实现,唯一的支持是在文件存储的其余部分进行加密。
您的选项包括:
加密,当正确执行时,永远不是确定性的。 将abc@abc.com
加密为FA3GEFI2NB52JH0
是一个弱点,因为它会泄漏信息(如果您找到两个相等的密文,那么您知道它们包含相同的纯文本。您不知道确切的值,但您知道它是相同的)。 从技术上讲,您使用一个名为IV(初始化向量)的随机值传递给加密过程,但是我们不深入挖掘。
那么,如何处理你的案子。 您可以:
如何使加密具有确定性? 使用恒定IV值。 我不知道这是否可以在AWS中实现,以及如何实现,但那将是最容易的方法。
我正在使用以下Robocopy命令: 问题是它一直在复制*EXTRA file下列出的某些文件,但该文件已在目标中。 我只希望robocopy复制一个更新版本的文件(创建日期不同) 仅当测试文件。zip的创建日期较新。 为了解决这个问题,我尝试使用/xo表示排除旧文件。没有运气。每当我每分钟执行一次脚本时,都会发生这种情况。
问题内容: hibernate的@BatchSize批注允许批量读取延迟加载的实体。例如,如果我得到类似的东西: 现在,如果我得到产品的类别,则Hibernate将获取当前会话中尚未初始化其类别字段的最多十个产品的类别。这样可以节省大量对数据库的SQL调用。到目前为止,一切都很好。现在我想知道 为什么我不对每个延迟加载的关系都使用@BatchSize注释? 毕竟,为什么我要对数据库进行额外的调用?
简而言之,我有一个List userIds,它的大小可以从10k到100k,这些都是user_ids的,我的核心逻辑是,对于每user_id,我调用两个不同的rest api终端并获取这些有效负载,然后在有效负载之间进行验证操作 我通过以下方式使用executor服务来加快处理速度,我将记录拆分为批处理和预定义的100个线程,以便1个线程可以处理(int)(userIds.size()/100)个
我有一个JavaScript应用程序,我正在与webpack捆绑。根据文档,我正在使用以下命令开始绑定: 每次我得到这个输出: 我已验证我的npx正在查看的目录。有人能想到为什么每次都在下载网页吗?完成此步骤最多需要7秒,这会减慢我的构建速度。
问题内容: 据我了解,默认容量为10,并且当其超过10时,它将创建具有新容量的新对象,依此类推。 因此,出于好奇,我输入下面的程序来检查的对象: 根据上述情况,当我未将默认初始容量设置为10时,因此在添加第11个元素时,它将创建一个新对象并增加的容量。 当我打印对象的哈希码时,每次都会给出一个新值。 以下是o / p: 根据默认容量的概念,直到第10个元素之前,都应打印相同的内容,因为在此之前不需
我有一个应用程序,我正在做一些数据库操作。根据这些价值,我也在做一些计算。但是我得到了列表中每个值的多次迭代 我得到多个时间每个值为什么是这样。列表大小为5 这是我的代码,我在排队时得到了那个例外 但我不明白我错在哪里。谁来帮忙
问题内容: public class Category { 在正在生成。 问题答案: 当您执行时,您称呼孩子们的。这里没有问题,只不过您在这里调用了父对象。这将称呼孩子,等等。 不错的无限循环。 摆脱它的最好方法是将您的方法更改为: 这样,您将不打印parentCategory,而仅显示其名称,不显示无限循环,不显示StackOverflowError。 编辑: 正如博洛在下面说的那样,您将需要检
根据我对的理解,默认容量为10,当它超过10时,它将创建一个具有新容量的新对象,依此类推。 所以出于好奇,我键入以下程序来检查对象的: 根据上述场景,当我没有为设置初始容量时,默认值为10。因此,在添加第11个元素时,它将创建一个新对象,并增加的容量。 当我打印对象的hashcode时,它每次都会给出一个新的。 以下是o/p: 根据默认容量的概念,直到第10个元素,它应该打印相同的,因为在那之前不