I have been writing code to read/write from TrueCrypt containers using LTC and Crypto++ as the encryption library. I ran into a problem with Crypto++, though, when using the whirlpool hash function. According to the latest Crypto++ source code, whirlpool version 2.1 (2001.09.01) is being used. The newest version of whirlpool is 3.0 (2003.03.12) and this is what is in use by TrueCrypt and LTC. Is there a particular reason that an older version is still used in Crypto++?
Wikipedia info on whirlpool which discusses the three different versions: http://en.wikipedia.org/wiki/WHIRLPOOL And info from one of the authors: http://paginas.terra.com.br/informatica/paulobarreto/WhirlpoolPage.html And the latest code from one of the authors: http://planeta.terra.com.br/informatica/paulobarreto/whirlpool.zip I have actually converted the new v3.0 code for use with Crypto++ and could post it if needed, but I'm guessing that Wei Dai would probably do a better job of it.
