Return-Path: Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 0796EC0177 for ; Fri, 14 Feb 2020 22:37:34 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E47B6226B3 for ; Fri, 14 Feb 2020 22:37:33 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mbg-wbBvH99q for ; Fri, 14 Feb 2020 22:37:33 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from newmail.dtrt.org (li1228-87.members.linode.com [45.79.129.87]) by silver.osuosl.org (Postfix) with ESMTPS id 1A93D2262F for ; Fri, 14 Feb 2020 22:37:33 +0000 (UTC) Received: from harding by newmail.dtrt.org with local (Exim 4.92) (envelope-from ) id 1j2jaV-00020s-IP; Fri, 14 Feb 2020 17:37:31 -0500 Date: Fri, 14 Feb 2020 16:36:42 -0600 From: "David A. Harding" To: Jeremy , Bitcoin Protocol Discussion Message-ID: <20200214223642.djdvosj7t7e6nrdz@ganymede> References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="3mlhegkhxq5pnnfo" Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20180716 Subject: Re: [bitcoin-dev] Taproot (and graftroot) complexity (reflowed) X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Feb 2020 22:37:34 -0000 --3mlhegkhxq5pnnfo Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Feb 14, 2020 at 12:07:15PM -0800, Jeremy via bitcoin-dev wrote: > Is the same if Schnorr + Merkle Branch without Taproot optimization, unle= ss > I'm missing something in one of the cases?=20 That's fair. However, it's only true if everyone constructs their merkle tree in the same way, with a single ` OP_CHECKSIG` as one of the top leaves. Taproot effectively standardizes the position of the all-parties-agree condition and so its anonymity set may contain spends from scripts whose creators buried or excluded the the all-agree option because they didn't think it was likely to be used. More importantly, there's no incentive for pure single-sig users to use a merkle tree, since that would make both the scriptPubKey and the witness data are larger for them than just continuing to use v0 segwit P2WPKH. Given that single-sig users represent a majority of transactions at present (see AJ Towns's previous email in this thread), I think we really want to make it as convenient as possible for them to participate in the anonymity set. (To be fair, taproot scriptPubKeys are also larger than P2WPKH scriptPubKeys, but its witness data is considerably smaller, giving receivers an incentive to demand P2TR payments even if spenders don't like paying the extra 12 vbytes per output.) Rough sums: - P2WPKH scriptpubkey (22.00 vbytes): `OP_0 PUSH20 ` - P2WPKH witness data (26.75): `size(72) , size(33) ` - P2TR scriptpubkey (34.00): `OP_1 PUSH32 ` - P2TR witness data (16.25): `size(64) ` - BIP116 MBV P2WSH scriptpubkey (34.00): `OP_0 PUSH32 ` - BIP116 MBV P2WSH witness data (42.00): `size(64) , size(32) , size(32) , size(36) PUSH32 OP_MBV>` -Dave P.S. I think this branch of the thread is just rehashing points that were originally covered over two years ago and which haven't really changed since then. E.g.: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-January/01= 5629.html --3mlhegkhxq5pnnfo Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEgxUkqkMp0LnoXjCr2dtBqWwiadMFAl5HIPoACgkQ2dtBqWwi adOvcw/+PleosTlGWrutQICesye0+PmA6SphSY/yj84t5eeRBVer3SNMYKyB3AnD xoEpxqkOWUwHtUlo1KTop+NbsZhdReJsm6xQ8/k3MLYXHkvsdRitGWNynF/AuYT+ wg5gO2/FOA36msg5tJFI2+L/6Q5RnVMXaoOGju/ltohdyQ+ZuHpJ8o6RCVYllHAs TLT3wQCODBWb324tvbGM2ZxbPdLfZvFeABZlodcOmXtcfygQaB37pLVi6y4cJUD3 AQLk+uYVFWRmY9NIqjSZo5c5ewZdJi4hfNEiY2DayiJPrJneEeHn9BtRLRgesoJr oTo7Gu9YTH21he/WU4gUOW7Oc91SYs+4qbkO/hswc/VGwewA+V8pDsRVpSfl1gjz Fp1YzgDAclzC8RwKmJrmg8tf1NuoenOY2V8IODQIuQOBWRPg2Tsphbbo8qy3bWwk RZcTRCvJhp3w7qZNYc6aXVeBzig7lk57IuLGRtrLvMlRdCuYVzvOT8+EWU0rDzAk WlV/xn1MumQDz7x2MqKaHh+w6qSnmhG/Vxl1fGuffrcnC10gOO0NznUxyw3kAD2w ZhRlX0J7n04Q1Y3B11D2+UicE4Tk+M/d14Fjpyw5KUqGptqW8RI4yTyPDCDhw/cO CE2I9rU6//pc8RCoRHkd5PDZuvskqZ8BXgF5/S17XbK5WfL+ZJ4= =oChn -----END PGP SIGNATURE----- --3mlhegkhxq5pnnfo--