'AllOrNothing(ciphermodule, mode=None, IV=None)
ciphermodule is a module implementing the cipher algorithm to
use.  It must provide the PEP272 interface.
Note that the encryption key is randomly generated
automatically when needed.  Optional arguments mode and IV are
passed directly through to the ciphermodule.new() method; they
are the feedback mode and initialization vector to use.  All
three arguments must be the same for the object used to create
the digest, and to undigest\'ify the message blocks.'

def __init__(self, ciphermodule, mode=None, IV=None):

    self.__ciphermodule = ciphermodule
    self.__mode = mode
    self.__IV = IV
    self.__key_size = ciphermodule.key_size
    if ((not isInt(self.__key_size)) or (self.__key_size == 0)):
        self.__key_size = 16
