gpt4 book ai didi

android - AES 加密数据库条目大小

转载 作者:行者123 更新时间:2023-11-29 13:07:54 24 4
gpt4 key购买 nike

我要在移动数据库上使用 256 位 AES 加密数据。

我的问题是,是否有一个特殊的因素来乘以数据库字段的大小?

例子:可以说我允许大小为 10 str,当它加密时大小增加大约 x2-x3 倍。所以我应该在现场至少使用 25 号 str。

是否有一个特殊的数字可以乘以我的正常字段大小来找出最小安全加密大小?

最佳答案

假设纯文本的长度是 P 以字节为单位(例如,UTF-8 编码的文本),B 是底层密码的 block 大小并且您将使用 CBC 作为操作模式和 PKCS#7 填充。在这种情况下,您将检索以下大小的密文(以字节为单位)(包括预先挂起的 IV):

C = B + P + B - P % B

现在要将这些字节转换为十六进制字符,您只需乘以 2:

H = C * 2

因此对于低于值 7F 的单个 UTF-8 字符,您将获得 64 个十六进制字符。

这可能不是您所期望的。您可以切换到不需要填充的计数器模式加密。您可以使用其他一些唯一数字来派生 IV。您可以将密文存储为二进制或 base 64(每 3 个字节只需要一个额外的字符值)。总而言之,这里有太多可供讨论的选项。如果您需要考虑这么多,最好继续构建加密函数。

如果你真的走得太远,你应该研究保留加密的格式,并使用大小不精确在位边界上的字母表。

关于android - AES 加密数据库条目大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18167084/

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