ios – 对于使用CCCrypt()的AES128,密钥可以长于128位吗?

我正在使用 CCCrypt方法.

我可以使用比128bit更长的密钥吗?可以任意长吗?或者可能是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位块(16字节)上.

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

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

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

以上是来客网为你收集整理的ios – 对于使用CCCrypt()的AES128,密钥可以长于128位吗?全部内容,希望文章能够帮你解决ios – 对于使用CCCrypt()的AES128,密钥可以长于128位吗?所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。