public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Thomas Voegtlin <thomasv1@gmx.de>
To: bitcoin-development@lists.sourceforge.net
Subject: Re: [Bitcoin-development] Multisign payment protocol?
Date: Tue, 11 Mar 2014 16:37:42 +0100	[thread overview]
Message-ID: <531F2DC6.3050502@gmx.de> (raw)
In-Reply-To: <CAKm8k+3Eohr9OtA+tSp9nXuQpxfiAwC6R61zZWSB3WMAxCZ=Vw@mail.gmail.com>


> Trezor and Electrum may be earlier than this.

Sorry for not joining the discussion earlier.

I have postponed the release of bip32 features in Electrum due to 
ongoing discussions with Trezor and bitcoinj developers.
I planned to post a summary in a separate thread, but this info is also 
relevant for this thread, so I'm posting here.
(sorry if this is a bit offtopic, though)

I plan to create a 2-factor authentication service that uses p2sh 
addresses in Electrum.
All addresses are derived from the wallet root seed, and should be 
recoverable from it.
(of course this departs from scenarios where master keys are generated 
independently;
my opinion is that both should be possible)

So, when the user activates 2fa protection, the root private key is 
deleted from their hard drive, as well as the
master private key of one of the branches used to create p2sh addresses 
(which is sent to a remote server).

See this (fairly old) description here for more details: 
https://bitcointalk.org/index.php?topic=274182.0

Since I still want to be able to generate 1of1 accounts after the 2fa 
protection is activated,
1of 1 accounts should not be generated directly from the root of the tree.
Thus, an extra level must be inserted in the tree.

For example, 1of1 addresses can be derived as follows:

m/reserved'/n'

where n is the account index, and "reserved" is an index that indicates 
the type of address.
(0 would be reserved for 1of1 addresses)

slush suggested that another layer of derivation would be useful, in 
order to use wallets
with altcoins on the same seed. This lead to this type of derivation:

m/coin'/reserved'/n'

where "coin" would be 0 for Bitcoin, and "reserved" would be 0 for 1of1 
addresses

Thomas




  parent reply	other threads:[~2014-03-11 15:37 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-10 17:39 [Bitcoin-development] Multisign payment protocol? Drak
2014-03-10 17:49 ` Gavin Andresen
2014-03-10 18:01   ` Alan Reiner
2014-03-11  0:04     ` kjj
2014-03-11  0:09       ` Alan Reiner
2014-03-11  0:14         ` Jeff Garzik
2014-03-11  1:15           ` Gavin Andresen
2014-03-11 11:43             ` Drak
2014-03-11 12:38               ` Jeff Garzik
2014-03-11 13:51                 ` Gavin Andresen
2014-03-11 14:13                   ` Jeff Garzik
2014-03-11 14:23                     ` Gavin Andresen
2014-03-11 14:34                       ` Jeff Garzik
2014-03-11 14:44                       ` Jeff Garzik
2014-03-11 14:53                         ` Gary Rowe
2014-03-11 15:18                           ` Mike Hearn
2014-03-11 17:11                             ` Miron
2014-03-11 15:37                           ` Thomas Voegtlin [this message]
2014-03-11 21:12                     ` Peter Todd
2014-03-11 17:41                   ` Odinn Cyberguerrilla
2014-03-12  0:29                     ` Jean-Pierre Rupp
2014-03-12  2:35                       ` Alan Reiner
2014-03-12  2:48                         ` Eric Lombrozo
2014-03-12  9:48                           ` Mike Hearn
2014-03-12 15:35                             ` Jeff Garzik
2014-03-12 16:02                               ` Mike Hearn
2014-03-12 16:09                                 ` Drak
2014-03-12 16:14                                   ` Mike Hearn
2014-03-12 16:24                                     ` Peter Todd
2014-03-12 16:33                                 ` Jeff Garzik
2014-03-12 16:41                                   ` Mike Hearn
2014-03-12 16:47                                     ` Peter Todd
2014-03-12 16:57                                     ` Jeff Garzik
2014-03-10 17:50 ` Mike Hearn
2014-03-10 18:12 ` Jeff Garzik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=531F2DC6.3050502@gmx.de \
    --to=thomasv1@gmx.de \
    --cc=bitcoin-development@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox