使用MD5和3DES进行加密和解密

时间:2018-09-21 11:02:19

标签: ios encryption aes swift4 cryptoswift

我是swift4中加密和解密程序的新开发人员,所以请您向我建议如何编码。我已经在尝试CryptoSwift了,但是我做不到。 我再次尝试使用AES加密和解密进行编码,但是我遇到无效的密钥长度,因为我的密钥长度大于32位。我在AES加密和解密功能中搜索了更多的32位密钥和vi,但没有更多的想法,因此我需要您的建议。

1 个答案:

答案 0 :(得分:0)

  

因为我的密钥长度超过了32位。

3DES使用168、112或56位密钥,而AES使用128、192或256位密钥。您只需选择以下选项之一。

如果您具有自定义密钥大小,则理论上可以对密钥进行哈希处理(sha,md5,..),并从哈希中获取必要的位数。

如果要使用用户提供的密码作为密钥,则可以使用任何基于密码的派生功能(例如PBKDF2或任何其他慢速哈希)来派生密钥。