3

When talking about HD (BIP-32?) wallets, I hear talk of Multi Sig and Key Derivation / Chains. Is it possible to mix these two concepts?

e.g. I want to store the majority of my coins with a 2 of 3 multi sig wallet, but would like to store a small subset of coins in a child key derived from the 2 of 3 wallet such that if I the child key was compromised, I could use the parent 2 of 3 wallet to spend those funds.

Is this possible or am I speaking gibberish?

  • I think Copay does this. – Natanael Jun 4 '15 at 8:59
  • I donwloaded Copay on my Android device because I heard rumors as well, but could not figure out how. – zanegray Jun 4 '15 at 22:21
  • configure it in multisig mode with several linked wallets – Natanael Jun 5 '15 at 1:46
6

Yes, it's called HDM (Hierarchical-Deterministic-Multisig).

There's no standard, per se, and the main proponent (to the best of my knowledge) is/has been Vitalik Buterin, of Ethereum/Bitcoin Magazine fame.

There's code in the Python pybitcointools library which allows one to implement this on a low level. The functions are called:

  1. bip32_hdm_script and
  2. bip32_hdm_addr

The format is: bip32_hdm_script([xprv1, xprv2, xprv3...], (0, 1..)), where the xprvs are as a list, and the integers proceeding it represent path derivation (NOTE: the ints must be a tuple). So, 0,1 means k/0/1. Use 1+2**31 for 1H. This function returns the multi-sig redeem script, so you'll pipe it into bip32_hdm_addr (which simply returns the p2sh addresses)

Of course you'll also use the script to sign transactions. There's a useful fork of pybitcointools available with added functionality and regular updates, which could be more useful in this endeavor (vs the sporadically updated source library).


A similar question - Clarification of BIP32 hierarchical deterministic multisig scripts - was recently asked and answered by me too

  • Thank you for the detailed answer... It looks like I have some reading to do. Do you know if there is a wallet that implements this functionality? – zanegray Jun 4 '15 at 22:20
  • Possibly Electrum 2.0 – Wizard Of Ozzie Jun 4 '15 at 22:21
  • @zanegray In addition to Electrum 2.x (which I can confirm supports HDM), there's also mSIGNA and Armory (although Armory is not hierarchical/BIP-32 yet). The latter two both require a Bitcoin Core node, for better or worse. There are plenty of online multisig wallets which use BIP-32/39 concepts to achieve 2fa, but it doesn't sound like that's what you're looking for.... – Christopher Gurnee Jun 5 '15 at 0:17
  • @zanegray Check out the edit referencing a similar question – Wizard Of Ozzie Jun 5 '15 at 21:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.