openssl/crypto/ripemd
2002-06-27 16:44:52 +00:00
..
asm Remove Win32 assembler files. They are always rebuilt (with some 2000-03-13 08:04:20 +00:00
.cvsignore
Makefile.ssl Pass CFLAG to dependency makers, so non-standard system include paths are 2002-06-27 16:44:52 +00:00
README
ripemd.h Make EVP_Digest*() routines return a value. 2001-03-08 14:04:22 +00:00
rmd160.c
rmd_dgst.c Make EVP_Digest*() routines return a value. 2001-03-08 14:04:22 +00:00
rmd_locl.h openbsd-x86 macros 2001-10-14 00:57:30 +00:00
rmd_one.c Document hash functions. 2000-02-03 18:22:01 +00:00
rmdconst.h
rmdtest.c Retain compatibility of EVP_DigestInit() and EVP_DigestFinal() 2001-10-16 01:24:29 +00:00

RIPEMD-160
http://www.esat.kuleuven.ac.be/~bosselae/ripemd160.html

This is my implementation of RIPEMD-160.  The pentium assember is a little
off the pace since I only get 1050 cycles, while the best is 1013.
I have a few ideas for how to get another 20 or so cycles, but at
this point I will not bother right now.  I belive the trick will be
to remove my 'copy X array onto stack' until inside the RIP1() finctions the
first time round.  To do this I need another register and will only have one
temporary one.  A bit tricky....  I can also cleanup the saving of the 5 words
after the first half of the calculation.  I should read the origional
value, add then write.  Currently I just save the new and read the origioal.
I then read both at the end.  Bad.

eric (20-Jan-1998)