# Class Cryptokit.Block.cbc_encrypt

    class cbc_encrypt : ?iv:string -> block_cipher -> block_cipher

Add Cipher Block Chaining (CBC) to the given block cipher in encryption mode. Each block of input is xor-ed with the previous output block before being encrypted through the given block cipher. The optional `iv` argument specifies the string to be xor-ed with the first input block, and defaults to all zeroes. The returned block cipher has the same block size as the underlying block cipher.