Skip to content

Releases: rtyley/spongycastle

Spongy Castle v1.58.0.0 (from BC v1.58)

30 Aug 13:43
Compare
Choose a tag to compare

This release is now available on Maven Central, based on Bouncy Castle r1rv58. See https://www.bouncycastle.org/releasenotes.html for more details about the updates in this release.

Special thanks to @btcontract who again kindly made a donation towards the always non-trivial process of cutting this release. If you represent a bank or other financial institution that uses Spongy Castle in it's apps (and there are a lot of those!) please consider following this example making a contribution towards the maintenance & release of this library!

As new elements required string substitution in this release, I had to make modification to the bash BC->SC conversion scripts (which live on a separate branch under https://github.com/rtyley/spongycastle/commits/spongy-scripts). After a half-hour or so trying to correctly escape doublequotes in bash scripts invoking ssed expressions, I table-flipped and rewrote the conversion in Scala instead - this new code is much faster and makes use of libraries from my BFG Repo-Cleaner tool, which is normally used to rewrite Git history, but here instead it's just used to quickly create a new commit with a rewritten file tree.

Spongy Castle v1.56.0.0 (from BC v1.56)

19 Apr 19:55
Compare
Choose a tag to compare

This release is now available on Maven Central, based on Bouncy Castle r1rv56. See https://www.bouncycastle.org/releasenotes.html for more details about the updates in this release.

Note that due to the upstream changes in Bouncy Castle commit 692173 the following artifacts have been renamed:

  • pkix -> bcpkix-jdk15on
  • pg -> bcpg-jdk15on

...the core and prov packages remain with the same name.

One change I had to make with this release was my choice of CI server - I've always tried to use a public CI server to make it easier to reproduce my results, but unfortunately, while it's always been eventually possible to fix-up the test suite so that it passes on my local dev machine, it's been increasingly hard to get the build to pass on Travis CI, and I just didn't have time to resolve those issues this time. As such, I've switched to CodeShip for this project, which unfortunately means that the build-results page is no longer public - tho' at least the status information is available in the GitHub Status API.

Many thanks to the users who gave feedback on issue #34 ("Is Spongy Castle obsolete?") - it looks like the answer is currently not quite - and especially to @btcontract who kindly made a donation towards the always non-trivial process of cutting this release.

Spongy Castle v1.54.0.0 (from BC v1.54, motivated by CVE-2015-7575)

30 Dec 00:26
Compare
Choose a tag to compare

This release is now available on Maven Central, based on Bouncy Castle r1rv54 - note that the Bouncy Castle release notes include a TLS 1.2-related security advisory for CVE-2015-7575 - see also the BC mailing list announcement.

I've also created @spongycastle on twitter to help with announcements, etc.

Spongy Castle v1.53.0.0 (from BC v1.53)

18 Oct 16:30
Compare
Choose a tag to compare

This release is now available on Maven Central, based on Bouncy Castle r1rv53. I'd like to extend my thanks to the Bouncy Castle team for the build quality of this release - unlike all previous releases of Spongy Castle, I didn't have to fix any weirdness in the BC test suite to make this release - only acceptable weirdness caused by the Bouncy->Spongy rename itself.

Usage of Spongy Castle continues to climb, with over 4000 downloads last month on Maven Central alone:

image

A few tweets from users of Spongy Castle... and feedback is always welcome! (tho' remember the real work is actually done by the Bouncy Castle team - I just repackage their work for Android).

Spongy Castle v1.52.0.0 (from BC v1.52)

15 Jun 19:49
Compare
Choose a tag to compare

This release is now available on Maven Central, based on BouncyCastle r1rv52. As always, there were several changes necessary just to get the Bouncycastle build passing in Travis.

Feedback, with tales of success or otherwise, is always welcome!

Spongy Castle v1.51.0.0 (from BC v1.51)

26 Jul 12:11
Compare
Choose a tag to compare

This release is now available on Maven Central, including all the Elliptic Curve performance improvements made available with BouncyCastle r1rv51 (which will be useful to people like @mikehearn as they switch to hierarchical deterministic Bitcoin wallets). As always, please do feedback with tales of success or otherwise.

Spongy Castle v1.50.0.0 (from BC v1.50)

26 Jan 21:58
Compare
Choose a tag to compare

This release is now available on Maven Central.

Changes since v1.47 of Spongy Castle

The Maven group-id and artifact-ids are now:

  • group-id: com.madgag.spongycastle - no longer just com.madgag
  • artifact-ids:
    • core - Core lightweight API
    • prov - JCE provider
    • pkix - PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs
    • pg - OpenPGP API

(apologies for the coordinate changes, it's partially a consequence of taking on board the new Gradle-based Bouncy Castle build. Hopefully it won't be necessary to change the coordinates again)

The mail artifact has been dropped because it uses java.awt classes not available on Android.

Fixes for Bouncy Castle

Most of the work involved in releasing Spongy Castle comes from getting the vanilla Bouncy Castle project to build and the existing test-suite to pass, before the bouncy->spongy transformation has even taken place. Various fixes are required to make the Bouncy Castle Gradle build work - now that the Bouncy Castle is using Git and has a mirror on GitHub, hopefully these pull-requests can be merged back into Bouncy Castle master:

Disabled tests

For this release a small number of tests were disabled:

pre-BC->SC transform: CertPathBuilderTest, CertPathValidatorTest, McElieceCCA2KeyPairGeneratorTest & McElieceKeyPairGeneratorTest
post-BC->SC transform: SerialisationTest - purely because it tested deseriailsing a binary snapshot of a bouncycastle class.

Beyond the BC->SC transform, it wasn't necessary to change any implementation code.