On 2021-11-04 17:59, Luke Dashjr wrote:
From 2ca9bb266d18e35e0dd5d14149bb9aa7f9eae792 Mon Sep 17 00:00:00 2001
From: Luke Dashjr <[email protected]>
Date: Thu, 4 Nov 2021 21:32:55 +0000
Subject: [PATCH] 2021-11-04-bitcoin-taproot: add news item

Signed-off-by: Luke Dashjr <[email protected]>
---

Due to the sensitive nature of changes to the Bitcoin consensus protocol[1],
Bitcoin node software[2] implementing such a proposed change has been
masked[3][4] since release and should remain such until it becomes clear that the upgrade has been accepted, activated, and is being enforced by users
without any contentious disagreeing faction.

This news item should ensure that users are aware of the change, and how to
upgrade when/if they consent to it.

Luke


[1] users must actively act to change what they enforce; potentially
significant financial risk; etc

[2] net-p2p/bitcoind, net-p2p/bitcoin-qt, and net-libs/libbitcoinconsensus

[3] the mask was erroneously removed a few weeks ago; this will hopefully be
corrected ASAP, perhaps even before the news item gets posted.

[4] Yes, there are probably better ways to handle things like this (and quite a few good suggestions at https://github.com/gentoo/gentoo/pull/21490), but
using a mask is what we got stuck with this time.

diff --git
a/2021-11-04-bitcoin-taproot/2021-11-04-bitcoin-taproot.en.txt
b/2021-11-04-bitcoin-taproot/2021-11-04-bitcoin-taproot.en.txt
new file mode 100644
index 0000000..2136ec4
--- /dev/null
+++ b/2021-11-04-bitcoin-taproot/2021-11-04-bitcoin-taproot.en.txt
@@ -0,0 +1,30 @@
+Title: Bitcoin protocol change Taproot
+Author: Luke Dashjr <[email protected]>
+Posted: 2021-11-04
+Revision: 1
+News-Item-Format: 2.0
+Display-If-Installed: || ( net-libs/libbitcoinconsensus
net-p2p/bitcoin-qt net-p2p/bitcoind )
+
+In a few weeks, the Bitcoin community will be attempting a change to the +consensus protocol, called "Taproot". Protocol changes to Bitcoin activate +contingent on the users of the network all agreeing together and enforcing +the new rules on each other. Failure to enforce new rules, or enforcing them
+when others do not, compromises your security and may lead to using a
+different currency than the rest of Bitcoin. Bitcoin users must each decide
+if they will enforce the new Taproot changes, or reject them.
+
+To learn more about Taproot, see https://bitcointaproot.cc
+
+If you wish to enforce Taproot, you should unmask version 0.21.1 and/or 22.0. +For example: echo '~net-p2p/bitcoin-qt-0.21.1' >>/etc/portage/package.unmask
+
+If you wish to reject Taproot, neither Bitcoin Core or Knots intends to +support this, so you will need to create an upgrade path or find likeminded +developers who have already done so. Note that simply using an older version
+is not a safe alternative: that will be insecure under all scenarios.
+
+When it becomes clear that Taproot has activated successfully and there is no +alternative, older versions will be removed and Taproot-enforcing versions
+will be unmasked for all Gentoo users. If you wish to continue without
+enforcing Taproot for whatever reason (but, again, this is NOT a secure way +to reject Taproot), ensure you have explicitly masked >=0.21.1 yourself.

As previously discussed at https://github.com/gentoo/gentoo/pull/21490 we agreed that users would be kept informed via logs in the ebuilds and a package mask that would be lifted before the November 16 taproot activation date so users have time to upgrade. That mask was lifted as agreed in commit ae7251a476 on October 13, giving users just over a month to upgrade their bitcoin nodes.

This news item is, in my opinion, useless, and should not be added. It basically says, "you must upgrade, as not upgrading is insecure and you have no other options to be secure. However, we made it hard for you to upgrade, so now you have to jump through these hoops."

Also, the mask was just re-added ~10 minutes ago: https://github.com/gentoo/gentoo/pull/22818

I find the re-addition of the mask to be very frustrating. Now users who upgraded since October 13 may now be _downgraded_ and unexpectedly find themselves in an insecure state.

Taproot is happening on November 16. The bitcoin project followed its defined process that took over a year to get this point. And yet, Luke is apparently now proposing that we have a package mask, a news item, and ebuild logs, all for a bitcoin version upgrade that the user must do to remain secure. Having this debate now, in Gentoo, 12 days before a cut-over that has been in the works - coordinated and approved by upstream for a year - is purely FUD and a disservice to our users.

I say we remove the just re-added package mask immediately and not publish this news item.

Thank you,
~Craig

Reply via email to