Hierarchical Deterministic Wallet
- Added BIP44 support
- Added BIP39 support
- Added smaller ring signatures
https://bitcointalk.org/index.php?topic=972541.msg10619684 - The goal for this release is to implement a framework for BIP32
on which to build, the more interesting features possible with bip32 keys can
be implemented later. For this release we aim to implement a hierarchical
deterministic wallet - which means you can recover all the keys in a wallet
using only the master key. - Added basic BIP32 support
-
Each extended key can derive 2^31 normal child keys and 2^31 hardened
child keys. -
All new keys are deterministically generated from a master key.
- The complete wallet state (except key labels) can be recreated from
a single master key.
- The complete wallet state (except key labels) can be recreated from
-
When the wallet is first started a new master bip32 key will be generated
from the master key, internal (child 1) and external (child 0) chains are
derived from the master key.The wallet will only generate a master key automatically once.
If the first master key is removed a new key will need to be imported
manually for the wallet to be able to generate keys. -
New prefix for base58 data
- extended key identifiers are represented in the same way as normal
shadow addresses, to prevent confusion a new prefix has been added.
Extended key identifiers begin with 'x' on live, on testnet with 'X'
- extended key identifiers are represented in the same way as normal
-
New rpc function extkey, alias: bip32
-
path
The path is a backslash deliminated string of digits.
m/3/4h/5
Only backslashes, digits and m, h and ' may occur in the path.The tokens m and 0 can only be first or last in the path.
-
examples:
- extkey <bip32_key>
- returns the child key according to the path
- extkey gen
- generates new key from random data
- extkey
Match bip32.org keys: bip32 gen "pass" 50000 "Bitcoin seed"
- extkey <bip32_key>
-
-
Notes
- The change address of anon transactions is picked as the first stealth
address of default account else the first legacy stealth address.
- The change address of anon transactions is picked as the first stealth
-
- Added Gitian build descriptors
- See contrib/gitian-descriptors/README
- SMSG ScanBlock harvest public keys from coinstake transactions
- Added "Txn Type" field to txnreport
- Added 'env' parameter to getinfo
- returns more environment specific information
- Added simple command line interface to shadowcoind
- enabled with new parameter "cli" when not started as a daemon
- Added createmultisig rpc command
- createmultisig does the same as existing command addmultisigaddress
except that the resulting address and script are not added to the wallet.
- createmultisig does the same as existing command addmultisigaddress
- decoderawtransaction scriptPubKey includes the hex representation
- hex of a prevout scriptPubKey is required for signrawtransaction
- signrawtransaction works when private keys are passed in as parameters
- adds redeemScript to the tempKeystore
- Added option to disable SMSG scanning of incoming blocks.
- smsgoptions set scanIncoming false
- smsgoptions command is now case insensitive
- smsgoptions list takes a bool parameter to list option descriptions
- dumpprivkey takes a pubkey as input
- More unit tests enabled
- The coin_selection_tests sometimes fail, it's related to the nSpendTime
parameter and isn't a real error. - Gui improvements
- Lock icon goes orange when system unlocked for staking only.
- Table pagination icons limited to 5.