CryptoSwift를 통합하려고하는데이 오류가 발견되었습니다. "회원 'CBC'는 인수가 없습니다."'CBC'에 인수가 없습니다.
당신이 looking at the CryptoSwift API for version 3 당신은 AES에 대한 다음 초기화 얻을 수 있다면 나는이
let enc = try! AES(key: key, blockMode: .CBC(iv: iv)).encrypt(self.arrayOfBytes())
CryptoSwift를 통합하려고하는데이 오류가 발견되었습니다. "회원 'CBC'는 인수가 없습니다."'CBC'에 인수가 없습니다.
당신이 looking at the CryptoSwift API for version 3 당신은 AES에 대한 다음 초기화 얻을 수 있다면 나는이
let enc = try! AES(key: key, blockMode: .CBC(iv: iv)).encrypt(self.arrayOfBytes())
같은 함수를 호출하고있다 : 당신이 여기에 iv
을 볼 수 있듯이
public init(key: Array<UInt8>, iv: Array<UInt8>? = nil, blockMode: BlockMode = .CBC, padding: Padding = PKCS7()) throws {
은의 매개 변수 아니다 CBC - 그것이 있어야하는 - 그러나 블록 암호 그 자체. Swift 4로 업그레이드하거나 이전 API를 준수해야합니다.
그것은 버전 간의 API의 추한 휴식입니다 ... –
Swift 3.2의 경우 API가 바뀌면서 API 사용법에 대한 올바른 README를 확인해야합니다. 여기
스위프트 3.2 (swift32 지점)에 대한 README입니다 :try AES(key: key, iv: iv, blockMode: .CBC, padding: PKCS7())
당신이 변수가 얼마나 우리를 보여줄 수 : https://github.com/krzyzanowskim/CryptoSwift/tree/swift32#aes-advanced-usage
이 질문에 대답하려면,이 사용자의 요구에 적합한 형태이다 초기화 된 Swift 및 CryptoSwift 버전은 무엇입니까? –
Swift 3.2 및 CryptoSwift 0.7.0을 사용하는 사람 – RussVirtuoso
CryptoSwift를 사용하지 않는 것이 가장 좋습니다. 다른 것들은 Common Crypto 기반 구현보다 500-1000 배 느립니다. Apple의 Common Crypto는 FIPS 인증을 받았으며, CryptoSwift를 사용하여 타이밍 및 전원 공격과 같은 정확성과 보안 성을 보장합니다. – zaph