gpt4 book ai didi

ios - 对于使用 CCCrypt() 的 AES128, key 是否可以超过 128 位?

转载 作者:可可西里 更新时间:2023-11-01 04:19:27 25 4
gpt4 key购买 nike

我正在使用 CCCrypt方法。

我可以使用比 128 位更长的 key 吗?可以任意长吗?还是 128 的倍数?

如果是这样,我该怎么做?

我认为这不可能,但我发现了这段文字:here

Some algorithms such as AES and RSA allow for keys of different lengths, but others are fixed, such as DES and 3DES. Encryption using a longer key generally implies a stronger resistance to message recovery. As usual, there is a trade off between security and time, so choose the key length appropriately.

AES 如何允许不同的长度,它会忽略高于 128 的位吗?

我正在为这个而烦恼。

最佳答案

AES(Advanced Encryption Standard)实际上是三种相关分组密码算法(或算法对,如果单独计算加密和解密的话)的集合。它们都适用于 128 位 block (16 字节)。

最常用的是 AES-128,它采用 128 位 key (即 16 字节)。 AES-192 采用 192 位 key (24 字节),AES-256 采用 256 位 key (32 字节)。

这三种算法的工作方式相似,但仍然不同(较长 key 的算法需要更长的时间,因为它们进行了更多“轮”的内部混淆操作,因此 key 的所有位都可以以某种方式影响所有位的密文)。因此,所有这些算法的所有这些 key 都以不同的方式加密和解密(即没有 AES-256 key 与 AES-128 key 执行相同的操作)。

也就是说,不幸的是,我不知道 CommonCrypto 库是否支持 AES 的所有变体,如果支持(我猜想),如何选择正确的变体。

关于ios - 对于使用 CCCrypt() 的 AES128, key 是否可以超过 128 位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7770424/

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