Latest Java Releases

Release 1.45 is now available for download.

This release adds support EC MQV to the light weight and CMS/SMIME libraries. In addition to that OpenPGP now supports UTF-8 in file names for literal data, EC keys are now serialisable, and the provider now makes use of a privileged block for constructing the provider table.

In addition, two areas of the library have been reviewed with a view to tightening up security and reliability. Firstly, the ASN.1 library would occasionally lose track of the stream size if it was predefined, creating the potential for an OutOfMemory error on a badly corrupted stream, we believe we have to eliminate this problem. Secondly, the provider and the lightweight API have been reviewed to eliminate the possibility of timing attacks in several areas, such as with cipher modes like GCM and CCM.

For further details on changes and enhancements please see the release notes.

As always, others have contributed to this release. You can find them listed in the contributors file. Thank you, one and all!

If you're interested in grabbing the lot in one hit (includes JCE, JCE provider, light weight API, J2ME, JDK1.2, JDK1.1, and JDK1.0 compatibility classes, signed jars, fries, and king prawns...) download crypto-145.tar.gz or crypto-145.zip, otherwise if you are only interested in one version in particular, see below.

Signed JAR files

From release 1.40 the implementation of the IDEA encryption algorithm was removed from the regular jar files at the request of a number of users. Jars with names of the form *-ext-* still include the IDEA implementation.

  Provider Clean room JCE and provider SMIME/CMS TSP OpenPGP/BCPG Test Classes
JDK 1.6 bcprov-jdk16-145.jar
bcprov-ext-jdk16-145.jar
  bcmail-jdk16-145.jar bctsp-jdk16-145.jar bcpg-jdk16-145.jar bctest-jdk16-145.jar
JDK 1.5 bcprov-jdk15-145.jar
bcprov-ext-jdk15-145.jar
  bcmail-jdk15-145.jar bctsp-jdk15-145.jar bcpg-jdk15-145.jar bctest-jdk15-145.jar
JDK 1.4 bcprov-jdk14-145.jar
bcprov-ext-jdk14-145.jar
  bcmail-jdk14-145.jar bctsp-jdk14-145.jar bcpg-jdk14-145.jar bctest-jdk14-145.jar
JDK 1.3 bcprov-jdk13-145.jar
bcprov-ext-jdk13-145.jar
jce-jdk13-145.jar
jce-ext-jdk13-145.jar
bcmail-jdk13-145.jar bctsp-jdk13-145.jar bcpg-jdk13-145.jar bctest-jdk13-145.jar
JDK 1.2 bcprov-jdk12-145.jar
bcprov-ext-jdk12-145.jar
jce-jdk12-145.jar
jce-ext-jdk12-145.jar
    bcpg-jdk12-145.jar bctest-jdk12-145.jar

Sources and JavaDoc

  SMIME/CMS
JDK 1.6 bcmail-jdk16-145.tar.gz bcmail-jdk16-145.zip
JDK 1.5 bcmail-jdk15-145.tar.gz bcmail-jdk15-145.zip
JDK 1.4 bcmail-jdk14-145.tar.gz bcmail-jdk14-145.zip
JDK 1.3 bcmail-jdk13-145.tar.gz bcmail-jdk13-145.zip

  TSP
JDK 1.6 bctsp-jdk16-145.tar.gz bctsp-jdk16-145.zip
JDK 1.5 bctsp-jdk15-145.tar.gz bctsp-jdk15-145.zip
JDK 1.4 bctsp-jdk14-145.tar.gz bctsp-jdk14-145.zip
JDK 1.3 bctsp-jdk13-145.tar.gz bctsp-jdk13-145.zip

  OpenPGP/BCPG
JDK 1.6 bcpg-jdk16-145.tar.gz bcpg-jdk16-145.zip
JDK 1.5 bcpg-jdk15-145.tar.gz bcpg-jdk15-145.zip
JDK 1.4 bcpg-jdk14-145.tar.gz bcpg-jdk14-145.zip
JDK 1.3 bcpg-jdk13-145.tar.gz bcpg-jdk13-145.zip
JDK 1.2 bcpg-jdk12-145.tar.gz bcpg-jdk12-145.zip
JDK 1.1 bcpg-jdk11-145.tar.gz bcpg-jdk11-145.zip

  JCE with provider and lightweight API Lightweight API  
JDK 1.6 bcprov-jdk16-145.tar.gz bcprov-jdk16-145.zip lcrypto-jdk16-145.tar.gz lcrypto-jdk16-145.zip
JDK 1.5 bcprov-jdk15-145.tar.gz bcprov-jdk15-145.zip lcrypto-jdk15-145.tar.gz lcrypto-jdk15-145.zip
JDK 1.4 bcprov-jdk14-145.tar.gz bcprov-jdk14-145.zip lcrypto-jdk14-145.tar.gz lcrypto-jdk14-145.zip
JDK 1.3 jce-jdk13-145.tar.gz jce-jdk13-145.zip lcrypto-jdk13-145.tar.gz lcrypto-jdk13-145.zip
JDK 1.2 jce-jdk12-145.tar.gz jce-jdk12-145.zip lcrypto-jdk12-145.tar.gz lcrypto-jdk12-145.zip
JDK 1.1 jce-jdk11-145.tar.gz jce-jdk11-145.zip lcrypto-jdk11-145.tar.gz lcrypto-jdk11-145.zip
J2ME     lcrypto-j2me-145.tar.gz lcrypto-j2me-145.zip

  Releases no longer maintained
JDK 1.0 lcrypto-jdk10-133.tar.gz lcrypto-jdk10-133.zip

NOTE:

  1. The tar archives were created using GNU tar (some versions of Solaris tar will have problems extracting them)
  2. The J2ME source distribution includes zips for the class files

You can find the release notes, documentation, and specifications here.

You can find checksums for confirming the integrity of the distributions here

Mirrors
Too slow? You can also find the latest versions on one of our mirrors:

Beta Access
The current working betas, when available, for the next release for JDK 1.3 to JDK 1.6 can be found at http://www.bouncycastle.org/betas. If you need a beta to be made available for another version of Java please ask by emailing feedback-crypto@bouncycastle.org.

Maven Access
The BC jars are now mirrored on the Maven central repository. You can find them at http://repo2.maven.org/maven2/org/bouncycastle.

CVS Access
Just want to look at the source? The source code repository is accessible via ViewCVS from here.

If you are looking for anonymous CVS access, set your CVSROOT as follows:

    CVSROOT=:pserver:anonymous@cvs.bouncycastle.org:/home/users/bouncy/cvsroot
and then do a
    cvs co java 
using your favorite CVS client.

FTP Access
Previous releases, as well as the latest ones, can be downloaded from our ftp server ftp.bouncycastle.org.