Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version of bc 1.51? #5

Closed
mikehearn opened this issue Jul 14, 2014 · 6 comments
Closed

Version of bc 1.51? #5

mikehearn opened this issue Jul 14, 2014 · 6 comments

Comments

@mikehearn
Copy link

Hiya,

BC 1.51 is now in final beta and we really need the performance improvements in bitcoinj. I was wondering if you'll have time to upgrade to the newest version any time soon? If not, how hard is it for us to do that?

@rtyley
Copy link
Owner

rtyley commented Jul 14, 2014

I was wondering if you'll have time to upgrade to the newest version any time soon?

I took a look at building off the most recent master (cebc7ce) tonight, it doesn't look too bad. There's the usual annoying thing where if you check out BouncyCastle's master branch and just run gradle test, a bunch of tests fail:

$ gradle test
...
org.bouncycastle.crypto.test.AllTests > testCrypto FAILED
    junit.framework.AssertionFailedError at AllTests.java:22

org.bouncycastle.crypto.tls.test.TlsTestCase > warning FAILED
    junit.framework.AssertionFailedError

org.bouncycastle.crypto.tls.test.DTLSTestCase > warning FAILED
    junit.framework.AssertionFailedError

Sigh. Every time I do a release, I do my best to get their test suite to run, and it generally involves fixing-up a bunch of broken tests. Maybe I can persuade those guys to start using Travis for this release...

@mikehearn
Copy link
Author

Thanks for looking at this, it's really helpful. Basically we switched to HD wallets in the new bitcoinj and as a result do way more EC math than before. Without the new version wallets now take too long to create and it causes an ANR. The new BC is fast enough that we can do the calculations on the UI thread and get away with it, meaning we can avoid some complicated threading.

@mikehearn
Copy link
Author

Hi Roberto, anything we can do to help here? Our own test suite is pretty comprehensive and we don't use TLS, so I'm not worried about the test failures.

@rtyley
Copy link
Owner

rtyley commented Jul 26, 2014

The SpongyCastle 1.51.0.0 release (based on BouncyCastle r1rv51) has very recently been pushed to Maven Central (was halfway uploaded when you sent that message!) and is now available for download, eg:

http://repo1.maven.org/maven2/com/madgag/spongycastle/core/1.51.0.0/

Please do report back and let me know if your test suite succeeds or fails.

@mikehearn
Copy link
Author

All tests pass both before and after upgrading to accelerated secp256k1. Sure, bitcoinj only really stresses the EC math parts of BC which is only a small component, but it seems to be working. Thanks!!

@rtyley
Copy link
Owner

rtyley commented Jul 26, 2014

Great!

@rtyley rtyley closed this as completed Jul 26, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants