AES+Foundation.swift 706 B

12345678910111213141516171819
  1. //
  2. // AES+Foundation.swift
  3. // CryptoSwift
  4. //
  5. // Created by Marcin Krzyzanowski on 27/09/15.
  6. // Copyright © 2015 Marcin Krzyzanowski. All rights reserved.
  7. //
  8. import Foundation
  9. extension AES {
  10. convenience public init(key:String, iv:String, blockMode:BlockMode = .CBC, padding: Padding = PKCS7()) throws {
  11. guard let kkey = key.bridge().data(using: String.Encoding.utf8.rawValue, allowLossyConversion: false)?.bytes, let iiv = iv.bridge().data(using: String.Encoding.utf8.rawValue, allowLossyConversion: false)?.bytes else {
  12. throw Error.invalidKeyOrInitializationVector
  13. }
  14. try self.init(key: kkey, iv: iiv, blockMode: blockMode, padding: padding)
  15. }
  16. }