簡體   English   中英

使用Xcode 9和AES解密的CryptoSwift

[英]CryptoSwift with Xcode 9 and AES Decryption

我正在使用Xcode 9.0和CryptoSwift(0.7.2)。 我正在嘗試擴展String以解密AES128加密字符串。 我已經使用Pod成功添加了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"
    }

}

我查看了CryptoSwift的文檔,我找到了一個示例代碼:

let decrypted = try AES(key: key, iv: iv, blockMode: .CBC, padding: .pkcs7).decrypt(encrypted)

我認為它使用.pkcs7而不是PKCS7()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM