You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-50
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ LightWallet is a HD wallet that can store your private keys encrypted in the bro
8
8
9
9
LightWallet is primarily intended to be a signing provider for the [Hooked Web3 provider](https://github.com/ConsenSys/hooked-web3-provider) through the `keystore` module. This allows you to have full control over your private keys while still connecting to a remote node to relay signed transactions. Moreover, the `txutils` functions can be used to construct transactions when offline, for use in e.g. air-gapped coldwallet implementations.
10
10
11
-
The default BIP32 HD derivation path is `m/0'/0'/0'/i`.
11
+
The default BIP32 HD derivation path has been `m/0'/0'/0'/i`, but any HD path can be chosen.
12
12
13
13
## Security
14
14
@@ -102,43 +102,25 @@ ks.passwordProvider = function (callback) {
102
102
103
103
These are the interface functions for the keystore object. The keystore object holds a 12-word seed according to [BIP39][] spec. From this seed you can generate addresses and private keys, and use the private keys to sign transactions.
104
104
105
-
Note: Addresses and RLP encoded data are in the form of hex-strings. Hex-strings do not start with `0x`.
105
+
Note: Addresses and RLP encoded data are in the form of hex-strings. Hex-strings start with `0x`.
106
106
107
107
### `keystore.createVault(options, callback)`
108
108
109
-
The current recommended keystore construction method. Has popular defaults, handles salting internally, and is the easiest interface to use.
109
+
This is the interface to create a new lightwallet keystore.
110
110
111
111
#### Options
112
112
113
113
* password: (mandatory) A string used to encrypt the vault when serialized.
114
-
* seedPhrase: (optional) A twelve-word mnemonic used to generate all accounts.
114
+
* seedPhrase: (mandatory) A twelve-word mnemonic used to generate all accounts.
115
115
* salt: (optional) The user may supply the salt used to encrypt & decrypt the vault, otherwise a random salt will be generated.
116
-
* hdPathString: (optional) The user may provide a `BIP39` compliant HD Path String. The default is `m/0'/0'/0'`.
116
+
* hdPathString (mandatory): The user must provide a `BIP39` compliant HD Path String. Previously the default has been `m/0'/0'/0'`, another popular one is the BIP44 path string `m/44'/60'/0'/0`.
Adds the HD derivation path `hdPathString` to the keystore. The `info` structure denotes the curve and purpose for the keys in that path. Supported structures are
Set the default HD Derivation path. This path will be used if the `hdPathString` is omitted from other functions. This is also the path that's used if the keystore is used with the Hooked Web3 Provider.
**NOTE:** The format of encrypted messages has not been finalized and may change at any time, so only use this for ephemeral messages that do not need to be stored encrypted for a long time.
282
242
@@ -301,12 +261,16 @@ Encrypts the string `msg` with a randomly generated symmetric key, then encrypts
301
261
302
262
Note that no padding is applied to `msg`, so it's possible to deduce the length of the string `msg` from the ciphertext. If you don't want this information to be known, please apply padding to `msg` before calling this function.
Gets the public encryption key corresponding to the private key of `address` in the `keystore`.
273
+
310
274
## `txutils` Function definitions
311
275
312
276
These are the interface functions for the `txutils` module. These functions will create RLP encoded raw unsigned transactions which can be signed using the `keystore.signTx()` command.
Copy file name to clipboardExpand all lines: RELEASE-NOTES.md
+16
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,21 @@
1
1
# Release Notes #
2
2
3
+
## Version 3.0.0 - 2017-11-01 ##
4
+
5
+
* Major cleanup - not backwards compatible!
6
+
7
+
* Remove legacy constructor - now only `createVault` is supported. Also `createVault` now require seed and hd path as inputs.
8
+
9
+
* Remove `deriveKeyFromPassword` function in favor of `keyFromPassword` function.
10
+
11
+
* Remove special handling of encryption keys in the keystore. You can still use keystore keys to encrypt, but they no longer use pubkeys to index. To get the pubkey corresponding to an address, please use the function `encryption.addressToPublicEncKey`.
12
+
13
+
* Make the keystore and interfaces simpler by only allowing one `hdPathString`. If you need to derive from more HD paths you need to create more keystores.
14
+
15
+
* Add `0x` prefix for all addresses and transaction hex data.
16
+
17
+
* Remove unneeded `bitcore-lib` package dependency. Thanks to [Srirangan](https://github.com/Srirangan).
18
+
3
19
## Version 2.5.4 - 2017-03-16 ##
4
20
5
21
* Upgrade bitcore-lib and explicitly increase version of bitcore-mnemonic. By [roderik](https://github.com/roderik).
0 commit comments