SHA384, SHA512 MD5, SHA1, SHA224, SHA256, SHA384, SHA512 AES, DES, TripleDES, CAST, RC2, Blowfish Operations: Encrypt, Decrypt Options: None, PKCS7Padding, ECBMode init(algorithm: Algorithm) init(algorithm: Algorithm, key: NSData) init(algorithm: Algorithm, key: [UInt8]) init(algorithm: Algorithm, key: String) init(operation: Operation, algorithm: Algorithm, options: Options, key: NSData, iv: NSData) init(operation: Operation, algorithm: Algorithm, options: Options, key: [UInt8], iv: [UInt8]) init(operation: Operation, algorithm: Algorithm, options: Options, key: String, iv: String) update(data: NSData) -> Self? update(byteArray : [UInt8]) -> Self? update(string: String) -> Self? update(dataIn: NSData, inout byteArrayOut: [UInt8]) -> (Int, Status) update(byteArrayIn: [UInt8], inout byteArrayOut: [UInt8]) -> (Int, Status) update(stringIn: String, inout byteArrayOut: [UInt8]) -> (Int, Status) final() -> [UInt8] final(inout byteArrayOut: [UInt8]) -> (Int, Status) PBKDF calibrate(passwordLength: Int, saltLength: Int, algorithm: PseudoRandomAlgorithm, derivedKeyLength: Int, msec : UInt32) -> UInt deriveKey(password : String, salt : String, prf: PseudoRandomAlgorithm, rounds: uint, derivedKeyLength: UInt) -> [UInt8] Random generateBytes(byteCount : Int ) throws -> [UInt8]