diff options
author | MeshCollider <dobsonsa68@gmail.com> | 2018-12-12 16:31:52 +1300 |
---|---|---|
committer | MeshCollider <dobsonsa68@gmail.com> | 2018-12-12 17:24:26 +1300 |
commit | 3fff1ab817e7995720c3aa0374807ed70d1a4d24 (patch) | |
tree | 74d615745c2e2356eff2178f93d646c316d789b7 /src/qt/test/wallettests.cpp | |
parent | f65bce858f266b352c9ddd1f5480431dca56fcae (diff) | |
parent | 26879509f1a3b9fc0fa616164e5a88fdb344ac4d (diff) | |
download | bitcoin-3fff1ab817e7995720c3aa0374807ed70d1a4d24.tar.xz |
Merge #14646: Add expansion cache functions to descriptors (unused for now)
26879509f Add comments to descriptor tests (Pieter Wuille)
82df4c64f Add descriptor expansion cache (Pieter Wuille)
1eda33aab [refactor] Combine the ToString and ToPrivateString implementations (Pieter Wuille)
24d3a7b3a [refactor] Use DescriptorImpl internally, permitting access to new methods (Pieter Wuille)
6be0fb4b3 [refactor] Add a base DescriptorImpl with most common logic (Pieter Wuille)
Pull request description:
This patch modifies the internal `Descriptor` class to optionally construct and use an "expansion cache". Such a cache is a byte array that encodes all information necessary to expand a `Descriptor` a second time without access to private keys, and without the need to perform expensive BIP32 derivations. For all currently defined descriptors, the cache simply contains a concatenation of all public keys used.
This is motivated by the goal of importing a descriptor into the wallet and using it as a replacement for the keypool, where it would be impossible to expand descriptors if they use hardened derivation.
Tree-SHA512: f531a0a82ec1eecc30b78ba8a31724d1249826b028cc3543ad32372e1aedd537f137ab03dbffc222c5df444d5865ecd5cec754c1ae1d4989b6e9baeaffade32a
Diffstat (limited to 'src/qt/test/wallettests.cpp')
0 files changed, 0 insertions, 0 deletions