Return-Path: Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) by lists.linuxfoundation.org (Postfix) with ESMTP id 5FC3FC002B for ; Sat, 18 Feb 2023 18:38:06 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 3AFD141548 for ; Sat, 18 Feb 2023 18:38:06 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 3AFD141548 X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -1.901 X-Spam-Level: X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id R-7phrOCGeWQ for ; Sat, 18 Feb 2023 18:38:04 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 2AD4441527 Received: from smtpout3.mo529.mail-out.ovh.net (smtpout3.mo529.mail-out.ovh.net [46.105.54.81]) by smtp4.osuosl.org (Postfix) with ESMTPS id 2AD4441527 for ; Sat, 18 Feb 2023 18:38:03 +0000 (UTC) Received: from mxplan6.mail.ovh.net (unknown [10.109.146.15]) by mo529.mail-out.ovh.net (Postfix) with ESMTPS id 2371C20D06; Sat, 18 Feb 2023 18:38:01 +0000 (UTC) Received: from peersm.com (37.59.142.103) by DAG6EX2.mxp6.local (172.16.2.52) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Sat, 18 Feb 2023 19:38:00 +0100 Authentication-Results: garm.ovh; auth=pass (GARM-103G00568c93857-85e7-4e04-9605-a2cb97b87770, 57DB9B9A27D8FE140694BC5FE6D2F54054A63BD2) smtp.auth=aymeric@peersm.com X-OVh-ClientIp: 92.184.100.114 To: Anthony Towns , Russell O'Connor , Bitcoin Protocol Discussion References: <57f780b1-f262-9394-036c-70084320e9cf@peersm.com> <3d00aacb-585d-f875-784d-34352860d725@peersm.com> <230265ee-c3f8-dff3-9192-f0c8dc4d913c@peersm.com> From: Aymeric Vitte Message-ID: <26619d50-669d-1a7d-82cb-c7de8795dc92@peersm.com> Date: Sat, 18 Feb 2023 19:38:00 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: quoted-printable X-Originating-IP: [37.59.142.103] X-ClientProxiedBy: DAG1EX1.mxp6.local (172.16.2.1) To DAG6EX2.mxp6.local (172.16.2.52) X-Ovh-Tracer-GUID: b9920aad-7a1b-4357-b554-bd6144a0a65f X-Ovh-Tracer-Id: 1948088317038388189 X-VR-SPAMSTATE: OK X-VR-SPAMSCORE: -100 X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvhedrudejuddgudduvdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfqggfjpdevjffgvefmvefgnecuuegrihhlohhuthemucehtddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefuvfhfhffkffgfgggjtgfgihesthhqredttdefheenucfhrhhomhepteihmhgvrhhitgcugghithhtvgcuoegrhihmvghrihgtsehpvggvrhhsmhdrtghomheqnecuggftrfgrthhtvghrnhepheeugefhgeethfeltddvteevveekvdeuiefhueffiefghfetjedthffgffeuheejnecuffhomhgrihhnpehgihhthhhusgdrtghomhdpphgvvghrshhmrdgtohhmpdhlihhnkhgvughinhdrtghomhenucfkphepuddvjedrtddrtddruddpfeejrdehledrudegvddruddtfeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpeduvdejrddtrddtrddupdhmrghilhhfrhhomhepoegrhihmvghrihgtsehpvggvrhhsmhdrtghomheqpdhnsggprhgtphhtthhopedupdhrtghpthhtohepsghithgtohhinhdquggvvheslhhishhtshdrlhhinhhugihfohhunhgurghtihhonhdrohhrghdprhhotghonhhnohhrsegslhhotghkshhtrhgvrghmrdgtohhmpdgrjhesvghrihhsihgrnhdrtghomhdrrghupdfovfetjfhoshhtpehmohehvdelpdhmohguvgepshhmthhpohhuth X-Mailman-Approved-At: Sat, 18 Feb 2023 19:01:11 +0000 Subject: Re: [bitcoin-dev] Debate: 64 bytes in OP_RETURN VS taproot OP_FALSE OP_IF OP_PUSH 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: Sat, 18 Feb 2023 18:38:06 -0000 So with datacarrier we can store data in taproot annex with one tx which will be data and/or extension of the script validation via PUSH_ANNEX I looked at your links and plenty of others, but had some hard time to find the proposal (https://github.com/bitcoin/bips/blob/9dc3f74b384f143b7f1bdad30dc0fe2529c= 8e63f/bip-annex.mediawiki I suppose), when do you think datacarrier can happen for real on the network? Now I think the OP_RETURN debate remains relevant, it's a quite trivial modification to do, from my standpoint it is certainly not intended to store big things (but 80B, what do you want to do with this?), but if people want to store big things and pay for it... what is the real issue? (I saw your argument of "partial" block validation and others like skipping witness data, at the end nodes must validate the whole thin= g) Le 17/02/2023 =E0 13:49, Anthony Towns a =E9crit : > On Sat, Feb 04, 2023 at 07:11:35PM -0500, Russell O'Connor via bitcoin-= dev wrote: >> Since bytes in the witness are cheaper than bytes in the script pubkey= , >> there is a crossover point in data size where it will simply be cheape= r to >> use witness data. > Given today's standardness constraints, that's true (because you first > need to construct a p2wsh/tapscript output that commits to the data, > then you have to spend it), but it needn't stay that way. Allowing a da= ta > carrier entry in the annex (as contemplated for eltoo [0]) would allow > you to publish the data with a single transaction, with malleability > prevented because the annex content is committed to by the signature. > > [0] https://github.com/bitcoin-inquisition/bitcoin/pull/22 > > I think the cost for publishing data via the witness today is roughly: > > 115 vb - for the commitment tx > 115 vb + datalen/4 - for the publication tx > > versus > > 125 vb + datalen - for a tx with an OP_RETURN output > > so the crossover point is at a datalen of about 140 bytes. Perhaps > slightly more or less depending on how much you can combine these > inputs/outputs with other txs you would have made anyway. > > With a datacarrier in the annex that has similar or higher limits than > OP_RETURN, I don't think OP_RETURN would ever be cheaper. > > The other advantage to using the witness for random data compared to > OP_RETURN is that the txid commits to OP_RETURN output, so you must > download all OP_RETURN data to validate a block's merkle tree, whereas > you can partially validate a block (in particular, you can validate the= > spendable utxo set) without downloading witness data [1]. > > [1] https://github.com/bitcoin/bitcoin/pull/27050 > > Cheers, > aj --=20 Sophia-Antipolis, France CV: https://www.peersm.com/CVAV.pdf LinkedIn: https://fr.linkedin.com/in/aymeric-vitte-05855b26 GitHub : https://www.github.com/Ayms A Universal Coin Swap system based on Bitcoin: https://gist.github.com/Ay= ms/029125db2583e1cf9c3209769eb2cdd7 A bitcoin NFT system: https://gist.github.com/Ayms/01dbfebf219965054b4a3b= eed1bfeba7 Move your coins by yourself (browser version): https://peersm.com/wallet Bitcoin transactions made simple: https://github.com/Ayms/bitcoin-transac= tions torrent-live: https://github.com/Ayms/torrent-live node-Tor : https://www.github.com/Ayms/node-Tor Anti-spies and private torrents, dynamic blocklist: http://torrent-live.p= eersm.com Peersm : http://www.peersm.com