<oembed><type>rich</type><version>1.0</version><author_name>npub1vtwuk4rjyj6zrq3tv2z9lvdm6a7g8zujf0gz9q2vljlztdaqw36sjjsjpg</author_name><author_url>https://nostr.ae/npub1vtwuk4rjyj6zrq3tv2z9lvdm6a7g8zujf0gz9q2vljlztdaqw36sjjsjpg</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2022-04-26&#xA;📝 Original message:You may be interested in these posts on transaction signalling:&#xA;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-April/014193.html&#xA;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-April/014202.html&#xA;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014251.html&#xA;&#xA;&#xA;On Tue, Apr 26, 2022 at 3:12 PM Keagan McClelland via bitcoin-dev &lt;&#xA;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&#xA;&gt; Hi all,&#xA;&gt;&#xA;&gt; Alongside the debate with CTV right now there&#39;s a second debate that was&#xA;&gt; not fully hashed out in the activation of Taproot. There is a lot of&#xA;&gt; argument around what Speedy Trial is or isn&#39;t, what BIP8 T/F is or isn&#39;t&#xA;&gt; etc. A significant reason for the breakdown in civility around this debate&#xA;&gt; is that because we don&#39;t have a means of measuring user support for&#xA;&gt; proposed sof-fork changes, it invariably devolves into people claiming that&#xA;&gt; their circles support/reject a proposal, AND that their circles are more&#xA;&gt; broadly representative of the set of Bitcoin users as a whole.&#xA;&gt;&#xA;&gt; It seems everyone in this forum has at one point or another said &#34;I would&#xA;&gt; support activation of ____ if there was consensus on it, but there isn&#39;t&#34;.&#xA;&gt; This statement, in order to be true, requires that there exist a set of&#xA;&gt; conditions that would convince you that there is consensus. People have&#xA;&gt; tried to dodge this question by saying &#34;it&#39;s obvious&#34;, but the reality is&#xA;&gt; that it fundamentally isn&#39;t. My bubble has a different &#34;obvious&#34; answer&#xA;&gt; than any of yours.&#xA;&gt;&#xA;&gt; Secondly, due to the trauma of the block size wars, no one wants to utter&#xA;&gt; a statement that could imply that miners have any influence over what&#xA;&gt; rulesets get activated or don&#39;t. As such &#34;miner signaling&#34; is consistently&#xA;&gt; devalued as a signal for market demand. I don&#39;t think this is reasonable&#xA;&gt; since following the events of &#39;17  miners are aware that they have the&#xA;&gt; strong incentive that they understand market demand. Nevertheless, as it&#xA;&gt; stands right now the only signal we have to work with is miner signaling,&#xA;&gt; which I think is rightly frustrating to a lot of people.&#xA;&gt;&#xA;&gt; So how can we measure User Support for a proposed rule change?&#xA;&gt;&#xA;&gt; I&#39;ve had this idea floating around in the back of my head for a while, and&#xA;&gt; I&#39;d like to solicit some feedback here. Currently, all forms of activation&#xA;&gt; that are under consideration involve miner signaling in one form or&#xA;&gt; another. What if we could make it such that users could more directly&#xA;&gt; pressure miners to act on their behalf? After all, if miners are but the&#xA;&gt; humble servants of user demands, this should be in alignment with how&#xA;&gt; people want Bitcoin to behave.&#xA;&gt;&#xA;&gt; Currently, the only means users have of influencing miner decisions are A.&#xA;&gt; rejection of blocks that don&#39;t follow rules and B. paying fees for&#xA;&gt; transaction inclusion. I suggest we combine these in such a way that&#xA;&gt; transactions themselves can signal for upgrade. I believe (though am not&#xA;&gt; certain) that there are &#34;free&#34; bits in the version field of a transaction&#xA;&gt; that are presently ignored. If we could devise a mapping between some of&#xA;&gt; those free bits, and the signaling bits in the block header, it would be&#xA;&gt; possible to have rules as follows:&#xA;&gt;&#xA;&gt; - A transaction signaling in the affirmative MUST NOT be included in a&#xA;&gt; block that does not signal in the affirmative&#xA;&gt; - A transaction that is NOT signaling MAY be included in a block&#xA;&gt; regardless of that block&#39;s signaling vector&#xA;&gt; - (Optional) A transaction signaling in the negative MUST NOT be included&#xA;&gt; in a block that signals in the affirmative&#xA;&gt;&#xA;&gt; Under this set of conditions, a user has the means of sybil-resistant&#xA;&gt; influence over miner decisions. If a miner cannot collect the fees for a&#xA;&gt; transaction without signaling, the user&#39;s fee becomes active economic&#xA;&gt; pressure for the miner to signal (or not, if we include some variant of the&#xA;&gt; negative clause). In this environment, miners could have a better view into&#xA;&gt; what users do want, as would the Bitcoin network at large.&#xA;&gt;&#xA;&gt; Some may take issue with the idea that people can pay for the outcome they&#xA;&gt; want and may try to compare a method like this to Proof of Stake, but there&#xA;&gt; are only 3 sybil resistant mechanisms I am aware of, and any &#34;real&#34; view&#xA;&gt; into what social consensus looks like MUST be sybil resistant:&#xA;&gt;&#xA;&gt; - Hashpower&#xA;&gt; - Proof of personhood (KYC)&#xA;&gt; - Capital burn/risk&#xA;&gt;&#xA;&gt; Letting hashpower decide this is the thing that is currently contentious,&#xA;&gt; KYC is dead on arrival both on technical and social grounds, which really&#xA;&gt; just leaves some means of getting capital into the process of consensus&#xA;&gt; measurement. This mechanism I&#39;m proposing is measurable completely&#xA;&gt; en-protocol and doesn&#39;t require trust in institutions that fork futures&#xA;&gt; would. Additionally it could be an auxiliary feature of the soft fork&#xA;&gt; deployment scheme chosen making it something you could neatly package all&#xA;&gt; together with the deployment itself.&#xA;&gt;&#xA;&gt; There are many potential tweaks to the design I propose above:&#xA;&gt; 1. Do we include a notion of negative signaling (allowing for the&#xA;&gt; possibility of rejection)&#xA;&gt; 2. Do we make it such that miner signaling must be congruent with &gt;X% of&#xA;&gt; transactions, where congruence is that the signal must match any&#xA;&gt; non-neutral signal of transaction.&#xA;&gt;&#xA;&gt; Some anticipated objections:&#xA;&gt;&#xA;&gt; 1. signaling isn&#39;t voting, no deployment should be made without consensus&#xA;&gt; first.&#xA;&gt; - yeah well we can&#39;t currently measure consensus right now, so that&#39;s not&#xA;&gt; a super helpful thing to say and is breeding ground for abuse in the form&#xA;&gt; of certain people making the unsubstantiated claim that consensus does or&#xA;&gt; does not exist for a particular initiative&#xA;&gt;&#xA;&gt; 2. This is just a proposal for &#34;pay to play&#34;, we should not let the&#xA;&gt; wealthy make consensus decisions.&#xA;&gt; - I agree that wealth should not be able to strong-arm decision making.&#xA;&gt; But the status quo seems even worse where we let publicly influential&#xA;&gt; people decide consensus in such a way where not only do they not &#34;lose&#xA;&gt; ammunition&#34; in the process of campaigning, but actually accrue it, creating&#xA;&gt; really bad long-term balances of power.&#xA;&gt;&#xA;&gt; 3. Enforcing this proposal requires its own soft fork.&#xA;&gt; - Yes. It does...and there&#39;s a certain cosmic irony to that, but before we&#xA;&gt; consider how to make this happen, I&#39;d like to even discuss whether or not&#xA;&gt; it&#39;s a good idea.&#xA;&gt;&#xA;&gt; 4. This gives CoinJoin pool operators and L2 protocol implementations&#xA;&gt; power over deciding consensus.&#xA;&gt; - I see this as an improvement over the status quo&#xA;&gt;&#xA;&gt; 5. This encourages &#34;spam&#34;&#xA;&gt; - If you pay the fees, it&#39;s not spam.&#xA;&gt;&#xA;&gt; The biggest question I&#39;d like to pose to the forum is:&#xA;&gt; - Does a scheme like this afford us a better view into consensus than we&#xA;&gt; have today?&#xA;&gt; - Can it be gamed to give us a *worse* view into consensus? How?&#xA;&gt; - Does it measure the right thing? If not, what do you think is the right&#xA;&gt; thing to measure? (assuming we could)&#xA;&gt; - Should I write a BIP spec&#39;ing this out in detail?&#xA;&gt;&#xA;&gt; Cheers,&#xA;&gt; Keagan&#xA;&gt; _______________________________________________&#xA;&gt; bitcoin-dev mailing list&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;&#xA;&#xA;&#xA;-- &#xA;- Bryan&#xA;https://twitter.com/kanzure&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220426/64c2013e/attachment.html&gt;</html></oembed>