<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated></updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1r0g954grld59fuphzsypmuuhpdunq67f729afmp44h2mxvth2hts4vdpg3.rss" />
  <link href="https://nostr.ae/npub1r0g954grld59fuphzsypmuuhpdunq67f729afmp44h2mxvth2hts4vdpg3" />
  <id>https://nostr.ae/npub1r0g954grld59fuphzsypmuuhpdunq67f729afmp44h2mxvth2hts4vdpg3</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsvxth2muzmnt34c2n575h3t4zn69f9ys687nvf5kwsmr7wek0qgcgzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awwdd3d4</id>
    
      <title type="html">📅 Original date posted:2017-11-02 📝 Original message:Just ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvxth2muzmnt34c2n575h3t4zn69f9ys687nvf5kwsmr7wek0qgcgzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awwdd3d4" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstsn3clydzg643rz8umy3j2zwh3gwl4vqlfdfwdj4zcdekrct3n7qam9nra&#39;&gt;nevent1q…9nra&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-11-02&lt;br/&gt;📝 Original message:Just going to throw in my support for a POW change, not any particular implementation, but the idea.&lt;br/&gt;&lt;br/&gt;Bitcoin is technically owned by China now. That&amp;#39;s not acceptable.&lt;br/&gt;&lt;br/&gt;- Greg&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Oct 31, 2017, at 10:48 PM, Devrandom via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi all,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Feedback is welcome on the draft below.  In particular, I want to see if there is interest in further development of the idea and also interested in any attack vectors or undesirable dynamics.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (Formatted version available here: &lt;a href=&#34;https://github.com/devrandom/btc-papers/blob/master/aux-pow.md&#34;&gt;https://github.com/devrandom/btc-papers/blob/master/aux-pow.md&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://github.com/devrandom/btc-papers/blob/master/aux-pow.md&amp;gt&#34;&gt;https://github.com/devrandom/btc-papers/blob/master/aux-pow.md&amp;gt&lt;/a&gt;; )&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; # Soft-fork Introduction of a New POW&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Motivation:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Mitigate mining centralization pressures by introducing a POW that does not have economies of scale&lt;br/&gt;&amp;gt; - Introduce an intermediary confirmation point, reducing the impact of mining power fluctuations&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Note however that choice of a suitable POW will require deep analysis.  Some pitfalls include: botnet mining, POWs that seem ASIC resistant but are not, unexpected/covert optimization.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In particular, unexpected/covert optimizations, such as ASCIBOOST, present a potential centralizing and destabilizing force.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Design&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ### Aux POW intermediate block&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Auxiliary POW blocks are introduced between normal blocks - i.e. the chain alternates between the two POWs.&lt;br/&gt;&amp;gt; Each aux-POW block points to the previous normal block and contains transactions just like a normal block.&lt;br/&gt;&amp;gt; Each normal block points to the previous aux-POW block and must contain all transactions from the aux-POW block.&lt;br/&gt;&amp;gt; Block space is not increased.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The new intermediate block and the pointers are introduced via a soft-fork restriction.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ### Reward for aux POW miners&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The reward for the aux POW smoothly increases from zero to a target value (e.g. 1/2 of the total reward) over time.&lt;br/&gt;&amp;gt; The reward is transferred via a soft-fork restriction requiring a coinbase output to an address published in the&lt;br/&gt;&amp;gt; aux-POW block.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ### Aux POW difficulty adjustment&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Difficulty adjustments remain independent for the two POWs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The difficulty of the aux POW is adjusted based on the average time between normal block found&lt;br/&gt;&amp;gt; to aux block found.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Further details are dependent on the specific POW.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ### Heaviest chain rule change&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is a semi-hard change, because non-upgraded nodes can get on the wrong chain in case of attack.  However,&lt;br/&gt;&amp;gt; it might be possible to construct an alert system that notifies non-upgraded nodes of an upcoming rule change.&lt;br/&gt;&amp;gt; All blocks are still valid, so this is not a hardforking change.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The heaviest chain definition changes from sum of `difficulty` to sum of:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     mainDifficulty ^ x * auxDifficulty ^ y&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; where we start at:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     x = 1; y = 0&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; and end at values of x and y that are related to the target relative rewards.  For example, if the target rewards&lt;br/&gt;&amp;gt; are equally distributed, we will want ot end up at:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     x = 1/2; y = 1/2&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; so that both POWs have equal weight.  If the aux POW is to become dominant, x should end small relative to y.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Questions and Answers&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - What should be the parameters if we want the aux POW to have equal weight? A: 1/2 of the reward should be transferred&lt;br/&gt;&amp;gt; to aux miners and x = 1/2, y = 1/2.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - What should be the parameters if we want to deprecate the main POW?  A: most of the reward should be transferred to&lt;br/&gt;&amp;gt; aux miners and x = 0, y = 1.  The main difficulty will tend to zero, and aux miners will just trivially generate the&lt;br/&gt;&amp;gt; main block immediately after finding an aux block, with identical content.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Wasted bandwidth to transfer transactions twice?  A: this can be optimized by skipping transactions already&lt;br/&gt;&amp;gt; transferred.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Why would miners agree to soft-fork away some of their reward?  A: they would agree if they believe that&lt;br/&gt;&amp;gt; the coins will increase in value due to improved security properties.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Open Questions&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - After a block of one type is found, we can naively assume that POW will become idle while a block of the other type is being mined.  In practice, the spare capacity can be used to find alternative (&amp;#34;attacking&amp;#34;) blocks or mine other coins.  Is that a problem?&lt;br/&gt;&amp;gt; - Is selfish mining amplified by this scheme for miners that have both types of hardware?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## POW candidates&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - SHA256 (i.e. use same POW, but introduce an intermediate block for faster confirmation)&lt;br/&gt;&amp;gt; - Proof of Space and Time (Bram Cohen)&lt;br/&gt;&amp;gt; - Equihash&lt;br/&gt;&amp;gt; - Ethash&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Next Steps&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - evaluate POW candidates&lt;br/&gt;&amp;gt; - evaluate difficulty adjustment rules&lt;br/&gt;&amp;gt; - simulate miner behavior to identify if there are incentives for detrimental behavior patterns (e.g. block withholding / selfish mining)&lt;br/&gt;&amp;gt; - Protocol details&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Credits&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Bram Cohen came up with a similar idea back in March:&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013744.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013744.html&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013744.html&amp;gt;_______________________________________________&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013744.html&amp;gt;_______________________________________________&lt;/a&gt;&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171102/7d5311c6/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171102/7d5311c6/attachment-0001.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 833 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171102/7d5311c6/attachment-0001.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171102/7d5311c6/attachment-0001.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:07:23Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfm277sv49t40rzgew3sw5qv7hc45q5npv8nhjvpakrwyk2283smszyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awdl7amg</id>
    
      <title type="html">📅 Original date posted:2017-10-09 📝 Original message:Dear ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfm277sv49t40rzgew3sw5qv7hc45q5npv8nhjvpakrwyk2283smszyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awdl7amg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs06kq2cqvrl4xgnjxspp6m4n2smv3hch4szn3gnsyungq6t47useggrngvr&#39;&gt;nevent1q…ngvr&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-10-09&lt;br/&gt;📝 Original message:Dear list,&lt;br/&gt;&lt;br/&gt;In previous arguments over Drivechain (and Drivechain-like proposals) I promised that better scaling proposals — that do not sacrifice Bitcoin&amp;#39;s security — would come along.&lt;br/&gt;&lt;br/&gt;I planned to do a detailed writeup, but have decided to just send off this email with what I have, because I&amp;#39;m unlikely to have time to write up a detailed proposal.&lt;br/&gt;&lt;br/&gt;The idea is very simple, and I&amp;#39;m sure others have mentioned either exactly it, or similar ideas (e.g. burning coins) before.&lt;br/&gt;&lt;br/&gt;This is a generic sharding protocol for all blockchains, including Bitcoin.&lt;br/&gt;&lt;br/&gt;Users simply say: &amp;#34;My coins on Chain A are going to be sent to Chain B&amp;#34;.&lt;br/&gt;&lt;br/&gt;Then they burn the coins on Chain A, and create a minting transaction on Chain B. The details of how to ensure that coins do not get lost needs to be worked out, but I&amp;#39;m fairly certain the folks on this list can figure out those details.&lt;br/&gt;&lt;br/&gt;- Thin clients, nodes, and miners, can all very easily verify that said action took place, and therefore accept the &amp;#34;newly minted&amp;#34; coins on B as valid.&lt;br/&gt;- Users client software now also knows where to look for the other coins (if for some reason it needs to).&lt;br/&gt;&lt;br/&gt;This doesn&amp;#39;t even need much modification to the Bitcoin protocol as most of the verification is done client-side.&lt;br/&gt;&lt;br/&gt;It is fully decentralized, and there&amp;#39;s no need to give our ownership of our coins to miners to get scale.&lt;br/&gt;&lt;br/&gt;My sincere apologies if this has been brought up before (in which case, I would be very grateful for a link to the proposal).&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg Slepak&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/261e847b/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/261e847b/attachment.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 833 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/261e847b/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/261e847b/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:06:58Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszvc4rshg73efgf34ecuj4y7c55tmfm7qd4jjue39sxy5rjxjn80szyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awrwelf5</id>
    
      <title type="html">📅 Original date posted:2017-10-09 📝 Original message:Dear ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszvc4rshg73efgf34ecuj4y7c55tmfm7qd4jjue39sxy5rjxjn80szyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awrwelf5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfm277sv49t40rzgew3sw5qv7hc45q5npv8nhjvpakrwyk2283smsrlu9np&#39;&gt;nevent1q…u9np&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-10-09&lt;br/&gt;📝 Original message:Dear list,&lt;br/&gt;&lt;br/&gt;In previous arguments over Drivechain (and Drivechain-like proposals) I promised that better scaling proposals — that do not sacrifice Bitcoin&amp;#39;s security — would come along.&lt;br/&gt;&lt;br/&gt;I planned to do a detailed writeup, but have decided to just send off this email with what I have, because I&amp;#39;m unlikely to have time to write up a detailed proposal.&lt;br/&gt;&lt;br/&gt;The idea is very simple (and by no means novel*), and I&amp;#39;m sure others have mentioned either exactly it, or similar ideas (e.g. burning coins) before.&lt;br/&gt;&lt;br/&gt;This is a generic sharding protocol for all blockchains, including Bitcoin.&lt;br/&gt;&lt;br/&gt;Users simply say: &amp;#34;My coins on Chain A are going to be sent to Chain B&amp;#34;.&lt;br/&gt;&lt;br/&gt;Then they burn the coins on Chain A, and create a minting transaction on Chain B. The details of how to ensure that coins do not get lost needs to be worked out, but I&amp;#39;m fairly certain the folks on this list can figure out those details.&lt;br/&gt;&lt;br/&gt;- Thin clients, nodes, and miners, can all very easily verify that said action took place, and therefore accept the &amp;#34;newly minted&amp;#34; coins on B as valid.&lt;br/&gt;- Users client software now also knows where to look for the other coins (if for some reason it needs to).&lt;br/&gt;&lt;br/&gt;This doesn&amp;#39;t even need much modification to the Bitcoin protocol as most of the verification is done client-side.&lt;br/&gt;&lt;br/&gt;It is fully decentralized, and there&amp;#39;s no need to give our ownership of our coins to miners to get scale.&lt;br/&gt;&lt;br/&gt;My sincere apologies if this has been brought up before (in which case, I would be very grateful for a link to the proposal).&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg Slepak&lt;br/&gt;&lt;br/&gt;* This idea is similar in spirit to Interledger.&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/2ff1f35a/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/2ff1f35a/attachment-0001.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 833 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/2ff1f35a/attachment-0001.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171009/2ff1f35a/attachment-0001.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:06:58Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvd7luzhj2tfcktqfy20aw5l5slae5sskhfeczpqmkrhftn4377vgzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw9q4dhc</id>
    
      <title type="html">📅 Original date posted:2017-06-07 📝 Original message:See ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvd7luzhj2tfcktqfy20aw5l5slae5sskhfeczpqmkrhftn4377vgzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw9q4dhc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszy2q8lz64l2lwxe6w6jg8w6ck5saa0y7qf0fhn0g76mlu8vytnuqs7xlwz&#39;&gt;nevent1q…xlwz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-06-07&lt;br/&gt;📝 Original message:See thread on replay attacks for why activating regardless of threshold is a bad idea [1].&lt;br/&gt;&lt;br/&gt;BIP91 OTOH seems perfectly reasonable. 80% instead of 95% makes it more difficult for miners to hold together in opposition to Core. It gives Core more leverage in negotiations.&lt;br/&gt;&lt;br/&gt;If they don&amp;#39;t activate with 80%, Core can release another BIP to reduce it to 75%.&lt;br/&gt;&lt;br/&gt;Each threshold reduction makes it both more likely to succeed, but also increases the likelihood of harm to the ecosystem.&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg&lt;br/&gt;&lt;br/&gt;[1] &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-June/014497.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-June/014497.html&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-June/014497.html&amp;gt&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-June/014497.html&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 6, 2017, at 6:54 PM, James Hilliard &amp;lt;james.hilliard1 at gmail.com &amp;lt;mailto:james.hilliard1 at gmail.com&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is a BIP8 style soft fork so mandatory signalling will be active&lt;br/&gt;&amp;gt; after Aug 1st regardless.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Tue, Jun 6, 2017 at 8:51 PM, Tao Effect &amp;lt;contact at taoeffect.com &amp;lt;mailto:contact at taoeffect.com&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; What is the probability that a 65% threshold is too low and can allow a&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;surprise miner attack&amp;#34;, whereby miners are kept offline before the&lt;br/&gt;&amp;gt;&amp;gt; deadline, and brought online immediately after, creating potential havoc?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (Nit: &amp;#34;simple majority&amp;#34; usually refers to &amp;gt;50%, I think, might cause&lt;br/&gt;&amp;gt;&amp;gt; confusion.)&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; -Greg Slepak&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt; Please do not email me anything that you are not comfortable also sharing&lt;br/&gt;&amp;gt;&amp;gt; with the NSA.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jun 6, 2017, at 5:56 PM, James Hilliard via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Due to the proposed calendar(&lt;a href=&#34;https://segwit2x.github.io/&#34;&gt;https://segwit2x.github.io/&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://segwit2x.github.io/&amp;gt&#34;&gt;https://segwit2x.github.io/&amp;gt&lt;/a&gt;;) for the&lt;br/&gt;&amp;gt;&amp;gt; SegWit2x agreement being too slow to activate SegWit mandatory&lt;br/&gt;&amp;gt;&amp;gt; signalling ahead of BIP148 using BIP91 I would like to propose another&lt;br/&gt;&amp;gt;&amp;gt; option that miners can use to prevent a chain split ahead of the Aug&lt;br/&gt;&amp;gt;&amp;gt; 1st BIP148 activation date.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The splitprotection soft fork is essentially BIP91 but using BIP8&lt;br/&gt;&amp;gt;&amp;gt; instead of BIP9 with a lower activation threshold and immediate&lt;br/&gt;&amp;gt;&amp;gt; mandatory signalling lock-in. This allows for a majority of miners to&lt;br/&gt;&amp;gt;&amp;gt; activate mandatory SegWit signalling and prevent a potential chain&lt;br/&gt;&amp;gt;&amp;gt; split ahead of BIP148 activation.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This BIP allows for miners to respond to market forces quickly ahead&lt;br/&gt;&amp;gt;&amp;gt; of BIP148 activation by signalling for splitprotection. Any miners&lt;br/&gt;&amp;gt;&amp;gt; already running BIP148 should be encouraged to use splitprotection.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;pre&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; BIP: splitprotection&lt;br/&gt;&amp;gt;&amp;gt; Layer: Consensus (soft fork)&lt;br/&gt;&amp;gt;&amp;gt; Title: User Activated Soft Fork Split Protection&lt;br/&gt;&amp;gt;&amp;gt; Author: James Hilliard &amp;lt;james.hilliard1 at gmail.com &amp;lt;mailto:james.hilliard1 at gmail.com&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Comments-Summary: No comments yet.&lt;br/&gt;&amp;gt;&amp;gt; Comments-URI:&lt;br/&gt;&amp;gt;&amp;gt; Status: Draft&lt;br/&gt;&amp;gt;&amp;gt; Type: Standards Track&lt;br/&gt;&amp;gt;&amp;gt; Created: 2017-05-22&lt;br/&gt;&amp;gt;&amp;gt; License: BSD-3-Clause&lt;br/&gt;&amp;gt;&amp;gt;          CC0-1.0&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;/pre&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Abstract==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This document specifies a coordination mechanism for a simple majority&lt;br/&gt;&amp;gt;&amp;gt; of miners to prevent a chain split ahead of BIP148 activation.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Definitions==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;existing segwit deployment&amp;#34; refer to the BIP9 &amp;#34;segwit&amp;#34; deployment&lt;br/&gt;&amp;gt;&amp;gt; using bit 1, between November 15th 2016 and November 15th 2017 to&lt;br/&gt;&amp;gt;&amp;gt; activate BIP141, BIP143 and BIP147.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Motivation==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The biggest risk of BIP148 is an extended chain split, this BIP&lt;br/&gt;&amp;gt;&amp;gt; provides a way for a simple majority of miners to eliminate that risk.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This BIP provides a way for a simple majority of miners to coordinate&lt;br/&gt;&amp;gt;&amp;gt; activation of the existing segwit deployment with less than 95%&lt;br/&gt;&amp;gt;&amp;gt; hashpower before BIP148 activation. Due to time constraints unless&lt;br/&gt;&amp;gt;&amp;gt; immediately deployed BIP91 will likely not be able to enforce&lt;br/&gt;&amp;gt;&amp;gt; mandatory signalling of segwit before the Aug 1st activation of&lt;br/&gt;&amp;gt;&amp;gt; BIP148. This BIP provides a method for rapid miner activation of&lt;br/&gt;&amp;gt;&amp;gt; SegWit mandatory signalling ahead of the BIP148 activation date. Since&lt;br/&gt;&amp;gt;&amp;gt; the primary goal of this BIP is to reduce the chance of an extended&lt;br/&gt;&amp;gt;&amp;gt; chain split as much as possible we activate using a simple miner&lt;br/&gt;&amp;gt;&amp;gt; majority of 65% over a 504 block interval rather than a higher&lt;br/&gt;&amp;gt;&amp;gt; percentage. This BIP also allows miners to signal their intention to&lt;br/&gt;&amp;gt;&amp;gt; run BIP148 in order to prevent a chain split.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Specification==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; While this BIP is active, all blocks must set the nVersion header top&lt;br/&gt;&amp;gt;&amp;gt; 3 bits to 001 together with bit field (1&amp;lt;&amp;lt;1) (according to the&lt;br/&gt;&amp;gt;&amp;gt; existing segwit deployment). Blocks that do not signal as required&lt;br/&gt;&amp;gt;&amp;gt; will be rejected.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Deployment==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This BIP will be deployed by &amp;#34;version bits&amp;#34; with a 65%(this can be&lt;br/&gt;&amp;gt;&amp;gt; adjusted if desired) activation threshold BIP9 with the name&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;splitprotecion&amp;#34; and using bit 2.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This BIP starts immediately and is a BIP8 style soft fork since&lt;br/&gt;&amp;gt;&amp;gt; mandatory signalling will start on midnight August 1st 2017 (epoch&lt;br/&gt;&amp;gt;&amp;gt; time 1501545600) regardless of whether or not this BIP has reached its&lt;br/&gt;&amp;gt;&amp;gt; own signalling threshold. This BIP will cease to be active when segwit&lt;br/&gt;&amp;gt;&amp;gt; is locked-in.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; === Reference implementation ===&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;pre&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; // Check if Segregated Witness is Locked In&lt;br/&gt;&amp;gt;&amp;gt; bool IsWitnessLockedIn(const CBlockIndex* pindexPrev, const&lt;br/&gt;&amp;gt;&amp;gt; Consensus::Params&amp;amp; params)&lt;br/&gt;&amp;gt;&amp;gt; {&lt;br/&gt;&amp;gt;&amp;gt;   LOCK(cs_main);&lt;br/&gt;&amp;gt;&amp;gt;   return (VersionBitsState(pindexPrev, params,&lt;br/&gt;&amp;gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT, versionbitscache) ==&lt;br/&gt;&amp;gt;&amp;gt; THRESHOLD_LOCKED_IN);&lt;br/&gt;&amp;gt;&amp;gt; }&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; // SPLITPROTECTION mandatory segwit signalling.&lt;br/&gt;&amp;gt;&amp;gt; if ( VersionBitsState(pindex-&amp;gt;pprev, chainparams.GetConsensus(),&lt;br/&gt;&amp;gt;&amp;gt; Consensus::DEPLOYMENT_SPLITPROTECTION, versionbitscache) ==&lt;br/&gt;&amp;gt;&amp;gt; THRESHOLD_LOCKED_IN &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt;&amp;gt;    !IsWitnessLockedIn(pindex-&amp;gt;pprev, chainparams.GetConsensus()) &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt;&amp;gt; // Segwit is not locked in&lt;br/&gt;&amp;gt;&amp;gt;    !IsWitnessEnabled(pindex-&amp;gt;pprev, chainparams.GetConsensus()) ) //&lt;br/&gt;&amp;gt;&amp;gt; and is not active.&lt;br/&gt;&amp;gt;&amp;gt; {&lt;br/&gt;&amp;gt;&amp;gt;   bool fVersionBits = (pindex-&amp;gt;nVersion &amp;amp; VERSIONBITS_TOP_MASK) ==&lt;br/&gt;&amp;gt;&amp;gt; VERSIONBITS_TOP_BITS;&lt;br/&gt;&amp;gt;&amp;gt;   bool fSegbit = (pindex-&amp;gt;nVersion &amp;amp;&lt;br/&gt;&amp;gt;&amp;gt; VersionBitsMask(chainparams.GetConsensus(),&lt;br/&gt;&amp;gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT)) != 0;&lt;br/&gt;&amp;gt;&amp;gt;   if (!(fVersionBits &amp;amp;&amp;amp; fSegbit)) {&lt;br/&gt;&amp;gt;&amp;gt;       return state.DoS(0, error(&amp;#34;ConnectBlock(): relayed block must&lt;br/&gt;&amp;gt;&amp;gt; signal for segwit, please upgrade&amp;#34;), REJECT_INVALID, &amp;#34;bad-no-segwit&amp;#34;);&lt;br/&gt;&amp;gt;&amp;gt;   }&lt;br/&gt;&amp;gt;&amp;gt; }&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; // BIP148 mandatory segwit signalling.&lt;br/&gt;&amp;gt;&amp;gt; int64_t nMedianTimePast = pindex-&amp;gt;GetMedianTimePast();&lt;br/&gt;&amp;gt;&amp;gt; if ( (nMedianTimePast &amp;gt;= 1501545600) &amp;amp;&amp;amp;  // Tue 01 Aug 2017 00:00:00 UTC&lt;br/&gt;&amp;gt;&amp;gt;    (nMedianTimePast &amp;lt;= 1510704000) &amp;amp;&amp;amp;  // Wed 15 Nov 2017 00:00:00 UTC&lt;br/&gt;&amp;gt;&amp;gt;    (!IsWitnessLockedIn(pindex-&amp;gt;pprev, chainparams.GetConsensus()) &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt;&amp;gt; // Segwit is not locked in&lt;br/&gt;&amp;gt;&amp;gt;     !IsWitnessEnabled(pindex-&amp;gt;pprev, chainparams.GetConsensus())) )&lt;br/&gt;&amp;gt;&amp;gt; // and is not active.&lt;br/&gt;&amp;gt;&amp;gt; {&lt;br/&gt;&amp;gt;&amp;gt;   bool fVersionBits = (pindex-&amp;gt;nVersion &amp;amp; VERSIONBITS_TOP_MASK) ==&lt;br/&gt;&amp;gt;&amp;gt; VERSIONBITS_TOP_BITS;&lt;br/&gt;&amp;gt;&amp;gt;   bool fSegbit = (pindex-&amp;gt;nVersion &amp;amp;&lt;br/&gt;&amp;gt;&amp;gt; VersionBitsMask(chainparams.GetConsensus(),&lt;br/&gt;&amp;gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT)) != 0;&lt;br/&gt;&amp;gt;&amp;gt;   if (!(fVersionBits &amp;amp;&amp;amp; fSegbit)) {&lt;br/&gt;&amp;gt;&amp;gt;       return state.DoS(0, error(&amp;#34;ConnectBlock(): relayed block must&lt;br/&gt;&amp;gt;&amp;gt; signal for segwit, please upgrade&amp;#34;), REJECT_INVALID, &amp;#34;bad-no-segwit&amp;#34;);&lt;br/&gt;&amp;gt;&amp;gt;   }&lt;br/&gt;&amp;gt;&amp;gt; }&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;/pre&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&#34;&gt;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&amp;gt&#34;&gt;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Backwards Compatibility==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This deployment is compatible with the existing &amp;#34;segwit&amp;#34; bit 1&lt;br/&gt;&amp;gt;&amp;gt; deployment scheduled between midnight November 15th, 2016 and midnight&lt;br/&gt;&amp;gt;&amp;gt; November 15th, 2017. This deployment is also compatible with the&lt;br/&gt;&amp;gt;&amp;gt; existing BIP148 deployment. This BIP is compatible with BIP91 only if&lt;br/&gt;&amp;gt;&amp;gt; BIP91 activates before it and before BIP148. Miners will need to&lt;br/&gt;&amp;gt;&amp;gt; upgrade their nodes to support splitprotection otherwise they may&lt;br/&gt;&amp;gt;&amp;gt; build on top of an invalid block. While this bip is active users&lt;br/&gt;&amp;gt;&amp;gt; should either upgrade to splitprotection or wait for additional&lt;br/&gt;&amp;gt;&amp;gt; confirmations when accepting payments.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Rationale==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Historically we have used IsSuperMajority() to activate soft forks&lt;br/&gt;&amp;gt;&amp;gt; such as BIP66 which has a mandatory signalling requirement for miners&lt;br/&gt;&amp;gt;&amp;gt; once activated, this ensures that miners are aware of new rules being&lt;br/&gt;&amp;gt;&amp;gt; enforced. This technique can be leveraged to lower the signalling&lt;br/&gt;&amp;gt;&amp;gt; threshold of a soft fork while it is in the process of being deployed&lt;br/&gt;&amp;gt;&amp;gt; in a backwards compatible way. We also use a BIP8 style timeout to&lt;br/&gt;&amp;gt;&amp;gt; ensure that this BIP is compatible with BIP148 and that BIP148&lt;br/&gt;&amp;gt;&amp;gt; compatible mandatory signalling activates regardless of miner&lt;br/&gt;&amp;gt;&amp;gt; signalling levels.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; By orphaning non-signalling blocks during the BIP9 bit 1 &amp;#34;segwit&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt; deployment, this BIP can cause the existing &amp;#34;segwit&amp;#34; deployment to&lt;br/&gt;&amp;gt;&amp;gt; activate without needing to release a new deployment. As we approach&lt;br/&gt;&amp;gt;&amp;gt; BIP148 activation it may be desirable for a majority of miners to have&lt;br/&gt;&amp;gt;&amp;gt; a method that will ensure that there is no chain split.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==References==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; *[&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; Mailing list discussion]&lt;br/&gt;&amp;gt;&amp;gt; *[&lt;a href=&#34;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&#34;&gt;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; P2SH flag day activation]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0009.mediawiki|BIP9 Version bits with timeout and delay]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0016.mediawiki|BIP16 Pay to Script Hash]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0091.mediawiki|BIP91 Reduced threshold Segwit MASF]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0141.mediawiki|BIP141 Segregated Witness (Consensus layer)]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0143.mediawiki|BIP143 Transaction Signature Verification for&lt;br/&gt;&amp;gt;&amp;gt; Version 0 Witness Program]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0147.mediawiki|BIP147 Dealing with dummy stack element malleability]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0148.mediawiki|BIP148 Mandatory activation of segwit deployment]]&lt;br/&gt;&amp;gt;&amp;gt; *[[bip-0149.mediawiki|BIP149 Segregated Witness (second deployment)]]&lt;br/&gt;&amp;gt;&amp;gt; *[&lt;a href=&#34;https://bitcoincore.org/en/2016/01/26/segwit-benefits/&#34;&gt;https://bitcoincore.org/en/2016/01/26/segwit-benefits/&lt;/a&gt; Segwit benefits]&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ==Copyright==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This document is dual licensed as BSD 3-clause, and Creative Commons&lt;br/&gt;&amp;gt;&amp;gt; CC0 1.0 Universal.&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/1871ce5a/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/1871ce5a/attachment-0001.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 801 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/1871ce5a/attachment-0001.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/1871ce5a/attachment-0001.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:02:34Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx7t003l94w0t07lw54svc0wh7vugrsq4pkk8h6xx6c8qmh0tzmjqzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awp25y7e</id>
    
      <title type="html">📅 Original date posted:2017-06-06 📝 Original message:What ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx7t003l94w0t07lw54svc0wh7vugrsq4pkk8h6xx6c8qmh0tzmjqzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awp25y7e" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyfk7ggy7k6g67knlr2cveml0hk2gal35nah7ad7lkgeg2xaq7e9qdy3tq8&#39;&gt;nevent1q…3tq8&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-06-06&lt;br/&gt;📝 Original message:What is the probability that a 65% threshold is too low and can allow a &amp;#34;surprise miner attack&amp;#34;, whereby miners are kept offline before the deadline, and brought online immediately after, creating potential havoc?&lt;br/&gt;&lt;br/&gt;(Nit: &amp;#34;simple majority&amp;#34; usually refers to &amp;gt;50%, I think, might cause confusion.)&lt;br/&gt;&lt;br/&gt;-Greg Slepak&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 6, 2017, at 5:56 PM, James Hilliard via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Due to the proposed calendar(&lt;a href=&#34;https://segwit2x.github.io/&#34;&gt;https://segwit2x.github.io/&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://segwit2x.github.io/&amp;gt&#34;&gt;https://segwit2x.github.io/&amp;gt&lt;/a&gt;;) for the&lt;br/&gt;&amp;gt; SegWit2x agreement being too slow to activate SegWit mandatory&lt;br/&gt;&amp;gt; signalling ahead of BIP148 using BIP91 I would like to propose another&lt;br/&gt;&amp;gt; option that miners can use to prevent a chain split ahead of the Aug&lt;br/&gt;&amp;gt; 1st BIP148 activation date.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The splitprotection soft fork is essentially BIP91 but using BIP8&lt;br/&gt;&amp;gt; instead of BIP9 with a lower activation threshold and immediate&lt;br/&gt;&amp;gt; mandatory signalling lock-in. This allows for a majority of miners to&lt;br/&gt;&amp;gt; activate mandatory SegWit signalling and prevent a potential chain&lt;br/&gt;&amp;gt; split ahead of BIP148 activation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This BIP allows for miners to respond to market forces quickly ahead&lt;br/&gt;&amp;gt; of BIP148 activation by signalling for splitprotection. Any miners&lt;br/&gt;&amp;gt; already running BIP148 should be encouraged to use splitprotection.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;lt;pre&amp;gt;&lt;br/&gt;&amp;gt;  BIP: splitprotection&lt;br/&gt;&amp;gt;  Layer: Consensus (soft fork)&lt;br/&gt;&amp;gt;  Title: User Activated Soft Fork Split Protection&lt;br/&gt;&amp;gt;  Author: James Hilliard &amp;lt;james.hilliard1 at gmail.com &amp;lt;mailto:james.hilliard1 at gmail.com&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;  Comments-Summary: No comments yet.&lt;br/&gt;&amp;gt;  Comments-URI:&lt;br/&gt;&amp;gt;  Status: Draft&lt;br/&gt;&amp;gt;  Type: Standards Track&lt;br/&gt;&amp;gt;  Created: 2017-05-22&lt;br/&gt;&amp;gt;  License: BSD-3-Clause&lt;br/&gt;&amp;gt;           CC0-1.0&lt;br/&gt;&amp;gt; &amp;lt;/pre&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Abstract==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This document specifies a coordination mechanism for a simple majority&lt;br/&gt;&amp;gt; of miners to prevent a chain split ahead of BIP148 activation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Definitions==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;#34;existing segwit deployment&amp;#34; refer to the BIP9 &amp;#34;segwit&amp;#34; deployment&lt;br/&gt;&amp;gt; using bit 1, between November 15th 2016 and November 15th 2017 to&lt;br/&gt;&amp;gt; activate BIP141, BIP143 and BIP147.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Motivation==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The biggest risk of BIP148 is an extended chain split, this BIP&lt;br/&gt;&amp;gt; provides a way for a simple majority of miners to eliminate that risk.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This BIP provides a way for a simple majority of miners to coordinate&lt;br/&gt;&amp;gt; activation of the existing segwit deployment with less than 95%&lt;br/&gt;&amp;gt; hashpower before BIP148 activation. Due to time constraints unless&lt;br/&gt;&amp;gt; immediately deployed BIP91 will likely not be able to enforce&lt;br/&gt;&amp;gt; mandatory signalling of segwit before the Aug 1st activation of&lt;br/&gt;&amp;gt; BIP148. This BIP provides a method for rapid miner activation of&lt;br/&gt;&amp;gt; SegWit mandatory signalling ahead of the BIP148 activation date. Since&lt;br/&gt;&amp;gt; the primary goal of this BIP is to reduce the chance of an extended&lt;br/&gt;&amp;gt; chain split as much as possible we activate using a simple miner&lt;br/&gt;&amp;gt; majority of 65% over a 504 block interval rather than a higher&lt;br/&gt;&amp;gt; percentage. This BIP also allows miners to signal their intention to&lt;br/&gt;&amp;gt; run BIP148 in order to prevent a chain split.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Specification==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; While this BIP is active, all blocks must set the nVersion header top&lt;br/&gt;&amp;gt; 3 bits to 001 together with bit field (1&amp;lt;&amp;lt;1) (according to the&lt;br/&gt;&amp;gt; existing segwit deployment). Blocks that do not signal as required&lt;br/&gt;&amp;gt; will be rejected.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Deployment==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This BIP will be deployed by &amp;#34;version bits&amp;#34; with a 65%(this can be&lt;br/&gt;&amp;gt; adjusted if desired) activation threshold BIP9 with the name&lt;br/&gt;&amp;gt; &amp;#34;splitprotecion&amp;#34; and using bit 2.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This BIP starts immediately and is a BIP8 style soft fork since&lt;br/&gt;&amp;gt; mandatory signalling will start on midnight August 1st 2017 (epoch&lt;br/&gt;&amp;gt; time 1501545600) regardless of whether or not this BIP has reached its&lt;br/&gt;&amp;gt; own signalling threshold. This BIP will cease to be active when segwit&lt;br/&gt;&amp;gt; is locked-in.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; === Reference implementation ===&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;lt;pre&amp;gt;&lt;br/&gt;&amp;gt; // Check if Segregated Witness is Locked In&lt;br/&gt;&amp;gt; bool IsWitnessLockedIn(const CBlockIndex* pindexPrev, const&lt;br/&gt;&amp;gt; Consensus::Params&amp;amp; params)&lt;br/&gt;&amp;gt; {&lt;br/&gt;&amp;gt;    LOCK(cs_main);&lt;br/&gt;&amp;gt;    return (VersionBitsState(pindexPrev, params,&lt;br/&gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT, versionbitscache) ==&lt;br/&gt;&amp;gt; THRESHOLD_LOCKED_IN);&lt;br/&gt;&amp;gt; }&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; // SPLITPROTECTION mandatory segwit signalling.&lt;br/&gt;&amp;gt; if ( VersionBitsState(pindex-&amp;gt;pprev, chainparams.GetConsensus(),&lt;br/&gt;&amp;gt; Consensus::DEPLOYMENT_SPLITPROTECTION, versionbitscache) ==&lt;br/&gt;&amp;gt; THRESHOLD_LOCKED_IN &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt;     !IsWitnessLockedIn(pindex-&amp;gt;pprev, chainparams.GetConsensus()) &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt; // Segwit is not locked in&lt;br/&gt;&amp;gt;     !IsWitnessEnabled(pindex-&amp;gt;pprev, chainparams.GetConsensus()) ) //&lt;br/&gt;&amp;gt; and is not active.&lt;br/&gt;&amp;gt; {&lt;br/&gt;&amp;gt;    bool fVersionBits = (pindex-&amp;gt;nVersion &amp;amp; VERSIONBITS_TOP_MASK) ==&lt;br/&gt;&amp;gt; VERSIONBITS_TOP_BITS;&lt;br/&gt;&amp;gt;    bool fSegbit = (pindex-&amp;gt;nVersion &amp;amp;&lt;br/&gt;&amp;gt; VersionBitsMask(chainparams.GetConsensus(),&lt;br/&gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT)) != 0;&lt;br/&gt;&amp;gt;    if (!(fVersionBits &amp;amp;&amp;amp; fSegbit)) {&lt;br/&gt;&amp;gt;        return state.DoS(0, error(&amp;#34;ConnectBlock(): relayed block must&lt;br/&gt;&amp;gt; signal for segwit, please upgrade&amp;#34;), REJECT_INVALID, &amp;#34;bad-no-segwit&amp;#34;);&lt;br/&gt;&amp;gt;    }&lt;br/&gt;&amp;gt; }&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; // BIP148 mandatory segwit signalling.&lt;br/&gt;&amp;gt; int64_t nMedianTimePast = pindex-&amp;gt;GetMedianTimePast();&lt;br/&gt;&amp;gt; if ( (nMedianTimePast &amp;gt;= 1501545600) &amp;amp;&amp;amp;  // Tue 01 Aug 2017 00:00:00 UTC&lt;br/&gt;&amp;gt;     (nMedianTimePast &amp;lt;= 1510704000) &amp;amp;&amp;amp;  // Wed 15 Nov 2017 00:00:00 UTC&lt;br/&gt;&amp;gt;     (!IsWitnessLockedIn(pindex-&amp;gt;pprev, chainparams.GetConsensus()) &amp;amp;&amp;amp;&lt;br/&gt;&amp;gt; // Segwit is not locked in&lt;br/&gt;&amp;gt;      !IsWitnessEnabled(pindex-&amp;gt;pprev, chainparams.GetConsensus())) )&lt;br/&gt;&amp;gt; // and is not active.&lt;br/&gt;&amp;gt; {&lt;br/&gt;&amp;gt;    bool fVersionBits = (pindex-&amp;gt;nVersion &amp;amp; VERSIONBITS_TOP_MASK) ==&lt;br/&gt;&amp;gt; VERSIONBITS_TOP_BITS;&lt;br/&gt;&amp;gt;    bool fSegbit = (pindex-&amp;gt;nVersion &amp;amp;&lt;br/&gt;&amp;gt; VersionBitsMask(chainparams.GetConsensus(),&lt;br/&gt;&amp;gt; Consensus::DEPLOYMENT_SEGWIT)) != 0;&lt;br/&gt;&amp;gt;    if (!(fVersionBits &amp;amp;&amp;amp; fSegbit)) {&lt;br/&gt;&amp;gt;        return state.DoS(0, error(&amp;#34;ConnectBlock(): relayed block must&lt;br/&gt;&amp;gt; signal for segwit, please upgrade&amp;#34;), REJECT_INVALID, &amp;#34;bad-no-segwit&amp;#34;);&lt;br/&gt;&amp;gt;    }&lt;br/&gt;&amp;gt; }&lt;br/&gt;&amp;gt; &amp;lt;/pre&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&#34;&gt;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&amp;gt&#34;&gt;https://github.com/bitcoin/bitcoin/compare/0.14...jameshilliard:splitprotection-v0.14.1&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Backwards Compatibility==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This deployment is compatible with the existing &amp;#34;segwit&amp;#34; bit 1&lt;br/&gt;&amp;gt; deployment scheduled between midnight November 15th, 2016 and midnight&lt;br/&gt;&amp;gt; November 15th, 2017. This deployment is also compatible with the&lt;br/&gt;&amp;gt; existing BIP148 deployment. This BIP is compatible with BIP91 only if&lt;br/&gt;&amp;gt; BIP91 activates before it and before BIP148. Miners will need to&lt;br/&gt;&amp;gt; upgrade their nodes to support splitprotection otherwise they may&lt;br/&gt;&amp;gt; build on top of an invalid block. While this bip is active users&lt;br/&gt;&amp;gt; should either upgrade to splitprotection or wait for additional&lt;br/&gt;&amp;gt; confirmations when accepting payments.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Rationale==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Historically we have used IsSuperMajority() to activate soft forks&lt;br/&gt;&amp;gt; such as BIP66 which has a mandatory signalling requirement for miners&lt;br/&gt;&amp;gt; once activated, this ensures that miners are aware of new rules being&lt;br/&gt;&amp;gt; enforced. This technique can be leveraged to lower the signalling&lt;br/&gt;&amp;gt; threshold of a soft fork while it is in the process of being deployed&lt;br/&gt;&amp;gt; in a backwards compatible way. We also use a BIP8 style timeout to&lt;br/&gt;&amp;gt; ensure that this BIP is compatible with BIP148 and that BIP148&lt;br/&gt;&amp;gt; compatible mandatory signalling activates regardless of miner&lt;br/&gt;&amp;gt; signalling levels.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; By orphaning non-signalling blocks during the BIP9 bit 1 &amp;#34;segwit&amp;#34;&lt;br/&gt;&amp;gt; deployment, this BIP can cause the existing &amp;#34;segwit&amp;#34; deployment to&lt;br/&gt;&amp;gt; activate without needing to release a new deployment. As we approach&lt;br/&gt;&amp;gt; BIP148 activation it may be desirable for a majority of miners to have&lt;br/&gt;&amp;gt; a method that will ensure that there is no chain split.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==References==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; *[&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&amp;gt&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013714.html&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt; Mailing list discussion]&lt;br/&gt;&amp;gt; *[&lt;a href=&#34;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&#34;&gt;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&amp;gt&#34;&gt;https://github.com/bitcoin/bitcoin/blob/v0.6.0/src/main.cpp#L1281-L1283&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt; P2SH flag day activation]&lt;br/&gt;&amp;gt; *[[bip-0009.mediawiki|BIP9 Version bits with timeout and delay]]&lt;br/&gt;&amp;gt; *[[bip-0016.mediawiki|BIP16 Pay to Script Hash]]&lt;br/&gt;&amp;gt; *[[bip-0091.mediawiki|BIP91 Reduced threshold Segwit MASF]]&lt;br/&gt;&amp;gt; *[[bip-0141.mediawiki|BIP141 Segregated Witness (Consensus layer)]]&lt;br/&gt;&amp;gt; *[[bip-0143.mediawiki|BIP143 Transaction Signature Verification for&lt;br/&gt;&amp;gt; Version 0 Witness Program]]&lt;br/&gt;&amp;gt; *[[bip-0147.mediawiki|BIP147 Dealing with dummy stack element malleability]]&lt;br/&gt;&amp;gt; *[[bip-0148.mediawiki|BIP148 Mandatory activation of segwit deployment]]&lt;br/&gt;&amp;gt; *[[bip-0149.mediawiki|BIP149 Segregated Witness (second deployment)]]&lt;br/&gt;&amp;gt; *[&lt;a href=&#34;https://bitcoincore.org/en/2016/01/26/segwit-benefits/&#34;&gt;https://bitcoincore.org/en/2016/01/26/segwit-benefits/&lt;/a&gt; Segwit benefits &amp;lt;&lt;a href=&#34;https://bitcoincore.org/en/2016/01/26/segwit-benefits/%20Segwit%20benefits&amp;gt&#34;&gt;https://bitcoincore.org/en/2016/01/26/segwit-benefits/%20Segwit%20benefits&amp;gt&lt;/a&gt;;]&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==Copyright==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This document is dual licensed as BSD 3-clause, and Creative Commons&lt;br/&gt;&amp;gt; CC0 1.0 Universal.&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&amp;gt&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/9d3cbc4a/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/9d3cbc4a/attachment-0001.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 801 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/9d3cbc4a/attachment-0001.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/9d3cbc4a/attachment-0001.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:02:31Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszxkj5hhemj5s6flpvp26vsjadxk748pa8gfugr5m3h8atdjekduqzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw0nvml8</id>
    
      <title type="html">📅 Original date posted:2017-06-06 📝 Original message:Hey ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszxkj5hhemj5s6flpvp26vsjadxk748pa8gfugr5m3h8atdjekduqzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw0nvml8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyjch08y0dyh3kl0lj8hmwyg9w3dcjds6djsug6uvww9r0xcwr49gza77g7&#39;&gt;nevent1q…77g7&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-06-06&lt;br/&gt;📝 Original message:Hey Greg,&lt;br/&gt;&lt;br/&gt;It wasn&amp;#39;t my intention to insult anyone (a bit defensive?).&lt;br/&gt;&lt;br/&gt;Maybe this is yet another example of a recurring criticism of Core: that core doesn&amp;#39;t community these issues very well to journalists / reports / media / community outside of this list.&lt;br/&gt;&lt;br/&gt;Because outside of this list it&amp;#39;s been all about those 148 coins, and almost zero mention of replay attacks.&lt;br/&gt;&lt;br/&gt;&amp;gt; BIP149 is arguably something of another matter in particular because&lt;br/&gt;&amp;gt; it has a time-frame that allows dealing with replay and other issues--&lt;br/&gt;&amp;gt; and particularly because it has a time-frame that can allow for the&lt;br/&gt;&amp;gt; avoidance of a meaningful fork at all.&lt;br/&gt;&lt;br/&gt;Are there other, more reasonable / feasible ways of addressing replay attacks in Bitcoin / BIP149 scenario?&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 6, 2017, at 4:02 PM, Gregory Maxwell &amp;lt;greg at xiph.org &amp;lt;mailto:greg at xiph.org&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Tue, Jun 6, 2017 at 10:39 PM, Tao Effect via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org &amp;lt;mailto:bitcoin-dev at lists.linuxfoundation.org&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; I believe the severity of replay attacks is going unvoiced and is not&lt;br/&gt;&amp;gt;&amp;gt; understood within the bitcoin community because of their lack of experience&lt;br/&gt;&amp;gt;&amp;gt; with them.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Please don&amp;#39;t insult our community-- the issues with replay were&lt;br/&gt;&amp;gt; pointed out by us to Ethereum in advance and were cited specifically&lt;br/&gt;&amp;gt; in prior hardfork discussions long before Ethereum started editing&lt;br/&gt;&amp;gt; their ledger for the economic benefit of its centralized&lt;br/&gt;&amp;gt; administrators.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The lack of extensive discussion on these issues you&amp;#39;re seeing is&lt;br/&gt;&amp;gt; rather symptomatic of engineers that take stability seriously not&lt;br/&gt;&amp;gt; taking BIP148 seriously; not symptomatic of people not knowing about&lt;br/&gt;&amp;gt; them. The same concerns also applies to all these HF proposals (which&lt;br/&gt;&amp;gt; for some reason you don&amp;#39;t mention), arguably even stronger.  The same&lt;br/&gt;&amp;gt; basic pattern exists: There are people that just don&amp;#39;t care about the&lt;br/&gt;&amp;gt; technical issues who have made up their minds, and so you don&amp;#39;t see&lt;br/&gt;&amp;gt; technical discussion.  Those people who do see the issues already&lt;br/&gt;&amp;gt; called out the proposals as being ill-advised.   Replay isn&amp;#39;t even the&lt;br/&gt;&amp;gt; largest of the technical issues (network partitioning, for example, is&lt;br/&gt;&amp;gt; a much larger one).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP149 is arguably something of another matter in particular because&lt;br/&gt;&amp;gt; it has a time-frame that allows dealing with replay and other issues--&lt;br/&gt;&amp;gt; and particularly because it has a time-frame that can allow for the&lt;br/&gt;&amp;gt; avoidance of a meaningful fork at all.&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/6748ec9e/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/6748ec9e/attachment-0001.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 801 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/6748ec9e/attachment-0001.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/6748ec9e/attachment-0001.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:02:24Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9dn5q0c4ha8ekqhxtvh7n036t295v055wqjc7mrnntdhwnupwt7qzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awl8jm69</id>
    
      <title type="html">📅 Original date posted:2017-06-06 📝 Original message:This ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9dn5q0c4ha8ekqhxtvh7n036t295v055wqjc7mrnntdhwnupwt7qzyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2awl8jm69" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq7z5yap5d8mxq7zqv7ptxze9asu57scha34y6pn8w4mect7fk56cmzs5uv&#39;&gt;nevent1q…s5uv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-06-06&lt;br/&gt;📝 Original message:This is just me putting in my formal objection to BIP148 and BIP149 based on my experience with the ETH/ETC hard fork and involvement in that drama.&lt;br/&gt;&lt;br/&gt;First, it&amp;#39;s important to note that ETC/ETH HF is a very different situation from BIP148 and all other soft-forks. To those on this mailing list, the reasons should be self-evident (one results in two incompatible chains, the other doesn&amp;#39;t).&lt;br/&gt;&lt;br/&gt;However, replay attacks are common to both possibilities (i.e. when BIP148 has &amp;lt;51% hash power).&lt;br/&gt;&lt;br/&gt;I believe the severity of replay attacks is going unvoiced and is not understood within the bitcoin community because of their lack of experience with them.&lt;br/&gt;&lt;br/&gt;I further believe that replay attacks are the #1 issue with BIP148, BIP149, etc., superseding wipeout attacks in severity.&lt;br/&gt;&lt;br/&gt;These are not baseless beliefs, they&amp;#39;re born out of experience and I think anyone will reach the same conclusion upon study.&lt;br/&gt;&lt;br/&gt;In a nutshell, replay attacks mean that all talk of there being potentially &amp;#34;two coins&amp;#34; as a result of BIP148 is basically nonsense.&lt;br/&gt;&lt;br/&gt;Replay attacks effectively eliminate that possibility.&lt;br/&gt;&lt;br/&gt;When users go to &amp;#34;sell their legacy coins&amp;#34;, they&amp;#39;ve just sold their 148 coins, and vice versa.&lt;br/&gt;&lt;br/&gt;Both of the coin-splitting techniques given so far by the proponents BIP148 are also untenable:&lt;br/&gt;&lt;br/&gt;- Double-spending to self with nLockTime txns is insanely complicated, risky, not guaranteed to work, extremely time consuming, and would likely result in a massive increase in backlogged transactions and increased fees.&lt;br/&gt;&lt;br/&gt;- Mixing with 148 coinbase txns destroys fungibility.&lt;br/&gt;&lt;br/&gt;Without a coin, there is no real threat from BIP148. Without that threat, there is no point to BIP148, and the miners know this.&lt;br/&gt;&lt;br/&gt;These and other concerns are outlined and explained in more detail in this conversation I had yesterday with John Light:&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=33rL3-p8cPw&#34;&gt;https://www.youtube.com/watch?v=33rL3-p8cPw&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://www.youtube.com/watch?v=33rL3-p8cPw&amp;gt&#34;&gt;https://www.youtube.com/watch?v=33rL3-p8cPw&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg Slepak&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/7b754c78/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/7b754c78/attachment.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 801 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/7b754c78/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/7b754c78/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:02:23Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsq7z5yap5d8mxq7zqv7ptxze9asu57scha34y6pn8w4mect7fk56czyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw33dzpc</id>
    
      <title type="html">📅 Original date posted:2017-06-06 📝 Original message:This ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsq7z5yap5d8mxq7zqv7ptxze9asu57scha34y6pn8w4mect7fk56czyqdaqkj4q0aks48sxu2qs80nju9hjvrte8egh48vxkkatve3wa2aw33dzpc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs82vfglafq8aectu2hgdj3hq8zzvwknfldz49dz4yyc8l3ph4ydrqmzren3&#39;&gt;nevent1q…ren3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-06-06&lt;br/&gt;📝 Original message:This is just me putting in my formal objection to BIP148 and BIP149 based on my experience with the ETH/ETC hard fork and involvement in that drama.&lt;br/&gt;&lt;br/&gt;First, it&amp;#39;s important to note that ETC/ETH HF is a very different situation from BIP148 and all other soft-forks. To those on this mailing list, the reasons should be self-evident (one results in two incompatible chains, the other doesn&amp;#39;t).&lt;br/&gt;&lt;br/&gt;However, replay attacks are common to both possibilities (i.e. when BIP148 has &amp;lt;51% hash power).&lt;br/&gt;&lt;br/&gt;I believe the severity of replay attacks is going unvoiced and is not understood within the bitcoin community because of their lack of experience with them.&lt;br/&gt;&lt;br/&gt;I further believe that replay attacks are the #1 issue with BIP148, BIP149, etc., superseding wipeout attacks in severity.&lt;br/&gt;&lt;br/&gt;These are not baseless beliefs, they&amp;#39;re born out of experience and I think anyone will reach the same conclusion upon study.&lt;br/&gt;&lt;br/&gt;In a nutshell, replay attacks mean that all talk of there being potentially &amp;#34;two coins&amp;#34; as a result of BIP148 is basically nonsense.&lt;br/&gt;&lt;br/&gt;Replay attacks effectively eliminate that possibility.&lt;br/&gt;&lt;br/&gt;When users go to &amp;#34;sell their legacy coins&amp;#34;, they&amp;#39;ve just sold their 148 coins, and vice versa.&lt;br/&gt;&lt;br/&gt;Both of the coin-splitting techniques given so far by the proponents BIP148 are also untenable:&lt;br/&gt;&lt;br/&gt;- Double-spending to self with nLockTime txns is insanely complicated, risky, not guaranteed to work, extremely time consuming, and would likely result in a massive increase in backlogged transactions and increased fees.&lt;br/&gt;&lt;br/&gt;- Mixing with 148 coinbase txns destroys fungibility.&lt;br/&gt;&lt;br/&gt;Without a coin, there is no real threat from BIP148. Without that threat, there is no point to BIP148, and the miners know this.&lt;br/&gt;&lt;br/&gt;These and other concerns are outlined and explained in more detail in this conversation I had yesterday with John Light:&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=33rL3-p8cPw&#34;&gt;https://www.youtube.com/watch?v=33rL3-p8cPw&lt;/a&gt; &amp;lt;&lt;a href=&#34;https://www.youtube.com/watch?v=33rL3-p8cPw&amp;gt&#34;&gt;https://www.youtube.com/watch?v=33rL3-p8cPw&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;Cheers,&lt;br/&gt;Greg Slepak&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;Please do not email me anything that you are not comfortable also sharing with the NSA.&lt;br/&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/862fdff6/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/862fdff6/attachment.html&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;A non-text attachment was scrubbed...&lt;br/&gt;Name: signature.asc&lt;br/&gt;Type: application/pgp-signature&lt;br/&gt;Size: 801 bytes&lt;br/&gt;Desc: Message signed with OpenPGP&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/862fdff6/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170606/862fdff6/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:02:23Z</updated>
  </entry>

</feed>