COUNTERWALLET MOVES TO BITCORE(repost from
https://forums.counterparty.co/index.php?topic=321 ...specific questions are best left there)
If you have a wallet at counterwallet.co, this will affect you. Please read.We have just released a new version of Counterwallet (1.1.5) that moves from bitcoinjs-lib to Bitpay’s bitcore library for the underlying Bitcoin-related functionality. This move was largely due to the earlier security issue we had earlier with bitcoinjs-lib, as well as the current state of rapid change that library is in. At this time at least, we feel that bitcore is the more mature library, and has more support and unit tests.
Furthermore, we have had the bitcore development team review and okay our bitcore integration, and currently have a security professional performing testing on Counterwallet.Updating to New Wallet GenerationOn top of the security issue we experienced with the library, there was also a change to the underlying Crypto library in use by bitcoinjs-lib. This update silently did not support the specific way we were supplying the passphrase to the library's wallet generation code, but still appeared to work fine (due to the absence of assertion checking in the library). This had the unfortunate side effect of reducing the entropy (randomness) of the wallet keys generated by Counterwallet, from the full 128 bits down to ~100-108 bits of entropy. While this is still too high for any kind of effective brute-forcing attacks (i.e. existing wallets are still very much safe), we are requiring our users to migrate to a new wallet within the next 2 months (i.e. before July 15, 2014), just to be sure. The bitcore code uses standard input formats, has tests around it, as well as necessary type checking.
Accessing Your Existing WalletIf you created your wallet before May 8th, please prepend your passphrase with “
old " to access your funds. For example, if your existing passphrase was
"acid doubt danger hum dinner action final point demand inhale bedroom ocean", your new passphrase would be
"old acid doubt danger hum dinner action final point demand inhale bedroom ocean". Once logged into your existing wallet, it should continue to work as before. Remember:
you should migrate your funds to a new wallet as soon as possible, and definitely by July 15. Read on for instructions on how to do that.
Sweeping your old fundsSetting up a new wallet and sweeping your existing funds into it is
a very easy process, with our autosweep functionality. To get started, simply log into Counterwallet
using your existing passphrase (without the “old “ prefix). Once in, click on the
Import Funds button, and then choose
From Old Wallet. Follow the instructions on that dialog, which will allow you to directly import all old wallet funds into the new wallet. Using your existing passphrase for this process is safe, and will enable the full 128 bits of entropy for your new wallet.
Note that if you do not have sufficient BTC balance to handle the fees to transfer the assets at a given address in your old wallet, the dialog will give you the chance to specify a private key to another address with the BTC to use for the fees.
ConclusionTo be honest, our experience with bitcoinjs-lib has been frustrating, and we apologize for the inconvenience this has caused our users. We have tried to make this process as smooth as possible this time, and these kinds of issues should hopefully be a thing of the past with our move to bitcore.
The Counterparty Team