Return-Path: Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 195B9C0037 for ; Wed, 24 Jan 2024 19:31:18 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id C7C0D820A3 for ; Wed, 24 Jan 2024 19:31:17 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org C7C0D820A3 Authentication-Results: smtp1.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.a=rsa-sha256 header.s=fm3 header.b=P4mDVPr1 X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -1.2 X-Spam-Level: X-Spam-Status: No, score=-1.2 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RTk01ZelqPig for ; Wed, 24 Jan 2024 19:31:16 +0000 (UTC) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by smtp1.osuosl.org (Postfix) with ESMTPS id 36E628208C for ; Wed, 24 Jan 2024 19:31:16 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 36E628208C Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 7A5F85C00F5 for ; Wed, 24 Jan 2024 14:31:13 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Wed, 24 Jan 2024 14:31:13 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1706124673; x=1706211073; bh=u9UZN5/TcPxPSqNi3blXMbKeJQ+/Nygy4Sq KSL8JBYs=; b=P4mDVPr1QwdPJ0Pz1XAd0IxAtZrNqMAuzKuOG1wUrk0fETerEi3 3AcFL02MQJhD35SHA6AbuNxZfIILIOxLOvuggoJDj3/Rgy+TNOAwAUiG8kY88HeS H6fnWfJsOoCcc4LUlWaV46Jc/f3EPKoRXP97PrRtMAzu7jvpssN+Ey8PPVM01xYJ v5M8TFd2UepmsQ/7RcPXCzUbUANY1cEBS5VBiPOhMhZBE9MUJQnfvVqJyLVjlCRO 6WGP1jIShMYN3wQ8dJdewSTqrpl7lMEaEdZNT6vcJCweTzqLalWeK6WV0McTcclo oRdmewX8OZS8yUKHQZGAeZPyWaI8Bt/Dw6A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdeluddguddvfecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvffukfggtggusehgtderre dttddvnecuhfhrohhmpefrvghtvghrucfvohguugcuoehpvghtvgesphgvthgvrhhtohgu ugdrohhrgheqnecuggftrfgrthhtvghrnhepgeehfeeutdektdegveeukeekieduveekie dthedtteetffdugeeutdelveethfdvnecuffhomhgrihhnpehgihhthhhusgdrtghomhdp phgvthgvrhhtohguugdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmh epmhgrihhlfhhrohhmpehpvghtvgesphgvthgvrhhtohguugdrohhrgh X-ME-Proxy: Feedback-ID: i525146e8:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Wed, 24 Jan 2024 14:31:12 -0500 (EST) Received: by localhost (Postfix, from userid 1000) id D2F045F84B; Wed, 24 Jan 2024 19:31:07 +0000 (UTC) Date: Wed, 24 Jan 2024 19:31:07 +0000 From: Peter Todd To: bitcoin-dev@lists.linuxfoundation.org Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="aUHUtas1TpIhRBQ1" Content-Disposition: inline Subject: [bitcoin-dev] CheckTemplateVerify Does Not Scale Due to UTXO's Required For Fee Payment 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: Wed, 24 Jan 2024 19:31:18 -0000 --aUHUtas1TpIhRBQ1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable CheckTemplateVerify(1) is a proposed covenant opcode that commits to the transaction that can spend an output. Namely, # of inputs, # of outputs, outputs hash, etc. In practice, in many if not most CTV use-cases intended = to allow multiple parties to share a single UTXO, it is difficult to impossibl= e to allow for sufficient CTV variants to cover all possible fee-rates. It is expected that CTV would be usually used with anchor outputs to pay fees; by creating an input of the correct size in a separate transaction and includi= ng it in the CTV-committed transaction; or possibly, via a transaction sponsor soft-fork. This poses a scalability problem: to be genuinely self-sovereign in a proto= col with reactive security, such as Lightning, you must be able to get transact= ions mined within certain deadlines. To do that, you must pay fees. All of the intended exogenous fee-payment mechanisms for CTV require users to have at least one UTXO of suitable size to pay for those fees. This requirement for all users to have a UTXO to pay fees negates the efficiency of CTV-using UTXO sharing schemes, as in an effort to share a UT= XO, CTV requires each user to have an extra UTXO. The only realistic alternativ= e is to use a third party to pay for the UTXO, eg via a LN payment, but at that point it would be more efficient to pay an out-of-band mining fee. That of course is highly undesirable from a mining centralization perspective.(2) Recommendations: CTV in its current form be abandoned as design foot-gun. O= ther convenant schemes should be designed to work well with replace-by-fee, to a= void requirements for extra UTXOs, and to maximize on-chain efficiency. 1) https://github.com/bitcoin/bips/blob/deae64bfd31f6938253c05392aa355bf6d7= e7605/bip-0119.mediawiki 2) https://petertodd.org/2023/v3-transactions-review#anchor-outputs-are-a-d= anger-to-mining-decentralization --=20 https://petertodd.org 'peter'[:-1]@petertodd.org --aUHUtas1TpIhRBQ1 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE0RcYcKRzsEwFZ3N5Lly11TVRLzcFAmWxZXkACgkQLly11TVR LzedQQ//d0kFe6QVE7gyq0iHWuCDJV2b+qQ8ITr+S6L3DIddKfomtpbGEYG5XoAW lICvl5jtorSoXI0+6706nMcxqJNJ7xWAPtvUox76O3kBOahVmt9R5WItAv5oYDbB mF4CKFrOtIPGe4FO8ZuCY+A/vgeOumQa4ASQ+jw/8ztYOStISjyh9vKRKAF2k5zl NGCmrOKy5rWI67nT29fCl54VJbwPvcmfyMoje+jCFlX2m1LQRfIHKLtPSpek3IL6 In04gmwIbplMqYwqTy2BwdacPpUJUyVAtGQuXxeXozfMcbCWKNLz1gJUHliainJi WXePE4iBXdbgcLRpYu1IF/Gw5cwPQRVEXD8+cIodEGEvIqgArK0RubDH8EDU1g65 1+xEfv0MX6ynItrJOMODGODVX0qSDcIe2sCBTCF3rbESsiCJgiZ5yoW3B9gor4Ll tHToof7o1DAim6PHLT/gWrurUYYSC6K2YTZhHUR/T2+sazkUN/3dLORbJnJVi6X5 EgP/f3T6Tq0pnGKmuzl3JfQFaSHJyhSx0FXr6+IYbYloOKPIbWM0o/w0wWWzpwRa SxRuNV+zAcqK7OEWJQV3BqWoxjS9AibdPzWWVNITxLFR+uvw5ePcI+E7LtjhRkou +fCylWOHgWVD4sBPOuk0WYRFVgNPhw6RBbG+qfl4u49sI0ewIbg= =hXgr -----END PGP SIGNATURE----- --aUHUtas1TpIhRBQ1--