Botan is a C++ class library for performing a wide variety of cryptographic
operations, including encryption, hashing, authentication, public key
encryption and signatures, and creating and using X.509v3 certificates and
CRLs. PKCS #8 private keys (including PKCS #5 encryption) and PKCS #10
certificate requests are also included. As well as various modes, padding
schemes, and so forth, Botan supports the following basic cryptographic
algorithms:

* Public Key Algorithms: Diffie-Hellman, DSA, ElGamal, Nyberg-Rueppel,
    Rabin-Williams, RSA

* Block Ciphers: AES, Blowfish, CAST-128, CAST-256, DES/DESX/TripleDES, GOST,
    IDEA, KASUMI, Lion, Luby-Rackoff, MARS, MISTY1, RC2, RC5, RC6, SAFER-SK,
    SEED, Serpent, Skipjack, Square, TEA, Twofish, XTEA

* Stream Ciphers: ARC4, WiderWake4+1, Turing

* Hash Functions: HAS-160, MD2, MD4, MD5, RIPEMD-128, RIPEMD-160,
    SHA-160, SHA-256, SHA-384, SHA-512, Tiger, Whirlpool

* MACs: ANSI X9.19 MAC, CMAC, HMAC

For build instructions, read 'doc/building.pdf'. The license can be found in
'doc/license.txt', and the ChangeLog is in 'doc/log.txt'.

Check http://botan.randombit.net/ for announcements and news. If you'll be
developing code using Botan, consider joining the mailing lists; links to
subscriptions forms and the archives can be found on the web page. Feel free to
contact me with any questions or comments.

Regards,
   Jack Lloyd (lloyd@randombit.net)