bitcoinj 0.8 [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2013-04-10T10:02:09+00:00


Summary:

In a discussion thread, Mike Hearn explains that all mails he sends are signed automatically by Gmail using either the gmail.com consumer key or the google.com corporate key. The Gmail DKIM keys are considered safer than any key he could create/maintain. His ability to sign mail as hearn at google.com is controlled by hardware second factors and various other intense security systems. However, Andy Parkins points out that Hearn didn't sign his email and suggests that it is not yet secure.On Tuesday 09 April 2013, Mike Hearn provided instructions on how to obtain bitcoinj 0.8 from the source git via a secure manner. The instructions involve checking out the source from git and running specific commands. However, Dr. Andy Parkins raises concerns about the security of the message due to Hearn not signing his email.Bitcoinj 0.8, a Java library for writing Bitcoin applications, has been released. It includes support for both simplified and full verification. The release features an SPV implementation that competes with centralized solutions in terms of performance. Wallet setup for new users is now completed in just a few seconds. Bug fixes, optimizations, and minor API improvements make up the majority of the changes in this release. Notable additions include encryption of private keys in the wallet using an AES key derived using scrypt, improved performance with the new SPVBlockStore, and a tool for creating lists of block header checkpoints. Bloom-filtering capable nodes are now queried for transactions at startup, allowing users to receive payments that were not confirmed yet even if their wallet was not running at the time. Various static analysis warnings have been addressed, and event listeners now run unlocked except for transaction confidence listeners. Core objects have been converted to use cycle detecting locks. DNS seeds are now supported for testnet, and exceptions thrown during peer message processing can be caught and processed using PeerEventListener.Some changes have been made to specific components of the library. IrcDiscovery has been deprecated, and BoundedOverheadBlockStore has been replaced by SPVBlockStore. The Derby based block store has been deleted, and the static NetworkParameters methods now vend singleton objects. WalletEventListener.onCoinsSent is no longer triggered when a transaction sends to self without changing the balance.There are known issues with the release. Transaction confidence listeners still run with the wallet lock held, which can cause unexpected lock inversions in certain situations. The Wallet expects to store all transactions, including spent transactions, in memory which may lead to RAM constraints on older devices. Additionally, there are some bugs that can cause the wallet to enter an inconsistent state in rare scenarios.


Updated on: 2023-08-01T04:38:50.359614+00:00