[Bitcoin-development] Request For Discussion / BIP number - Multi-Currency Hierarchy For Use In Multisignature Deterministic Wallets

Alan Reiner etotheipi at gmail.com
Thu Apr 9 22:37:23 UTC 2015


BTW, I had originally proposed a "no-collision" scheme for
multi-signature wallets, which doesn't require modifying the key tree
structure at all, except for adding new internal and external chains
(2*N chains).  All siblings watch all chains, but only generate
receiving and change addresses on their two chains. 

The original document is here, which might be educational for the
purposes of understand precisely the problem that needs a solution (and
mine is a different solution than BIP45).

https://www.dropbox.com/s/58poxi60d8nfj5w/MultisigWalletNoCollide.pdf

I prefer not adding even more levels to the key tree, and (IMO) it makes
more sense to add more chains to the wallet instead of adding a new tree
level (as it allows for a simpler tree in the event that you don't need
separate cosigners).  But I suspect that there's a certain momentum
behind the cosigner-index method already in BIP45?  Just throwing it out
there.

-Alan



On 04/09/2015 06:24 PM, William Swanson wrote:
> On Thu, Apr 9, 2015 at 1:16 PM, Kefkius <kefkius at maza.club> wrote:
>> I've amended the proposal's "Motivation" section slightly for
>> clarification. I'm not sure how a "cosigner_index" branch would benefit
>> this proposal. Granted, I don't fully understand the benefits of the
>> "cosigner_index" branch in BIP-0045. From what I understand, the
>> "wallet" branch of my proposal seems to accomplish a similar goal.
> Suppose Alice and Bob share a multi-sig wallet. Alice would like to
> accept payment from Mallory, and Bob would like to accept payment from
> Maude. So, they would each like to create a separate payment address.
> If Alice and Bob both generate the same address, the incoming funds
> would be mixed together (bad), and Mallory and Maude might learn about
> the relationship between Alice and Bob (also bad).
>
> Unfortunately, Alice and Bob are in a place where they can't
> communicate (maybe Bob has no cell service). There is no way for Bob
> to send a message like "I'm making a request on address_index N,
> Alice, please use a different index for your request."
>
> The cosigner_index solves this. When they set up the wallet, Alice and
> Bob agree to always use a different value for the cosigner_index. That
> way, addresses from Alice will never overlap with addresses from Bob,
> since they are on different branches. Doing it this way adds privacy
> and doesn't cost anything.
>
> With this added in, your path would be:
>
> m / purpose' / wallet' / coin_type / cosigner_index / change / address_index
>
> XPUB's generated from your wallet would then be compatible with XPUB's
> generated by other multi-sig wallets like CoPay, since the
> (cosigner_index / change / address_index) structure stays the same.
>
> -William Swanson
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development





More information about the bitcoin-dev mailing list