1
我正在使用Xcode 9.0和CryptoSwift(0.7.2)。我試圖擴展字符串來解密AES128加密字符串。我已經成功添加了CryptoSwift與Pods,但我收到以下編譯錯誤 - 我做錯了什麼?使用Xcode 9和AES解密的CryptoSwift
'PKCS7' 無法建造,因爲它沒有可訪問的初始化
這裏是擴展:
import Foundation
import CryptoSwift
extension String {
// https://stackoverflow.com/questions/27072021/aes-encrypt-and-decrypt
func aesDecrypt(key: String, iv: String) throws -> String {
let data = Data(base64Encoded: self)!
let decrypted = try! AES(key: key, iv: iv, blockMode: .CBC, padding: PKCS7()).decrypt([UInt8](data))
let decryptedData = Data(decrypted)
return String(bytes: decryptedData.bytes, encoding: .utf8) ?? "Could not decrypt"
}
}
請檢查https://github.com/krzyzanowskim/CryptoSwift#swift-versions-support是否使用正確的版本。 –