summaryrefslogtreecommitdiff
path: root/41/d68eeec08defc041721462c684b1d94f504665
blob: 3755dd8bfa8fa682e3cd5ae2ce35668933205a8e (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
Return-Path: <gmaxwell@gmail.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 5AF233EE
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Oct 2015 19:27:55 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-io0-f177.google.com (mail-io0-f177.google.com
	[209.85.223.177])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id D4C2B90
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Oct 2015 19:27:54 +0000 (UTC)
Received: by iow1 with SMTP id 1so68790221iow.1
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Oct 2015 12:27:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=mime-version:in-reply-to:references:date:message-id:subject:from:to
	:cc:content-type;
	bh=HXNHY6BAEAOXmQqMOcs4Fqko8WBVJEwq1D+TaDmpBgc=;
	b=jStWzNlDuZKd74pJ8zXKHN2ELoemjL633EBkLhD8G6RmPWxXlGO3OJRr1lisH+voGV
	WOfhqXPNIoQhIT8u5xsIpeprCbDitYfUzEvXLypDXmgYPicN7xAU38+BBy4g8GXZGSWZ
	xyXicz+Hed2XWw/eU0HEu7zYrze83Ltp4x7I409Ej1ee+k0XZCdtfeWRn8VqJBuVQovn
	2d3cuGbL32U+Y2cD3eBFG098MvtO6KGdk8QaFYFAFTiW9lypcCbPnhntDeE8LWVl39Du
	g9ZOvmwgu01T657mAe1W1xHKdNA+FBu5sesQgJ4SSXBVp8k0/FSQcIiT0TsqXUL6oQnj
	DXKA==
MIME-Version: 1.0
X-Received: by 10.107.30.78 with SMTP id e75mr12697094ioe.150.1445455674303;
	Wed, 21 Oct 2015 12:27:54 -0700 (PDT)
Received: by 10.107.23.197 with HTTP; Wed, 21 Oct 2015 12:27:54 -0700 (PDT)
In-Reply-To: <CAJN5wHXSbZPuXN7PQRyOgOMuk2Ogooiww3hW93uNipQJnfkeOg@mail.gmail.com>
References: <CALxbBHU+kdEAh_4+B663vknAAr8OKZpUzVTACORPZi47E=Ehkw@mail.gmail.com>
	<201510210839.42420.luke@dashjr.org>
	<CALxbBHWOp9Q67bqSd4h=2+28PT_2stWzMBQ=nSvxPqKocx_xtQ@mail.gmail.com>
	<201510210846.43988.luke@dashjr.org>
	<CAJN5wHXSbZPuXN7PQRyOgOMuk2Ogooiww3hW93uNipQJnfkeOg@mail.gmail.com>
Date: Wed, 21 Oct 2015 19:27:54 +0000
Message-ID: <CAAS2fgTjG2yC1Zxqc6bgTk=Z2rAQbW6mnW7pef3jSNKcOZ4fng@mail.gmail.com>
From: Gregory Maxwell <gmaxwell@gmail.com>
To: Danny Thorpe <danny.thorpe@gmail.com>
Content-Type: text/plain; charset=UTF-8
X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM,
	RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
Cc: Bitcoin Dev <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] [BIP] Normalized transaction IDs
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Development Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Wed, 21 Oct 2015 19:27:55 -0000

On Wed, Oct 21, 2015 at 6:22 PM, Danny Thorpe via bitcoin-dev
<bitcoin-dev@lists.linuxfoundation.org> wrote:
> outputs) seems like quite a different hazard than a malicious third party
> modifying a transaction in the mempool by twiddling opcodes in the signature
> scripts.  The former seems like more a matter of keeping your own house in

Indeed they are different, but canonical encoding enforcement prevents
the third party malleability completely on ordinary transactions.

It is an an _immediate_ solution which is already deployed as a
standardness rule-- once miners update to 0.11.1 or 0.10.3 (or
equivalent) only miners will be able to malleable ordinary payments,
to the best of our current understanding.

[snip]
> proposal. Baby steps. Normalized transaction IDs provide an immediate
> benefit against the hazard of third party manipulation of transactions in
> the mempool, even without canonical ordering.

The thing being discussed here does not provide an immediate benefit
to that particular issue.  It addresses multistep contracts and other
cases.

But it does not prevent third party mutation until people change their
public keys to new scheme (which based on p2sh we should expect a well
over a year deployment), which they cannot being doing until a soft
fork is made and settled in the network, for which the code is not yet
written. CLTV suggests that the current timeframe for a soft fork is
around a year and though I'd like to see that improved.

So canonical encoding is both sufficient (to the best of our current
understanding) for preventing third party malleability on ordinary
transactions, and the _only_ option for to have an actually immediate
benefit.

Please don't mix up third party malleability with this work which is
important in its own right.