The Bouncy Castle Crypto APIs consist of the following:

A lightweight cryptography API in Java.
A provider for the JCE and JCA.
A clean room implementation of the JCE 1.2.1.
Generators for Version 1 and Version 3 X.509 certificates and PKCS12 files.
A signed jar version suitable for JDK 1.4 (Beta) and the Sun JCE.

It's distributed under a modified X license.

WWW: http://www.bouncycastle.org/