A hash function is applied to a prefix of a VIL input. The output is added
to a suffix of the input. A block cipher is applied to results of the
addition. An encryption function is performed on the prefix. The final
output is the output of the block cipher and the encryption function. In
a second encryption technique, a hash function is applied to an input,
and the output of the hash function has first and second portions. A
block cipher is applied to the second portion. The output of the block
cipher is added to the first portion, and a second function is applied to
the result of this first addition. The output of the second function is
added to the second portion. An inverse hash function is then applied to
the output of the first and second additions, creating an encrypted
output.