bitcoinjs/bitcoinjs-lib — pull request #111 by kyledrake (2014-04-03 01:55:52+00:00)
Title: Implements BIP38 import support for ECKey

This pull request implement's @jprichardson's amazing BIP38 implementation, per #110.

Caveats/thoughts:
* More deps.
* Slows down the tests. 8 seconds for import and export test on my laptop.
* I fed this into ECKey with a third argument as a password. Not sure if there is a better way to do this or not.
* Does not take network versions into account, and may need updates to support our network version framework. I'm not sure how to approach this.
* I'm not sure if I did the compression stuff correctly.
* BIP38 testing could be sped up by changing the scryptParams (described on the README at https://github.com/cryptocoinjs/bip38), but then it would not really be BIP38 anymore, but maybe that's okay because the code is tested on the BIP38 repo.

I think this is worth it. Bip38 provides a massive security upgrade for paper wallet development, and I'm okay with a little extra weirdness and a test slowdown to support it. Help me make this PR sane, I think this is a really nice feature to have. Thanks!