[Haskell-cafe] My MD5

Andrew Coppin andrewcoppin at btinternet.com
Sat Nov 17 12:51:32 EST 2007

Thomas DuBuisson wrote:
>> BTW, while I'm here... I sat down and wrote my own MD5 implementation.

Huzzah! It works! :-D

I had a silly bug where somewhere deep in the heart of the huge complex 
message padding algorithm, I forgot to add on the cumulative total to 
the message size count. This results in the number of bits in the 
*final* block being used, rather than the number of bits in the entire 
message. Oops!

> How is the performance on this new MD5 routine?

Not good. (Surprised?)

I told it to hash a 1 MB file, and there was a noticable split-second 
pause. I told it to hash a 400 MB file, and... well, after about 1 
minute wall time and 200 MB RAM I killed the process. RAM usage seems to 
grow linearly with time, which is Not Good(tm). To me, this suggests 
that something somewhere isn't as lazy as it should be. Hmm. Well 
whatever, next stop is the GHC profiler to see where my resources are 
going. Given the above bug, it's probably something easily fixable...

More information about the Haskell-Cafe mailing list