Return-Path: Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 708CFC0032 for ; Mon, 28 Aug 2023 14:35:44 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 487E040AF4 for ; Mon, 28 Aug 2023 14:35:44 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 487E040AF4 Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=breen.xyz header.i=@breen.xyz header.a=rsa-sha256 header.s=sig1 header.b=ASd0mH/W X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -0.3 X-Spam-Level: X-Spam-Status: No, score=-0.3 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, FROM_SUSPICIOUS_NTLD=0.499, PDS_OTHER_BAD_TLD=1.999, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ViCSsmeCLJ4T for ; Mon, 28 Aug 2023 14:35:43 +0000 (UTC) Received: from st43p00im-ztfb10061701.me.com (st43p00im-ztfb10061701.me.com [17.58.63.172]) by smtp2.osuosl.org (Postfix) with ESMTPS id 6622C402D7 for ; Mon, 28 Aug 2023 14:35:43 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 6622C402D7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=breen.xyz; s=sig1; t=1693233342; bh=wwsFRPZyDYekbMxi1vHE9J1sB6iomyXWL6XFQnCLIpA=; h=Content-Type:Mime-Version:Subject:From:Date:Message-Id:To; b=ASd0mH/WF+zuv3pIGeyRHJfVZBo0p5mG5fGnK7D0V5O7m4t/mWmbuA49IiPMOF7Y3 rJAghbQQUjFJysIpBX8Q8U5kaJ/X3a1hvsbtRxPWW+wOdYZUQAeDuXZIa3tebZG86L /dVvpJRnRTOjKRgMzVbv42jjXTYHhqGdJz9AN9+6d94BKSlKezj+t4i/vITgJYMeQe sc3z59aiNtu61qfLsQYCC1f4jmOxPTMMYAN1eOI5v94HsvrYLDRh6BtzDE81ublf17 bzIDGAMUcJaS+aYN9KGgrlTlNmPGgKkOLkoNlvRn/B9yEKKM77tbdtcSj+CMopcFA4 YrSJFs4WHb/4Q== Received: from smtpclient.apple (st43p00im-dlb-asmtp-mailmevip.me.com [17.42.251.41]) by st43p00im-ztfb10061701.me.com (Postfix) with ESMTPSA id 52F032E052E; Mon, 28 Aug 2023 14:35:41 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) From: ryan@breen.xyz In-Reply-To: <2FylpMx7IsZBt3ILxEt9pVB0Kq03jZqTUeLnB2hWT5j8qiB4o6plW3gjhBXQ_7p4MwQ_npQUpZ64hQaR6UnLhMNCnk_jCv1XObmrJbjrVqg=@protonmail.com> Date: Mon, 28 Aug 2023 10:35:30 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: <0D44C322-E2B4-4F80-A5D8-7D8304BDAE1A@breen.xyz> References: <2BFA7EE8-2E0E-45A3-AC11-8E57F99EC775@breen.xyz> <2FylpMx7IsZBt3ILxEt9pVB0Kq03jZqTUeLnB2hWT5j8qiB4o6plW3gjhBXQ_7p4MwQ_npQUpZ64hQaR6UnLhMNCnk_jCv1XObmrJbjrVqg=@protonmail.com> To: ZmnSCPxj X-Mailer: Apple Mail (2.3731.700.6) X-Proofpoint-ORIG-GUID: 9Drq7gyRJlhCy2fa75fS05-NFUwv0krN X-Proofpoint-GUID: 9Drq7gyRJlhCy2fa75fS05-NFUwv0krN X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.138,18.0.957,17.0.605.474.0000000_definitions?= =?UTF-8?Q?=3D2023-05-18=5F15:2020-02-14=5F02,2023-05-18=5F15,2020-01-23?= =?UTF-8?Q?=5F02_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=0 clxscore=1030 adultscore=0 bulkscore=0 mlxscore=0 phishscore=0 mlxlogscore=821 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2308280128 X-Mailman-Approved-At: Mon, 28 Aug 2023 19:41:51 +0000 Cc: Bitcoin Protocol Discussion Subject: Re: [bitcoin-dev] Sentinel Chains: A Novel Two-Way Peg 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: Mon, 28 Aug 2023 14:35:44 -0000 I appreciate your questions, ZmnSCPxj. I will answer your second question first: Mainchain nodes do not ever = validate sidechain blocks. Sidechain nodes watch Bitcoin for invalid = withdrawals, and publish signed attestations to a public broadcast = network (such as Nostr) that a transaction is making an invalid = withdrawal. These sidechain nodes are the so-called sentinels. Bitcoin full nodes wishing to participate in holding miners accountable = for stealing will watch the public broadcast network for attestations of = improper withdrawals and treat those transactions as de facto invalid, = thus forking violating miners off the network. In this way, launching a = Sentinel chain mimics a user-activated soft fork, but without any = changes to Bitcoin Core consensus logic. Bitcoin full nodes would choose their own limited set of sidechain = validators to trust. They might run their own sidechain node and trust = that result exclusively. They might instead choose to trust a set of = high quality community members such as companies, etc. A downside to this method are the same as the difficulties of launching = a soft fork. Making sure enough nodes (or miners) are on board to = enforce the new rules prior to launch of a sidechain, or a minority of = users will fork off the network. Additionally, maintaining a healthy = network of sentinels for a sidechain is an additional angle to consider.=20= The upside of this method is that sidechains can be user-activated, not = just miner-activated like under the BIP-300 framework. And it allows = Bitcoin full nodes to hold miners accountable for obeying the sidechain = withdrawal rules. -------------------- To answer your first question: When you say the sentinel chain software, = are you asking what would happen if the sidechain developers create = malicious code in sidechain node software? I suppose that would depend = on the upgrade process of the sidechain, but the maximum fallout from = malicious Sentinel chains is the exact same as any other sidechain = proposal: the sidechain users get rugged. The concept behind Sentinel chains puts no restriction on how sentinel = chains may operate, only how the =E2=80=9Cdifficult=E2=80=9D part of = launching a 2WP sidechain, peg-outs from sidechain to mainchain, may = work without advanced cryptographic techniques such a ZKPs. Thanks, Ryan (ursuscamp on twitter) > On Aug 28, 2023, at 9:48 AM, ZmnSCPxj wrote: >=20 > Good morning Ryan, >=20 > If I modify your Sentinel Chain open-source software so that it is = honest for 999 sidechain blocks, then lies and says that the 1000th = block is invalid even though it actually is, what happens? >=20 > Do mainchain nodes need to download the previous 999 sidechain blocks, = run the sidechain rules on them, and then validate the 1000th sidechain = block itself? >=20 > Regards, > ZmnSCPxj