gpt4 book ai didi

java - 如何使用密码和盐进行 AES 加密,以便在 Java 中仅使用相同的密码和盐进行解密

转载 作者:行者123 更新时间:2023-12-01 14:38:29 25 4
gpt4 key购买 nike

如何使用密码和盐进行 AES 加密,以便在 Java 中仅使用相同的密码和盐进行解密。我需要这个,因为我想在将数据放入数据库之前对其进行加密,并且我不想在数据库中存储任何 IV 字节数组以供解密。我只想使用密码和盐对数据进行加密,将加密的数据存储在数据库中,以便当我需要数据时,我从数据库中获取数据并使用相同的密码和盐对其进行解密,仅此而已。

最佳答案

AES 是一种分组密码,以 16 字节的 block 进行加密。如果您使用相同的 key (或密码+盐)加密相同的 16 字节数据,您最终将得到相同的加密数据。这具有一些不需要的(不安全)属性,可以使用初始化 vector 来解决。

如果您不想跟踪初始化 vector ,则可以将数据的前 16 个字节设为随机,然后使用初始化 vector 设置为 16 个零。这将产生相同的效果。

关于java - 如何使用密码和盐进行 AES 加密,以便在 Java 中仅使用相同的密码和盐进行解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16243153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com