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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
|
Return-Path: <decker.christian@gmail.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
[172.17.192.35])
by mail.linuxfoundation.org (Postfix) with ESMTPS id 09B2997
for <bitcoin-dev@lists.linuxfoundation.org>;
Mon, 19 Oct 2015 19:29:02 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-lf0-f45.google.com (mail-lf0-f45.google.com
[209.85.215.45])
by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 38077194
for <bitcoin-dev@lists.linuxfoundation.org>;
Mon, 19 Oct 2015 19:29:01 +0000 (UTC)
Received: by lffz202 with SMTP id z202so38481557lff.3
for <bitcoin-dev@lists.linuxfoundation.org>;
Mon, 19 Oct 2015 12:28:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
h=mime-version:references:in-reply-to:from:date:message-id:subject:to
:cc:content-type;
bh=MZHcMIj/9NeorDKA8FOkUjSpggypAL70txlGwL9brMM=;
b=DXNySmMrOIZSxNs77/iRBg2kvQrHlavkms9BgtK3VkKc1y0hLywfrQkBNej0xORylk
lwzjo7R9jaXymPnKmTWm4dHENiYGS5bvGc6rnbxn5uDCRXDZIjz/3bCmtcyILBTFYGMA
Snl+XxWSPm2j6mjFZBpDa0s714ByIjU1moAi29ATxyYtzFZjMzJZQG12qwJLylQCQTcL
xfvTfPdYrUwRWwVIA316jkopRJUFErJG6CWu7hIlTDgmvcHY1y+FPG6osYtX5or7JUcu
y2h8QzBQJ/Ay9f0wgVq46EcQDmyta1EZfkj3v5a7kGM7ha2lERGq5a9ZL1N+WPO5DFBW
TH8g==
X-Received: by 10.194.111.198 with SMTP id ik6mr38119967wjb.96.1445282939432;
Mon, 19 Oct 2015 12:28:59 -0700 (PDT)
MIME-Version: 1.0
References: <CALxbBHU+kdEAh_4+B663vknAAr8OKZpUzVTACORPZi47E=Ehkw@mail.gmail.com>
<CAE-z3OUrM=0XsdfdU2d9h6uhCh9vP83X-OZR8NyAYsvYuE1vtg@mail.gmail.com>
In-Reply-To: <CAE-z3OUrM=0XsdfdU2d9h6uhCh9vP83X-OZR8NyAYsvYuE1vtg@mail.gmail.com>
From: Christian Decker <decker.christian@gmail.com>
Date: Mon, 19 Oct 2015 19:28:49 +0000
Message-ID: <CALxbBHV1rwzjrYO5j0hRh1RW51wvt27AHCmN5kvj-EasqgM1+A@mail.gmail.com>
To: Tier Nolan <tier.nolan@gmail.com>
Content-Type: multipart/alternative; boundary=001a1130cfa23475c905227a2826
X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,
DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,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 development mailing list <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: Mon, 19 Oct 2015 19:29:02 -0000
--001a1130cfa23475c905227a2826
Content-Type: text/plain; charset=UTF-8
Yes, this has been pointed out in the PR as well. Transactions inputs must
also be normalized by replacing malleable hashes with the normalized
hashes. I will fix the spec and the implementation to reflect this :-)
Regards,
Christian
On Mon, Oct 19, 2015 at 5:24 PM Tier Nolan via bitcoin-dev <
bitcoin-dev@lists.linuxfoundation.org> wrote:
> On Mon, Oct 19, 2015 at 3:01 PM, Christian Decker via bitcoin-dev <
> bitcoin-dev@lists.linuxfoundation.org> wrote:
>
>> As with the previous version, which was using a hard-fork, the normalized
>> transaction ID is computed only considering the non-malleable parts of a
>> transaction, i.e., stripping the signatures before computing the hash of
>> the transaction.
>> <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>
>
>
> Is this proposal recursive?
>
>
> *Coinbase transaction *
>
> * n-txid = txid
>
>
> *Non-coinbase transactions*
> * replace sigScripts with empty strings
> * replace txids in TxIns with n-txid for parents
>
> The 2nd step is recursive starting from the coinbases.
>
> In effect, the rule is that txids are what they would have been if n-txids
> had been used right from the start.
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>
--001a1130cfa23475c905227a2826
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Yes, this has been pointed out in the PR as well. Transact=
ions inputs must also be normalized by replacing malleable hashes with the =
normalized hashes. I will fix the spec and the implementation to reflect th=
is :-)<div><br></div><div>Regards,</div><div>Christian<br><br><div class=3D=
"gmail_quote"><div dir=3D"ltr">On Mon, Oct 19, 2015 at 5:24 PM Tier Nolan v=
ia bitcoin-dev <<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org"=
>bitcoin-dev@lists.linuxfoundation.org</a>> wrote:<br></div><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_extra"><div class=
=3D"gmail_quote">On Mon, Oct 19, 2015 at 3:01 PM, Christian Decker via bitc=
oin-dev <span dir=3D"ltr"><<a href=3D"mailto:bitcoin-dev@lists.linuxfoun=
dation.org" target=3D"_blank">bitcoin-dev@lists.linuxfoundation.org</a>>=
</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .=
8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>As w=
ith the previous version, which was using a hard-fork, the normalized trans=
action ID is computed only considering the non-malleable parts of a transac=
tion, i.e., stripping the signatures before computing the hash of the trans=
action. <br></div></div><a href=3D"https://lists.linuxfoundation.org/mailma=
n/listinfo/bitcoin-dev" rel=3D"noreferrer" target=3D"_blank"></a></blockquo=
te><div><br></div></div></div></div><div dir=3D"ltr"><div class=3D"gmail_ex=
tra"><div class=3D"gmail_quote"><div>Is this proposal recursive?=C2=A0 <br>=
<br></div><div><b>Coinbase transaction <br></b></div><div><br>* n-txid =3D =
txid<br></div></div><br></div><div class=3D"gmail_extra"><b>Non-coinbase tr=
ansactions<br></b><br></div><div class=3D"gmail_extra">* replace sigScripts=
with empty strings<br></div><div class=3D"gmail_extra">* replace txids in =
TxIns with n-txid for parents<br><br></div><div class=3D"gmail_extra">The 2=
nd step is recursive starting from the coinbases.<br></div><div class=3D"gm=
ail_extra"><br></div><div class=3D"gmail_extra">In effect, the rule is that=
txids are what they would have been if n-txids had been used right from th=
e start.<br></div></div>
_______________________________________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">=
bitcoin-dev@lists.linuxfoundation.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" =
rel=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.org/mail=
man/listinfo/bitcoin-dev</a><br>
</blockquote></div></div></div>
--001a1130cfa23475c905227a2826--
|