Commit Graph

37 Commits

Author SHA1 Message Date
Michael Bradley, Jr 675d4c300b format-fix 2020-01-14 18:06:39 -06:00
Michael Bradley, Jr debbd4f4b1 Normalize salt, iv, uuid params of .toV3() before encrypting
Previously, if `salt`, `iv` and/or `uuid` options were supplied as strings to
`.toV3()` they would be passed to `pbkdf2Sync`/`scrypt` as strings. That could
result in errors during encryption. Also, during decryption these options were
always converted to Buffer instances such that supplying strings during
encryption could result in output that could not be decrypted.

This commit fixes the inconsistencies, guards against bad inputs, and also
makes encrypted output match up with the output of other wallet libraries, e.g.
`ethers`, whenever the equivalent encryption options are used consistently
across libraries.
2019-08-26 14:14:21 -05:00
Jack Cook 288442924e PR review fixes 2019-07-02 11:56:56 -07:00
Jack Cook 733e49b7e9 use module style exports to maintain the way JS imports the compiled code 2019-06-28 15:17:29 -07:00
Jack Cook 695da18e44 converted files to ts, fixed tests, implemented ethereumjs standards for coverage, ts compiler, and tslint 2019-06-27 19:10:15 -07:00
holgerd77 f69a16ffb2 Moved source files and test folder to src/ directory, updated src test command 2018-08-07 11:05:17 +02:00
holgerd77 18ded5b0ce Added tests for covering fromV3() function branches 2018-03-07 10:58:12 +01:00
holgerd77 0032880429 Added tests covering toV3() function branches 2018-03-07 10:58:12 +01:00
holgerd77 93445039f9 Added test for generateVanityAddress() with string contructor 2018-03-07 10:58:12 +01:00
holgerd77 8a5ff2467e Added test for raw new Wallet() initialization 2018-03-07 10:58:11 +01:00
holgerd77 3a423526c5 Replace some hard-coded key values with fixture variables 2018-03-07 10:58:11 +01:00
Alex Beregszaszi 47a0001149 Update hdkey to 0.8.0 2018-02-08 18:09:32 +00:00
holgerd77 5ac5e9b20f Add safe-buffer dependency, replace deprecated Buffer usages with Buffer.from() (also fixes linting) 2018-02-03 22:45:51 +00:00
Alex Beregszaszi f5de70eb31 Accept the true range of addresses for ICAP direct (slower at the same time) 2018-02-03 22:29:08 +00:00
Alex Beregszaszi e55656b01e Include vanity address generation 2016-03-26 18:33:05 +00:00
Alex Beregszaszi 04be13c4f0 Raise error in HDKey.privateExtendedKey if it is not present
To be changed in line with https://github.com/cryptocoinjs/hdkey/issues/7
2016-03-26 17:51:29 +00:00
Alex Beregszaszi 197e0066eb Check for the appropriate exception message in tests 2016-03-26 17:48:20 +00:00
Alex Beregszaszi 5635068fff Only support Ethereum-style public keys internally, but have a non-strict mode to support importing compressed ones 2016-03-23 14:06:27 +00:00
Alex Beregszaszi c6da9114f9 Support HD keys using cryptocoinjs/hdkey 2016-03-23 13:17:05 +00:00
Alex Beregszaszi f72c9679c1 Support importing BIP32 xpub/xpriv 2016-03-23 12:41:16 +00:00
Alex Beregszaszi ecbf109a71 Support instantation with public keys 2016-03-23 12:33:54 +00:00
Alex Beregszaszi 155513d8e9 Ensure private keys are valid according to the curve 2016-03-23 12:22:13 +00:00
Alex Beregszaszi 9e9fd6cd6f Introduce .getV3Filename() to return a suggested filename for V3 keystores 2016-03-16 13:44:52 +00:00
Alex Beregszaszi 395f01a809 Have both a strict and non-strict mode in '.fromV3()' 2016-03-16 13:22:51 +00:00
Alex Beregszaszi 2ea77fc006 Be strict in '.fromV3()' and only use lowercase field names 2016-03-16 13:13:12 +00:00
Alex Beregszaszi b4d6073758 Be strict in '.toV3()' and only use lowercase field names 2016-03-16 13:05:47 +00:00
Alex Beregszaszi 4162a28ac6 Move third party wallet import code into its own module.
Reason is KryptoKit requires 'aesjs', which adds extra 70k of code when browserified. This change could be reverted once the code can be replaced with 'crypto'.
2016-03-08 21:56:10 +00:00
Alex Beregszaszi 6e1f951637 Support Quorum Wallet seed 2016-03-08 21:44:42 +00:00
Alex Beregszaszi 80f758413b Support encrypted KryptoKit seed 2016-03-08 21:36:41 +00:00
Alex Beregszaszi eacd3c0692 Support EtherWallet, EtherCamp and KryptoKit wallets 2016-03-08 21:35:16 +00:00
Alex Beregszaszi e95b314950 Add tests for .generate() 2016-03-08 21:00:38 +00:00
Alex Beregszaszi 2c08bf5aa4 Add test for .getChecksumAddressString() 2016-03-08 20:13:49 +00:00
Alex Beregszaszi c9a1d31c98 Fix typo in tests 2016-03-07 22:35:27 +00:00
Alex Beregszaszi 84ebf9d6ff Add tests for PublicKey/PrivateKey/Address 2016-03-07 22:28:34 +00:00
Alex Beregszaszi 7abe2dad57 Default to r=8 p=1 in scrypt 2016-02-24 01:50:24 +00:00
Alex Beregszaszi 00e2f6a058 Remove test for fromV1() as it contains an invalid password 2016-02-23 21:41:28 +00:00
Alex Beregszaszi 77425013a5 Add simple tests 2016-02-23 19:39:24 +00:00