Bouncy Castle Cryptography Library 1.57
ASN.1 Support Packages 
Package Description
org.bouncycastle.asn1
A library for parsing and writing ASN.1 objects.
org.bouncycastle.asn1.anssi  
org.bouncycastle.asn1.bc
ASN.1 classes specific to the Bouncy Castle APIs.
org.bouncycastle.asn1.bsi
ASN.1 classes specific to the Bundesamt für Sicherheit in der Informationstechnik (BSI) standards.
org.bouncycastle.asn1.cmc  
org.bouncycastle.asn1.cmp
Support classes useful for encoding and supporting PKIX-CMP as described RFC 4210.
org.bouncycastle.asn1.cms
Support classes useful for encoding and supporting Cryptographic Message Syntax as described in PKCS#7 and RFC 3369 (formerly RFC 2630).
org.bouncycastle.asn1.cms.ecc
Support classes for CMS ECC - RFC 5753/3278.
org.bouncycastle.asn1.crmf
Support classes useful for encoding and supporting PKIX-CRMF as described RFC 4211.
org.bouncycastle.asn1.cryptopro
Support classes for CRYPTO-PRO related objects - such as GOST identifiers.
org.bouncycastle.asn1.dvcs
Support classes useful for encoding and processing Data Validation and Certification Server (DVCS) protocols as described in RFC 3029.
org.bouncycastle.asn1.eac
ASN.1 classes specific to the Bundesamt für Sicherheit in der Informationstechnik (BSI) Technical Guideline Advanced Security Mechanisms for Machine Readable Travel Documents.
org.bouncycastle.asn1.esf
Support classes useful for encoding and supporting [ESF] RFC3126 Electronic Signature Formats for long term electronic signatures.
org.bouncycastle.asn1.ess
Support classes useful for encoding and supporting Enhanced Security Services for S/MIME as described RFC 2634 and RFC 5035.
org.bouncycastle.asn1.est  
org.bouncycastle.asn1.gm  
org.bouncycastle.asn1.gnu
ASN.1 classes specific to the GNU APIs and applications.
org.bouncycastle.asn1.iana
ASN.1 classes specific to the Internet Assigned Numbers Authority (IANA).
org.bouncycastle.asn1.icao
ICAO ASN.1 classes for electronic passport.
org.bouncycastle.asn1.isismtt
Support classes for the ISIS-MTT Project.
org.bouncycastle.asn1.isismtt.ocsp
Support classes for the ISIS-MTT profile for OCSP.
org.bouncycastle.asn1.isismtt.x509
Support classes for the ISIS-MTT X.509 Certificate Extensions.
org.bouncycastle.asn1.iso  
org.bouncycastle.asn1.kisa
Support classes for the Korea Information Security Agency (KISA) standard - SEED algorithm.
org.bouncycastle.asn1.microsoft
Support for Microsoft specific ASN.1 classes and object identifiers.
org.bouncycastle.asn1.misc
Miscellaneous object identifiers and objects.
org.bouncycastle.asn1.mozilla
Support classes useful for encoding objects used by mozilla.
org.bouncycastle.asn1.nist
Support classes for NIST related objects.
org.bouncycastle.asn1.nsri  
org.bouncycastle.asn1.ntt
ASN.1 classes relevant to the standards produced by Nippon Telegraph and Telephone.
org.bouncycastle.asn1.ocsp
Support classes useful for encoding and supporting OCSP objects.
org.bouncycastle.asn1.oiw
Objects and OID for the support of ISO OIW.
org.bouncycastle.asn1.pkcs
Support classes useful for encoding and supporting the various RSA PKCS documents.
org.bouncycastle.asn1.rosstandart  
org.bouncycastle.asn1.sec
Classes for support of the SEC standard for Elliptic Curve.
org.bouncycastle.asn1.smime
Support classes useful for encoding and supporting S/MIME.
org.bouncycastle.asn1.teletrust
Support classes for TeleTrust related objects.
org.bouncycastle.asn1.tsp
Support classes useful for encoding and supporting Time Stamp Protocol as described RFC 3161.
org.bouncycastle.asn1.ua
Support classes for the Ukrainian DSTU standard.
org.bouncycastle.asn1.util
An ASN.1 dump utility.
org.bouncycastle.asn1.x500
Support classes for the creation and processing of object based on X.500 names.
org.bouncycastle.asn1.x500.style
Template classes for the common styles used for converting X.500 names to strings and back.
org.bouncycastle.asn1.x509
Support classes useful for encoding and processing X.509 certificates.
org.bouncycastle.asn1.x509.qualified
Support classes useful for encoding and processing messages based around RFC3739
org.bouncycastle.asn1.x509.sigi
Support classes for the German SigI (Signature Interoperability Specification) standard.
org.bouncycastle.asn1.x9
Support classes useful for encoding and supporting X9.62 elliptic curve.
JCA/JCE Provider 
Package Description
org.bouncycastle.jcajce.provider.asymmetric  
org.bouncycastle.jcajce.provider.asymmetric.dh  
org.bouncycastle.jcajce.provider.asymmetric.dsa  
org.bouncycastle.jcajce.provider.asymmetric.dstu  
org.bouncycastle.jcajce.provider.asymmetric.ec  
org.bouncycastle.jcajce.provider.asymmetric.ecgost  
org.bouncycastle.jcajce.provider.asymmetric.elgamal  
org.bouncycastle.jcajce.provider.asymmetric.gost  
org.bouncycastle.jcajce.provider.asymmetric.ies  
org.bouncycastle.jcajce.provider.asymmetric.rsa  
org.bouncycastle.jcajce.provider.asymmetric.util  
org.bouncycastle.jcajce.provider.asymmetric.x509  
org.bouncycastle.jcajce.provider.config  
org.bouncycastle.jcajce.provider.digest  
org.bouncycastle.jcajce.provider.drbg  
org.bouncycastle.jcajce.provider.keystore  
org.bouncycastle.jcajce.provider.keystore.bc  
org.bouncycastle.jcajce.provider.keystore.bcfks  
org.bouncycastle.jcajce.provider.keystore.pkcs12  
org.bouncycastle.jcajce.provider.symmetric  
org.bouncycastle.jcajce.provider.symmetric.util  
org.bouncycastle.jcajce.provider.util  
org.bouncycastle.jce.provider  
JCA/JCE Utility and Extension Packages 
Package Description
org.bouncycastle.jcajce  
org.bouncycastle.jcajce.io  
org.bouncycastle.jcajce.spec  
org.bouncycastle.jcajce.util  
org.bouncycastle.jce
Utility classes for use with the JCE.
org.bouncycastle.jce.exception  
org.bouncycastle.jce.interfaces
Interfaces for supporting Elliptic Curve Keys, El Gamal, and PKCS12 attributes.
org.bouncycastle.jce.netscape  
org.bouncycastle.jce.spec
Parameter specifications for supporting El Gamal, and Elliptic Curve.
Lightweight Crypto Packages 
Package Description
org.bouncycastle.crypto
Base classes for the lightweight API.
org.bouncycastle.crypto.agreement
Basic key agreement classes.
org.bouncycastle.crypto.agreement.jpake
Support classes for Password Authenticated Key Exchange by Juggling (J-PAKE) key exchange.
org.bouncycastle.crypto.agreement.kdf
Support classes for KDF based key derivation functions.
org.bouncycastle.crypto.agreement.srp
Support classes for Secure Remote Password (SRP) protocol.
org.bouncycastle.crypto.commitments
Classes for supporting commitment calculation.
org.bouncycastle.crypto.digests
Message digest classes.
org.bouncycastle.crypto.ec
Utility classes for support Elliptic Curve cryptographic transforms.
org.bouncycastle.crypto.encodings
Block encodings for asymmetric ciphers.
org.bouncycastle.crypto.engines
Basic cipher classes.
org.bouncycastle.crypto.examples
Simple examples of light weight API usage.
org.bouncycastle.crypto.generators
Generators for keys, key pairs and password based encryption algorithms.
org.bouncycastle.crypto.io
Classes for doing "enhanced" I/O with Digests and MACs.
org.bouncycastle.crypto.kems
Key Encapsulation Mechanisms.
org.bouncycastle.crypto.macs
Classes for creating MACs and HMACs.
org.bouncycastle.crypto.modes
Modes for symmetric ciphers.
org.bouncycastle.crypto.modes.gcm
GCM mode support classes.
org.bouncycastle.crypto.paddings
Paddings for symmetric ciphers.
org.bouncycastle.crypto.params
Classes for parameter objects for ciphers and generators.
org.bouncycastle.crypto.parsers
Helper classes for parsing "on the wire" public keys.
org.bouncycastle.crypto.prng
Lightweight psuedo-random number generators and SecureRandom builders.
org.bouncycastle.crypto.prng.drbg
SP800-90A deterministic random bit generators, can be used stand alone or in conjunction with SP800SecureRandomBuilder class.
org.bouncycastle.crypto.signers
Basic signers.
org.bouncycastle.crypto.tls
A lightweight TLS API.
org.bouncycastle.crypto.util
Some general utility/conversion classes.
Math and Utility Packages 
Package Description
org.bouncycastle.math  
org.bouncycastle.math.ec
Math support for Elliptic Curve.
org.bouncycastle.math.ec.custom.djb
Experimental implementation of curve25519.
org.bouncycastle.math.ec.custom.sec
Custom implementations of (most of) the curves over Fp from the SEC specification.
org.bouncycastle.math.ec.endo  
org.bouncycastle.math.ec.tools  
org.bouncycastle.math.field  
org.bouncycastle.math.raw
Math support for raw multi-precision calculations.
org.bouncycastle.util
General purpose utility classes used throughout the APIs.
org.bouncycastle.util.encoders
Classes for producing and reading Base64 and Hex strings.
org.bouncycastle.util.io
General purpose I/O helper classes and wrappers.
org.bouncycastle.util.io.pem
Classes for reading and writing raw PEM objects.
org.bouncycastle.util.test
Light weight test API.
Test Packages 
Package Description
org.bouncycastle.asn1.test
Test programs for the ASN.1 package.
org.bouncycastle.crypto.agreement.test  
org.bouncycastle.crypto.ec.test  
org.bouncycastle.crypto.prng.test  
org.bouncycastle.crypto.test
Example code and test classes for the lightweight API.
org.bouncycastle.crypto.test.cavp  
org.bouncycastle.crypto.tls.test
Example code and test classes for the lightweight TLS API.
org.bouncycastle.jce.provider.test  
org.bouncycastle.jce.provider.test.nist  
org.bouncycastle.jce.provider.test.rsa3  
Post-Quantum Lightweight Crypto Packages 
Package Description
org.bouncycastle.pqc.crypto  
org.bouncycastle.pqc.crypto.gmss  
org.bouncycastle.pqc.crypto.gmss.util  
org.bouncycastle.pqc.crypto.mceliece  
org.bouncycastle.pqc.crypto.newhope  
org.bouncycastle.pqc.crypto.ntru  
org.bouncycastle.pqc.crypto.rainbow  
org.bouncycastle.pqc.crypto.rainbow.util  
org.bouncycastle.pqc.crypto.sphincs  
org.bouncycastle.pqc.crypto.xmss  
Post-Quantum ASN.1 Packages 
Package Description
org.bouncycastle.pqc.asn1  
Post-Quantum Lightweight Math Packages 
Package Description
org.bouncycastle.pqc.math.linearalgebra  
org.bouncycastle.pqc.math.ntru.euclid  
org.bouncycastle.pqc.math.ntru.polynomial  
org.bouncycastle.pqc.math.ntru.util  
Post-Quantum Provider 
Package Description
org.bouncycastle.pqc.jcajce.interfaces  
org.bouncycastle.pqc.jcajce.provider  
org.bouncycastle.pqc.jcajce.provider.gmss  
org.bouncycastle.pqc.jcajce.provider.mceliece  
org.bouncycastle.pqc.jcajce.provider.newhope  
org.bouncycastle.pqc.jcajce.provider.rainbow  
org.bouncycastle.pqc.jcajce.provider.sphincs  
org.bouncycastle.pqc.jcajce.provider.util  
org.bouncycastle.pqc.jcajce.spec  
Post-Quantum Test Packages 
Package Description
org.bouncycastle.pqc.crypto.test  
org.bouncycastle.pqc.jcajce.provider.test  
org.bouncycastle.pqc.math.ntru.euclid.test  
org.bouncycastle.pqc.math.ntru.polynomial.test  
org.bouncycastle.pqc.math.ntru.util.test  
Bouncy Castle Cryptography Library 1.57