:( I've been looking at the text written by professor Rivest, and I REALLY do not understand the MD5 algorithm.

It produces a 32 bit encryption.. so its 32 characters, no matter what. But you can hash a string with an unlimited amount of characters... But if you do the math, only 9,472,710,129,612,967,086,019,848,437,700,000,000 possible combinations of alphanumeric characters in a 32 bit (character) hash is possible. So how can it account for the rest of the combinations of letters and numbers that you can encrypt?

Math Equation for possible strings produced by MD5: 32! * 36

That being "(32 x 31 x 30 x 29 x 28 x 27 x 26 x 25 x 24 x 23 x 22 x 21 x 20 x 19 x 18 x 17 x 16 x 15 x 14 x 13 x 12 x 11 x 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1) * (26 + 10)". 26 letters (A-Z) and 10 numbers (0-9) producable by MD5.

WTF? :(