Bouncy Castle
Bouncy Castle Java Distribution (Mirror) observed · 2026-08-28
Health v2 · maintenance only
77/100
- Activity 99
- Release rhythm 35
- Longevity 100
Flags: no_releases
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 4842
- days_rel: n/a
- days_push: 7
- n_releases_24m: 0
Adoption not part of the score
2683 stars · 1268 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Bouncy Castle is a comprehensive open-source cryptographic library for Java (and C#/.NET) implementing a wide range of algorithms, a JCA/JCE provider, and protocols such as TLS, DTLS, OpenPGP, CMS/S/MIME, and X.509/PKIX. It includes lightweight APIs for constrained environments and supports post-quantum algorithms, with separately licensed FIPS-certified editions.
Use cases
- implement TLS 1.3 in a Java application
- sign and encrypt files with OpenPGP
- generate and validate X.509 certificates and CSRs
- add a JCE crypto provider with more algorithms than the JDK
- use post-quantum cryptography algorithms in Java
- build S/MIME or CMS signed messages
- do cryptography in C#/.NET without platform dependencies
- implement DTLS for a UDP-based protocol
When to choose
- you need algorithms or protocols (PGP, CMS, OCSP, CMP, post-quantum) not covered by the standard JDK or .NET crypto APIs
- you need a lightweight crypto API usable in constrained environments like J2ME/Android
- you need fine-grained control over certificate parsing, path validation, or PKI message formats
- you want a permissively licensed, widely audited, long-established crypto library
When to avoid
- you only need basic TLS/HTTPS - use the platform's built-in TLS stack instead
- you require FIPS 140 compliance - the general edition is not FIPS certified; you need the separate FIPS version
- you want a high-level API that hides crypto details - Bouncy Castle is low-level and requires cryptographic expertise to use safely
- you need crypto in a language other than Java, C#, or Kotlin
Facets
library · maturity stable
cryptography security sdk security developer-tools backend apis jvm dotnet cross-platform tls openpgp x509 pkix post-quantum-cryptography jce-provider fips dtls cms smime android
10 sources
- readme: https://github.com/bcgit/bc-java · fetched 2026-08-28 · f67f18c2ceff
- homepage: https://www.bouncycastle.org/download/bouncy-castle-java/ · fetched 2026-08-29 · 24f0d659360a
- site_page: https://www.bouncycastle.org/documentation · fetched 2026-08-29 · f43929ae62ac
- site_page: https://www.bouncycastle.org/documentation/documentation-java · fetched 2026-08-29 · bf3c72d6899b
- site_page: https://www.bouncycastle.org/documentation/documentation-c · fetched 2026-08-29 · fb78e7f6c6f5
- site_page: https://www.bouncycastle.org/documentation/specification_interoperability · fetched 2026-08-29 · c4f6eb7de147
- site_page: https://www.bouncycastle.org/documentation/object-identifiers · fetched 2026-08-29 · 31056872b3e5
- site_page: https://www.bouncycastle.org/about · fetched 2026-08-29 · f6d26733f10a
- site_page: https://www.bouncycastle.org/about/license · fetched 2026-08-29 · d0718453706c
- site_page: https://www.bouncycastle.org/about/bouncy-castle-fips-faq · fetched 2026-08-29 · d2c8afae9c41
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| bcgit/bc-java | main | 77 |
| bcgit/bc-csharp | sdk | 76 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem