我有一个从 API 检索数据并显示在应用程序中的项目。但API使用AES加密,我有aesKey和aesIV密钥,这些密钥是base64编码的。我需要用这些键对另一个字符串进行编码。为此,我使用 CryptoSwift 库,但当我尝试使用此密钥来加密字符串时,Swift 控制台会警告我有关 invalidKeySize 的问题。我尝试从 Base64 解码为字符串,但效果不佳。这些是示例的键;
密钥和 IV 大小为 AES256,为了加密和解密,我需要使用 PKCS7 填充类型和 ECB/CBC 块模式
aesKey = lHLBfVxlGoKoaCqWORJEHh3jOvC2EBx2VHGyNAdqYV0=
aesIV = 2spaSfljZ/cunRbuVkdphQ==
and CryptoSwift code block is:
let aes = try AES(key: "\(aesKeyString)", iv: "\(aesIVString)")
let cipherText = try aes.encrypt(Array("all".utf8))
Run Code Online (Sandbox Code Playgroud)