Follow us on:  Google+   


Welcome to the home of the Legion of the Bouncy Castle Java cryptography APIs.

The Legion of the Bouncy Castle

The Bouncy Castle Crypto APIs are looked after by an Australian Charity, the Legion of the Bouncy Castle Inc. which looks after the care and feeding of the Bouncy Castle APIs. If you would like to help support this effort please see our donations page or purchase a support contract through Crypto Workshop. Requests to sponsor specific enhancements and other work on the APIs are also most welcome.

The Bouncy Castle Crypto APIs for Java consist of the following:

  • A lightweight cryptography API.

  • A provider for the Java Cryptography Extension and the Java Cryptography Architecture.

  • A clean room implementation of the JCE 1.2.1.

  • A library for reading and writing encoded ASN.1 objects.

  • Lightweight APIs for TLS (RFC 2246, RFC 4346) and DTLS (RFC 6347/ RFC 4347).

  • Generators for Version 1 and Version 3 X.509 certificates, Version 2 CRLs, and PKCS12 files.

  • Generators for Version 2 X.509 attribute certificates.

  • Generators/Processors for S/MIME and CMS (PKCS7/RFC 3852).

  • Generators/Processors for OCSP (RFC 2560).

  • Generators/Processors for TSP (RFC 3161 & RFC 5544).

  • Generators/Processors for CMP and CRMF (RFC 4210 & RFC 4211).

  • Generators/Processors for OpenPGP (RFC 4880).

  • Generators/Processors for Extended Access Control (EAC).

  • Generators/Processors for Data Validation and Certification Server (DVCS) - RFC 3029.

  • Generators/Processors for DNS-based Authentication of Named Entities (DANE).

  • Generators/Processors for RFC 7030 Enrollment over Secure Transport (EST).

  • Signed jar versions suitable for JDK 1.4-1.8 and the Sun JCE.

The lightweight API works with everything from the J2ME to the JDK 1.8 and we now provide certificate generation, PKCS/CMS/CRMF/CMP/EAC/DANE/DVCS/TSP/TLS/DTLS and OpenPGP support across the full range of JDKs.

Except where otherwise stated, software produced by this site is covered by the following license.

Looking for something not listed? Have a look at the projects listed on our resources page.

Keep in touch!

For those who are interested, there are two mailing lists for participation in this project. To subscribe use the links below. (To unsubscribe, replace subscribe with unsubscribe in the message body) with subscribe in the message body. This mailing list is for new release announcements only, general subscribers cannot post to it. with subscribe in the message body. This mailing list is for discussion of development of the package. This includes bugs, comments, requests for enhancements, questions about use or operation.

NOTE:You need to be subscribed to send mail to the above mailing list.

A searchable archive of the dev mailing list is accessible off the mailing lists page.

If you want to provide feedback, offers of jobs (or more importantly beer) directly to the members of The Legion then please use



Java Release 1.57 is now available for download.

Thursday 11th May 2017

This release features a new API for client side EST (RFC 7030) requests, as well as additional work on the TLS API to further complete the BCJSSE provider. The JCE and lightweight API now include the ARIA cipher. The SM2 algorithm (signatures, key exchange, and public key encryption) and the XMSS signature algorithm have been added to the lightweight API. An edge condition in GOFB mode has been fixed, and PSS signature support now handles non-default length salts in the CMS API. A number of other issues around OpenPGP, the JCE provider, and X.509 extensions have also been fixed.

For more details go to our latest releases page to download the new version and see the release notes

You can also find the latest versions on one of our mirrors:

Java FIPS Release 1.0.0 is now available for download.

Friday 11th November 2016

Our first Java FIPS release, certified for Java 1.7 and Java 1.8 is now available at our Java FIPS page.. In addition to being certified for 1.7/1.8 the jar is also compatible with Java 1.5 and Java 1.6.

Java FIPS API passes NIST review and is now in co-ordination.

Friday 8th July 2016

The BC FIPS Java API has now passed NIST review and we are in the co-ordination phase with the CMVP. If you are interested in seeing the algorithm set this is built around, the User Guide for BC FIPS Java and the Draft Security Policy are now available. Please contact us at for further details.

Sponsored Links