From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Wed, 10 Dec 2025 10:12:40 -0800 Received: from mail-qv1-f64.google.com ([209.85.219.64]) by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1vTOg4-0002ax-8x for bitcoindev@gnusha.org; Wed, 10 Dec 2025 10:12:40 -0800 Received: by mail-qv1-f64.google.com with SMTP id 6a1803df08f44-88050708ac2sf2795536d6.2 for ; Wed, 10 Dec 2025 10:12:40 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1765390354; cv=pass; d=google.com; s=arc-20240605; b=PNNqU2Az5DjPmQAg1hUTRcS+YEkmE4t/dV+S/jhLezXV/7225WoA4ancyTULYAsn5z kU2VSLyMyd9n0HX6W/Q/REqZs1cPx0SvavguxenGV32oT6i6lluZFzuKIAi35rO7WJUc LOtbD4cEwG+n20HaVI9BjK918W4Y2Gm57kR7Z7pgbG/Uedz3J8pXGP6m8mhqX8tr+NTu nW0pc7zqFAwNUiOLxQwpht7mbCmZwlJINDZGTfobZf1xGiDUSpVVl170kySLZvJNvzPZ OGuE4UhliwdIuKrGkUJ16x9Ve30M8ufjitqEXv7nxPvSnhkYpjBZdU61PCNLW6TGft/x qkxg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:cc:to:subject:message-id:date:from :mime-version:sender:dkim-signature:dkim-signature; bh=yBH3Fb2sXDC4d76HwnkU7ngWICKgcd9W6y69+oNPmd0=; fh=7kp0UbhfdEU0ViQX6EiKrtj4cSkSuyPE+ZkXS+n6iww=; b=J5ubrUwht4URq/b4nOEcxOefEzURVwB347n82vAF1qxBbxTlP8AlCzaG9dfvGiyp1I RmJiut2XtdW8rMJHRTcy9dC6NK33a4mfcSV1B+9hs+JMVKOWbMQyf7v1Sl+/NP0y77w9 TM2g8eJiCmssVsNYvX65vZVQUPV9QTepXq+HojpF1b3sYpMzRhc3K3JXHDBsCQzv9A2j ePuiHT7IFqvEgHVNLNSdoMfbKL6bholsCM4QGoaM2HpElVabJACbhlfkf8n9GStyP5Z9 iUKY7EXZeZ2yVqR8KDwEdZDe56wBGm22YcLIKGXYaPQMreMnhCRUT4VQyAbptEKqh6wO TpgQ==; darn=gnusha.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=KRl+x0AU; spf=pass (google.com: domain of laissez.faire.btc@gmail.com designates 2607:f8b0:4864:20::b143 as permitted sender) smtp.mailfrom=laissez.faire.btc@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=pass header.i=@googlegroups.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1765390354; x=1765995154; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:cc:to:subject:message-id:date:from:mime-version :sender:from:to:cc:subject:date:message-id:reply-to; bh=yBH3Fb2sXDC4d76HwnkU7ngWICKgcd9W6y69+oNPmd0=; b=Eckd/0h9rQY8gEhYhHZQbLiwJ1Av9ruion1tWloj7mgFDUKinVz7lB/UZVOVdvYy00 U5tyDFCgX2IUg+9Y9+L9jVzWx4yQiwLkjehh2KcZndqTGOYv+wopJ85ItssF21FOiPri KrJ1F/U+3heiSaIAVOWAFEJaIB+FVtTD/hobWLm85zVOPkC0ocYBXxy3Y/J+AmQW1N5r I9FF5sKAg1oMKiakqaWqd4i45spug+oQS7O1Kd1Ei1Ak2g64UUinc4quO9/tHl8OYuWN Hq35DjvM94o2AoUZME62IwACCGQhLv70Qw1cu3bqn/8RTCtdVp93lOeGjmYjTAocVzS/ mblg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765390354; x=1765995154; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:cc:to:subject:message-id:date:from:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=yBH3Fb2sXDC4d76HwnkU7ngWICKgcd9W6y69+oNPmd0=; b=Q+SHFC5GzOk8TPo61wpF7lYG6Sat+tRuLRi28BgVwF0me2w9kFCuTrCeRbkDW3ZNwU b7OpBVo9fRBqK8THsG+B7vAeTswE24sz5Hs8m/g5dE+Lqsr4TZKiYkgR34xkAXfHmcK4 RddTv7HYkiQJqoCXmhhuUVTY+QmW8v1T5c2tf9QM9dCz2rQst/bVvOfwzEcu7I+xeH41 5TUbeApg/e7qK6vpUaXiBAXeKiGH1opMEZ5VliENKzKIH0mVp70WrXhqlHhokIEk8rqy b8V0CVjHKS0ESVmXXId84IGIc0rhPnHf9dGTtW5jyZmtPbY4ud30mtEr1eFa1jS10Ycx c29A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765390354; x=1765995154; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:cc:to:subject:message-id:date:from:mime-version :x-gm-gg:x-beenthere:x-gm-message-state:sender:from:to:cc:subject :date:message-id:reply-to; bh=yBH3Fb2sXDC4d76HwnkU7ngWICKgcd9W6y69+oNPmd0=; b=UEL4Mp6AN1gjk0Li5QKlkGt95bN7pOMdQwZFz0VjmwXhmZldfE9t7GpEDcRPDSe6Sz YHt0CmPuyeL+ykhUbaTwPYLBMtTOyGJPWsIg24gbRvAPm7hqgWFBHBhJhfRcRXRyJSiP EGFqlni4aYjxmKreQbCM+sy0oivnVtOmDwijxB7FWJTwRtCJp9Hs5ZFRMj6NT7HqUsJb 5NKeSagvgsc3ErEk0Ztccy93MnBOZj6kDKD6uoha+WxFrEaoTfkWbIQcprNf7cS7jLX6 dRN4My/JCgQfun0qsNLQQhZAxZ9NvPKkdPsuqk2WhpaIKONVtDgBzocSkLUDTQ8B28uD GhoQ== Sender: bitcoindev@googlegroups.com X-Forwarded-Encrypted: i=2; AJvYcCX2CEjD0OPfmYlxc4X88TGwfyaDyHlFWltgw9Htz9j2ECTAy5Od87qArUJHq1DdCj2bH3LDDtfZJ/R5@gnusha.org X-Gm-Message-State: AOJu0Yw1/AlVnOis61AfLL7L5xbwvtecS4sGlxgf6eWgq+F2WpEqhHNB HsDS/xeOHBFP6x9j4egCNL92S9OdUqAZTSXjzfX6b4pvIziunbGdof+Q X-Google-Smtp-Source: AGHT+IFK0upw1rXqAiTAzy+HGHo3zj5c1O/2BM6CONdYZsu5bvr/rP9x1UaJ57o83glJur+sMzkqwA== X-Received: by 2002:a05:6214:3009:b0:882:401c:e391 with SMTP id 6a1803df08f44-88863ad52ecmr49661256d6.57.1765390354180; Wed, 10 Dec 2025 10:12:34 -0800 (PST) X-BeenThere: bitcoindev@googlegroups.com; h="AWVwgWaWuwiNKfJK51QFL1I5Tz9igVuHGNv4PI9GX0ofq26ElA==" Received: by 2002:ad4:4042:0:b0:882:3d7d:3964 with SMTP id 6a1803df08f44-88825e5e39dls135413266d6.2.-pod-prod-02-us; Wed, 10 Dec 2025 10:12:25 -0800 (PST) X-Received: by 2002:a05:620a:1918:b0:89f:5057:975e with SMTP id af79cd13be357-8ba3a349de3mr476639485a.56.1765390345098; Wed, 10 Dec 2025 10:12:25 -0800 (PST) Received: by 2002:a05:6808:8982:20b0:450:d4ca:2ed2 with SMTP id 5614622812f47-4538881c931msb6e; Fri, 5 Dec 2025 22:41:23 -0800 (PST) X-Received: by 2002:a05:6a00:94e8:b0:7ab:6fdb:1d1f with SMTP id d2e1a72fcca58-7e8c21f80d1mr1363293b3a.29.1765003281939; Fri, 05 Dec 2025 22:41:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1765003281; cv=none; d=google.com; s=arc-20240605; b=knbt1h5m606s+0w16iMyG5eCklHiJE6zHmdFEBS9CeEsAGf0RXHTxnWlrASsa675tR HGReOAuidfEDUrIq7l7YkXr8CWSMhw+NNfKjPaBzt0pKctsMPesLVONwTRGyxe4UQE7Z ewetF8o4tSBznwtT+bKwv6mAkPTjR/t7Ka4tUJOfYMS1Zbhlv/4DvwHx9CIJOvrJKnTH 6Yo2HewZYl5DsUYNzQizb4II4ZgaaXYCVd32rAa0kzF+c4VN2oNh8/itXzKPg8T4OTtu gMT9Mp9nWHZxYKc0tDa+OqS4aev9ZyB+txa4C7iQc0h3UaiGuqw1lRUwNpC1PMLtHWE/ U3VQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:mime-version:dkim-signature; bh=9YDTAxKPfbTUog+iw9tSsjf+SNn4aZgGOhcu4YJazNc=; fh=AB1yD30r4UWXPi5Doey1FnHWhEvRAjYT0fmw1avMU+4=; b=RHMpxrAK63fscfUCUPeQm7iCYx0+oB5tEGDbF4rsjjJvpgZT8r5yJU507x6L/3N87T N7NfaxueZ1zpdy6wx9wvbXWUcaubHWg49ew/nlO7hdo0UrMTG4Z+A2C0RaQGHAeHTlSt SPixIDm1mGmib+m2imbL8AIpImYQZ4OkLXQhq36FyRlLlZq82ln8MVO/AH/hABF8bAFM yK2XdPuGPgtgDeKsglbx5r1N8oKlGGDGixQt0ylwBdRP4W3aJE31CbqKcvA72UMj/+g8 xPQSlk2F1/udovwt5UNWweF5jPmxa4S7QlLzMoy/ZvQkkR1hMcIm8d4Mo45HEy9Wn/wv pIpQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=KRl+x0AU; spf=pass (google.com: domain of laissez.faire.btc@gmail.com designates 2607:f8b0:4864:20::b143 as permitted sender) smtp.mailfrom=laissez.faire.btc@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=pass header.i=@googlegroups.com Received: from mail-yx1-xb143.google.com (mail-yx1-xb143.google.com. [2607:f8b0:4864:20::b143]) by gmr-mx.google.com with ESMTPS id d2e1a72fcca58-7e2a9e9aed2si252242b3a.3.2025.12.05.22.41.21 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 05 Dec 2025 22:41:21 -0800 (PST) Received-SPF: pass (google.com: domain of laissez.faire.btc@gmail.com designates 2607:f8b0:4864:20::b143 as permitted sender) client-ip=2607:f8b0:4864:20::b143; Received: by mail-yx1-xb143.google.com with SMTP id 956f58d0204a3-6432842cafdso2587022d50.2 for ; Fri, 05 Dec 2025 22:41:21 -0800 (PST) X-Gm-Gg: ASbGnct74cV8JWPydXFslkMT57seid+gbKW+ASNx9OSLuqhfLMRv2G6GUWan1o1ev9f 9iRcc0U9TuH6LSWsMa6/p+tjfrVO8ClDciqDUUv/fTqlGRzwCqfAVWk0A+xMhOu+iyBGxAQifCm IiDknF8z+5Lr6k4F06V0zf/+RvKIo2Mn1yDb8jiQ7dFGIhK2EhvGfE+O0txC20u45zFrnFhsbZc VCngtw9Nr1jUuuphE436ha09uORLCc+tqdmbiUBkmQI6dlI9NjtwXPPj8Pi7vKKQk9/fUTKWFpu oB88K62iOhykjfOOTG5gKTFFx476 X-Received: by 2002:a05:690c:7010:b0:787:c339:e167 with SMTP id 00721157ae682-78c33c97c71mr13434217b3.65.1765003280726; Fri, 05 Dec 2025 22:41:20 -0800 (PST) MIME-Version: 1.0 From: Lazy Fair Date: Sat, 6 Dec 2025 17:41:10 +1100 X-Gm-Features: AWmQ_bkw-n80jtpe0i4v7WubtLHxtCuqpkMOkk-SLHLSTffE6aFkjIRoZO0It00 Message-ID: Subject: [bitcoindev] A safe way to remove objectionable content from the blockchain (now on GitHub) To: Bitcoin Development Mailing List Cc: erik@q32.com, ekaggata@gmail.com, pete@petertodd.org, saintwenhao@gmail.com, eth3rs@gmail.com, gmaxwell@gmail.com Content-Type: multipart/alternative; boundary="000000000000933f6f064542d9f4" X-Original-Sender: laissez.faire.btc@gmail.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=KRl+x0AU; spf=pass (google.com: domain of laissez.faire.btc@gmail.com designates 2607:f8b0:4864:20::b143 as permitted sender) smtp.mailfrom=laissez.faire.btc@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=pass header.i=@googlegroups.com Precedence: list Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com List-ID: X-Google-Group-Id: 786775582512 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Score: -0.5 (/) --000000000000933f6f064542d9f4 Content-Type: text/plain; charset="UTF-8" I've started putting together some ideas around how to remove objectionable content from the blockchain. The very early work-in-progress description is on GitHub: https://github.com/laissez-faire-btc/safe-remove I won't include all the details here, because there's necessarily a lot to cover, but the basic design goals I've aimed to address are something like this: * optional - each node gets to decide what to remove, if anything * safe - provably no harm is done to those not choosing to use it, and any cost or risk to those using it is well understood, minimal, and mitigated * full node functionality - a node that does remove content can still do everything it could have done otherwise, without relying on anyone else * retrospective - content that exists on the blockchain today (pre-implementation) can be removed later (post-implementation) * trustless, verifiable, permissionless - control messages enabling data to be removed are simple verifiable statements of fact that can be written by anybody * lightweight - minimal changes and impact to policy, consensus, implementation, usage, the economy * granularity, associativity, commutability, idempotence - the least possible data is removed, and ordering is inconsequential * transferable - nodes that choose to remove objectionable content can share those blocks (with content removed) with others who hold the same objection, so that the receiver may never even momentarily hold the objectionable content Being design goals, these are probably not all achievable. I'll need your help to work through all the details. I have some more notes I just haven't written up yet, so I'm keen for your input please, on what direction I should take, questions I should answer, aspects I should consider or detail further, etc. In the absence of any feedback, I'll be proceeding with either documenting the threat model, or a bit of a literature review - starting with the following, which I've found but not yet dived into: * "Redactable Blockchain in the Permissionless Setting", Deuber et al, 2019, https://arxiv.org/abs/1901.03206 * "Redactable Blockchain: Comprehensive Review, Mechanisms, Challenges, Open Issues and Future Research Directions", Abd Ali et al, 2023, https://www.mdpi.com/1999-5903/15/1/35 P.S: I've had some issues with this mailing list. I emailed a few weeks back and my first email got through ( https://groups.google.com/g/bitcoindev/c/sn3-Uc1yPx4), but my second and third didn't. I think Google has labelled me a spammer (or, hopefully, just the previous thread, as spam). There was one obvious spam message to the thread (most people won't have seen it because it will definitely have failed at moderation, but I did get it because it was reply-all - not just to the mailing list). From what I can see, Gmail classifies spam only at the conversation / thread level, not the individual email level - it's all or nothing. I found this out myself when I tried to mark that one email as spam, and the entire thread (including my original email) got marked as spam and moved to my spam folder. So it's possible others in the conversation unintentional marked my email as spam. Regardless of specific, my emails under that thread are certainly being blocked somehow. If anyone knows more about this, please reach out. Hopefully this email isn't a waste of time - but if it doesn't show up on the mailing list archive, I guess I'll have to create a new email address and try again. I've cc'd others from that thread, into this new one. Thank you to those who provided feedback there. You may not have seen my replies, but please know that I was paying attention! Certainly, you'll see the design is significantly changed and improved. Laissez faire, laissez passer. Let it be, let it go. -- You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/CABHzxrjfvyBRD7sG9rngvDhr9cfzLEQibn4bup_J8pz7UHQpqA%40mail.gmail.com. --000000000000933f6f064542d9f4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've started putting together some ideas around how t= o remove objectionable content from the blockchain. The very early work-in-= progress description is on GitHub: https://github.com/laissez-faire-btc/safe-remove<= div dir=3D"auto">
I won't include all the de= tails here, because there's necessarily a lot to cover, but the basic d= esign goals I've aimed to address are something like this:

* optional - each node gets to decid= e what to remove, if anything=C2=A0
* safe - provabl= y no harm is done to those not choosing to use it, and any cost or risk to = those using it is well understood, minimal, and mitigated
* full node functionality - a node that does remove content can still= do everything it could have done otherwise, without relying on anyone else=
* retrospective - content that exists on the blockc= hain today (pre-implementation) can be removed later (post-implementation)<= /div>
* trustless, verifiable, permissionless - control me= ssages enabling data to be removed are simple verifiable statements of fact= that can be written by anybody
* lightweight - mini= mal changes and impact to policy, consensus, implementation, usage, the eco= nomy
* granularity, associativity, commutability, id= empotence - the least possible data is removed, and ordering is inconsequen= tial
* transferable - nodes that choose to remove ob= jectionable content can share those blocks (with content removed) with othe= rs who hold the same objection, so that the receiver may never even momenta= rily hold the objectionable content

Being design goals, these are probably not all achievable. I= 9;ll need your help to work through all the details.

I have some more notes I just haven't writ= ten up yet, so I'm keen for your input please, on what direction I shou= ld take, questions I should answer, aspects I should consider or detail fur= ther, etc.

In the absenc= e of any feedback, I'll be proceeding with either documenting the threa= t model, or a bit of a literature review - starting with the following, whi= ch I've found but not yet dived into:
* "Re= dactable Blockchain in the Permissionless Setting", Deuber et al, 2019= , https://arxiv.org/abs/1901.0= 3206
* "Redactable Blockchain: Comprehensiv= e Review, Mechanisms, Challenges, Open Issues and Future Research Direction= s", Abd Ali et al, 2023, https://www.mdpi.com/1999-5903/15/1/35
P.S: I've had some issues with this mailing li= st. I emailed a few weeks back and my first email got through (https://groups.google.= com/g/bitcoindev/c/sn3-Uc1yPx4), but my second and third didn't. I = think Google has labelled me a spammer (or, hopefully, just the previous th= read, as spam). There was one obvious spam message to the thread (most peop= le won't have seen it because it will definitely have failed at moderat= ion, but I did get it because it was reply-all - not just to the mailing li= st). From what I can see, Gmail classifies spam only at the conversation / = thread level, not the individual email level - it's all or nothing. I f= ound this out myself when I tried to mark that one email as spam, and the e= ntire thread (including my original email) got marked as spam and moved to = my spam folder. So it's possible others in the conversation unintention= al marked my email as spam. Regardless of specific, my emails under that th= read are certainly being blocked somehow. If anyone knows more about this, = please reach out. Hopefully this email isn't a waste of time - but if i= t doesn't show up on the mailing list archive, I guess I'll have to= create a new email address and try again.

I've cc'd others from that thread, into this new= one. Thank you to those who provided feedback there. You may not have seen= my replies, but please know that I was paying attention! Certainly, you= 9;ll see the design is significantly changed and improved.

Laissez faire, laissez passer.

Let it be, let it go.

--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoind= ev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/ms= gid/bitcoindev/CABHzxrjfvyBRD7sG9rngvDhr9cfzLEQibn4bup_J8pz7UHQpqA%40mail.g= mail.com.
--000000000000933f6f064542d9f4--