      - parameter algorithm: The symmetric algorithm to use for encryption
      - parameter options:   The encryption options.
      - parameter key:       The shared secret key.
-     - parameter iv:        Initialization vector, optional.
+     - parameter iv:        Initialization vector, optional. Used by block ciphers when Cipher Block Chaining (CBC) mode is enabled. If present, must be the same length as the selected algorithm's block size. This parameter is ignored if ECB mode is used or if a stream cipher algorithm is selected. nil by default.
 
      - throws: `SCryptoError` instance in case of eny errors.
 


    /**
     The encryption algorithms that are supported by the Cipher.
     */
    public enum Algorithm: RawConvertible {
        case AES, DES, TripleDES, CAST, RC2, RC4, Blowfish

     - parameter algorithm: The symmetric algorithm to use for encryption
     - parameter options:   The encryption options.
     - parameter key:       The shared secret key.
     - parameter iv:        Initialization vector, optional. Used by block ciphers when Cipher Block Chaining (CBC) mode is enabled. If present, must be the same length as the selected algorithm's block size. This parameter is ignored if ECB mode is used or if a stream cipher algorithm is selected. nil by default.

     - throws: `SCryptoError` instance in case of eny errors.

