A hash processing system and method for reducing the number of clock
cycles required to implement the SHA1 and MD5 hash algorithms by using a
common hash memory having multiple storage areas each coupled to one of
two or more hash channels. The system further provides implicit padding
on-the-fly as data is read from the common hash memory. The system shares
register and other circuit resources for MD5 and SHA1 hash circuits that
are implemented in each hash channel, and uses pipelined, two-channel
SHA1 and pipelined, single-channel MD5 hash architectures to reduce the
effective time required to implement the SHA1 and MD5 algorithms.