Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 2E29A932 for ; Thu, 25 Aug 2016 01:49:38 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from erelay3.ox.registrar-servers.com (erelay3.ox.registrar-servers.com [192.64.117.2]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id AB267242 for ; Thu, 25 Aug 2016 01:49:37 +0000 (UTC) Received: from localhost (unknown [127.0.0.1]) by erelay1.ox.registrar-servers.com (Postfix) with ESMTP id 8B60F2207745; Thu, 25 Aug 2016 01:49:36 +0000 (UTC) Received: from erelay1.ox.registrar-servers.com ([127.0.0.1]) by localhost (erelay.ox.registrar-servers.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id jOBLTmJb7Ojg; Wed, 24 Aug 2016 21:49:35 -0400 (EDT) Received: from MTA-10.privateemail.com (unknown [10.20.150.200]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by erelay1.ox.registrar-servers.com (Postfix) with ESMTPS id 242762207723; Wed, 24 Aug 2016 21:49:35 -0400 (EDT) Received: from APP-08 (unknown [10.20.147.158]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by MTA-10.privateemail.com (Postfix) with ESMTPSA id D0CBD60038; Thu, 25 Aug 2016 01:49:34 +0000 (UTC) Date: Wed, 24 Aug 2016 21:49:34 -0400 (EDT) From: Johnson Lau Reply-To: Johnson Lau To: Sergio Demian Lerner , Bitcoin Protocol Discussion Message-ID: <339348690.148734.1472089774841@privateemail.com> In-Reply-To: References: MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_148733_1162101342.1472089774783" X-Priority: 3 Importance: Medium X-Mailer: Open-Xchange Mailer v7.8.1-Rev18 X-Originating-Client: open-xchange-appsuite X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,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 Subject: Re: [bitcoin-dev] Attack by modifying non-segwit transactions after segwit is accepted ? X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Aug 2016 01:49:38 -0000 ------=_Part_148733_1162101342.1472089774783 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Adding witness data to a non-segwit script is invalid by consensus: https://github.com/bitcoin/bitcoin/blob/d612837814020ae832499d18e6ee5eb919a87907/src/script/interpreter.cpp#L1467 This PR will detect such violation early and ban the peer: https://github.com/bitcoin/bitcoin/pull/8499 Another approach is to run the scripts of all incoming transactions. That's not too bad as you have already fetched the utxos which is a major part of validation. ------=_Part_148733_1162101342.1472089774783 MIME-Version: 1.0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit

Adding witness data to a non-segwit script is invalid by consensus:

https://github.com/bitcoin/bitcoin/blob/d612837814020ae832499d18e6ee5eb919a87907/src/script/interpreter.cpp#L1467


This PR will detect such violation early and ban the peer:

https://github.com/bitcoin/bitcoin/pull/8499


Another approach is to run the scripts of all incoming transactions. That's not too bad as you have already fetched the utxos which is a major part of validation.

------=_Part_148733_1162101342.1472089774783--