Return-Path: Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 8AB49C0011 for ; Thu, 24 Feb 2022 12:03:40 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 6798D8134C for ; Thu, 24 Feb 2022 12:03:40 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -1.602 X-Spam-Level: X-Spam-Status: No, score=-1.602 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FROM_LOCAL_NOVOWEL=0.5, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com 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 aSsGSIFCq-BR for ; Thu, 24 Feb 2022 12:03:39 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 Received: from mail-40137.protonmail.ch (mail-40137.protonmail.ch [185.70.40.137]) by smtp1.osuosl.org (Postfix) with ESMTPS id 7F29D8133B for ; Thu, 24 Feb 2022 12:03:39 +0000 (UTC) Date: Thu, 24 Feb 2022 12:03:32 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1645704216; bh=ZNmK0FPw//uSlbTsCCN2rOZQiEeuVYBHJSWUfKYmpQY=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID; b=mG27QfEws2C5jAnDzxw6a8VpWM4dfoFK9YPjqzk7bW4fWWiLmyTK+FnLzi4wgi9Kh dc0m2Fgwd8Vw9/JijgiDAWUJDVJ1N+s9VlPywkQbzaF5Gr0BHTKaEFP8lyBweRPtMD Yq3SiVWSn/xnDkuH2pGciNm434/OMNjfBUHQROnRCcd8EjSZTJDyFEKu2j2wf7sabT Zgtmlj8965ffSFolBKuTzvmSx9q/DxYuPgbl2BCCSCOtrGNXV1w33jRHv7Gyk4x1ip 0pd4ThKQbYjvIuYIofUs4s61BGxOHVRpk9JFjz8jzlzF1KtxCvU4iDT/JPbzPWeMxp iyBRRiUtgXt4Q== To: Anthony Towns From: ZmnSCPxj Reply-To: ZmnSCPxj Message-ID: In-Reply-To: <20220224065305.GB1965@erisian.com.au> References: <87leymuiu8.fsf@rustcorp.com.au> <0100017ee6472e02-037d355d-4c16-43b0-81d2-4a82b580ba99-000000@email.amazonses.com> <20220224065305.GB1965@erisian.com.au> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: Bitcoin Protocol Discussion Subject: Re: [bitcoin-dev] Recursive covenant opposition, or the absence thereof, was Re: TXHASH + CHECKSIGFROMSTACKVERIFY in lieu of CTV and ANYPREVOUT 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: Thu, 24 Feb 2022 12:03:40 -0000 Good morning aj, > > Logically, if the construct is general enough to form Drivechains, and > > we rejected Drivechains, we should also reject the general construct. > > Not providing X because it can only be used for E, may generalise to not > providing Y which can also only be used for E, but it doesn't necessarily > generalise to not providing Z which can be used for both G and E. Does this not work only if the original objection to merging in BIP-300 was= of the form: * X implements E. * Z implements G and E. * Therefore, we should not merge in X and instead should merge in the more = general construct Z. ? Where: * E =3D Drivechains * X =3D BIP-300 * Z =3D some general computation facility * G =3D some feature. But my understanding is that most of the NACKs on the BIP-300 were of the f= orm: * X implements E. * E is bad. * Therefore, we should not merge in X. If the above statement "E is bad" holds, then: * Z implements G and E. * Therefore, we should not merge in Z. Where Z =3D something that implements recursive covenants. I think we really need someone who NACKed BIP-300 to speak up. If my understanding is correct and that the original objection was "Drivech= ains are bad for reasons R[0], R[1]...", then: * You can have either of these two positions: * R[0], R[1] ... are specious arguments and Drivechains are not bad, ther= efore we can merge in a feature that enables Recursive Covenants -> Turing-= Completeness -> Drivechains. * Even if you NACKed before, you *are* allowed to change your mind and = move to this position. * R[0], R[1] ... are valid arguments are Drivechains are bad, therefore w= e should **NOT** merge in a feature that implements Recursive Covenants -> = Turing-Completeness -> Drivechains. You cannot have it both ways. Admittedly, there may be some set of restrictions that prevent Turing-Compl= eteness from implementing Drivechains, but you have to demonstrate a proof = of that set of restrictions existing. > I think it's pretty reasonable to say: > > a) adding dedicated consensus features for drivechains is a bad idea > in the absence of widespread consensus that drivechains are likely > to work as designed and be a benefit to bitcoin overall > > b) if you want to risk your own funds by leaving your coins on an > exchange or using lightning or eltoo or tumbling/coinjoin or payment > pools or drivechains or being #reckless in some other way, and aren't > asking for consensus changes, that's your business *Shrug* I do not really see the distinction here --- in a world with Drivec= hains, you are free to not put your coins in a Drivechain-backed sidechain,= too. (Admittedly, Drivechains does get into a Mutually Assured Destruction argum= ent, so that may not hold. But if Drivechains going into a MAD argument is an objection, then I do not= see why covenant-based Drivechains would also not get into the same MAD ar= gument --- and if you want to avoid the MADness, you cannot support recursi= ve covenants, either. Remember, 51% attackers can always censor the blockchain, regardless of whe= ther you put the Drivechain commitments into the coinbase, or in an ostensi= bly-paid-by-somebody-else transaction.) Regards, ZmnSCPxj