summaryrefslogtreecommitdiff
path: root/f0/0b266de67f3f6aa35c041224d74e8eba2667ea
blob: 3776cdb4e55f043ef7034dcc5c2ceeccefc4c98f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
Received: from sog-mx-3.v43.ch3.sourceforge.com ([172.29.43.193]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <gmaxwell@gmail.com>) id 1QwFdj-0007o9-AI
	for bitcoin-development@lists.sourceforge.net;
	Wed, 24 Aug 2011 15:45:15 +0000
Received-SPF: pass (sog-mx-3.v43.ch3.sourceforge.com: domain of gmail.com
	designates 209.85.216.182 as permitted sender)
	client-ip=209.85.216.182; envelope-from=gmaxwell@gmail.com;
	helo=mail-qy0-f182.google.com; 
Received: from mail-qy0-f182.google.com ([209.85.216.182])
	by sog-mx-3.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1QwFdi-0007Ro-LD
	for bitcoin-development@lists.sourceforge.net;
	Wed, 24 Aug 2011 15:45:15 +0000
Received: by qyk9 with SMTP id 9so1057986qyk.13
	for <bitcoin-development@lists.sourceforge.net>;
	Wed, 24 Aug 2011 08:45:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.24.133 with SMTP id v5mr2058761qcb.178.1314200709170; Wed,
	24 Aug 2011 08:45:09 -0700 (PDT)
Received: by 10.229.114.206 with HTTP; Wed, 24 Aug 2011 08:45:09 -0700 (PDT)
In-Reply-To: <CABsx9T1uw43JuvhEmJP0KCyojsDi1r7v6BaLBHz7wWazduE5iw@mail.gmail.com>
References: <CABsx9T1uw43JuvhEmJP0KCyojsDi1r7v6BaLBHz7wWazduE5iw@mail.gmail.com>
Date: Wed, 24 Aug 2011 11:45:09 -0400
Message-ID: <CAAS2fgS+YLf3hP+VbMiQAZ8S7fNrno1g6pi33825MFWiTg7=4A@mail.gmail.com>
From: Gregory Maxwell <gmaxwell@gmail.com>
To: Gavin Andresen <gavinandresen@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -1.5 (-)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
	sender-domain
	0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
	(gmaxwell[at]gmail.com)
	-0.0 SPF_PASS               SPF: sender matches SPF record
	-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	author's domain
	0.1 DKIM_SIGNED            Message has a DKIM or DK signature,
	not necessarily valid
	-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
	0.1 AWL AWL: From: address is in the auto white-list
X-Headers-End: 1QwFdi-0007Ro-LD
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] New standard transaction types: time to
 schedule a blockchain split?
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Wed, 24 Aug 2011 15:45:15 -0000

On Wed, Aug 24, 2011 at 11:12 AM, Gavin Andresen
<gavinandresen@gmail.com> wrote:
> It seems to me the fastest path to very secure, very-hard-to-lose
> bitcoin wallets is multi-signature transactions.
>
> To organize this discussion: first, does everybody agree?

It's a good tool which we should have in our tool-belt.

Though it's a bit of when you are a hammer all problems are nails.
This issue can also be addressed by things like external private key
protectors.  But someone would have to build one.

Someone might be more inclined to build such a thing if the software
had good support for tracking public keys without private keys, and
generating unsigned transactions for export to the device for signing.

> ByteCoin pointed to a research paper that gives a scheme for splitting
> a private key between two people, neither of which every knows the
[snip]
> So I'm assuming that is NOT the fastest way to solving the problem.

Regardless, it might be useful to contact the authors.

> I still think it is a good idea to enable a set of new 'standard'
> multisignature transactions, so they get relayed and included into
> blocks. =C2=A0I don't want to let "the perfect become the enemy of the
> good" -- does anybody disagree?

I agree.

> The arguments against are that if the proposed standard transactions
> are accepted, then the next step is to define a new kind of bitcoin
> address that lets coins be deposited into a multisignature-protected
> wallet.
>
> And those new as-yet-undefined bitcoin addresses will have to be 2 or
> 3 times as big as current bitcoin addresses, and will be incompatible
> with old clients.
>
> So, if we are going to have new releases that are incompatible with
> old clients why not do things right in the first place, implement or
> enable opcodes so the new bitcoin addresses can be small, and schedule
> a block chain split for N months from now.

One way of doing this would be to have an address which hashes an
ordered concatenation of many addresses (perhaps plus a length
argument). To redeem you provide the public keys which are signing,
plus the addresses which aren't signing, and the receiver validates.

If it can be done, then yes, I agree it would be worth forking the chain.

This _feels_ like something which could and should be done with the
existing (but disabled opcodes).


It's not exclusive, however, with a long N-address address type for
multisig destinations.  We could support that _now_ and defer the
'compressed version' until after people have experience with this
usage.  The only cost would be supporting this address type forever,
which isn't that bad.

It's also important to note that incompatibility wouldn't be complete:
The only limit is that old clients couldn't send funds to escrow
addresses=E2=80=94 which is an issue no matter how you encode the informati=
on.