I am looking to put together an MD5 message digest program and have extracted the MD5.c and MD5.h files from PGP(excerpt of the MD5.h file below) but I'm not sure how it all works. Can someone who is familiar with the functions and the data structure please e-mail me with a bit of guidance as to what each one does and how to implement it. If anyone can lead me to a good description of the processes involved I would appreciate that too. Thanks.
Better than looking at sources, look for the file rsa.doc avail. from a lot of crypto/security ftp-sites... specifically something called the MD5-A RFC ...? It explains the algorithm pretty well, and is what I used to write my own assembler implementation with... better to work from an explanation of the algorithm than from sources which you may or may not understand what is going on.