如何解压缩解密数据[关闭]

问题描述 投票:0回答:0
AF.request(url, method: .get).responseJSON { response in
    switch response.result {
    case .success:
        if let data = response.data {
            
            do {
                let decoder = JSONDecoder()
                let decoderResponse = try decoder.decode(ApiResponse.self, from: data)
                guard let encryptedPackage = decoderResponse.data?.package else {
                    print("Error: encryptedPackage is nil or empty")
                    return
                }

                print("Key: \(key)")
                print("IV: \(iv)")
              
                print("Encrypted package: \(encryptedPackage.decomposedStringWithCompatibilityMapping)")
                
                let decryption = try AES(key: key.bytes, blockMode: CBC(iv: iv.bytes), padding: .noPadding).decrypt(encryptedPackage.bytes)
                let decryptedString = String(bytes: decryption, encoding: .isoLatin1)
                debugPrint(decryptedString)
             let decryptedData = try decryptedString?.data(using: .utf8)
           
                if let unwrappedData = decryptedData{
                    let decodeResponse = try decoder.decode(ApiResponse.self, from: decryptedData!)
                    print(decodeResponse)
                    completion(decodeResponse, nil)
                } else {
                    print("Error: decryptedData is nil")
                }
            } catch let error {
                completion(nil, error)
            }
        }
    case .failure(let error):
        completion(nil, error)
    }
}

如何在不使用第三方库的情况下在 Swift 中解压解密后的数据?

我正在使用 xcode - 14.2.

swift
© www.soinside.com 2019 - 2024. All rights reserved.