  A hash function is constructed based on a three-layer neural network. The
three neuron-layers are used to realize data confusion, diffusion and
compression respectively, and the multi-block hash mode is presented to support
the plaintext with variable length. Theoretical analysis and experimental
results show that this hash function is one-way, with high key sensitivity and
plaintext sensitivity, and secure against birthday attacks or
meet-in-the-middle attacks. Additionally, the neural network's property makes
it practical to realize in a parallel way. These properties make it a suitable
choice for data signature or authentication.
