The following people (sorted alphabetically) contributed bug reports, useful information, or were generally just helpful people to talk to: Jeff B Rickard Bondesson Mike Desjardins Matthew Gregan Hany Greiss Friedemann Kleint Ying-Chieh Liao Dan Nicolaescu Vaclav Ovsik Ken Perano Darren Starsmore Kaushik Veeraraghavan Dominik Vogt James Widener Cerulean Studios, creators of the Trillian instant messaging client, has provided financial assistance to the project. Barry Kavanagh of AEP Systems Ltd kindly provided an AEP2000 crypto card and drivers, enabling the creation of Botan's AEP engine module. In addition, the following people have unknowingly contributed help via public domain code which has been repurposed into the library: Dean Gaudet wrote the SSE2 implementation of SHA-1 Mike Hamburg wrote x86-64/SSSE3 assembly which was the basis for the constant time AES implementation The implementation of DES is based off a public domain implementation by Phil Karn from 1994 (he, in turn, credits Richard Outerbridge and Jim Gillogly). Rijndael and Square are based on the reference implementations written by the inventors, Joan Daemen and Vincent Rijmen. The Serpent S-boxes used were discovered by Dag Arne Osvik and detailed in his paper "Speeding Up Serpent". Matthew Skala's public domain twofish.c (as given in GnuPG 0.9.8) provided the basis for my Twofish code (particularly the key schedule). Some of the hash functions (MD5, SHA-1, etc) use an optimized implementation of one of the boolean functions, which was discovered by Colin Plumb. The design of Randpool takes some of its design principles from those suggested by Eric A. Young in his SSLeay documentation, Peter Gutmann's paper "Software Generation of Practically Strong Random Numbers", and the paper "Cryptanalytic Attacks on Pseudorandom Number Generators", by Kelsey, Schneier, Wagner, and Hall.