<?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/npub1sgs97fe0n9wehe6zw7drcxdz4cy9yt9pfqjv8gasz5jlk4zezc0quppx3c.rss" />
  <link href="https://nostr.ae/npub1sgs97fe0n9wehe6zw7drcxdz4cy9yt9pfqjv8gasz5jlk4zezc0quppx3c" />
  <id>https://nostr.ae/npub1sgs97fe0n9wehe6zw7drcxdz4cy9yt9pfqjv8gasz5jlk4zezc0quppx3c</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsq36env0xs2q502lfr55g56w04xdl20vd6r8g060edrpph8y775eqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuckda7p</id>
    
      <title type="html">📅 Original date posted:2022-07-18 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsq36env0xs2q502lfr55g56w04xdl20vd6r8g060edrpph8y775eqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuckda7p" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8shww3uhcljwhmtke4p8ss2ncl57p03zq20wdcvky4wx9pklsytqvh58ck&#39;&gt;nevent1q…58ck&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-18&lt;br/&gt;📝 Original message:&amp;gt; On Jul 18, 2022, at 14:14, Erik Aronesty via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; subsidy to directly tie miner revenue to the total value of Bitcoin &lt;br/&gt;&amp;gt;&amp;gt; makes it not exactly how we want to incentivise a service that keeps &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; again, this is meaningless.   if the fees aren&amp;#39;t enough to keep  bitcoin secure for large transactions, then large holders are incentivised to mine&lt;br/&gt;&lt;br/&gt;Yes, this is another way to pay the tx fee - you mine at cost sufficient to overpower the censor. You are spending the block reward in getting your txs confirmed, and that’s your fee.&lt;br/&gt;&lt;br/&gt;But unless you are mining full blocks of only your own transactions, this implies that you are accepting these higher fees on censored txs from others. Otherwise you are simply mining at a loss, which we cannot use as a rational basis for security.&lt;br/&gt;&lt;br/&gt;And therefore this reduces to the simple fact that tx fees are what provides censorship resistance, whether you mine your own or others’.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; that&amp;#39;s it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; it&amp;#39;s not complicated&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&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;-------------- 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/20220718/fd07a1e3/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220718/fd07a1e3/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:11:29&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsqmrheejvu3rfwmahpfsvh5qmdtp6qs4lthecwehl45rh2dncwa2szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpughaltm</id>
    
      <title type="html">📅 Original date posted:2022-07-09 📝 Original message:﻿Yet ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsqmrheejvu3rfwmahpfsvh5qmdtp6qs4lthecwehl45rh2dncwa2szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpughaltm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyh2f27hj34we0cekwz9z98lasymd5uhf8v25g9l9j9d069pmx9hct0u3ja&#39;&gt;nevent1q…u3ja&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-09&lt;br/&gt;📝 Original message:﻿Yet you posted several links which made that specific correlation, to which I was responding.&lt;br/&gt;&lt;br/&gt;Math cannot prove how much coin is “lost”, and even if it was provable that the amount of coin lost converges to the amount produced, it is of no consequence - for the reasons I’ve already pointed out. The amount of market production has no impact on market price, just as it does not with any other good.&lt;br/&gt;&lt;br/&gt;The reason to object to perpetual issuance is the impact on censorship resistance, not on price.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 9, 2022, at 08:31, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; ﻿On Sat, Jul 09, 2022 at 08:24:51AM -0700, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; To clarify, price inflation is not caused by market production. Attributing the observed lack of inflation (eg fee %) to loss is an assumed relation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My article is a mathematical proof that has nothing to do with observations of&lt;br/&gt;&amp;gt; inflation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; What I did is prove that if there is tail emission/fixed supply, the coin&lt;br/&gt;&amp;gt; supply will converge towards a fixed amount because the coin supply dependant&lt;br/&gt;&amp;gt; rate of coin loss balances out the fixed rate of coin production.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That proof has nothing to do with market dynamics and would happen in any&lt;br/&gt;&amp;gt; system, economic or not, with similar underlying dynamics.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org&lt;br/&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/octet-stream&lt;br/&gt;Size: 833 bytes&lt;br/&gt;Desc: not available&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220709/be85c5c5/attachment.obj&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220709/be85c5c5/attachment.obj&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------
    </content>
    <updated>2023-06-08T01:11:26&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstsl2drueyng2j0wuk0mrsjm7hfgzwccmat5unj88kqljxtmleywgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucutejx</id>
    
      <title type="html">📅 Original date posted:2022-07-09 📝 Original message:To ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstsl2drueyng2j0wuk0mrsjm7hfgzwccmat5unj88kqljxtmleywgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucutejx" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0v82eveukz4tn0qv4n35h7fl5nuhtmre48mdmdlzfg34pdmm6pkqcfnt7m&#39;&gt;nevent1q…nt7m&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-09&lt;br/&gt;📝 Original message:To clarify, price inflation is not caused by market production. Attributing the observed lack of inflation (eg fee %) to loss is an assumed relation.&lt;br/&gt;&lt;br/&gt;Even if the amount of loss was known (which it is not), there remains an assumption in the correlation of non-lost coins to price. Demand determines price, not the amount of something in existence, hence the folly of S2F (1/monetary-inflation).&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 9, 2022, at 08:15, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿On Sat, Jul 09, 2022 at 07:26:22AM -0700, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Due to lost coins, a tail emission/fixed reward actually results in a stable money supply. Not an (monetarily) inflationary supply.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This observation is not a proof of lost coins, that is an assumption.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To be clear, are you claiming that there is no proof that coins are lost?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org&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/octet-stream&lt;br/&gt;Size: 833 bytes&lt;br/&gt;Desc: not available&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220709/ea261b14/attachment.obj&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220709/ea261b14/attachment.obj&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:11:24&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvcuuuqs9tkc6cgkpy0pf5sa6cr8zhvvg90q3yqzcsk78u80km32gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6e0xhd</id>
    
      <title type="html">📅 Original date posted:2022-07-09 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvcuuuqs9tkc6cgkpy0pf5sa6cr8zhvvg90q3yqzcsk78u80km32gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6e0xhd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2j4st9xr44jd8rtvntxspztf05kwuvzxf4guu2tmxdqjss8sk65qncudst&#39;&gt;nevent1q…udst&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-09&lt;br/&gt;📝 Original message:&amp;gt; Due to lost coins, a tail emission/fixed reward actually results in a stable money supply. Not an (monetarily) inflationary supply.&lt;br/&gt;&lt;br/&gt;This observation is not a proof of lost coins, that is an assumption. It is the provable consequence of market, as opposed to monopoly, production.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://github.com/libbitcoin/libbitcoin-system/wiki/Inflation-Principle&#34;&gt;https://github.com/libbitcoin/libbitcoin-system/wiki/Inflation-Principle&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Mises’ unfortunate error in the application of the Cantillon Effect to gold perpetuates this misperception. One could imagine applying this theory to all goods, not just money, and conclude perpetual loss of value in everything produced, as a consequence of production. One might then be tempted to attribute the fact that this is not observable to loss/depreciation/consumption. While it is certainly possible that the amount of gold produced every year is offset by the amount lost, this of course implies that all of it is lost.&lt;br/&gt;&lt;br/&gt;“Circulation” does not determine demand, all money is always held by someone. Changing hands only changes who owns the money, not its purchasing power. See Rothbard’s critique of monetary “velocity”.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 9, 2022, at 05:47, Peter Todd via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿New blog post:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://petertodd.org/2022/surprisingly-tail-emission-is-not-inflationary&#34;&gt;https://petertodd.org/2022/surprisingly-tail-emission-is-not-inflationary&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; tl;dr: Due to lost coins, a tail emission/fixed reward actually results in a&lt;br/&gt;&amp;gt; stable money supply. Not an (monetarily) inflationary supply.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ...and for the purposes of reply/discussion, attached is the article itself in&lt;br/&gt;&amp;gt; markdown format:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ---&lt;br/&gt;&amp;gt; layout: post&lt;br/&gt;&amp;gt; title:  &amp;#34;Surprisingly, Tail Emission Is Not Inflationary&amp;#34;&lt;br/&gt;&amp;gt; date:   2022-07-09&lt;br/&gt;&amp;gt; tags:&lt;br/&gt;&amp;gt; - bitcoin&lt;br/&gt;&amp;gt; - monero&lt;br/&gt;&amp;gt; ---&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; At present, all notable proof-of-work currencies reward miners with both a block&lt;br/&gt;&amp;gt; reward, and transaction fees. With most currencies (including Bitcoin) phasing&lt;br/&gt;&amp;gt; out block rewards over time. However in no currency have transaction fees&lt;br/&gt;&amp;gt; consistently been more than 5% to 10% of the total mining&lt;br/&gt;&amp;gt; reward[^fee-in-reward], with the exception of Ethereum, from June 2020 to Aug 2021.&lt;br/&gt;&amp;gt; To date no proof-of-work currency has ever operated solely on transaction&lt;br/&gt;&amp;gt; fees[^pow-tweet], and academic analysis has found that in this condition block&lt;br/&gt;&amp;gt; generation is unstable.[^instability-without-block-reward] To paraphrase Andrew&lt;br/&gt;&amp;gt; Poelstra, it&amp;#39;s a scary phase change that no other coin has gone through.[^apoelstra-quote]&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^pow-tweet]: [I asked on Twitter](&lt;a href=&#34;https://twitter.com/peterktodd/status/1543231264597090304&#34;&gt;https://twitter.com/peterktodd/status/1543231264597090304&lt;/a&gt;) and no-one replied with counter-examples.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^fee-in-reward]: [Average Fee Percentage in Total Block Reward](&lt;a href=&#34;https://bitinfocharts.com/comparison/fee_to_reward-btc-eth-bch-ltc-doge-xmr-bsv-dash-zec.html#alltime&#34;&gt;https://bitinfocharts.com/comparison/fee_to_reward-btc-eth-bch-ltc-doge-xmr-bsv-dash-zec.html#alltime&lt;/a&gt;)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^instability-without-block-reward]: [On the Instability of Bitcoin Without the Block Reward](&lt;a href=&#34;https://www.cs.princeton.edu/~arvindn/publications/mining_CCS.pdf&#34;&gt;https://www.cs.princeton.edu/~arvindn/publications/mining_CCS.pdf&lt;/a&gt;)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^apoelstra-quote]: [From a panel at TABConf 2021](&lt;a href=&#34;https://twitter.com/peterktodd/status/1457066946898317316&#34;&gt;https://twitter.com/peterktodd/status/1457066946898317316&lt;/a&gt;)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Monero has chosen to implement what they call [tail&lt;br/&gt;&amp;gt; emission](&lt;a href=&#34;https://www.getmonero.org/resources/moneropedia/tail-emission.html&#34;&gt;https://www.getmonero.org/resources/moneropedia/tail-emission.html&lt;/a&gt;):&lt;br/&gt;&amp;gt; a fixed reward per block that continues indefinitely. Dogecoin also has a fixed&lt;br/&gt;&amp;gt; reward, which they widely - and incorrectly - refer to as an &amp;#34;abundant&amp;#34; supply[^dogecoin-abundant].&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^dogecoin-abundant]: Googling &amp;#34;dogecoin abundant&amp;#34; returns dozens of hits.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This article will show that a fixed block reward does **not** lead to an&lt;br/&gt;&amp;gt; abundant supply. In fact, due to the inevitability of lost coins, a fixed&lt;br/&gt;&amp;gt; reward converges to a **stable** monetary supply that is neither inflationary&lt;br/&gt;&amp;gt; nor deflationary, with the total supply proportional to rate of tail emission&lt;br/&gt;&amp;gt; and probability of coin loss.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Credit where credit is due: after writing the bulk of this article I found out&lt;br/&gt;&amp;gt; that Monero developer [smooth_xmr](&lt;a href=&#34;https://www.reddit.com/user/smooth_xmr/&#34;&gt;https://www.reddit.com/user/smooth_xmr/&lt;/a&gt;)&lt;br/&gt;&amp;gt; also observed that tail emission results in a stable coin supply&lt;br/&gt;&amp;gt; [a few years ago](&lt;a href=&#34;https://www.reddit.com/r/Monero/comments/4z0azk/maam_28_monero_ask_anything_monday/d6sixyi/&#34;&gt;https://www.reddit.com/r/Monero/comments/4z0azk/maam_28_monero_ask_anything_monday/d6sixyi/&lt;/a&gt;).&lt;br/&gt;&amp;gt; There&amp;#39;s probably others too: it&amp;#39;s a pretty obvious result.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;lt;div markdown=&amp;#34;1&amp;#34; class=&amp;#34;post-toc&amp;#34;&amp;gt;&lt;br/&gt;&amp;gt; # Contents&lt;br/&gt;&amp;gt; {:.no_toc}&lt;br/&gt;&amp;gt; 0. TOC&lt;br/&gt;&amp;gt; {:toc}&lt;br/&gt;&amp;gt; &amp;lt;/div&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Modeling the Fixed-Reward Monetary Supply&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Since the number of blocks is large, we can model the monetary supply as a&lt;br/&gt;&amp;gt; continuous function $$N(t)$$, where $$t$$ is a given moment in time. If the&lt;br/&gt;&amp;gt; block reward is fixed we can model the reward as a slope $$k$$ added to an&lt;br/&gt;&amp;gt; initial supply $$N_0$$:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; N(t) = N_0 &#43; kt&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Of course, this isn&amp;#39;t realistic as coins are constantly being lost due to&lt;br/&gt;&amp;gt; deaths, forgotten passphrases, boating accidents, etc. These losses are&lt;br/&gt;&amp;gt; independent: I&amp;#39;m not any more or less likely to forget my passphrase because&lt;br/&gt;&amp;gt; you recently lost your coins in a boating accident — an accident I probably&lt;br/&gt;&amp;gt; don&amp;#39;t even know happened. Since the number of individual coins (and their&lt;br/&gt;&amp;gt; owners) is large — as with the number of blocks — we can model this loss as&lt;br/&gt;&amp;gt; though it happens continuously.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Since coins can only be lost once, the *rate* of coin loss at time $$t$$ is&lt;br/&gt;&amp;gt; proportional to the total supply *at that moment* in time. So let&amp;#39;s look at the&lt;br/&gt;&amp;gt; *first derivative* of our fixed-reward coin supply:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; \frac{dN(t)}{dt} = k&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ...and subtract from it the lost coins, using $$\lambda$$ as our [coin loss&lt;br/&gt;&amp;gt; constant](&lt;a href=&#34;https://en.wikipedia.org/wiki/Exponential_decay&#34;&gt;https://en.wikipedia.org/wiki/Exponential_decay&lt;/a&gt;):&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; \frac{dN(t)}{dt} = k - \lambda N(t)&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That&amp;#39;s a first-order differential equation, which can be easily solved with&lt;br/&gt;&amp;gt; separation of variables to get:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; N(t) = \frac{k}{\lambda} - Ce^{-\lambda t}&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To remove the integration constant $$C$$, let&amp;#39;s look at $$t = 0$$, where the&lt;br/&gt;&amp;gt; coin supply is $$N_0$$:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; \begin{align}&lt;br/&gt;&amp;gt;    N_0 &amp;amp;= \frac{k}{\lambda} - Ce^{-\lambda 0} = \frac{k}{\lambda} - C \\&lt;br/&gt;&amp;gt;      C &amp;amp;= \frac{k}{\lambda} - N_0&lt;br/&gt;&amp;gt; \end{align}&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; \begin{align}&lt;br/&gt;&amp;gt;    N(t) &amp;amp;= \frac{k}{\lambda} - \left(\frac{k}{\lambda} - N_0 \right)e^{-\lambda t} \\&lt;br/&gt;&amp;gt;         &amp;amp;= \frac{k}{\lambda} &#43; \left(N_0 - \frac{k}{\lambda} \right)e^{-\lambda t}&lt;br/&gt;&amp;gt; \end{align}&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Long Term Coin Supply&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It&amp;#39;s easy to see that in the long run, the second half of the coin supply&lt;br/&gt;&amp;gt; equation goes to zero because $$\lim_{t \to \infty} e^{-\lambda t} = 0$$:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; \begin{align}&lt;br/&gt;&amp;gt;    \lim_{t \to \infty} N(t) &amp;amp;= \lim_{t \to \infty} \left[ \frac{k}{\lambda} &#43; \left(N_0 - \frac{k}{\lambda} \right)e^{-\lambda t} \right ] = \frac{k}{\lambda} \\&lt;br/&gt;&amp;gt;                   N(\infty) &amp;amp;= \frac{k}{\lambda}&lt;br/&gt;&amp;gt; \end{align}&lt;br/&gt;&amp;gt; $$&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; An intuitive explanation for this result is that in the long run, the initial&lt;br/&gt;&amp;gt; supply $$N_0$$ doesn&amp;#39;t matter, because approximately all of those coins will&lt;br/&gt;&amp;gt; eventually be lost. Thus in the long run, the coin supply will converge towards&lt;br/&gt;&amp;gt; $$\frac{k}{\lambda}$$, the point where coins are created just as fast as they&lt;br/&gt;&amp;gt; are lost.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Short Term Dynamics and Economic Considerations&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Of course, the intuitive explanation for why supply converges to&lt;br/&gt;&amp;gt; $$\frac{k}{\lambda}$$, also tells us that supply must converge fairly slowly:&lt;br/&gt;&amp;gt; if 1% of something is lost per year, after 100 years 37% of the initial supply&lt;br/&gt;&amp;gt; remains. It&amp;#39;s not clear what the rate of lost coins actually is in a mature,&lt;br/&gt;&amp;gt; valuable, coin. But 1%/year is likely to be a good guess — quite possibly less.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In the case of Monero, they&amp;#39;ve introduced tail emission at a point where it&lt;br/&gt;&amp;gt; represents a 0.9% apparent monetary inflation rate[^p2pool-tail]. Since the number of&lt;br/&gt;&amp;gt; previously lost coins, and the current rate of coin loss, is&lt;br/&gt;&amp;gt; unknown[^unknowable] it&amp;#39;s not possible to know exactly what the true monetary&lt;br/&gt;&amp;gt; inflation rate is right now. But regardless, the rate will only converge&lt;br/&gt;&amp;gt; towards zero going forward.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^unknowable]: Being a privacy coin with [shielded amounts](&lt;a href=&#34;https://localmonero.co/blocks/richlist&#34;&gt;https://localmonero.co/blocks/richlist&lt;/a&gt;), it&amp;#39;s not even possible to get an estimate of the total amount of XMR in active circulation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^p2pool-tail]: P2Pool operates [a page with real-time date figures](&lt;a href=&#34;https://p2pool.io/tail.html&#34;&gt;https://p2pool.io/tail.html&lt;/a&gt;).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If an existing coin decides to implement tail emission as a means to fund&lt;br/&gt;&amp;gt; security, choosing an appropriate emission rate is simple: decide on the&lt;br/&gt;&amp;gt; maximum amount of inflation you are willing to have in the worst case, and set&lt;br/&gt;&amp;gt; the tail emission accordingly. In reality monetary inflation will be even lower&lt;br/&gt;&amp;gt; on day zero due to lost coins, and in the long run, it will converge towards&lt;br/&gt;&amp;gt; zero.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The fact is, economic volatility dwarfs the effect of small amounts of&lt;br/&gt;&amp;gt; inflation. Even a 0.5% inflation rate over 50 years only leads to a 22% drop.&lt;br/&gt;&amp;gt; Meanwhile at the time of writing, Bitcoin has dropped 36% in the past year, and&lt;br/&gt;&amp;gt; gained 993% over the past 5 years. While this discussion is a nice excuse to&lt;br/&gt;&amp;gt; use some mildly interesting math, in the end it&amp;#39;s totally pedantic.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Could Bitcoin Add Tail Emission?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ...and why could Monero?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Adding tail emission to Bitcoin would be a hard fork: a incompatible rule&lt;br/&gt;&amp;gt; change that existing Bitcoin nodes would reject as invalid. While Monero was&lt;br/&gt;&amp;gt; able to get sufficiently broad consensus in the community to implement tail&lt;br/&gt;&amp;gt; emission, it&amp;#39;s unclear at best if it would ever be possible to achieve that for&lt;br/&gt;&amp;gt; the much larger[^btc-vs-xmr-market-cap] Bitcoin. Additionally, Monero has a&lt;br/&gt;&amp;gt; culture of frequent hard forks that simply does not exist in Bitcoin.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [^btc-vs-xmr-market-cap]: [As of writing](&lt;a href=&#34;https://web.archive.org/web/20220708143920/https://www.coingecko.com/&#34;&gt;https://web.archive.org/web/20220708143920/https://www.coingecko.com/&lt;/a&gt;), the apparent market cap of Bitcoin is $409 billion, almost 200x larger than Monero&amp;#39;s $2.3 billion.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Ultimately, as long as a substantial fraction of the Bitcoin community continue&lt;br/&gt;&amp;gt; to run full nodes, the only way tail emission could ever be added to Bitcoin is&lt;br/&gt;&amp;gt; by convincing that same community that it is a good idea.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Footnotes&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&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;-------------- 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/20220709/3e785ca0/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220709/3e785ca0/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:11:22&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswgrmcphgncn8h0q2ca2ayfrzuvs9nrgqckw3nc7v7ssn7647ufyszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputxsr8g</id>
    
      <title type="html">📅 Original date posted:2022-07-07 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswgrmcphgncn8h0q2ca2ayfrzuvs9nrgqckw3nc7v7ssn7647ufyszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputxsr8g" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspjz5nkqz72pfvuaahz3v4zvl7w0xhy3dwfcv56qz7xy5sahsmfncvchu38&#39;&gt;nevent1q…hu38&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-07&lt;br/&gt;📝 Original message:Without a performance requirement there is no reason you can’t store the BIP39 words in any order you want. So it’s certainly possible, just brute force the recovery. If you have less than a second vs. a few days then it’s a different question.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 7, 2022, at 18:48, Bram Cohen via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; Part of the rules of my challenge is that the &amp;#39;new&amp;#39; words need to be in the same pool as the &amp;#39;old&amp;#39; words, so any ordering is okay. Without that requirement it&amp;#39;s mathematically very straightforward.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Thu, Jul 7, 2022 at 10:52 AM Pavol Rusnak &amp;lt;stick at satoshilabs.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; There is. Just encode the index of permutation used to scramble the otherwise sorted list. For 12 words you need to store 12! = ~32 bits so 3 words should be enough. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Repetitions make this more difficult, though. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Thu 7. 7. 2022 at 19:41, Bram Cohen via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Thu, Jul 7, 2022 at 7:43 AM Anton Shevchenko via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I made a python implementation for a different mnemonic encoding. The encoding requires user to remember words but not the order of those words.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The code is open (MIT license) at &lt;a href=&#34;https://github.com/sancoder/noomnem&#34;&gt;https://github.com/sancoder/noomnem&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thanks Anton. There&amp;#39;s an interesting mathematical question of whether it&amp;#39;s possible to make a code like this which always uses the BIP-39 words for the same key as part of its encoding, basically adding a few words as error correction in case the order is lost or confused. If the BIP-39 contains a duplicate you can add an extra word.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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; Best Regards / S pozdravom,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Pavol &amp;#34;stick&amp;#34; Rusnak&lt;br/&gt;&amp;gt;&amp;gt; Co-Founder, SatoshiLabs&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&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;-------------- 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/20220707/5485b726/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20220707/5485b726/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:11:15&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs2unjmhev7m9c77d8k45t0e5xq8uymz4rwr3vjl4xhs8jejllfrtgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpufdwny3</id>
    
      <title type="html">📅 Original date posted:2022-05-03 📝 Original message:It ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs2unjmhev7m9c77d8k45t0e5xq8uymz4rwr3vjl4xhs8jejllfrtgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpufdwny3" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsg2pnnc25m270shf99xz4cd632fx7q8kcmtwj7pyrsdqkq3w946uc4jwx9p&#39;&gt;nevent1q…wx9p&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-05-03&lt;br/&gt;📝 Original message:It looks like you are talking about lending where the principal return is guaranteed by covenant at maturity. This make the net present value of the loan zero.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On May 3, 2022, at 11:03, Chris Belcher via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿Hello ZmnSCPxj,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Such a system will have to be publicly advertised, in the same way we see centralized cryptocurrency staking shops buying ads all over the place. That&amp;#39;s how they&amp;#39;ll make retail hodlers aware that renting out your coins in this way is possible. If JoinMarket/Teleport users notice such ads appearing then we could change the taker code to remove the intermediate certificate keypair, and have the fidelity bond UTXO key sign the endpoint (IRC nickname or onion hostname) directly. This removes the possibility of fidelity bonds in cold storage. It would have to be done for privacy, and it wouldn&amp;#39;t be too bad. Right now there&amp;#39;s no cold storage solution for fidelity bonds yet JoinMarket has about 600 bitcoins locked up and advertised, which must be all on hot wallets.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Best,&lt;br/&gt;&amp;gt; CB&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On 03/05/2022 06:26, ZmnSCPxj wrote:&lt;br/&gt;&amp;gt;&amp;gt; Good morning Chris,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hello ZmnSCPxj,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Renting out fidelity bonds is an interesting idea. It might happen in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the situation where a hodler wants to generate yield but doesn&amp;#39;t want&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the hassle of running a full node and yield generator. A big downside of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; it is that the yield generator income is random while the rent paid is a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; fixed cost, so there&amp;#39;s a chance that the income won&amp;#39;t cover the rent.&lt;br/&gt;&amp;gt;&amp;gt; The fact that *renting* is at all possible suggests to me that the following situation *could* arise:&lt;br/&gt;&amp;gt;&amp;gt; * A market of lessors arises.&lt;br/&gt;&amp;gt;&amp;gt; * A surveillor creates multiple identities.&lt;br/&gt;&amp;gt;&amp;gt; * Each fake identity rents separately from multiple lessors.&lt;br/&gt;&amp;gt;&amp;gt; * Surveillor gets privacy data by paying out rent money to the lessor market.&lt;br/&gt;&amp;gt;&amp;gt; In defiads, I and Tamas pretty much concluded that rental would happen inevitably.&lt;br/&gt;&amp;gt;&amp;gt; One could say that defiads was a kind of fidelity bond system.&lt;br/&gt;&amp;gt;&amp;gt; Our solution for defiads was to prioritize propagating advertisements (roughly equivalent to the certificates in your system, I think) with larger bonded values * min(bonded_time, 1 year).&lt;br/&gt;&amp;gt;&amp;gt; However, do note that we did not intend defiads to be used for privacy-sensitive applications like JoinMarket/Teleport.&lt;br/&gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt; ZmnSCPxj&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&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;
    </content>
    <updated>2023-06-08T01:08:46&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9d042paja9vwjkv8p9npf5mepev6z6mfw37zjrc0q0wv2tt92x7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupz7sdl</id>
    
      <title type="html">📅 Original date posted:2022-03-22 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9d042paja9vwjkv8p9npf5mepev6z6mfw37zjrc0q0wv2tt92x7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupz7sdl" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgw6mnulvrw0g889ku0mmuc6m47ku6mm47edms44fg4tg07psgrgqety35q&#39;&gt;nevent1q…y35q&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-03-22&lt;br/&gt;📝 Original message:&amp;gt; &amp;gt; Even if it is not needed, it is kind of &amp;#34;free&amp;#34; if you take transaction size into account&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; But it would require an on-chain transaction. We don&amp;#39;t want 6 billion people to have to send an on-chain transaction all in the same week in order to register their preference on something.&lt;br/&gt;&lt;br/&gt;I haven’t followed this thread, so apologies if I’m missing some context, but confirmed tx signaling remains miner signaling.&lt;br/&gt;&lt;br/&gt;Regardless, miners are the only actors who can create soft fork compatibility, so theirs is the only relevant signal. Otherwise people can just fork themselves at any time using any voting mechanism they want.&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-08T01:06:11&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsxshtug0mcy8x25jlaqaunw745eg4d6ckxpsvges4454xjadrhjxqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuldzhwl</id>
    
      <title type="html">📅 Original date posted:2021-07-06 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsxshtug0mcy8x25jlaqaunw745eg4d6ckxpsvges4454xjadrhjxqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuldzhwl" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8gqagpdxvs26tq53q4h26dwc9tcq9sd807dq63zrsmjyueu4yd5chn98rv&#39;&gt;nevent1q…98rv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-07-06&lt;br/&gt;📝 Original message:&amp;gt; @Eric&lt;br/&gt;&amp;gt; Auditability Fallacy&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; A solvency audit requires simultaneous (atomic) proof of both the full amount of the asset held by a custodian and the securities issued against it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; in the case where the security is issued on a distinct public chain the atomicity requirement is not satisfied.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think what its saying is that you can&amp;#39;t get atomicity of both the security and the reserve. While this is true, what you can get is a system where the order of events can be established to a degree of precision. Ie, you can know that between reserve-snapshot A and B, the balances add up to X. Each user can validate that their balance was indeed that value between A and B. With reserve snapshots and balance snapshots frequent enough, this can allow reasonably high accuracy of estimated solvency. However, it does seem clear that perfect accuracy is not possible.&lt;br/&gt;&lt;br/&gt;If perfect is not possible, it’s not possible. It reduces to trust, which is the status quo.&lt;br/&gt;&lt;br/&gt;All “users” need to simultaneously share their individual and temporary audits with each other (ie publicly).&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; Historically it has not been difficult to detect such deviations. The difficulty arises in stopping them.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I disagree here that it has not been difficult to detect deviations (insolvency).&lt;br/&gt;&lt;br/&gt;It is not hard to spot price inflation. Stopping or avoiding it is the actual issue. No “proof” of reserve can do this. The federal reserve was clearly insolvent from its early days, as that was its purpose.&lt;br/&gt;&lt;br/&gt;&amp;gt; I mean, &amp;#34;difficulty&amp;#34; isn&amp;#39;t the right word. These things always become clear eventually. But I think its important to detect insolvency quickly. Historically insolvency has certainly not been detected quickly. Insolvency is instead practically perpetual, and the question is only how insolvent and when will it explode?&lt;br/&gt;&lt;br/&gt;There is no “proof” that answers this question.&lt;br/&gt;&lt;br/&gt;&amp;gt; I&amp;#39;m of the opinion that you can&amp;#39;t prevent insolvency.&lt;br/&gt;&lt;br/&gt;It’s not a matter of opinion. Lending implies risk. When you invest you are in fact the owner of the insolvency, not someone else.&lt;br/&gt;&lt;br/&gt;&amp;gt; Places will have money troubles and will try to cover it up, since usually there is no downside (admitting insolvency can lead to bankrupcy, and failure to conceal insolvency has the same result - so why not try to conceal it and hope you can shore it up). However, its important that people know the institutions they have their money in are insolvent, or to what degree they are. If that information were well tracked, it could become clear over time that a 10% insolvent company rarely goes out of business, but a 20% insolvent company usually does.&lt;br/&gt;&lt;br/&gt;Nonsense, any business can fail, regardless of temporal cash reserves.&lt;br/&gt;&lt;br/&gt;&amp;gt; Then people can have parameters where they&amp;#39;re ok with a certain measurable degree of insolvency, but react swiftly and strongly when a company is too reckless. Currently the amount of recklessness any given company engages in is basically a company secret that their clients don&amp;#39;t have insight into. PoR would greatly help this I think. You don&amp;#39;t think so? &lt;br/&gt;&lt;br/&gt;Reckless is a subjective term. Proofs will not insure any investment.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; On Mon, Jul 5, 2021 at 10:10 PM Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/libbitcoin/libbitcoin-system/wiki/Auditability-Fallacy&#34;&gt;https://github.com/libbitcoin/libbitcoin-system/wiki/Auditability-Fallacy&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jul 5, 2021, at 21:54, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ﻿Good morning Billy,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;   The two participants in the channel can sign a plaintext containing their node pubkeys and how much each owns&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Sure, but even if both participants in the channel sign a correct statement of truth, one of the participants can send funds out in the next second, invalidating that truth. While proof of ownership of on-chain UTXOs can be seen publicly in real time if they are spent, LN transactions aren&amp;#39;t public like that. So any balance attestation is at best only valid the instant its taken, and can&amp;#39;t be used as verification the money is still owned by the same channel partner in the next second. &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The same problem really also exists onchain --- a thief (or &amp;#34;thief&amp;#34;) who has gotten a copy of the key can sign a transaction that spends it, one second after the proof-of-reserves is made.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Really, though, the issue is that ownership of funds is conditional on *knowledge* of keys.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; And *knowledge* is easily copyable.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thus, it is possible that the funds that are &amp;#34;proven&amp;#34; to be the reserve of a custodian is actually *also* owned by someone else who has gotten to the privkeys (e.g. somebody threw a copy of it from a boating accident and a fearless scuba diver rescued it), and thus can also move the funds outside of the control of the custodian.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; This condition can remain for many months or years, as well, without knowledge of the custodian clients, *or* of the custodian itself.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; There is no way to prove that there is no alternate copy of the privkeys, hence &amp;#34;if only one could prove that he won&amp;#39;t get into a boating accident&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On the other hand, one could argue that at least the onchain proof requires more conditions to occur, so we might plausibly live with &amp;#34;we cannot prove we will never get into a boating accident but we can show evidence that we live in a landlocked city far from any lakes, seas, or rivers&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;   a custodian Lightning node is unable to &amp;#34;freeze&amp;#34; a snapshot of its current state and make an atomic proof-of-reserves of *all* channels&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; That would be a neat trick. But yeah, I don&amp;#39;t know how that would be possible. &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;   I believe it is one reason why custodian proof-of-reserves is not that popular ... it does not prove that the key will not get lost&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; True, but at least if funds do get lost, it would be come clear far quicker. Today, an insolvent company could go many months without the public finding out. &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Mon, Jul 5, 2021 at 5:09 PM ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Good morning e,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If only one could prove that he won’t get into a boating accident.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; At least in the context of Lightning channels, if one party in the channel loses its key in a boating accident, the other party (assuming it is a true separate person and not a sockpuppet) has every incentive to unilaterally close the channel, which reveals the exact amounts (though not necessarily who owns which).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If the other party then uses its funds in a new proof-of-reserves, then obviously the other output of the unilateral close was the one lost in the boating accident.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On the other hand, yes, custodians losing custodied funds in boating accidents is much too common.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I believe it is one reason why custodian proof-of-reserves is not that popular --- it only proves that the funds were owned under a particular key at some snapshot of the past, it does not prove that the key will not get lost (or &amp;#34;lost and then salvaged by a scuba diver&amp;#34;) later.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jul 5, 2021, at 16:26, ZmnSCPxj via bitcoin-dev bitcoin-dev at lists.linuxfoundation.org wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Good morning Billy,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I wonder if there would be some way to include the ability to prove balances held on the lightning network, but I suspect that isn&amp;#39;t generally possible.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thinking about this in terms of economic logic:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Every channel is anchored onchain, and that anchor (the funding txout) is proof of the existence, and size, of the channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The two participants in the channel can sign a plaintext containing their node pubkeys and how much each owns.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; One of the participants should provably be the custodian.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   If the counterparty is a true third party, it has no incentive to lie about its money.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   Especially if the counterparty is another custodian who wants proof-of-reserves, it has every incentive to overreport, but then the first party will refuse to sign.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      It has a disincentive to underreport, and would itself refuse to sign a dishonest report that assigns more funds to the first party.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      The only case that would be acceptable to both custodians would be to honestly report their holdings in the Lightning channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   If the counterparty is a sockpuppet of the custodian, then the entire channel is owned by the custodian and it would be fairly dumb of he custodian to claim to have less funds than the entire channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Perhaps a more practical problem is that Lightning channel states change fairly quickly, and there are possible race conditions, due to network latency (remember, both nodes need to sign, meaning both of them need to communicate with each other, thus hit by network latency and other race conditions) where a custodian Lightning node is unable to &amp;#34;freeze&amp;#34; a snapshot of its current state and make an atomic proof-of-reserves of all channels.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;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;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;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/20210706/fdd3ae32/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210706/fdd3ae32/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T00:56:41&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx23ljvdlz5hhztq7v3jh0u49aeec8pup0a9madtj2258wzxkcekczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupju6u9</id>
    
      <title type="html">📅 Original date posted:2021-07-06 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx23ljvdlz5hhztq7v3jh0u49aeec8pup0a9madtj2258wzxkcekczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupju6u9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs09q7fpaja483khnp47sluyqf8glpa932a6agn06s3hpt9r002h5cuzrk3k&#39;&gt;nevent1q…rk3k&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-07-06&lt;br/&gt;📝 Original message:&lt;a href=&#34;https://github.com/libbitcoin/libbitcoin-system/wiki/Auditability-Fallacy&#34;&gt;https://github.com/libbitcoin/libbitcoin-system/wiki/Auditability-Fallacy&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 5, 2021, at 21:54, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿Good morning Billy,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;   The two participants in the channel can sign a plaintext containing their node pubkeys and how much each owns&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Sure, but even if both participants in the channel sign a correct statement of truth, one of the participants can send funds out in the next second, invalidating that truth. While proof of ownership of on-chain UTXOs can be seen publicly in real time if they are spent, LN transactions aren&amp;#39;t public like that. So any balance attestation is at best only valid the instant its taken, and can&amp;#39;t be used as verification the money is still owned by the same channel partner in the next second. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The same problem really also exists onchain --- a thief (or &amp;#34;thief&amp;#34;) who has gotten a copy of the key can sign a transaction that spends it, one second after the proof-of-reserves is made.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Really, though, the issue is that ownership of funds is conditional on *knowledge* of keys.&lt;br/&gt;&amp;gt; And *knowledge* is easily copyable.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus, it is possible that the funds that are &amp;#34;proven&amp;#34; to be the reserve of a custodian is actually *also* owned by someone else who has gotten to the privkeys (e.g. somebody threw a copy of it from a boating accident and a fearless scuba diver rescued it), and thus can also move the funds outside of the control of the custodian.&lt;br/&gt;&amp;gt; This condition can remain for many months or years, as well, without knowledge of the custodian clients, *or* of the custodian itself.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; There is no way to prove that there is no alternate copy of the privkeys, hence &amp;#34;if only one could prove that he won&amp;#39;t get into a boating accident&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On the other hand, one could argue that at least the onchain proof requires more conditions to occur, so we might plausibly live with &amp;#34;we cannot prove we will never get into a boating accident but we can show evidence that we live in a landlocked city far from any lakes, seas, or rivers&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;   a custodian Lightning node is unable to &amp;#34;freeze&amp;#34; a snapshot of its current state and make an atomic proof-of-reserves of *all* channels&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; That would be a neat trick. But yeah, I don&amp;#39;t know how that would be possible. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;   I believe it is one reason why custodian proof-of-reserves is not that popular ... it does not prove that the key will not get lost&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; True, but at least if funds do get lost, it would be come clear far quicker. Today, an insolvent company could go many months without the public finding out. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Mon, Jul 5, 2021 at 5:09 PM ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Good morning e,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If only one could prove that he won’t get into a boating accident.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; At least in the context of Lightning channels, if one party in the channel loses its key in a boating accident, the other party (assuming it is a true separate person and not a sockpuppet) has every incentive to unilaterally close the channel, which reveals the exact amounts (though not necessarily who owns which).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If the other party then uses its funds in a new proof-of-reserves, then obviously the other output of the unilateral close was the one lost in the boating accident.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On the other hand, yes, custodians losing custodied funds in boating accidents is much too common.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I believe it is one reason why custodian proof-of-reserves is not that popular --- it only proves that the funds were owned under a particular key at some snapshot of the past, it does not prove that the key will not get lost (or &amp;#34;lost and then salvaged by a scuba diver&amp;#34;) later.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jul 5, 2021, at 16:26, ZmnSCPxj via bitcoin-dev bitcoin-dev at lists.linuxfoundation.org wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Good morning Billy,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I wonder if there would be some way to include the ability to prove balances held on the lightning network, but I suspect that isn&amp;#39;t generally possible.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thinking about this in terms of economic logic:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Every channel is anchored onchain, and that anchor (the funding txout) is proof of the existence, and size, of the channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The two participants in the channel can sign a plaintext containing their node pubkeys and how much each owns.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; One of the participants should provably be the custodian.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   If the counterparty is a true third party, it has no incentive to lie about its money.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   Especially if the counterparty is another custodian who wants proof-of-reserves, it has every incentive to overreport, but then the first party will refuse to sign.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      It has a disincentive to underreport, and would itself refuse to sign a dishonest report that assigns more funds to the first party.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      The only case that would be acceptable to both custodians would be to honestly report their holdings in the Lightning channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -   If the counterparty is a sockpuppet of the custodian, then the entire channel is owned by the custodian and it would be fairly dumb of he custodian to claim to have less funds than the entire channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Perhaps a more practical problem is that Lightning channel states change fairly quickly, and there are possible race conditions, due to network latency (remember, both nodes need to sign, meaning both of them need to communicate with each other, thus hit by network latency and other race conditions) where a custodian Lightning node is unable to &amp;#34;freeze&amp;#34; a snapshot of its current state and make an atomic proof-of-reserves of all channels.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;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; &lt;br/&gt;&amp;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/20210705/60070878/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210705/60070878/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T00:56:38&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdr785y4pq7w8sh8skpqdd62f99zp0jr5vkvlmk9qsvf0y3uqapmgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpukcp44u</id>
    
      <title type="html">📅 Original date posted:2021-07-05 📝 Original message:If ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdr785y4pq7w8sh8skpqdd62f99zp0jr5vkvlmk9qsvf0y3uqapmgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpukcp44u" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsplw02m90rfj0m3kl0rkdlsnr7dthkkgh6fpe7uq5ht0pztzcgjeqvft606&#39;&gt;nevent1q…t606&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-07-05&lt;br/&gt;📝 Original message:If only one could prove that he won’t get into a boating accident.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 5, 2021, at 16:26, ZmnSCPxj via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿Good morning Billy,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I wonder if there would be some way to include the ability to prove balances held on the lightning network, but I suspect that isn&amp;#39;t generally possible. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thinking about this in terms of economic logic:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Every channel is anchored onchain, and that anchor (the funding txout) is proof of the existence, and size, of the channel.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The two participants in the channel can sign a plaintext containing their node pubkeys and how much each owns.&lt;br/&gt;&amp;gt; One of the participants should provably be the custodian.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; * If the counterparty is a true third party, it has no incentive to lie about its money.&lt;br/&gt;&amp;gt;  * Especially if the counterparty is *another* custodian who wants proof-of-reserves, it has every incentive to overreport, but then the first party will refuse to sign.&lt;br/&gt;&amp;gt;    It has a disincentive to underreport, and would itself refuse to sign a dishonest report that assigns more funds to the first party.&lt;br/&gt;&amp;gt;    The only case that would be acceptable to both custodians would be to honestly report their holdings in the Lightning channel.&lt;br/&gt;&amp;gt; * If the counterparty is a sockpuppet of the custodian, then the entire channel is owned by the custodian and it would be fairly dumb of he custodian to claim to have less funds than the entire channel.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Perhaps a more practical problem is that Lightning channel states change fairly quickly, and there are possible race conditions, due to network latency (remember, both nodes need to sign, meaning both of them need to communicate with each other, thus hit by network latency and other race conditions) where a custodian Lightning node is unable to &amp;#34;freeze&amp;#34; a snapshot of its current state and make an atomic proof-of-reserves of *all* channels.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj&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&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;
    </content>
    <updated>2023-06-08T00:56:37&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs8pzacn4tpawu8x3ytjxthc6ftxeu0nwlg4w9zgk7maqwp4yqsq5szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpune5gu5</id>
    
      <title type="html">📅 Original date posted:2021-06-29 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs8pzacn4tpawu8x3ytjxthc6ftxeu0nwlg4w9zgk7maqwp4yqsq5szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpune5gu5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgp6tjjnn7zssh6qj7gsum48mut9at2qnmpwuv5c032qfsunl09pse9f6x2&#39;&gt;nevent1q…f6x2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-29&lt;br/&gt;📝 Original message:&amp;gt; On Jun 29, 2021, at 12:28, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; &amp;#34;Confirmation&amp;#34; isn&amp;#39;t needed for softforks.&lt;br/&gt;&lt;br/&gt;All transactions require confirmation. Splitting does not change this.&lt;br/&gt;&lt;br/&gt;Softforks are not compatible without miner enforcement. So soft forking without it has essentially the same effect as hard forking, the chain splits.&lt;br/&gt;&lt;br/&gt;&amp;gt; Miners controlling confirmation doesn&amp;#39;t mean miners control the rules, they never did.&lt;br/&gt;&lt;br/&gt;Please define “control” because these statements hinge on that word. Nobody “controls” the rules of others, nor did anyone claim that to be the case. Majority hash power does have the ability to determine what gets confirmed. That is the central design principle of proof of work. It takes that decision out of the hands of politicians and places it at the feet of the market.&lt;br/&gt;&lt;br/&gt;&amp;gt; Read section 11 of the bitcoin paper &amp;#34;even with a majority of hashrate one cannot arbitrarily change rules or forge signatures.&lt;br/&gt;&lt;br/&gt;Never claimed that was the case. One can run any rules that one desires.&lt;br/&gt;&lt;br/&gt;&amp;gt; You may say users chosing the rules is &amp;#34;politicial&amp;#34;. Isn&amp;#39;t miners deciding them for users more political?&lt;br/&gt;&lt;br/&gt;No, it’s economic. The largest investment in mining (including highest fees paid to incentivize it) determines censorship resistance.&lt;br/&gt;&lt;br/&gt;&amp;gt; Whatever you call it, it is still how free software works: users decide what to run.&lt;br/&gt;&lt;br/&gt;A *person* can run whatever software they want. Money requires that others agree (same rules), and to be money bitcoin requires confirmation.&lt;br/&gt;&lt;br/&gt;&amp;gt; It is extremely disappointing to see how few developers seem to ubderstand this, or even care about users deciding or miners not deciding the rules.&lt;br/&gt;&lt;br/&gt;It’s poorly understood because there are so many who should know better making very misleading statements.&lt;br/&gt;&lt;br/&gt;&amp;gt; How can we expect users to understand bitcoin when most developers don&amp;#39;t seem to understand it?&lt;br/&gt;&lt;br/&gt;Clearly we cannot.&lt;br/&gt;&lt;br/&gt;&amp;gt; It is really sad.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Jun 29, 2021, 19:17 Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; On Jun 29, 2021, at 10:55, Luke Dashjr &amp;lt;luke at dashjr.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; ﻿The only alternative to a split in the problematic scenarios are 1) concede &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; centralised miner control over the network,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Miners control confirmation, entirely.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This is the nature of bitcoin. And merchants control validation, entirely. Anyone can be a miner or a merchant. Neither is inherently “better” than the other. The largest merchants are likely a handful of exchanges, likely at least as centralized as miners are pooled.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Splitting does not change this.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; and 2) have inconsistent &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; enforcement of rules by users who don&amp;#39;t agree on what the correct rules are, &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; There are no “correct” rules. Whatever rules one enforces determine what network he chooses to participate in.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; again leading to centralised miner control over the network.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Leading to? Miners control confirmation, always. Whether that is centralized, just as with merchanting, is up to individuals.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; In other words, in this context, accepting a split between disagreeing users &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; is the ONLY way Bitcoin can possibly continue as a decentralised currency.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; No, it is not. You are proposing splitting as the method of censorship resistance inherent to Bitcoin. Coordinating this split requires coordinated action. The whole point of bitcoin is coordinate that action based on mining (proof of work). Replacing that with a political process is just a reversion to political money.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Making that split as clean and well-defined as possible not only ensures the &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; best opportunity for both sides of the disagreement,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Trivially accomplished, just change a rule. This isn’t about that. It’s about how one gets others to go along with the new coin, or stay with the old. An entirely political process, which is clearly evident from the campaigns around such attempts.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; but also minimises the &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; risk that the split occurs at all (since the &amp;#34;losing&amp;#34; side needs to concede, &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; rather than passively continue the disagreement ongoing after the attempted &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; protocol change).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Nobody “needs to” concede once a split has occurred, which is evident in existing splits.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; On Tuesday 29 June 2021 08:44:56 Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; At least we are now acknowledging that splitting is what it’s about. That’s&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; progress.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 29, 2021, at 01:32, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; I think the option of &amp;#34;permanent failure because miners veto&amp;#34; should&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; actually be abandoned. No, I don&amp;#39;t think we should avoid splits when&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; possible, I don&amp;#39;t think we should avoid splits at all costs.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021, 19:12 Billy Tetrud &amp;lt;billy.tetrud at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; @Luke&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; They can still slow it down.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; Absolutely. However I think that the option of permanent failure is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; important. It certainly would be ideal to ensure that enough bitcoin&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; users support the upgrade *before* releasing it, however realistically&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; this can never be more than an estimate, and estimates can sometimes be&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; wildly wrong. It would be unfortunate if miners had a substantially&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; different estimate of user support than the people putting in the work&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; to release bitcoin upgrades. Even if upgrades are never released before&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; it becomes clear that a large supermajority of users want the upgrade,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; if miners don&amp;#39;t agree with the estimate a harmful chain split could&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; occur. And I agree with Eric that the goal here is to prevent a chain&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; split during an upgrade when possible. This includes permanent failure&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; of an upgrade when there is unexpectedly large miner opposition.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; This of course does not prevent a UASF-style deployment to be done after&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; an initial failure to deploy occurs. My proposal is essentially a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanism to improve upon the speedy-trial idea, allowing for even&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; speedier releases (than speedy trial) without adding additional risk of&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; undesired chain splits.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [BIP8] already has the trinary state you seem to be describing&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; It sounds like you&amp;#39;re saying the trinary state of BIP8 is A. Follow the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; longest chain, B. Follow the upgrade chain, or C. follow the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; non-upgraded chain. I agree. However the trinary state in my proposal is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; materially different - it is the signaling itself that is trinary, not&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; just which chain is being followed. This allows others to know and make&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; programmatic decisions (in software) based on that signaling. I&amp;#39;m sure&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; you can agree that does not exist in BIP8.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users, NOT miners&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; And yet there is miner involvement, as you rightly pointed out. Miners&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; are needed to set the nVersion in the header. So when you say &amp;#34;no&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; additional bit is needed&amp;#34;, could you please be clearer as to what you&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; mean? Do you mean that signaling of opposition in a block can be done&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; without any &amp;#34;additional bit&amp;#34;? Or are you just saying that it is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; redundant to consider what miners might be opposing an upgrade?&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; @Jorge&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If different users want different incompatible things... there&amp;#39;s no&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; way to avoid the split&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; I agree. This happened with bcash, and that&amp;#39;s fine. It was painful, but&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; there were a significant amount of users that disagreed, and they have&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; the chain they want now.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; But we generally all want to avoid a chain split when possible. Because&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; chain splits have a cost, and that cost can be high, its likely that&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; many users would rather choose the chain with the most support rather&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; than choosing the chain with their preferred rules.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; However, the question here is: how do we estimate what fraction of users&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; wants which rules? We don&amp;#39;t have a divining rod to determine with&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; certainty what users want. We can only make polls of various levels of&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; inaccuracy. The methods bitcoin has been using is community discussion&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; and social consensus estimation as well as miner signaling during the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; actual deployment period. Neither of these are perfect, but they are&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; both reasonable enough mechanisms. However, because both of these&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanisms are very rough estimates of user sentiment, we need to&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; consider the possibility that sometimes the estimate may be&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; substantially inaccurate when we design deployment procedures. This&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; inaccuracy is why we need multiple barriers in place for an upgrade, and&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; why we need to have higher thresholds of success (require larger&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; supermajorities in both consensus and miner signaling).&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; Developers obviously care about bitcoin and have an incentive (personal&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; and probably financial) to do it right. And miners have both an&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; incentive to keep the system healthy, as well as an incentive to mine on&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; the chain that the economic majority of users is using. But measuring&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; the consensus of the bitcoin community can be extraordinarily difficult&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; to do with consistent accuracy, and so I think miner signaling as it has&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; been used as a second barrier to entry for an upgrade is quite&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; appropriate.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 2:22 AM Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I have not objected to anyone splitting. As I said, a split is always&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; possible, and of course has been done on a large scale. It is only the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; misleading statements about inherent soft fork “compatibility” and the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; implication that activation without hash power enforcement does not&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; create a split that I object to. People who know better should be&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; honest about it.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Far too many people have been led to believe there is some sort of&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; activation choice with “ensured” equal outcomes (maybe “slowed down”).&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; There is only a choice between creating a split and hash power&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; enforcement. Soft forks are rule changes, and thereby incompatible -&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; unless enforced by majority hash power.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The statements below are grossly misleading and need to be called out&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; as such so that people can actually make this decision you speak of.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This idea that “users” decide the rules is not the question. The&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; question is only how to avoid a split. If one does not care he can&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; split at any time, no discussion required.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 27, 2021, at 01:47, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿If different users want different incompatible things (enough on&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; each side), there&amp;#39;s no way to avoid the split. We shouldn&amp;#39;t try to&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; avoid such a split.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Users decide the rules, not miners nor developers.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 12:05 AM Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Ultimately there is only one answer to this question. Get majority&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; hash power support.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Soft fork enforcement is the same act as any other censorship&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; enforcement, the difference is only a question of what people want.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given that there is no collective “we”, those wants differ. Bitcoin&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; resolves this question of conflicting wants, but it is not a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; democracy, it’s a market. One votes by trading.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If one wants to enforce a soft fork (or otherwise censor) this is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; accomplished by mining (or paying others to do so). Anyone can mine,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; so everyone gets a say. Mining is trading capital now for more&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; later. If enough people want to do that, they can enforce a soft&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; fork. It’s time Bitcoiners stop thinking of miners as other people.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Anyone can mine, and that’s your vote.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Otherwise, as mentioned below, anyone can start a new coin. But it’s&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; dishonest to imply that one can do this and all others will surely&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; follow. This cannot be known, it’s merely a gamble. And it’s one&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that has been shown to not always pay off.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿For some definitions of “block”.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Without majority hash power support, activation simply means you&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; are off on a chain split. Anyone can of course split off from a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; chain by changing a rule (soft or otherwise) at any time, so this&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is a bit of an empty claim.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Nobody can stop a person from splitting. The relevant question is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; how to *prevent* a split. And activation without majority hash&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; power certainly does not “ensure” this.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; entirely. They can still slow it down.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It also already has the trinary state you seem to be describing&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (although perhaps this could be better documented in the BIP):&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users who oppose the softfork can and should treat the successful&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signal (whether MASF or UASF) as invalid, thereby ensuring they do&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; not follow a chain with the rules in force.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users, NOT miners (who have no particular say in them, aside from&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; their role as also being users). The miner involvement is only out&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; of necessity (to set the bit in the header, which users coordinate&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; with) and potentially to accelerate activation by protecting&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrade-lagging users.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ways to solve the problems that both sides brought up. In short,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BIP8 LOT=true proponents make the point that lazy miners failing&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to upgrade in a timely manner slow down releases of bitcoin&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrades, and BIP9 / BIP8 LOT=false proponents make the point&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that LOT=true can lead to undesirable forks that might cause a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; lot of chaos. I believe both points are essentially correct and&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; have created a proposal&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blo&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blo&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; b/master/b ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; solve both problems.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling. For any particular prospective soft fork upgrade, this&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; allows for three signaling states:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; state.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrades much quicker (with a much lower percent of miners&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling support). For contentious upgrades, miners who oppose&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the change are incentivized to update their software to a version&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that can actively signal opposition to the change. The more&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; opposition there is, the higher the threshold necessary to lock&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; in the upgrade. With the parameters I currently recommended in&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the proposal, this chart shows how much support signaling would&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; unlikely to change significantly very quickly (ie if 60% of&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; miners support the change today, its unlikely that less than a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; majority of miners would support the change a year or two from&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; now), and if no one is signaling opposition, chances are that the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; vast majority of the other 40% would also eventually signal&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; support.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; actually oppose the change while at the same time allowing these&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; lazy miners to remain lazy without slowing down the soft fork&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; activation much.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanisms, when there are no pressing soft fork upgrades ready&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to deploy. Waiting until we need to deploy a soft fork to discuss&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; this will only delay things and cause contention again like it&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; did with taproot.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would appreciate any comments here, or written as github issues&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; on the proposal repo itself.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;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; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;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; &amp;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/20210629/5c4c96b0/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210629/5c4c96b0/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T00:55:34&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsrx2u68wcsy4n9fnhhuz3rw0ln3yuf25gn9qt37jkdppuk5re3gwczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpusfhsme</id>
    
      <title type="html">📅 Original date posted:2021-06-29 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrx2u68wcsy4n9fnhhuz3rw0ln3yuf25gn9qt37jkdppuk5re3gwczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpusfhsme" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqwcmmp2r4jwt0wjwdmxgrfhsz52pnkgltt5vn28ut5zjv4972xtqkr72ry&#39;&gt;nevent1q…72ry&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-29&lt;br/&gt;📝 Original message:&amp;gt; On Jun 29, 2021, at 10:55, Luke Dashjr &amp;lt;luke at dashjr.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿The only alternative to a split in the problematic scenarios are 1) concede &lt;br/&gt;&amp;gt; centralised miner control over the network,&lt;br/&gt;&lt;br/&gt;Miners control confirmation, entirely.&lt;br/&gt;&lt;br/&gt;This is the nature of bitcoin. And merchants control validation, entirely. Anyone can be a miner or a merchant. Neither is inherently “better” than the other. The largest merchants are likely a handful of exchanges, likely at least as centralized as miners are pooled.&lt;br/&gt;&lt;br/&gt;Splitting does not change this.&lt;br/&gt;&lt;br/&gt;&amp;gt; and 2) have inconsistent &lt;br/&gt;&amp;gt; enforcement of rules by users who don&amp;#39;t agree on what the correct rules are, &lt;br/&gt;&lt;br/&gt;There are no “correct” rules. Whatever rules one enforces determine what network he chooses to participate in.&lt;br/&gt;&lt;br/&gt;&amp;gt; again leading to centralised miner control over the network.&lt;br/&gt;&lt;br/&gt;Leading to? Miners control confirmation, always. Whether that is centralized, just as with merchanting, is up to individuals.&lt;br/&gt;&lt;br/&gt;&amp;gt; In other words, in this context, accepting a split between disagreeing users &lt;br/&gt;&amp;gt; is the ONLY way Bitcoin can possibly continue as a decentralised currency.&lt;br/&gt;&lt;br/&gt;No, it is not. You are proposing splitting as the method of censorship resistance inherent to Bitcoin. Coordinating this split requires coordinated action. The whole point of bitcoin is coordinate that action based on mining (proof of work). Replacing that with a political process is just a reversion to political money.&lt;br/&gt;&lt;br/&gt;&amp;gt; Making that split as clean and well-defined as possible not only ensures the &lt;br/&gt;&amp;gt; best opportunity for both sides of the disagreement,&lt;br/&gt;&lt;br/&gt;Trivially accomplished, just change a rule. This isn’t about that. It’s about how one gets others to go along with the new coin, or stay with the old. An entirely political process, which is clearly evident from the campaigns around such attempts.&lt;br/&gt;&lt;br/&gt;&amp;gt; but also minimises the &lt;br/&gt;&amp;gt; risk that the split occurs at all (since the &amp;#34;losing&amp;#34; side needs to concede, &lt;br/&gt;&amp;gt; rather than passively continue the disagreement ongoing after the attempted &lt;br/&gt;&amp;gt; protocol change).&lt;br/&gt;&lt;br/&gt;Nobody “needs to” concede once a split has occurred, which is evident in existing splits.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; Luke&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tuesday 29 June 2021 08:44:56 Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; At least we are now acknowledging that splitting is what it’s about. That’s&lt;br/&gt;&amp;gt;&amp;gt; progress.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 29, 2021, at 01:32, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I think the option of &amp;#34;permanent failure because miners veto&amp;#34; should&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; actually be abandoned. No, I don&amp;#39;t think we should avoid splits when&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; possible, I don&amp;#39;t think we should avoid splits at all costs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021, 19:12 Billy Tetrud &amp;lt;billy.tetrud at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; @Luke&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; They can still slow it down.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Absolutely. However I think that the option of permanent failure is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; important. It certainly would be ideal to ensure that enough bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users support the upgrade *before* releasing it, however realistically&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; this can never be more than an estimate, and estimates can sometimes be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wildly wrong. It would be unfortunate if miners had a substantially&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; different estimate of user support than the people putting in the work&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to release bitcoin upgrades. Even if upgrades are never released before&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; it becomes clear that a large supermajority of users want the upgrade,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; if miners don&amp;#39;t agree with the estimate a harmful chain split could&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; occur. And I agree with Eric that the goal here is to prevent a chain&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; split during an upgrade when possible. This includes permanent failure&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; of an upgrade when there is unexpectedly large miner opposition.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This of course does not prevent a UASF-style deployment to be done after&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; an initial failure to deploy occurs. My proposal is essentially a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanism to improve upon the speedy-trial idea, allowing for even&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; speedier releases (than speedy trial) without adding additional risk of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; undesired chain splits.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [BIP8] already has the trinary state you seem to be describing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It sounds like you&amp;#39;re saying the trinary state of BIP8 is A. Follow the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; longest chain, B. Follow the upgrade chain, or C. follow the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; non-upgraded chain. I agree. However the trinary state in my proposal is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; materially different - it is the signaling itself that is trinary, not&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; just which chain is being followed. This allows others to know and make&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; programmatic decisions (in software) based on that signaling. I&amp;#39;m sure&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; you can agree that does not exist in BIP8.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users, NOT miners&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; And yet there is miner involvement, as you rightly pointed out. Miners&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; are needed to set the nVersion in the header. So when you say &amp;#34;no&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; additional bit is needed&amp;#34;, could you please be clearer as to what you&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mean? Do you mean that signaling of opposition in a block can be done&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; without any &amp;#34;additional bit&amp;#34;? Or are you just saying that it is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; redundant to consider what miners might be opposing an upgrade?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; @Jorge&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If different users want different incompatible things... there&amp;#39;s no&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; way to avoid the split&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I agree. This happened with bcash, and that&amp;#39;s fine. It was painful, but&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; there were a significant amount of users that disagreed, and they have&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the chain they want now.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; But we generally all want to avoid a chain split when possible. Because&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; chain splits have a cost, and that cost can be high, its likely that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; many users would rather choose the chain with the most support rather&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; than choosing the chain with their preferred rules.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; However, the question here is: how do we estimate what fraction of users&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wants which rules? We don&amp;#39;t have a divining rod to determine with&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; certainty what users want. We can only make polls of various levels of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; inaccuracy. The methods bitcoin has been using is community discussion&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and social consensus estimation as well as miner signaling during the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; actual deployment period. Neither of these are perfect, but they are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; both reasonable enough mechanisms. However, because both of these&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanisms are very rough estimates of user sentiment, we need to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; consider the possibility that sometimes the estimate may be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; substantially inaccurate when we design deployment procedures. This&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; inaccuracy is why we need multiple barriers in place for an upgrade, and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; why we need to have higher thresholds of success (require larger&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; supermajorities in both consensus and miner signaling).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Developers obviously care about bitcoin and have an incentive (personal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and probably financial) to do it right. And miners have both an&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; incentive to keep the system healthy, as well as an incentive to mine on&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the chain that the economic majority of users is using. But measuring&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the consensus of the bitcoin community can be extraordinarily difficult&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to do with consistent accuracy, and so I think miner signaling as it has&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; been used as a second barrier to entry for an upgrade is quite&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; appropriate.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 2:22 AM Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I have not objected to anyone splitting. As I said, a split is always&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; possible, and of course has been done on a large scale. It is only the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; misleading statements about inherent soft fork “compatibility” and the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; implication that activation without hash power enforcement does not&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; create a split that I object to. People who know better should be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; honest about it.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Far too many people have been led to believe there is some sort of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; activation choice with “ensured” equal outcomes (maybe “slowed down”).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; There is only a choice between creating a split and hash power&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; enforcement. Soft forks are rule changes, and thereby incompatible -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; unless enforced by majority hash power.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The statements below are grossly misleading and need to be called out&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; as such so that people can actually make this decision you speak of.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This idea that “users” decide the rules is not the question. The&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; question is only how to avoid a split. If one does not care he can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; split at any time, no discussion required.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 27, 2021, at 01:47, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿If different users want different incompatible things (enough on&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; each side), there&amp;#39;s no way to avoid the split. We shouldn&amp;#39;t try to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; avoid such a split.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Users decide the rules, not miners nor developers.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 12:05 AM Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Ultimately there is only one answer to this question. Get majority&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; hash power support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Soft fork enforcement is the same act as any other censorship&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; enforcement, the difference is only a question of what people want.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given that there is no collective “we”, those wants differ. Bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; resolves this question of conflicting wants, but it is not a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; democracy, it’s a market. One votes by trading.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If one wants to enforce a soft fork (or otherwise censor) this is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; accomplished by mining (or paying others to do so). Anyone can mine,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; so everyone gets a say. Mining is trading capital now for more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; later. If enough people want to do that, they can enforce a soft&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; fork. It’s time Bitcoiners stop thinking of miners as other people.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Anyone can mine, and that’s your vote.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Otherwise, as mentioned below, anyone can start a new coin. But it’s&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; dishonest to imply that one can do this and all others will surely&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; follow. This cannot be known, it’s merely a gamble. And it’s one&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that has been shown to not always pay off.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿For some definitions of “block”.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Without majority hash power support, activation simply means you&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; are off on a chain split. Anyone can of course split off from a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; chain by changing a rule (soft or otherwise) at any time, so this&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is a bit of an empty claim.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Nobody can stop a person from splitting. The relevant question is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; how to *prevent* a split. And activation without majority hash&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; power certainly does not “ensure” this.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; entirely. They can still slow it down.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It also already has the trinary state you seem to be describing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (although perhaps this could be better documented in the BIP):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users who oppose the softfork can and should treat the successful&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signal (whether MASF or UASF) as invalid, thereby ensuring they do&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; not follow a chain with the rules in force.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; users, NOT miners (who have no particular say in them, aside from&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; their role as also being users). The miner involvement is only out&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; of necessity (to set the bit in the header, which users coordinate&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; with) and potentially to accelerate activation by protecting&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrade-lagging users.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ways to solve the problems that both sides brought up. In short,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BIP8 LOT=true proponents make the point that lazy miners failing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to upgrade in a timely manner slow down releases of bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrades, and BIP9 / BIP8 LOT=false proponents make the point&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that LOT=true can lead to undesirable forks that might cause a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; lot of chaos. I believe both points are essentially correct and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; have created a proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blo&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blo&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; b/master/b ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; solve both problems.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling. For any particular prospective soft fork upgrade, this&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; allows for three signaling states:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; state.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; upgrades much quicker (with a much lower percent of miners&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling support). For contentious upgrades, miners who oppose&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the change are incentivized to update their software to a version&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that can actively signal opposition to the change. The more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; opposition there is, the higher the threshold necessary to lock&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; in the upgrade. With the parameters I currently recommended in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the proposal, this chart shows how much support signaling would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; unlikely to change significantly very quickly (ie if 60% of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; miners support the change today, its unlikely that less than a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; majority of miners would support the change a year or two from&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; now), and if no one is signaling opposition, chances are that the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; vast majority of the other 40% would also eventually signal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; actually oppose the change while at the same time allowing these&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; lazy miners to remain lazy without slowing down the soft fork&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; activation much.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mechanisms, when there are no pressing soft fork upgrades ready&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to deploy. Waiting until we need to deploy a soft fork to discuss&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; this will only delay things and cause contention again like it&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; did with taproot.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would appreciate any comments here, or written as github issues&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; on the proposal repo itself.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;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;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;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;
    </content>
    <updated>2023-06-08T00:55:32&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstj26ufeyhrf08fag2u07l8ypw2ncs9876mu53y9cuh3f5uxjj9lszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputjgukn</id>
    
      <title type="html">📅 Original date posted:2021-06-29 📝 Original message:At ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstj26ufeyhrf08fag2u07l8ypw2ncs9876mu53y9cuh3f5uxjj9lszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputjgukn" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs22y07hscftrh2ah4mgwakxg76xzpd90n0dgt729y0lfxpl0u9mmgexzmdj&#39;&gt;nevent1q…zmdj&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-29&lt;br/&gt;📝 Original message:At least we are now acknowledging that splitting is what it’s about. That’s progress.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 29, 2021, at 01:32, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; I think the option of &amp;#34;permanent failure because miners veto&amp;#34; should actually be abandoned. &lt;br/&gt;&amp;gt; No, I don&amp;#39;t think we should avoid splits when possible, I don&amp;#39;t think we should avoid splits at all costs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021, 19:12 Billy Tetrud &amp;lt;billy.tetrud at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; @Luke&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; They can still slow it down.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Absolutely. However I think that the option of permanent failure is important. It certainly would be ideal to ensure that enough bitcoin users support the upgrade *before* releasing it, however realistically this can never be more than an estimate, and estimates can sometimes be wildly wrong. It would be unfortunate if miners had a substantially different estimate of user support than the people putting in the work to release bitcoin upgrades. Even if upgrades are never released before it becomes clear that a large supermajority of users want the upgrade, if miners don&amp;#39;t agree with the estimate a harmful chain split could occur. And I agree with Eric that the goal here is to prevent a chain split during an upgrade when possible. This includes permanent failure of an upgrade when there is unexpectedly large miner opposition. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This of course does not prevent a UASF-style deployment to be done after an initial failure to deploy occurs. My proposal is essentially a mechanism to improve upon the speedy-trial idea, allowing for even speedier releases (than speedy trial) without adding additional risk of undesired chain splits. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; [BIP8] already has the trinary state you seem to be describing&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It sounds like you&amp;#39;re saying the trinary state of BIP8 is A. Follow the longest chain, B. Follow the upgrade chain, or C. follow the non-upgraded chain. I agree. However the trinary state in my proposal is materially different - it is the signaling itself that is trinary, not just which chain is being followed. This allows others to know and make programmatic decisions (in software) based on that signaling. I&amp;#39;m sure you can agree that does not exist in BIP8. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; No additional bit is needed, as softforks are coordinated between users, NOT miners&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; And yet there is miner involvement, as you rightly pointed out. Miners are needed to set the nVersion in the header. So when you say &amp;#34;no additional bit is needed&amp;#34;, could you please be clearer as to what you mean? Do you mean that signaling of opposition in a block can be done without any &amp;#34;additional bit&amp;#34;? Or are you just saying that it is redundant to consider what miners might be opposing an upgrade? &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; @Jorge&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; If different users want different incompatible things... there&amp;#39;s no way to avoid the split&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I agree. This happened with bcash, and that&amp;#39;s fine. It was painful, but there were a significant amount of users that disagreed, and they have the chain they want now.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; But we generally all want to avoid a chain split when possible. Because chain splits have a cost, and that cost can be high, its likely that many users would rather choose the chain with the most support rather than choosing the chain with their preferred rules.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; However, the question here is: how do we estimate what fraction of users wants which rules? We don&amp;#39;t have a divining rod to determine with certainty what users want. We can only make polls of various levels of inaccuracy. The methods bitcoin has been using is community discussion and social consensus estimation as well as miner signaling during the actual deployment period. Neither of these are perfect, but they are both reasonable enough mechanisms. However, because both of these mechanisms are very rough estimates of user sentiment, we need to consider the possibility that sometimes the estimate may be substantially inaccurate when we design deployment procedures. This inaccuracy is why we need multiple barriers in place for an upgrade, and why we need to have higher thresholds of success (require larger supermajorities in both consensus and miner signaling). &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Developers obviously care about bitcoin and have an incentive (personal and probably financial) to do it right. And miners have both an incentive to keep the system healthy, as well as an incentive to mine on the chain that the economic majority of users is using. But measuring the consensus of the bitcoin community can be extraordinarily difficult to do with consistent accuracy, and so I think miner signaling as it has been used as a second barrier to entry for an upgrade is quite appropriate. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 2:22 AM Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I have not objected to anyone splitting. As I said, a split is always possible, and of course has been done on a large scale. It is only the misleading statements about inherent soft fork “compatibility” and the implication that activation without hash power enforcement does not create a split that I object to. People who know better should be honest about it.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Far too many people have been led to believe there is some sort of activation choice with “ensured” equal outcomes (maybe “slowed down”). There is only a choice between creating a split and hash power enforcement. Soft forks are rule changes, and thereby incompatible - unless enforced by majority hash power.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The statements below are grossly misleading and need to be called out as such so that people can actually make this decision you speak of. This idea that “users” decide the rules is not the question. The question is only how to avoid a split. If one does not care he can split at any time, no discussion required.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; On Jun 27, 2021, at 01:47, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; ﻿If different users want different incompatible things (enough on each&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; side), there&amp;#39;s no way to avoid the split. We shouldn&amp;#39;t try to avoid&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; such a split.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Users decide the rules, not miners nor developers.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 12:05 AM Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Ultimately there is only one answer to this question. Get majority hash power support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Soft fork enforcement is the same act as any other censorship enforcement, the difference is only a question of what people want. Given that there is no collective “we”, those wants differ. Bitcoin resolves this question of conflicting wants, but it is not a democracy, it’s a market. One votes by trading.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; If one wants to enforce a soft fork (or otherwise censor) this is accomplished by mining (or paying others to do so). Anyone can mine, so everyone gets a say. Mining is trading capital now for more later. If enough people want to do that, they can enforce a soft fork. It’s time Bitcoiners stop thinking of miners as other people. Anyone can mine, and that’s your vote.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Otherwise, as mentioned below, anyone can start a new coin. But it’s dishonest to imply that one can do this and all others will surely follow. This cannot be known, it’s merely a gamble. And it’s one that has been shown to not always pay off.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; ﻿For some definitions of “block”.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; Without majority hash power support, activation simply means you are off on a chain split. Anyone can of course split off from a chain by changing a rule (soft or otherwise) at any time, so this is a bit of an empty claim.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; Nobody can stop a person from splitting. The relevant question is how to *prevent* a split. And activation without majority hash power certainly does not “ensure” this.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade entirely. They can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; still slow it down.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; It also already has the trinary state you seem to be describing (although&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; perhaps this could be better documented in the BIP): users who oppose the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; softfork can and should treat the successful signal (whether MASF or UASF) as&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; invalid, thereby ensuring they do not follow a chain with the rules in force.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between users, NOT&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; miners (who have no particular say in them, aside from their role as also&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; being users). The miner involvement is only out of necessity (to set the bit&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; in the header, which users coordinate with) and potentially to accelerate&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; activation by protecting upgrade-lagging users.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about ways to solve&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the problems that both sides brought up. In short, BIP8 LOT=true proponents&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; make the point that lazy miners failing to upgrade in a timely manner slow&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; down releases of bitcoin upgrades, and BIP9 / BIP8 LOT=false&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; proponents make the point that LOT=true can lead to undesirable forks that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; might cause a lot of chaos. I believe both points are essentially correct&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and have created a proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that solve both problems.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary signaling.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; For any particular prospective soft fork upgrade, this allows for three&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling states:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default state.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious upgrades&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; much quicker (with a much lower percent of miners signaling support). For&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; contentious upgrades, miners who oppose the change are incentivized to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; update their software to a version that can actively signal opposition to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the change. The more opposition there is, the higher the threshold&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; necessary to lock in the upgrade. With the parameters I currently&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; recommended in the proposal, this chart shows how much support signaling&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is unlikely to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; change significantly very quickly (ie if 60% of miners support the change&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; today, its unlikely that less than a majority of miners would support the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; change a year or two from now), and if no one is signaling opposition,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; chances are that the vast majority of the other 40% would also eventually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signal support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they actually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; oppose the change while at the same time allowing these lazy miners to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; remain lazy without slowing down the soft fork activation much.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade mechanisms,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; when there are no pressing soft fork upgrades ready to deploy. Waiting&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; until we need to deploy a soft fork to discuss this will only delay things&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and cause contention again like it did with taproot.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; appreciate any comments here, or written as github issues on the proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; repo itself.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;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;&amp;gt; &amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;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;-------------- 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/20210629/dfc06d8f/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210629/dfc06d8f/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T00:55:30&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsqvhrhwh388rd853tftrspk7effh9c63k80fswdm55pmhtu4ljcdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujx5gfd</id>
    
      <title type="html">📅 Original date posted:2021-06-27 📝 Original message:I have ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsqvhrhwh388rd853tftrspk7effh9c63k80fswdm55pmhtu4ljcdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujx5gfd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswtsgwwhv9a5jxw5txkpxgepz2gzv4jyftc6s6pdlde83ljdhd6kqzwmgzy&#39;&gt;nevent1q…mgzy&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-27&lt;br/&gt;📝 Original message:I have not objected to anyone splitting. As I said, a split is always possible, and of course has been done on a large scale. It is only the misleading statements about inherent soft fork “compatibility” and the implication that activation without hash power enforcement does not create a split that I object to. People who know better should be honest about it.&lt;br/&gt;&lt;br/&gt;Far too many people have been led to believe there is some sort of activation choice with “ensured” equal outcomes (maybe “slowed down”). There is only a choice between creating a split and hash power enforcement. Soft forks are rule changes, and thereby incompatible - unless enforced by majority hash power.&lt;br/&gt;&lt;br/&gt;The statements below are grossly misleading and need to be called out as such so that people can actually make this decision you speak of. This idea that “users” decide the rules is not the question. The question is only how to avoid a split. If one does not care he can split at any time, no discussion required.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 27, 2021, at 01:47, Jorge Timón &amp;lt;jtimon at jtimon.cc&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿If different users want different incompatible things (enough on each&lt;br/&gt;&amp;gt; side), there&amp;#39;s no way to avoid the split. We shouldn&amp;#39;t try to avoid&lt;br/&gt;&amp;gt; such a split.&lt;br/&gt;&amp;gt; Users decide the rules, not miners nor developers.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Sun, Jun 27, 2021 at 12:05 AM Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Ultimately there is only one answer to this question. Get majority hash power support.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Soft fork enforcement is the same act as any other censorship enforcement, the difference is only a question of what people want. Given that there is no collective “we”, those wants differ. Bitcoin resolves this question of conflicting wants, but it is not a democracy, it’s a market. One votes by trading.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If one wants to enforce a soft fork (or otherwise censor) this is accomplished by mining (or paying others to do so). Anyone can mine, so everyone gets a say. Mining is trading capital now for more later. If enough people want to do that, they can enforce a soft fork. It’s time Bitcoiners stop thinking of miners as other people. Anyone can mine, and that’s your vote.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Otherwise, as mentioned below, anyone can start a new coin. But it’s dishonest to imply that one can do this and all others will surely follow. This cannot be known, it’s merely a gamble. And it’s one that has been shown to not always pay off.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ﻿For some definitions of “block”.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Without majority hash power support, activation simply means you are off on a chain split. Anyone can of course split off from a chain by changing a rule (soft or otherwise) at any time, so this is a bit of an empty claim.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Nobody can stop a person from splitting. The relevant question is how to *prevent* a split. And activation without majority hash power certainly does not “ensure” this.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade entirely. They can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; still slow it down.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It also already has the trinary state you seem to be describing (although&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; perhaps this could be better documented in the BIP): users who oppose the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; softfork can and should treat the successful signal (whether MASF or UASF) as&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; invalid, thereby ensuring they do not follow a chain with the rules in force.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between users, NOT&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; miners (who have no particular say in them, aside from their role as also&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; being users). The miner involvement is only out of necessity (to set the bit&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; in the header, which users coordinate with) and potentially to accelerate&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; activation by protecting upgrade-lagging users.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about ways to solve&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the problems that both sides brought up. In short, BIP8 LOT=true proponents&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; make the point that lazy miners failing to upgrade in a timely manner slow&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; down releases of bitcoin upgrades, and BIP9 / BIP8 LOT=false&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; proponents make the point that LOT=true can lead to undesirable forks that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; might cause a lot of chaos. I believe both points are essentially correct&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and have created a proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that solve both problems.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary signaling.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; For any particular prospective soft fork upgrade, this allows for three&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling states:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default state.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious upgrades&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; much quicker (with a much lower percent of miners signaling support). For&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; contentious upgrades, miners who oppose the change are incentivized to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; update their software to a version that can actively signal opposition to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the change. The more opposition there is, the higher the threshold&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; necessary to lock in the upgrade. With the parameters I currently&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; recommended in the proposal, this chart shows how much support signaling&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is unlikely to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; change significantly very quickly (ie if 60% of miners support the change&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; today, its unlikely that less than a majority of miners would support the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; change a year or two from now), and if no one is signaling opposition,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; chances are that the vast majority of the other 40% would also eventually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; signal support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they actually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; oppose the change while at the same time allowing these lazy miners to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; remain lazy without slowing down the soft fork activation much.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade mechanisms,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; when there are no pressing soft fork upgrades ready to deploy. Waiting&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; until we need to deploy a soft fork to discuss this will only delay things&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and cause contention again like it did with taproot.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; appreciate any comments here, or written as github issues on the proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; repo itself.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;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; 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;
    </content>
    <updated>2023-06-08T00:55:26&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvsdu526nwez6r4nup63r794vvzf7szx7wy3hy3dj3ryxqss69wxczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputenq6q</id>
    
      <title type="html">📅 Original date posted:2021-06-26 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvsdu526nwez6r4nup63r794vvzf7szx7wy3hy3dj3ryxqss69wxczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputenq6q" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs27h9elrsfkgqazwtkskctynqqhyw9l0lczfcn90w36xav63wkf0q9kxm6y&#39;&gt;nevent1q…xm6y&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-26&lt;br/&gt;📝 Original message:Ultimately there is only one answer to this question. Get majority hash power support.&lt;br/&gt;&lt;br/&gt;Soft fork enforcement is the same act as any other censorship enforcement, the difference is only a question of what people want. Given that there is no collective “we”, those wants differ. Bitcoin resolves this question of conflicting wants, but it is not a democracy, it’s a market. One votes by trading.&lt;br/&gt;&lt;br/&gt;If one wants to enforce a soft fork (or otherwise censor) this is accomplished by mining (or paying others to do so). Anyone can mine, so everyone gets a say. Mining is trading capital now for more later. If enough people want to do that, they can enforce a soft fork. It’s time Bitcoiners stop thinking of miners as other people. Anyone can mine, and that’s your vote.&lt;br/&gt;&lt;br/&gt;Otherwise, as mentioned below, anyone can start a new coin. But it’s dishonest to imply that one can do this and all others will surely follow. This cannot be known, it’s merely a gamble. And it’s one that has been shown to not always pay off.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 26, 2021, at 14:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿For some definitions of “block”.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Without majority hash power support, activation simply means you are off on a chain split. Anyone can of course split off from a chain by changing a rule (soft or otherwise) at any time, so this is a bit of an empty claim.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Nobody can stop a person from splitting. The relevant question is how to *prevent* a split. And activation without majority hash power certainly does not “ensure” this.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; e&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade entirely. They can &lt;br/&gt;&amp;gt;&amp;gt; still slow it down.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It also already has the trinary state you seem to be describing (although &lt;br/&gt;&amp;gt;&amp;gt; perhaps this could be better documented in the BIP): users who oppose the &lt;br/&gt;&amp;gt;&amp;gt; softfork can and should treat the successful signal (whether MASF or UASF) as &lt;br/&gt;&amp;gt;&amp;gt; invalid, thereby ensuring they do not follow a chain with the rules in force.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; No additional bit is needed, as softforks are coordinated between users, NOT &lt;br/&gt;&amp;gt;&amp;gt; miners (who have no particular say in them, aside from their role as also &lt;br/&gt;&amp;gt;&amp;gt; being users). The miner involvement is only out of necessity (to set the bit &lt;br/&gt;&amp;gt;&amp;gt; in the header, which users coordinate with) and potentially to accelerate &lt;br/&gt;&amp;gt;&amp;gt; activation by protecting upgrade-lagging users.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Luke&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about ways to solve&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the problems that both sides brought up. In short, BIP8 LOT=true proponents&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; make the point that lazy miners failing to upgrade in a timely manner slow&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; down releases of bitcoin upgrades, and BIP9 / BIP8 LOT=false&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; proponents make the point that LOT=true can lead to undesirable forks that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; might cause a lot of chaos. I believe both points are essentially correct&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and have created a proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that solve both problems.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary signaling.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; For any particular prospective soft fork upgrade, this allows for three&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; signaling states:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default state.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious upgrades&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; much quicker (with a much lower percent of miners signaling support). For&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; contentious upgrades, miners who oppose the change are incentivized to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; update their software to a version that can actively signal opposition to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the change. The more opposition there is, the higher the threshold&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; necessary to lock in the upgrade. With the parameters I currently&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; recommended in the proposal, this chart shows how much support signaling&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; would be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is unlikely to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; change significantly very quickly (ie if 60% of miners support the change&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; today, its unlikely that less than a majority of miners would support the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; change a year or two from now), and if no one is signaling opposition,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; chances are that the vast majority of the other 40% would also eventually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; signal support.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they actually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; oppose the change while at the same time allowing these lazy miners to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; remain lazy without slowing down the soft fork activation much.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade mechanisms,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; when there are no pressing soft fork upgrades ready to deploy. Waiting&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; until we need to deploy a soft fork to discuss this will only delay things&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and cause contention again like it did with taproot.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; appreciate any comments here, or written as github issues on the proposal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; repo itself.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt;&amp;gt; &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;
    </content>
    <updated>2023-06-08T00:55:25&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs27h9elrsfkgqazwtkskctynqqhyw9l0lczfcn90w36xav63wkf0qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6khqm2</id>
    
      <title type="html">📅 Original date posted:2021-06-26 📝 Original message:For ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs27h9elrsfkgqazwtkskctynqqhyw9l0lczfcn90w36xav63wkf0qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6khqm2" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxtwp4gdmpk5mk29gjwqhwk9rqrzzuzscsggmmja398739a2sx7gcth3qtt&#39;&gt;nevent1q…3qtt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-06-26&lt;br/&gt;📝 Original message:For some definitions of “block”.&lt;br/&gt;&lt;br/&gt;Without majority hash power support, activation simply means you are off on a chain split. Anyone can of course split off from a chain by changing a rule (soft or otherwise) at any time, so this is a bit of an empty claim.&lt;br/&gt;&lt;br/&gt;Nobody can stop a person from splitting. The relevant question is how to *prevent* a split. And activation without majority hash power certainly does not “ensure” this.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 26, 2021, at 14:13, Luke Dashjr via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿BIP8 LOT=True just ensures miners cannot block an upgrade entirely. They can &lt;br/&gt;&amp;gt; still slow it down.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It also already has the trinary state you seem to be describing (although &lt;br/&gt;&amp;gt; perhaps this could be better documented in the BIP): users who oppose the &lt;br/&gt;&amp;gt; softfork can and should treat the successful signal (whether MASF or UASF) as &lt;br/&gt;&amp;gt; invalid, thereby ensuring they do not follow a chain with the rules in force.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; No additional bit is needed, as softforks are coordinated between users, NOT &lt;br/&gt;&amp;gt; miners (who have no particular say in them, aside from their role as also &lt;br/&gt;&amp;gt; being users). The miner involvement is only out of necessity (to set the bit &lt;br/&gt;&amp;gt; in the header, which users coordinate with) and potentially to accelerate &lt;br/&gt;&amp;gt; activation by protecting upgrade-lagging users.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Luke&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Saturday 26 June 2021 20:21:52 Billy Tetrud via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; Given the recent controversy over upgrade mechanisms for the&lt;br/&gt;&amp;gt;&amp;gt; non-controversial taproot upgrade, I have been thinking about ways to solve&lt;br/&gt;&amp;gt;&amp;gt; the problems that both sides brought up. In short, BIP8 LOT=true proponents&lt;br/&gt;&amp;gt;&amp;gt; make the point that lazy miners failing to upgrade in a timely manner slow&lt;br/&gt;&amp;gt;&amp;gt; down releases of bitcoin upgrades, and BIP9 / BIP8 LOT=false&lt;br/&gt;&amp;gt;&amp;gt; proponents make the point that LOT=true can lead to undesirable forks that&lt;br/&gt;&amp;gt;&amp;gt; might cause a lot of chaos. I believe both points are essentially correct&lt;br/&gt;&amp;gt;&amp;gt; and have created a proposal&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&#34;&gt;https://github.com/fresheneesz/bip-trinary-version-signaling/blob/master/b&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; ip-trinary-version-bits.md&amp;gt; for soft fork upgrades that solve both problems.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The proposal uses trinary version signaling rather than binary signaling.&lt;br/&gt;&amp;gt;&amp;gt; For any particular prospective soft fork upgrade, this allows for three&lt;br/&gt;&amp;gt;&amp;gt; signaling states:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; * Actively support the change.&lt;br/&gt;&amp;gt;&amp;gt; * Actively oppose the change.&lt;br/&gt;&amp;gt;&amp;gt; * Not signaling (neither support or oppose). This is the default state.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Using this additional information, we can release non-contentious upgrades&lt;br/&gt;&amp;gt;&amp;gt; much quicker (with a much lower percent of miners signaling support). For&lt;br/&gt;&amp;gt;&amp;gt; contentious upgrades, miners who oppose the change are incentivized to&lt;br/&gt;&amp;gt;&amp;gt; update their software to a version that can actively signal opposition to&lt;br/&gt;&amp;gt;&amp;gt; the change. The more opposition there is, the higher the threshold&lt;br/&gt;&amp;gt;&amp;gt; necessary to lock in the upgrade. With the parameters I currently&lt;br/&gt;&amp;gt;&amp;gt; recommended in the proposal, this chart shows how much support signaling&lt;br/&gt;&amp;gt;&amp;gt; would be necessary given a particular amount of active opposition&lt;br/&gt;&amp;gt;&amp;gt; signaling:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; [image: thresholdChart.png]&lt;br/&gt;&amp;gt;&amp;gt; If literally no one signals opposition, a 60% threshold should be&lt;br/&gt;&amp;gt;&amp;gt; relatively safe because it is a supermajority amount that is unlikely to&lt;br/&gt;&amp;gt;&amp;gt; change significantly very quickly (ie if 60% of miners support the change&lt;br/&gt;&amp;gt;&amp;gt; today, its unlikely that less than a majority of miners would support the&lt;br/&gt;&amp;gt;&amp;gt; change a year or two from now), and if no one is signaling opposition,&lt;br/&gt;&amp;gt;&amp;gt; chances are that the vast majority of the other 40% would also eventually&lt;br/&gt;&amp;gt;&amp;gt; signal support.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This both gives an incentive for &amp;#34;lazy&amp;#34; miners to upgrade if they actually&lt;br/&gt;&amp;gt;&amp;gt; oppose the change while at the same time allowing these lazy miners to&lt;br/&gt;&amp;gt;&amp;gt; remain lazy without slowing down the soft fork activation much.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I think now is the right time to discuss new soft fork upgrade mechanisms,&lt;br/&gt;&amp;gt;&amp;gt; when there are no pressing soft fork upgrades ready to deploy. Waiting&lt;br/&gt;&amp;gt;&amp;gt; until we need to deploy a soft fork to discuss this will only delay things&lt;br/&gt;&amp;gt;&amp;gt; and cause contention again like it did with taproot.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m very curious to know what people think of this mechanism. I would&lt;br/&gt;&amp;gt;&amp;gt; appreciate any comments here, or written as github issues on the proposal&lt;br/&gt;&amp;gt;&amp;gt; repo itself.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt;&amp;gt; BT&lt;br/&gt;&amp;gt; &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&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;
    </content>
    <updated>2023-06-08T00:55:25&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsgd36ac559axnz8udhvltjuzy9p453s05tqgac2huqsp9ae5unjkgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputv3e7z</id>
    
      <title type="html">📅 Original date posted:2021-05-07 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsgd36ac559axnz8udhvltjuzy9p453s05tqgac2huqsp9ae5unjkgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputv3e7z" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszd2nae488x6ktcr2zxhnplzh9hnx439zkd5ehva7fw3dg0ggy3kc7trnyv&#39;&gt;nevent1q…rnyv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-05-07&lt;br/&gt;📝 Original message:&lt;a href=&#34;https://github.com/libbitcoin/libbitcoin-system/wiki/Proof-of-Stake-Fallacy&#34;&gt;https://github.com/libbitcoin/libbitcoin-system/wiki/Proof-of-Stake-Fallacy&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On May 7, 2021, at 15:50, SatoshiSingh via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿Hello list,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am a lurker here and like many of you I worry about the energy usage of bitcoin mining. I understand a lot mining happens with renewable resources but the impact is still high.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I want to get your opinion on implementing proof of stake for bitcoin mining in future. For now, proof of stake is still untested and not battle tested like proof of work. Though someday it will be.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In the following years we&amp;#39;ll be seeing proof of stake being implemented. Smaller networks can test PoS which is a luxury bitcoin can&amp;#39;t afford. Here&amp;#39;s how I see this the possibilities:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1 - Proof of stake isn&amp;#39;t a good enough security mechanism&lt;br/&gt;&amp;gt; 2 - Proof of state is a good security mechanism and works as intended&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; IF PoS turns out to be good after battle testing, would you consider implementing it for Bitcoin? I understand this would invoke a lot of controversies and a hard fork that no one likes. But its important enough to consider a hard fork. What are your opinions provided PoS does work?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Love from India.&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&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;-------------- 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/20210507/ed773f98/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210507/ed773f98/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T00:52:36&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfx3jfj0agqq565u76hslurwkg5z7njyqe50jp2t5p8pyqe3z7yzszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzy0jau</id>
    
      <title type="html">📅 Original date posted:2021-03-06 📝 Original message:The ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfx3jfj0agqq565u76hslurwkg5z7njyqe50jp2t5p8pyqe3z7yzszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzy0jau" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspjq9d7865ulm04zyf2k76qathkrrfn96gwqyd8mjqh8arc6v865g5knfqt&#39;&gt;nevent1q…nfqt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-03-06&lt;br/&gt;📝 Original message:The most sensible approach I’ve seen yet.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Mar 6, 2021, at 01:29, Anthony Towns via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿On Fri, Mar 05, 2021 at 05:43:43PM -1000, David A. Harding via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; ## Example timeline&lt;br/&gt;&amp;gt;&amp;gt; - T&#43;0: release of one or more full nodes with activation code&lt;br/&gt;&amp;gt;&amp;gt; - T&#43;14: signal tracking begins&lt;br/&gt;&amp;gt;&amp;gt; - T&#43;28: earliest possible lock in&lt;br/&gt;&amp;gt;&amp;gt; - T&#43;104: locked in by this date or need to try a different activation process&lt;br/&gt;&amp;gt;&amp;gt; - T&#43;194: activation (if lockin occurred)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ### Base activation protocol&lt;br/&gt;&amp;gt;&amp;gt; The idea can be implemented on top of either Bitcoin Core&amp;#39;s existing&lt;br/&gt;&amp;gt;&amp;gt; BIP9 code or its proposed BIP8 patchset.[6]&lt;br/&gt;&amp;gt;&amp;gt;    BIP9 is already part of Bitcoin Core and I think the changes being&lt;br/&gt;&amp;gt;&amp;gt;    proposed would be relatively small, resulting in a small patch that&lt;br/&gt;&amp;gt;&amp;gt;    could be easy to review.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To get to specifics, here&amp;#39;s a PR, based on #21334, that updates bip9&lt;br/&gt;&amp;gt; to support an extra parameter to delay the transition from LOCKED_IN&lt;br/&gt;&amp;gt; to ACTIVE until a particular timestamp is reached, and to reduce the&lt;br/&gt;&amp;gt; activation threshold to 90%:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;a href=&#34;https://github.com/bitcoin/bitcoin/pull/21377&#34;&gt;https://github.com/bitcoin/bitcoin/pull/21377&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; With that in mind, I think the example timeline above could translate&lt;br/&gt;&amp;gt; to taproot parameters of:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  nStartTime = 1618358400; // April 14, 2021&lt;br/&gt;&amp;gt;  nTimeout = 1626220800; // July 14 2021&lt;br/&gt;&amp;gt;  activation_time = 1633046400; // October 1 2021&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That is, signalling begins with the first retarget period whose parent&amp;#39;s&lt;br/&gt;&amp;gt; median time is at least April 14th; and concludes with the last retarget&lt;br/&gt;&amp;gt; period whose final block&amp;#39;s median time is prior to July 14th; that&amp;#39;s&lt;br/&gt;&amp;gt; 91 days which should be about ~6.5 retarget periods, so should cover 6&lt;br/&gt;&amp;gt; full retarget periods, but could only cover 5.  Activation is delayed&lt;br/&gt;&amp;gt; until the first retarget period where the final block of the previous&lt;br/&gt;&amp;gt; retarget period has a timestamp of at least October 1st.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Note that the timeout there is prior to the expected timestamp of the&lt;br/&gt;&amp;gt; startheight block specified in the proposal for bip8 parameters:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;a href=&#34;https://en.bitcoin.it/wiki/Taproot_activation_proposal_202102&#34;&gt;https://en.bitcoin.it/wiki/Taproot_activation_proposal_202102&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; and earliest activation is after the expected release of 22.0 and hence&lt;br/&gt;&amp;gt; the maintenance end of 0.20.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Note also that the PR above specifies the delay as a deadline, not a&lt;br/&gt;&amp;gt; delta between lockin and activation; so earlier lockin does not produce&lt;br/&gt;&amp;gt; an earlier activation with the code referenced above.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; aj&lt;br/&gt;&amp;gt; &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&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;
    </content>
    <updated>2023-06-07T20:30:34&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsrzle0lks4l4rljqf9ulaxu5yrenud3mdkea6m3r89gxv37t76xrqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu748afg</id>
    
      <title type="html">📅 Original date posted:2021-03-04 📝 Original message:Mike ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrzle0lks4l4rljqf9ulaxu5yrenud3mdkea6m3r89gxv37t76xrqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu748afg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9xc95nxajv4nng70d5g63rsm29zhnw6h0rd03yx23elxscr63l4cxkhaw6&#39;&gt;nevent1q…haw6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-03-04&lt;br/&gt;📝 Original message:Mike was wrong about a number of things, and in the end decided that Bitcoin was pointless, as people could not defend it against the state. He used this as the basis for his defense of large blocks and centralized mining. When that didn’t work out he quit, to work on centralized systems.&lt;br/&gt;&lt;br/&gt;People can of course do what they want, but unnecessarily splitting from the existing chain reduces utility, which seems counterproductive. BCH is a good example of this.&lt;br/&gt;&lt;br/&gt;Compatibility isn’t “dangerous”. Old nodes don’t need to know what new nodes are doing. If the person operating one needs to validate a taproot payment to himself, he would have to upgrade. Otherwise it’s of no consequence, his node is economic (relevant) only in relation to the legacy payments he receives, which he can continue to validate.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Mar 4, 2021, at 15:22, Vincent Truong via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I must remind everyone of Mike Hearn&amp;#39;s proposal not many years ago, which ought to be on everyone&amp;#39;s mind right now. &amp;#34;Every soft fork should be a hard fork, and that soft forks are inherently dangerous because old nodes are tricked to not know what the new nodes are doing&amp;#34; (paraphrased). Whether taproot is dangerous is not the issue; whether old nodes should or should not ignore new rules, is.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Flag day activation of a soft fork is basically proposing a hard fork, but without saying or doing it at full commitment. May as well just do a flag day hard fork.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Bitcoin Cash/Bcash has already tested for you how a market driven hard fork should work. Bitcoin didn&amp;#39;t die. We should be learning from the mistakes made in those early hard forks to not repeat them when Bitcoin hard forks - like having replay protection written before deployment.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If it&amp;#39;s not evident within the first 6-12 blocks which fork is winning, then the market will trade it out. Just like what happened with Bitcoin Cash/Bcash.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Not only that, it stops the drama of Bitcoin Core devs from &amp;#34;being in control&amp;#34; of consensus. The market will choose, you just create the safest way for users to participate. The market is consensus. Rough consensus is just the conversation starter.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Thu, 4 Mar 2021, 1:39 am Chris Belcher via bitcoin-dev, &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; The bitcoin world is close to total gridlock on the question of how to&lt;br/&gt;&amp;gt;&amp;gt; activate taproot. There&amp;#39;s no agreement on activation[1][2], and if an&lt;br/&gt;&amp;gt;&amp;gt; agreement isn&amp;#39;t reached then nothing happens. That would be really&lt;br/&gt;&amp;gt;&amp;gt; terrible because we&amp;#39;d miss out on the benefits of taproot and&lt;br/&gt;&amp;gt;&amp;gt; potentially other future soft forks.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; A major problem with BIP8 is that it would result to a situation where&lt;br/&gt;&amp;gt;&amp;gt; different parts of the bitcoin ecosystem run different consensus rules.&lt;br/&gt;&amp;gt;&amp;gt; Some people will run LOT=true and others LOT=false. Worst of all, it&lt;br/&gt;&amp;gt;&amp;gt; becomes vulnerable to a twitter/reddit/social media blitz which could&lt;br/&gt;&amp;gt;&amp;gt; attempt to move the date of miner activation around.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Twitter and reddit drama provide a perfect cover for social attacks on&lt;br/&gt;&amp;gt;&amp;gt; bitcoin.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Forced signalling leads to brinksmanship. Where two or more sides&lt;br/&gt;&amp;gt;&amp;gt; (backed up by social media drama) enter into a game of chicken with&lt;br/&gt;&amp;gt;&amp;gt; deployed nodes. If one of them doesn&amp;#39;t concede then we get a damaging&lt;br/&gt;&amp;gt;&amp;gt; chain split. And the $1 trillion in value that the bitcoin network&lt;br/&gt;&amp;gt;&amp;gt; protects is put at risk. From the point of view of a miner or big&lt;br/&gt;&amp;gt;&amp;gt; exchange stuck in the middle, if they look at the ecosystem of twitter&lt;br/&gt;&amp;gt;&amp;gt; and reddit (especially if you think about all the problems with bots and&lt;br/&gt;&amp;gt;&amp;gt; sockpuppets) they have no idea which consensus rules they should&lt;br/&gt;&amp;gt;&amp;gt; actually follow and exactly what date they take effect. Miners,&lt;br/&gt;&amp;gt;&amp;gt; exchanges, merchants and the rest of the ecosystem exist to serve their&lt;br/&gt;&amp;gt;&amp;gt; customers and users, and trouble happens when they don&amp;#39;t know what their&lt;br/&gt;&amp;gt;&amp;gt; customers really want. Social media attacks are not just a theoretical&lt;br/&gt;&amp;gt;&amp;gt; concern; back during the block size drama, the bitcoin reddits were&lt;br/&gt;&amp;gt;&amp;gt; targetted by bots, sockpuppets and brigading[3].&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Enter flag day activation. With a flag day there can be no&lt;br/&gt;&amp;gt;&amp;gt; brinksmanship. A social media blitz cant do anything except have its own&lt;br/&gt;&amp;gt;&amp;gt; followers fork away. Crucially, miner signalling cant be used to change&lt;br/&gt;&amp;gt;&amp;gt; the activation date for nodes that didn&amp;#39;t choose to and just passively&lt;br/&gt;&amp;gt;&amp;gt; follow signalling. Changing the activation date requires all those users&lt;br/&gt;&amp;gt;&amp;gt; to actually run different node software.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Flag day activation works simply: we choose a block height and after&lt;br/&gt;&amp;gt;&amp;gt; that block height the new taproot rules become enforced.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Supporters of the permissionless, &amp;#34;users rule&amp;#34; approach of LOT=true&lt;br/&gt;&amp;gt;&amp;gt; should be happy because it completely takes miners out of activation.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Supporters of the safe, conservative approach of LOT=false can be made&lt;br/&gt;&amp;gt;&amp;gt; happy with a few ways of derisking:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; * Getting mining pools, businesses and users to look at the code and ask&lt;br/&gt;&amp;gt;&amp;gt; if they (a) think its either neutral or good for their business or use&lt;br/&gt;&amp;gt;&amp;gt; case and (b) they believe others view it similarly and that the&lt;br/&gt;&amp;gt;&amp;gt; consensus changes proposed have a good social consensus around them.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; * Setting the flag day far in the future (18 months or 2 years in the&lt;br/&gt;&amp;gt;&amp;gt; original proposal[3]).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; == What if flag day activation is used maliciously? ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; What if one day the Core developer team is co-opted and uses the flag&lt;br/&gt;&amp;gt;&amp;gt; day method to do something bad? For example, a soft fork where sending&lt;br/&gt;&amp;gt;&amp;gt; to certain blacklisted addresses is not allowed. The bitcoin user&lt;br/&gt;&amp;gt;&amp;gt; community who wants to resist this can create their own&lt;br/&gt;&amp;gt;&amp;gt; counter-soft-fork full node, where the first block after the flag day&lt;br/&gt;&amp;gt;&amp;gt; MUST pay to one of those addresses on the blacklist. This forces a chain&lt;br/&gt;&amp;gt;&amp;gt; split between the censorship rules and the no-censorship rules, and its&lt;br/&gt;&amp;gt;&amp;gt; pretty obvious that the real bitcoin which most people follow will be&lt;br/&gt;&amp;gt;&amp;gt; the chain without censorship.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; For example, if a group of users didn&amp;#39;t agree with taproot then they&lt;br/&gt;&amp;gt;&amp;gt; could create their own counter-flag-day-activation which requires that a&lt;br/&gt;&amp;gt;&amp;gt; transaction is included that does an invalid-spend from a taproot output&lt;br/&gt;&amp;gt;&amp;gt; in the first block after the flag day height.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This is always possible with any user activated soft fork. In BIP8&lt;br/&gt;&amp;gt;&amp;gt; LOT=true it could be done by rejecting block headers with certain&lt;br/&gt;&amp;gt;&amp;gt; version bits signalled.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; == But it will take so long! ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; We seem to be at a deadlock now. This will take less time than any other&lt;br/&gt;&amp;gt;&amp;gt; method, because other methods might never happen. BIP8 is dead and from&lt;br/&gt;&amp;gt;&amp;gt; what I see there&amp;#39;s no other credible plan.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; We&amp;#39;ve already waited years for taproot. I remember listening to talks&lt;br/&gt;&amp;gt;&amp;gt; about bitcoin from 2015 of people discussing Schnorr signatures. And&lt;br/&gt;&amp;gt;&amp;gt; given how slow segwit and p2sh adoption were its pretty likely that&lt;br/&gt;&amp;gt;&amp;gt; we&amp;#39;ll waiting a while for taproot to be actually adopted.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; == A social media blitz could still try to activate it early ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The brinksmanship only works because miner signalling can make many&lt;br/&gt;&amp;gt;&amp;gt; other nodes activate early, even if those other nodes didn&amp;#39;t do&lt;br/&gt;&amp;gt;&amp;gt; anything. There can&amp;#39;t be a game of chicken that puts the bitcoin network&lt;br/&gt;&amp;gt;&amp;gt; at risk.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If a group of people did adopt alternative node software which has a&lt;br/&gt;&amp;gt;&amp;gt; shorter flag day, they actually have a risk of slow blocks. Because they&lt;br/&gt;&amp;gt;&amp;gt; cant trick or force any other nodes to come along with them, they are&lt;br/&gt;&amp;gt;&amp;gt; likely to only have a small economy and therefore would lose a lot of&lt;br/&gt;&amp;gt;&amp;gt; hashrate. Imagine trading bitcoins for cash in person and instead of&lt;br/&gt;&amp;gt;&amp;gt; waiting 10 minutes for a confirmation you have to wait 3 hours because&lt;br/&gt;&amp;gt;&amp;gt; the blocks are slow.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Also, the argument for downloading and running a different software only&lt;br/&gt;&amp;gt;&amp;gt; to speed up activation is pretty weak. Taproot would activate in ~18&lt;br/&gt;&amp;gt;&amp;gt; months, so why are you so impatient that you need it in 6 months? And&lt;br/&gt;&amp;gt;&amp;gt; risk slow blocks for you while doing so? The big difference with BIP148&lt;br/&gt;&amp;gt;&amp;gt; the segwit UASF, is that people *had to* run some other software&lt;br/&gt;&amp;gt;&amp;gt; otherwise they would get *no soft fork at all*.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; == Without miner signalling how do we know the new rules are even&lt;br/&gt;&amp;gt;&amp;gt; activated? ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; When did you see miners signalling their support for the inflation schedule?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Bitcoin&amp;#39;s rules are enforced by wallets backed by full nodes. You&amp;#39;ll&lt;br/&gt;&amp;gt;&amp;gt; always know if your own full node is enforcing the new rules. The thing&lt;br/&gt;&amp;gt;&amp;gt; that matters isnt miner signalling but your own full node, and the nodes&lt;br/&gt;&amp;gt;&amp;gt; of those you trade with.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Flag day activation is quite similar to the way block reward halvenings&lt;br/&gt;&amp;gt;&amp;gt; work. At and after block height 630000 miners are only allowed to create&lt;br/&gt;&amp;gt;&amp;gt; 6.25 BTC rather than 12.5 BTC. Everyone knows that if miners continued&lt;br/&gt;&amp;gt;&amp;gt; to create 12.5 BTC or more they would be unable to sell or spend those&lt;br/&gt;&amp;gt;&amp;gt; coins anywhere.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; In 2017 when segwit was being activated people created a huge list of&lt;br/&gt;&amp;gt;&amp;gt; various bitcoin companies, merchants and wallets:&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://web.archive.org/web/20171228111943/https://bitcoincore.org/en/segwit_adoption/&#34;&gt;https://web.archive.org/web/20171228111943/https://bitcoincore.org/en/segwit_adoption/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; Looking at that list, you would know that if someone stole coins from a&lt;br/&gt;&amp;gt;&amp;gt; segwit address they would be unable to deposit them in many exchanges&lt;br/&gt;&amp;gt;&amp;gt; and merchants: Bitrefill, Bitstamp, Kraken, Localbitcoins, Paxful,&lt;br/&gt;&amp;gt;&amp;gt; Vaultoro, HitBTC, etc.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Then what happened is only a month after S2X was beaten this guy moved&lt;br/&gt;&amp;gt;&amp;gt; 40000 BTC to a segwit address, confident about the power of the network&lt;br/&gt;&amp;gt;&amp;gt; to protect his coins.&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://old.reddit.com/r/Bitcoin/comments/7tcmi4/bitcointalks_famous_user_loaded_moved_his_40k_btc/&#34;&gt;https://old.reddit.com/r/Bitcoin/comments/7tcmi4/bitcointalks_famous_user_loaded_moved_his_40k_btc/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If there&amp;#39;s ever any doubt about flag day activation we can always draw&lt;br/&gt;&amp;gt;&amp;gt; up a similar list, although if there&amp;#39;s broad consensus about it then&lt;br/&gt;&amp;gt;&amp;gt; there&amp;#39;s no reason why bitcoin businesses wouldn&amp;#39;t upgrade to the latest&lt;br/&gt;&amp;gt;&amp;gt; Core, like they did with every other previous soft fork.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; == This gives the impression that Core developers control the protocol ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This objection has a mirror image argument: BIP8 with LOT=false gives&lt;br/&gt;&amp;gt;&amp;gt; the impression that miners control the protocol(!)&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Eventually some group has to make a decision. We will ask the bitcoin&lt;br/&gt;&amp;gt;&amp;gt; economy and users what they think of flag day activation. It&amp;#39;s pretty&lt;br/&gt;&amp;gt;&amp;gt; clear that nobody seriously objects to taproot, and as described above&lt;br/&gt;&amp;gt;&amp;gt; if Core developers did something evil the community could resist it with&lt;br/&gt;&amp;gt;&amp;gt; a counter-flag-day-activation.&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; == TL;DR ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I believe flag day activation is the way forward. It should answer all&lt;br/&gt;&amp;gt;&amp;gt; the objections and risks which make other methods too controversial.&lt;br/&gt;&amp;gt;&amp;gt; Let&amp;#39;s go ahead and bring taproot to bitcoin!&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; == References ==&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; [1] -&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018498.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018498.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;       luke-jr posts saying LOT=false in his view reintroduces a bug, he&lt;br/&gt;&amp;gt;&amp;gt; compares it to introducing an inflation bug and just hoping that miners&lt;br/&gt;&amp;gt;&amp;gt; will not exploit it.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; [2] -&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018425.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018425.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;       This whole thread has many people disagreeing with LOT=true&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; [3] -&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://old.reddit.com/r/Bitcoin/comments/4biob5/research_into_instantaneous_vote_behavior_in/&#34;&gt;https://old.reddit.com/r/Bitcoin/comments/4biob5/research_into_instantaneous_vote_behavior_in/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://old.reddit.com/r/Bitcoin/comments/3v04pd/can_we_please_have_a_civil_discussion_about/cxjnz1d/?context=1&#34;&gt;https://old.reddit.com/r/Bitcoin/comments/3v04pd/can_we_please_have_a_civil_discussion_about/cxjnz1d/?context=1&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://old.reddit.com/r/Bitcoin/comments/41ykkt/members_trying_to_destroy_bitcoin_on_this_thread/cz6ccka/?context=3&#34;&gt;https://old.reddit.com/r/Bitcoin/comments/41ykkt/members_trying_to_destroy_bitcoin_on_this_thread/cz6ccka/?context=3&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; [4] -&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018495.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018495.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;       Matt Corallo&amp;#39;s flag day activation proposal&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; _______________________________________________&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&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;-------------- 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/20210304/c4f49241/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210304/c4f49241/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:29:55&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsw9lcu0ve2hyefknmxvn4888tuj77k62ax38refenm2y0xw9jjv2szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuv325tf</id>
    
      <title type="html">📅 Original date posted:2021-03-01 📝 Original message:To be ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsw9lcu0ve2hyefknmxvn4888tuj77k62ax38refenm2y0xw9jjv2szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuv325tf" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfagpzceau5vhzxnyj8qx3dapa62xtzf2msll9y4yrhrekw6t5rsgc479yp&#39;&gt;nevent1q…79yp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-03-01&lt;br/&gt;📝 Original message:To be clear, is this a NACK because Taproot reduces “transparency” (increases privacy) on the chain (“maintaining consensus” is obviously an argument against any protocol change, so that’s a red herring)? &lt;br/&gt;&lt;br/&gt;And is it your theory that only an “honest” (statute abiding) person should have privacy, and not against the state, and/or that mixers are sufficient privacy?&lt;br/&gt;&lt;br/&gt;Personally, I’m not moved by such an argument. What do you think is the value proposition of Bitcoin?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Mar 1, 2021, at 14:21, LORD HIS EXCELLENCY JAMES HRMH via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; Good Afternoon,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am going to take tough terms with much of your reply and do appreciate a courteous practice. Having previously made public disclosure of my affiliation with Jambler.io it seems sufficient to disclose my affiliation through the link in my email signature block.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My concern is not increased privacy it is maintaining consensus values and the transparency of the blockchain wherein all transactions are published in an immutable record and that forbids the redaction of information by any obfuscation. A separate concern is the availability of a privacy suitable for cash should a Bitcoin user desire and especially without disturbing the existing consensus.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The use of a Bitcoin Mixer is to enable standard equivalent privacy. As you may experience yourself, you do not allow people to follow you around looking in your purse, suppose you are dealing entirely with cash, and to see where and how much you fill it up, and where you spend. Nonetheless, for an honest person, their wallet is available for government audit as are their financial affairs. This is consistent with the existing operation of consensus.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My full email signature block is a disclosure where I have some affiliation with the referenced website being that it carries at least some information that I have provided or that in some way I am associated perhaps only making use of their services. For example, I hardly make a profit from LinkedIn just my information is there. Also, I have made previous public disclosure of the affiliation. Bitcoin Mixer 2.0 is a partner mixer run by Jambler.io wherein I receive a service referral fee and am not in receipt of any part of the process transaction. The operation block diagram provided by Jambler.io is provided here and attached.&lt;br/&gt;&amp;gt; &amp;lt;ip.bitcointalk.org.png&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [ip.bitcointalk.org.png]-Operation of Jambler.io partner mixer&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://ip.bitcointalk.org/?u=https%3A%2F%2Fjambler.io%2Fimages%2Fscheme-1.png&amp;amp;t=622&amp;amp;c=gTi7r1cfh-yynw&#34;&gt;https://ip.bitcointalk.org/?u=https%3A%2F%2Fjambler.io%2Fimages%2Fscheme-1.png&amp;amp;t=622&amp;amp;c=gTi7r1cfh-yynw&lt;/a&gt;&lt;br/&gt;&amp;gt; from this thread  &lt;a href=&#34;https://bitcointalk.org/index.php?topic=5267588&#34;&gt;https://bitcointalk.org/index.php?topic=5267588&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The installation script provided by Jambler.io that is the basis of my referral website is also publicly published,&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/jambler-io/bitcoin-mixer&#34;&gt;https://github.com/jambler-io/bitcoin-mixer&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The disclosure for the partner program is available from Jambler.io however and is made prominently on my referral website. While it may seem lucrative at first I insist all partner profits are reportable on your personal income.&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://jambler.io/become-partner.php&#34;&gt;https://jambler.io/become-partner.php&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am certainly better than confident that you appreciate the difference between an open and transparent blockchain and the ability of the user to not reveal details of the content of their wallet publicly.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If further clarification is required may I suggest you pay a token and mix some Bitcoin wherein our discussion may then have some point of reference.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; KING JAMES HRMH&lt;br/&gt;&amp;gt; Great British Empire&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; The Australian&lt;br/&gt;&amp;gt; LORD HIS EXCELLENCY JAMES HRMH (&amp;amp; HMRH)&lt;br/&gt;&amp;gt; of Hougun Manor &amp;amp; Glencoe &amp;amp; British Empire&lt;br/&gt;&amp;gt; MR. Damian A. James Williamson&lt;br/&gt;&amp;gt; Wills&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; et al.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; Willtech&lt;br/&gt;&amp;gt; www.willtech.com.au&lt;br/&gt;&amp;gt; www.go-overt.com&lt;br/&gt;&amp;gt; and other projects&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; earn.com/willtech&lt;br/&gt;&amp;gt; linkedin.com/in/damianwilliamson&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; m. 0487135719&lt;br/&gt;&amp;gt; f. &#43;61261470192&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This email does not constitute a general advice. Please disregard this email if misdelivered.&lt;br/&gt;&amp;gt; From: Ariel Lorenzo-Luaces &amp;lt;arielluaces at gmail.com&amp;gt;&lt;br/&gt;&amp;gt; Sent: Monday, 1 March 2021 12:07 AM&lt;br/&gt;&amp;gt; To: LORD HIS EXCELLENCY JAMES HRMH &amp;lt;willtech at live.com.au&amp;gt;; Bitcoin Protocol Discussion &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;&amp;gt; Subject: Re: [bitcoin-dev] Taproot NACK&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; Hello LORD HIS EXCELLENCY JAMES HRMH&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I find a striking dichotomy between your concern of increased privacy in bitcoin and your link to a bitcoin mixer in your signature www.go-overt.com&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; At first your concerns seemed genuine but after seeing your promotion of a bitcoin mixer I&amp;#39;m thinking your concerns may be more profit motivated? I can&amp;#39;t tell since you failed to disclose your relationship with the mixer.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Could you please clarify your association with the bitcoin mixer and moving forward could you please always do proper disclosure any time you&amp;#39;re publically talking about bitcoin transaction privacy. It&amp;#39;s only fair to do so as to not mislead people in an attempt to manipulate at worst and just a courteous practice at best.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cheers&lt;br/&gt;&amp;gt; Ariel Lorenzo-Luaces&lt;br/&gt;&amp;gt; On Feb 28, 2021, at 4:36 AM, LORD HIS EXCELLENCY JAMES HRMH via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; Good Evening,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thank-you for your advice   @JeremyRubin  on the basis you advise, &amp;#34;Taproot does not enable monero-like privacy features&amp;#34;, I am prepred to withdraw my NACK notably that the existing feeatures of Bitcoin MUST be maintained, and whereby the UTXO of a transaction is identifiable, the PayTo Address, and the amount all without any obfuscation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Lightning does not really provide obfuscation, it provides a result of a subset of transactions although the operation of the channel is observable to the parties.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The reports I were reading concerning the supposed operation of Taproot published in a public media channel may have been speculation or misinformation nonetheless it is prudent to conditionally reply as you see that I have. It is important not to allow things to slip through the cracks. As you may believe may astute reviewers could make a full disclosure to this list it is not to be expected.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; KING JAMES HRMH&lt;br/&gt;&amp;gt; Great British Empire&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; The Australian&lt;br/&gt;&amp;gt; LORD HIS EXCELLENCY JAMES HRMH (&amp;amp; HMRH)&lt;br/&gt;&amp;gt; of Hougun Manor &amp;amp; Glencoe &amp;amp; British Empire&lt;br/&gt;&amp;gt; MR. Damian A. James Williamson&lt;br/&gt;&amp;gt; Wills&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; et al.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; Willtech&lt;br/&gt;&amp;gt; www.willtech.com.au&lt;br/&gt;&amp;gt; www.go-overt.com&lt;br/&gt;&amp;gt; and other projects&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; earn.com/willtech&lt;br/&gt;&amp;gt; linkedin.com/in/damianwilliamson&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; m. 0487135719&lt;br/&gt;&amp;gt; f. &#43;61261470192&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This email does not constitute a general advice. Please disregard this email if misdelivered.&lt;br/&gt;&amp;gt; From: Jeremy &amp;lt;jlrubin at mit.edu&amp;gt;&lt;br/&gt;&amp;gt; Sent: Sunday, 28 February 2021 3:14 AM&lt;br/&gt;&amp;gt; To: LORD HIS EXCELLENCY JAMES HRMH &amp;lt;willtech at live.com.au&amp;gt;; Bitcoin Protocol Discussion &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;&amp;gt; Subject: Re: [bitcoin-dev] Taproot NACK&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; I have good news for you: Taproot does not enable monero-like privacy features any moreso than already exist in Bitcoin today. At its core, taproot is a way to make transactions with embedded smart contracts less expensive, done so in a manner that may marginally improve privacy dependent on user behavior (but not in the monero-like way you mention). For example, it makes it possible for lightning channels to look structurally similar to single key wallets, but it does nothing inherently to obfuscate the transaction graph as in monero. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Such &amp;#34;monero-like&amp;#34; transaction graph obfuscation may already exist in Bitcoin via other techniques (coinjoin, payjoin, coinswap, lightning, etc) with or without Taproot, so the point is further moot. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Do you have a source on your reporting?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You may wish to rescind your nack. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; @JeremyRubin&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Sat, Feb 27, 2021 at 5:46 AM LORD HIS EXCELLENCY JAMES HRMH via bitcoin-dev &amp;lt; bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote: &lt;br/&gt;&amp;gt; Good Afternoon,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It has been reported that Taproot will enable some Monero like features including the ability to hide transactions.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If that is the case I offer a full NACK and let me explain.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A part of the benefit of using Bitcoin is its honesty. The full transaction is published on the blockchain. If that were to change so that transactions may be obfuscated from scrutiny then any government would have unlimited impetus to ban Bitcoin, and speculation has that is the reason India has been reported to have banned cryptocurrencies already.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am in support of the expanded use case of Bitcoin without harming the established robust fairness and equal equity offered. The core functionality of Bitcoin, its values, must remain unaltered. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; KING JAMES HRMH&lt;br/&gt;&amp;gt; Great British Empire &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; The Australian&lt;br/&gt;&amp;gt; LORD HIS EXCELLENCY JAMES HRMH (&amp;amp; HMRH)&lt;br/&gt;&amp;gt; of Hougun Manor &amp;amp; Glencoe &amp;amp; British Empire&lt;br/&gt;&amp;gt; MR. Damian A. James Williamson&lt;br/&gt;&amp;gt; Wills&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; et al.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; Willtech&lt;br/&gt;&amp;gt; www.willtech.com.au&lt;br/&gt;&amp;gt; www.go-overt.com&lt;br/&gt;&amp;gt; and other projects&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; earn.com/willtech&lt;br/&gt;&amp;gt; linkedin.com/in/damianwilliamson&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; m. 0487135719&lt;br/&gt;&amp;gt; f. &#43;61261470192&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This email does not constitute a general advice. Please disregard this email if misdelivered.&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 &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;&amp;gt;  &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&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;&amp;gt; &amp;lt;ip.bitcointalk.org.png&amp;gt;&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&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;-------------- 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/20210301/0f83b45c/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210301/0f83b45c/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:29:23&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs08g3hyr7kypt72d7zqz0mpw3ezjt3f5glm8fv24lxr84l05kv3rczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpulg3407</id>
    
      <title type="html">📅 Original date posted:2020-08-16 📝 Original message:A ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs08g3hyr7kypt72d7zqz0mpw3ezjt3f5glm8fv24lxr84l05kv3rczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpulg3407" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs946zj8qkknztk8ycrghqae496g2s8vgqn6n4a8v08xxyureetw3q3t5q2m&#39;&gt;nevent1q…5q2m&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2020-08-16&lt;br/&gt;📝 Original message:A requirement to ignore unknown (invalid) messages is not only a protocol breaking change but poor protocol design. The purpose of version negotiation is to determine the set of valid messages. Changes to version negotiation itself are very problematic.&lt;br/&gt;&lt;br/&gt;The only limitation presented by versioning is that the system is sequential. As such, clients that do not wish to implement (or operators who do not wish to enable) them are faced with a problem when wanting to support later features. This is resolvable by making such features optional at the new protocol level. This allows each client to limit its communication to the negotiated protocol, and allows ignoring of known but unsupported/disabled features.&lt;br/&gt;&lt;br/&gt;Sorry I missed your earlier post. Been distracted for a while.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On Aug 14, 2020, at 12:28, Suhas Daftuar via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ﻿&lt;br/&gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Back in February I posted a proposal for WTXID-based transaction relay[1] (now known as BIP 339), which included a proposal for feature negotiation to take place prior to the VERACK message being received by each side.  In my email to this list, I had asked for feedback as to whether that proposal was problematic, and didn&amp;#39;t receive any responses.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Since then, the implementation of BIP 339 has been merged into Bitcoin Core, though it has not yet been released.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In thinking about the mechanism used there, I thought it would be helpful to codify in a BIP the idea that Bitcoin network clients should ignore unknown messages received before a VERACK.  A draft of my proposal is available here[2].&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I presume that software upgrading past protocol version 70016 was already planning to either implement BIP 339, or ignore the wtxidrelay message proposed in BIP 339 (if not, then this would create network split concerns in the future -- so I hope that someone would speak up if this were a problem).  When we propose future protocol upgrades that would benefit from feature negotiation at the time of connection, I think it would be nice to be able to use the same method as proposed in BIP 339, without even needing to bump the protocol version.  So having an understanding that this is the standard of how other network clients operate would be helpful.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If, on the other hand, this is problematic for some reason, I look forward to hearing that as well, so that we can be careful about how we deploy future p2p changes to avoid disruption.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt; Suhas Daftuar&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2020-February/017648.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2020-February/017648.html&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [2] &lt;a href=&#34;https://github.com/sdaftuar/bips/blob/2020-08-generalized-feature-negotiation/bip-p2p-feature-negotiation.mediawiki&#34;&gt;https://github.com/sdaftuar/bips/blob/2020-08-generalized-feature-negotiation/bip-p2p-feature-negotiation.mediawiki&lt;/a&gt;&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&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;-------------- 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/20200816/1813852d/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20200816/1813852d/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:26:23&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsw9jwtmhq27jwk63zplk6z5v79w8395xn9hk6mlptnulh5wf7mgtqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucvq0e9</id>
    
      <title type="html">📅 Original date posted:2019-07-17 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsw9jwtmhq27jwk63zplk6z5v79w8395xn9hk6mlptnulh5wf7mgtqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucvq0e9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsphyvqure6dd88274c24xsn02tjgvd8rmmu6rvus2mnez82mqvdmglp82rh&#39;&gt;nevent1q…82rh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-17&lt;br/&gt;📝 Original message:&amp;gt; On Jul 17, 2019, at 03:10, Kenshiro [] via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi ZmnSCPxj,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I&amp;#39;m based on the more evolved implementation of PoS that I know, which is PoS v3.0 and it&amp;#39;s currently implemented in several coins:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;a href=&#34;http://earlz.net/view/2017/07/27/1904/the-missing-explanation-of-proof-of-stake-version&#34;&gt;http://earlz.net/view/2017/07/27/1904/the-missing-explanation-of-proof-of-stake-version&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; As far as I know the grinding attack is and old issue that is fixed in PoS v3.0.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;At least the proposed `assumeutxo` requires the operator to explicitly enable it, but I believe your &amp;#34;hardcoded checkpoints&amp;#34; cannot be disabled, much less disabled-by-default.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; We don&amp;#39;t trust the developers, the source code is public and anyone can check it. With the hardcoded checkpoints is exactly the same, they are in the source code repository and everyone can check them. The checkpoints are the easiest part to check. A user doesn&amp;#39;t have any reason to remove the checkpoints, but as with anything in the source code, they could modify it to avoid the checkpoints (and become vulnerable to Long Range attacks doing it)&lt;br/&gt;&lt;br/&gt;Bad precedent set by Bitcoin, just like retroactively hardcoding soft fork activation checkpoints.&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;Under the trust-minimization requirement of Bitcoin this is simply not acceptable.&lt;br/&gt;&amp;gt; As there is no way to trust-minimally heal from a network split (and every time a node is shut down, that is indistinguishable from a network split that isolates that particular node), this is not a trust-minimizing consensus algorithm.&lt;br/&gt;&lt;br/&gt;That’s nonsense, one is a feature (systemic trust), the other is a bug (code accident). But there is a way to minimize actual forks - try not to change the consensus rules in the code you ship.&lt;br/&gt;&lt;br/&gt;&amp;gt; The block explorer or other additional source of trust like a friend would only be required in the extreme situation that the network is under a 51% attack, and only by the nodes that are updating blocks in that moment. Updated nodes are fully protected, and under normal circumstances new nodes can just follow the longest chain as always. The other extreme situation that could cause a hard fork is that the network is splitted more than N blocks, which should require some social consensus to fix it. So N should be long enough, like a few hours of blocks or even 1 day.&lt;br/&gt;&lt;br/&gt;Consensus rules are the social consensus. If you have an objective way to do this, write the rule.&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; History rewrites are not the only attack possible.&lt;br/&gt;&amp;gt; The worst attack is a censorship attack, and a 99% staker can easily censor on the creation of new blocks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I don&amp;#39;t agree, history rewrite attacks are much worse than censorship because they can be used to steal funds from people.&lt;br/&gt;&lt;br/&gt;Censorship can steal everybody’s money.&lt;br/&gt;&lt;br/&gt;&amp;gt; In PoS staking addresses are public, so maybe it should be possible to detect if some transaction in the mempool is repeatedly being ignored and what staking deposit is repeatedly ignoring transactions. After some time, a hard fork could burn the funds of the evil validator.&lt;br/&gt;&lt;br/&gt;Political money.&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt; Worse, under proof-of-stake it is often the case that stakers are awarded even more coin with which they can stake.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Sure, but in PoW the miners with more hash power earn more coins that can be used to purchase more miners.&lt;br/&gt;&lt;br/&gt;True, but this is at least limited proportionally.&lt;br/&gt;&lt;br/&gt;&amp;gt; There is always the privilege of the rich guy, no matter if its PoW or PoS. The point is to design a protocol that don&amp;#39;t allow the rich to destroy the network.&lt;br/&gt;&lt;br/&gt;The ability to introduce new power to the chain is the only way to evict a censor. In PoS a well capitalized individual or state can buy total control over the system forever at no ongoing cost. PoW allows any number of individuals to pay higher fees on censored txs and evict the censor, who must then maintain the cost of subsidizing censorship.&lt;br/&gt;&lt;br/&gt;&amp;gt; Let me put it in this way: NXT is a PoS coin that uses moving checkpoints with a market cap of 21 million dollars. If the current PoS protocols are so flawed, how can you explain that a coin with this market cap is not being attacked?&lt;br/&gt;&lt;br/&gt;The state doesn’t care because there is no material impact from it? It hasn’t started attacking Bitcoin yet either.&lt;br/&gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://www.coingecko.com/en/coins/nxt&#34;&gt;https://www.coingecko.com/en/coins/nxt&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Another thing is that Ethereum itself is going to PoS next year, but with a different implementation that I&amp;#39;m proposing here.&lt;br/&gt;&lt;br/&gt;Just another nail in the coffin.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; From: ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt;&lt;br/&gt;&amp;gt; Sent: Wednesday, July 17, 2019 1:00&lt;br/&gt;&amp;gt; To: Kenshiro \[\]; Bitcoin Protocol Discussion&lt;br/&gt;&amp;gt; Subject: Re: [bitcoin-dev] Secure Proof Of Stake implementation on Bitcoin&lt;br/&gt;&amp;gt;  &lt;br/&gt;&amp;gt; Good morning Kenshiro,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Sent with ProtonMail Secure Email.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐&lt;br/&gt;&amp;gt; On Tuesday, July 16, 2019 8:33 PM, Kenshiro \[\] via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; Hi,&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; After studying several Proof of Stake implementations I think it&amp;#39;s not only an eco-friendly (and more ethical) alternative to Proof of Work, but correctly implemented could be 100% secure against all 51% history rewrite attacks. Over a &amp;#34;standard&amp;#34; PoS protocol like PoS v3.0, only 2 extra improvements are required:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Under the trust-minimization and uncensorability requirements that Bitcoin has, nothing is more efficient than proof-of-work.&lt;br/&gt;&amp;gt; The very idea of proof-of-stake labors under the assumption that unencumbered free-market payment for the consumption of energy is somehow not market-efficient despite the well-known phenomenon of the invisible hand, and believes that it is possible to get something for nothing.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Please re-examine your assumptions.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; - Hardcoded checkpoints:each Bitcoin Core release (each few months) should include a hardcoded checkpoint with the hash of the current block height in that moment. This simple measure protects the blockchain up to the last checkpoint, and prevents any Long-Range attack.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; While this is a developer list and made up of developers who would be quite incentivized to agree to such a setup, note that this effectively trusts the developers.&lt;br/&gt;&amp;gt; At least the proposed `assumeutxo` requires the operator to explicitly enable it, but I believe your &amp;#34;hardcoded checkpoints&amp;#34; cannot be disabled, much less disabled-by-default.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; This extra rule could be connecting to a block explorer to download the hash of the current block height, or ask some trusted source like a friend and enter the hash manually. After being fully updated, the user can always check that he is in the correct chain checking with a block explorer.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Under the trust-minimization requirement of Bitcoin this is simply not acceptable.&lt;br/&gt;&amp;gt; As there is no way to trust-minimally heal from a network split (and every time a node is shut down, that is indistinguishable from a network split that isolates that particular node), this is not a trust-minimizing consensus algorithm.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Someone could have 99% of the coins and still would be unable to use the coins to do any history rewrite attack. The attacker could only slow down the network not creating his blocks, or censor transactions in his blocks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; History rewrites are not the only attack possible.&lt;br/&gt;&amp;gt; The worst attack is a censorship attack, and a 99% staker can easily censor on the creation of new blocks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Censorship attacks cannot be prevented except by ensuring that no single entity can claim 51% control of new block creation.&lt;br/&gt;&amp;gt; By ensuring this, we can ensure that at least some other entities are unlikely to keep a transaction out of the blockchain, and in particular that no entity can make a short-ranged history rewrite if a censored transaction *does* get into the blockchain from the efforts of another block producer.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is trivial under proof-of-work, and is the cost we accept in order to achieve uncensorability, since it is non-trivial to acquire energy.&lt;br/&gt;&amp;gt; Under proof-of-stake it is difficult to impossible to determine if some single entity controls &amp;gt;51% of stakeable coins, and thus has no way to protect against censorship attack.&lt;br/&gt;&amp;gt; Worse, under proof-of-stake it is often the case that stakers are awarded even more coin with which they can stake.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Depending on the PoS implementation, stake-grinding may allow a 49% staker to achieve 51% and thereby the ability to censor transactions.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj&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&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;-------------- 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/20190717/8c177d01/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20190717/8c177d01/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:19:20&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsz55x6n05j27n5630pugxcsrlus093wl6swz5dxy0egklsls2j69gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputrca2m</id>
    
      <title type="html">📅 Original date posted:2019-07-05 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsz55x6n05j27n5630pugxcsrlus093wl6swz5dxy0egklsls2j69gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputrca2m" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2ejyc3pse3dtclu9ajn23e3jf6nc4elnjl2lyc09c4u78dxwtv5ghh6s27&#39;&gt;nevent1q…6s27&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-05&lt;br/&gt;📝 Original message:&amp;gt; On Jul 5, 2019, at 17:17, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; But it’s worth noting that early recovery of the UTXO entirely eliminates the value of the time lock cost to the ad market. The most obvious example is one encumbering the coin to himself, then releasing it with his own two signatures whenever he wants. In other words, there is no encumbrance at all, just a bunch of pointless obscurantion.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You still do not understand.&lt;br/&gt;&amp;gt; I strongly suggest actually reading the post instead of skimming it.&lt;br/&gt;&lt;br/&gt;I am responding to the cryptoeconomic principles, not the implementation details. Based on your comments here I am not misrepresenting those principles.&lt;br/&gt;&lt;br/&gt;For example, I have shown that the multisig unlock implementation reduces the presumably-encumbered UTXO to simply a UTXO. You have not disputed that. In fact below you have accepted it (more below).&lt;br/&gt;&lt;br/&gt;&amp;gt; The advertisement is broadcast to new nodes on the ad network if and only if its backing UTXO remains unspent.&lt;br/&gt;&amp;gt; Once the UTXO is spent, then the advertisement is considered no longer valid and will be outright deleted by existing nodes, and new nodes will not learn of them (and would consider it spam if it is forced to them when the UTXO is already spent, possibly banning the node that pushes the advertisement at them).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus the locked-ness of the UTXO is the lifetime of the advertisement.&lt;br/&gt;&lt;br/&gt;The term “locked” here is misused. A unspent output that can be spent at any time is just an unspent output. The fact that you can “unencumber” your own coins should make this exceedingly obvious:&lt;br/&gt;&lt;br/&gt;&amp;gt; Once you disencumber the coins (whether your own, or rented) then your advertisement is gone; forever.&lt;br/&gt;&lt;br/&gt;As I have shown, there is no *actual* encumbrance.&lt;br/&gt;&lt;br/&gt;&amp;gt; Your advertisement exists only as long as the UTXO is unspent.&lt;br/&gt;&lt;br/&gt;Exactly, which implies *any* UTXO is sufficient. All that the ad network requires is proof of ownership of any UTXO.&lt;br/&gt;&lt;br/&gt;Unspentness is not actually a necessary cost (expense). All coin is always represented as UTXOs. If one has a hoard of coin there is no necessary incremental cost of identifying those coins to “back” ads.This isn’t altered by the proposed design.&lt;br/&gt;&lt;br/&gt;The only cost would be to have a hoard that one does not otherwise desire, representing an opportunity cost. Yet, as I have also pointed out, the amount of that opportunity cost can simply be spent (or burned) by the advertiser, representing the same cost. So covering the case where one cannot raise the capital to “back” one’s ad does not require rental, as the cost of the otherwise rental can just be spent outright.&lt;br/&gt;&lt;br/&gt;Presumably it would be ideal to transfer the value of those spends to people who provably present the ads for effective viewing (i.e., the AdWords business model). It is of course this market-driven cost of presenting an ad that provides the spam protection/definition for AdWords.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; Regards.&lt;br/&gt;&amp;gt; ZmnSCPxj
    </content>
    <updated>2023-06-07T20:19:11&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs8880yxwa5k9qg384qp9shf53jk4x2kps8x6vhadny95p3rm0zrugzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpua0ezpk</id>
    
      <title type="html">📅 Original date posted:2019-07-05 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs8880yxwa5k9qg384qp9shf53jk4x2kps8x6vhadny95p3rm0zrugzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpua0ezpk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsy39zzqmjvxdwsptd53nzjj8vplalyh0unrugh47aw5czy684tl2gq0s36j&#39;&gt;nevent1q…s36j&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-05&lt;br/&gt;📝 Original message:&amp;gt; On Jul 5, 2019, at 16:16, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Sent with ProtonMail Secure Email.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐&lt;br/&gt;&amp;gt; On Saturday, July 6, 2019 3:27 AM, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jul 4, 2019, at 21:05, ZmnSCPxj ZmnSCPxj at protonmail.com wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; As with Bitcoin mining, it is the consumed cost that matters in this scenario, (i.e., not the hash rate, or in this case the encumbered coin face value). Why would the advertiser not simply be required to burn .1 coin for the same privilege, just as miners burn energy? Why would it not make more sense to spend that coin in support of the secondary network (e.g. paying for confirmation security), just as with the burning of energy in Bitcoin mining?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Good morning ZmnSCPxj,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Using the unspentness-time of a UTXO allows for someone advertising a service or producer to &amp;#34;close up shop&amp;#34; by simply spending the advertising UTXO.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; For instance, if the advertisement is for sale of a limited stock of goods, once the stock has been sold, the merchant (assuming the merchant used own funds) can simply recover the locked funds, with the potential to reinvest them elsewhere.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; This allows some time-based hedging for the merchant (they may be willing to wait indefinitely for the stock to be sold, but once the stock is sold, they can immediately reap the rewards of not having their funds locked anymore).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This is a materially different concept than proposed by Tamas.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; “...he gives up his control of the coins until maturity, he can not use them elsewhere until then.”&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Possibly.&lt;br/&gt;&amp;gt; In a way, this is giving up control of the coin, until he no longer needs the advertisement, i.e. dynamically select the maturity age needed.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Similarly, an entity renting out a UTXO for an advertisement might allow for early reclamation of the UTXO in exchange for partial refund of fee; as the value in the UTXO is now freed to be spent elsewhere, the lessor can lease it to another advertiser.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; You appear to be proposing a design whereby either the owner or the renter (not entirely clear to me which) can spend the “locked up” coin at any time (no maturity constraint), by dropping the covenant.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If the renter can do this he can simply steal the coin from the owner.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If the owner can do this there is no value to the renter (or as a proof of cost), as the owner retains full control of the coin.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Obviously this will require a 2-of-2 multisig, with an timelocked transaction that lets the owner recover at a futuredate, so that it is the agreement of *both* that is needed to perform any actions before the timelock.&lt;br/&gt;&amp;gt; I already described this in the link I provided.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; If you mean that the age of the encumbrance is the proof of cost, this requires no covenant. I don’t believe this is what you intended, just covering all bases.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Not age of encumbrance, quite.&lt;br/&gt;&amp;gt; Instead, it is the simple fact that the UTXO is a UTXO (and not yet spent), that validates the advertisement.&lt;br/&gt;&lt;br/&gt;Not any UTXO then, one that with sufficient time-locked coin.&lt;br/&gt;&lt;br/&gt;&amp;gt; No, it does not *require* a covenant.&lt;br/&gt;&amp;gt; However, covenants do make it easier to use, in the sense that the renter can repurpose the UTXO (e.g. change details of advertisement) without having to contact the owner.&lt;br/&gt;&lt;br/&gt;So how does one get the owner to sign off on the multisig release? Presumably the renter cares because he wants to recover the remaining value of rental. So he not only needs to contact the owner, he also needs to negotiate with the owner for a pro-rated refund. In other words, he must sell the remaining portion of the rental return - essentially how I described it previously. He might as well just sell the marketable ad space that he controls through the remainder of the term (the same value).&lt;br/&gt;&lt;br/&gt;Certainly the owner could given him a partially-signed transaction, returning the coin, allowing the renter to exit at any time, but the renter has no reason to sign it without a refund, which must be pro-rated in some way, implying later contact/negotiation with the owner.&lt;br/&gt;&lt;br/&gt;But it’s worth noting that early recovery of the UTXO entirely eliminates the value of the time lock cost to the ad market. The most obvious example is one encumbering the coin to himself, then releasing it with his own two signatures whenever he wants. In other words, there is no encumbrance at all, just a bunch of pointless obscurantion.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Burnt funds cannot be &amp;#34;un-burnt&amp;#34; to easily signal the end of a term for an advertisement.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; And as I have shown above, nor can a “locked-up” coin be unlocked to do the same.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You have shown no such thing, merely shown that you have not understood the proposal.&lt;br/&gt;&lt;br/&gt;I think I understand the implications of it clearly. Feel free to point out what I’m missing. But I don’t spend any time in implementation details until I can justify those implications.&lt;br/&gt;&lt;br/&gt;A multisig doesn’t fix the central economic issue, which it is not clear that you understand. If so it hasn’t been demonstrated. A cost created by making coin unusable for a term is not an actual cost if that lock can be released at any time before maturity of that term. Furthermore, cost is most easily demonstrated by simply spending. &lt;br/&gt;&lt;br/&gt;By analogy, proof of work is simply proof of a spend (incurred cost). Imagine if one demonstrated that cost by “locking up” coin for a year, and then after the block was accepted, he unlocked that coin after just one day.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj
    </content>
    <updated>2023-06-07T20:19:10&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfhvcjhd8j2ht0kq42978qk6823uf3xp2kzjcrw8ldj5jg7h77ltczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuv80uj7</id>
    
      <title type="html">📅 Original date posted:2019-07-05 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfhvcjhd8j2ht0kq42978qk6823uf3xp2kzjcrw8ldj5jg7h77ltczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuv80uj7" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspa5d3ea32q2scdfctrg3777nzx7hr5e3auwev4hlph8rq97qudcqjt2ar0&#39;&gt;nevent1q…2ar0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-05&lt;br/&gt;📝 Original message:&amp;gt; On Jul 4, 2019, at 21:05, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; As with Bitcoin mining, it is the consumed cost that matters in this scenario, (i.e., not the hash rate, or in this case the encumbered coin face value). Why would the advertiser not simply be required to burn .1 coin for the same privilege, just as miners burn energy? Why would it not make more sense to spend that coin in support of the secondary network (e.g. paying for confirmation security), just as with the burning of energy in Bitcoin mining?&lt;br/&gt;&lt;br/&gt;Good morning ZmnSCPxj,&lt;br/&gt;&lt;br/&gt;&amp;gt; Using the unspentness-time of a UTXO allows for someone advertising a service or producer to &amp;#34;close up shop&amp;#34; by simply spending the advertising UTXO.&lt;br/&gt;&amp;gt; For instance, if the advertisement is for sale of a limited stock of goods, once the stock has been sold, the merchant (assuming the merchant used own funds) can simply recover the locked funds, with the potential to reinvest them elsewhere.&lt;br/&gt;&amp;gt; This allows some time-based hedging for the merchant (they may be willing to wait indefinitely for the stock to be sold, but once the stock is sold, they can immediately reap the rewards of not having their funds locked anymore).&lt;br/&gt;&lt;br/&gt;This is a materially different concept than proposed by Tamas.&lt;br/&gt;&lt;br/&gt;“...he gives up his control of the coins until maturity, he can not use them elsewhere until then.”&lt;br/&gt;&lt;br/&gt;&amp;gt; Similarly, an entity renting out a UTXO for an advertisement might allow for early reclamation of the UTXO in exchange for partial refund of fee; as the value in the UTXO is now freed to be spent elsewhere, the lessor can lease it to another advertiser.&lt;br/&gt;&lt;br/&gt;You appear to be proposing a design whereby either the owner or the renter (not entirely clear to me which) can spend the “locked up” coin at any time (no maturity constraint), by dropping the covenant.&lt;br/&gt;&lt;br/&gt;If the renter can do this he can simply steal the coin from the owner.&lt;br/&gt;&lt;br/&gt;If the owner can do this there is no value to the renter (or as a proof of cost), as the owner retains full control of the coin.&lt;br/&gt;&lt;br/&gt;If you mean that the age of the encumbrance is the proof of cost, this requires no covenant. I don’t believe this is what you intended, just covering all bases.&lt;br/&gt;&lt;br/&gt;&amp;gt; Burnt funds cannot be &amp;#34;un-burnt&amp;#34; to easily signal the end of a term for an advertisement.&lt;br/&gt;&lt;br/&gt;And as I have shown above, nor can a “locked-up” coin be unlocked to do the same.&lt;br/&gt;&lt;br/&gt;&amp;gt; Similarly for miner fees.&lt;br/&gt;&lt;br/&gt;Well that’s the point, money spent is no longer under one’s control. The provable cost of this surrender was your stated objective. Renting at a fractional cost of coin face value is a non-recoverable spend by the renter to the owner. Burning or spending the same amount in a way that is provably not to one’s self achieves the exact same result.&lt;br/&gt;&lt;br/&gt;&amp;gt; The best that can be done would be to have the nodes of the classified ads network automatically decay the spent value of older advertisements to let them be dropped from their advertisements pool.&lt;br/&gt;&lt;br/&gt;The advertiser can presumably trade control of as space on the ad network. It’s not clear to me why this is not simply an independent chain of limited ad space ownership. It might as well be namecoin.&lt;br/&gt;&lt;br/&gt;&amp;gt; Less importantly, burning currently has bad resource usage for practical applications.&lt;br/&gt;&amp;gt; Practical burning requires spending to a provably-unspendable P2PKH or P2SH or similar output.&lt;br/&gt;&amp;gt; This adds UTXO entries to the UTXO database that will never be removed.&lt;br/&gt;&lt;br/&gt;If an output is provably unspendable (burned) it is not a UTXO.&lt;br/&gt;&lt;br/&gt;It is worth noting that not all full node implementations require a store of UTXOs, this is an implementation detail. For example, libbitcoin uses a flag on each output to indicate its spentness on the strong branch. As such the store size is linear by height.&lt;br/&gt;&lt;br/&gt;&amp;gt; This will of course be remedied by compact UTXO representations later, but not today.&lt;br/&gt;&amp;gt; Similarly, it would be very nice to have non-0-amount `OP_RETURN` outputs, as `OP_RETURN` outputs are never stored in the UTXO database.&lt;br/&gt;&amp;gt; However, this will require a change in node relay policy, which again will take time to make possible, and would not be practical today.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus I think use of UTXO is better than burning or mining-fee-spending.&lt;br/&gt;&lt;br/&gt;I don’t believe you have shown this.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; Also, mostly trivia:&lt;br/&gt;&amp;gt; The use of UTXOs to advertise services is not original to me --- I found the LN channel gossip to be the inspiration for this.&lt;br/&gt;&amp;gt; Publicly-announced channels indicate the backing UTXO that funds the channel.&lt;br/&gt;&amp;gt; The purpose of publicly announcing the channels is to be able to provide the service, of forwarding across the Lightning Network; thus the public announcement serves as an advertisement for the service.&lt;br/&gt;&amp;gt; Channel closure immediately spends the UTXO, and also doubles to &amp;#34;revoke&amp;#34; the existing &amp;#34;advertisement&amp;#34;.&lt;br/&gt;&amp;gt; I found this ability to &amp;#34;revoke&amp;#34; the advertisement appealing, and thereby designed the Bitcoin Classified Ads Network around the UTXO spentness mechanism.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj
    </content>
    <updated>2023-06-07T20:19:09&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9tz5e5fr6ph8xe69ds7xznel324u00ch7z38p8rhh9kg8q0h37rqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupd58tm</id>
    
      <title type="html">📅 Original date posted:2019-07-04 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9tz5e5fr6ph8xe69ds7xznel324u00ch7z38p8rhh9kg8q0h37rqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpupd58tm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8cadsyq66ta6tcj70yg962mysvw85tgu8tfe3e5easvgt7e3nvggcn94a5&#39;&gt;nevent1q…94a5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-04&lt;br/&gt;📝 Original message:&amp;gt; On Jul 4, 2019, at 12:10, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; there are some other ways to impose cost on use without direct billing, e.g.:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Burn Bitcoins to use the service, as you mentioned. This could work and would benefit remaining Bitcoin owner, but is unsustainable.&lt;br/&gt;&lt;br/&gt;Burning is not an economic concern and cannot be prevented. As there are fewer coins, all things being equal, the cost of each increases, and thus fewer must be burned to achieve the same cost. So assuming sufficient divisibility (an existing Bitcoin assumption) it is sustainable. But as I demonstrated, it’s not necessary.&lt;br/&gt;&lt;br/&gt;&amp;gt; - Pay high fees in self dealing transactions. This could work and would benefit miner.&lt;br/&gt;&lt;br/&gt;This is essentially what I suggested, though presumably you mean Bitcoin fees not secondary network.&lt;br/&gt;&lt;br/&gt;&amp;gt; - Time lock own Bitcoins. This is forgoing control of an UTXO for a time period, which implies opportunity cost. This could be done with CLTV (OP_HODL). It damages the current owner but benefits no one. The problem is one might not have substantial UTXO to  imply high enough opportunity cost.&lt;br/&gt;&lt;br/&gt;Another reason why simply spending or burning them is preferential.&lt;br/&gt;&lt;br/&gt;&amp;gt; - Pay someone else to time lock. This is paying someone to lock an UTXO for a time span. Payment and time lock could be combined in the same transaction.&lt;br/&gt;&lt;br/&gt;This implies additional complexity with no benefit to anyone required by the scenario, which was my implication.&lt;br/&gt;&lt;br/&gt;&amp;gt; - Transferable borrowed Bitcoin.  This needs the covenant. This benefits those who consciously give up control for a time span. Its advantage is that since transferable it can be sold if no longer needed, thereby shortening the term of the original arrangement. It coul be re-rented for a shorter time period.&lt;br/&gt;&lt;br/&gt;The terms lend/borrow are misleading here, as I have previously shown. The coin is neither spendable nor consumable. This is why I have used the terms owner/renter. Yes, the renter can sell the remaining rental expense to another.&lt;br/&gt;&lt;br/&gt;Yes, the potential incremental value over the other scenarios is transferability of the output, but this accrues to both to the advertiser/renter and the owner (trade always benefits both parties trading). This transfer incurs a fee if on chain, and in the tracking scenario may easily overwhelm the effective benefit (fraction of the rental, no higher than dust, not yet expired), making it economically non-transferrable.&lt;br/&gt;&lt;br/&gt;In the advertising scenario this transfer can be achieved independent of Bitcoin, by simply changing the advertisement (e.g. publish a provably-superseding ad for the same output), avoiding the material on-chain fee. Recall that the value of the coin cannot be captured by the advertiser through transfer, just the tracking cost.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jul 4, 2019, at 18:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Hi ZmnSCPxj,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Generalizing a bit this appears to be the same with one exception. The amount of encumbered coin is relevant to an external observer. Of course the effective dust limit is the maximum necessary encumbrance otherwise.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; In the case of simple tracking, the market value of the coin is not relevant, all that is required is a valid output. Hence the devolution to 1 sat tracking. In your scenario the objective is to establish a meaningful cost for the output.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; A community of people using this as a sort of hashcash spam protection can raise the amount of encumbered coin (i.e. advertising threshold price) required in that context. The cost of this encumberance includes not only at least one tx fee but market cost of the coin rental.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; At a 1 year advertisement term, 10% APR capital cost, and threshold of 1 encumbered coin, the same is achieved by burning .1 coin. In other words the renter (advertiser) has actually paid to the coin owner .1 coin to rent 1 coin for one year.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; As with Bitcoin mining, it is the consumed cost that matters in this scenario, (i.e., not the hash rate, or in this case the encumbered coin face value). Why would the advertiser not simply be required to burn .1 coin for the same privilege, just as miners burn energy? Why would it not make more sense to spend that coin in support of the secondary network (e.g. paying for confirmation security), just as with the burning of energy in Bitcoin mining?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jul 3, 2019, at 23:57, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and thanks to you and ZmnSCPxj we now have two additional uses cases for UTXOs that are only temporarily accessible to their current owner.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Actually you have a single potentially-valid use case, the one I have presented. The others I have shown to be invalid (apart from scamming) and no additional information to demonstrate errors in my conclusions have been offered.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I presented another use case, that of the &amp;#34;Bitcoin Classified Ads Network&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Advertisements are &amp;#34;backed&amp;#34; by an unspent TXO.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; In order to limit their local resource consumption, nodes of this network will preferentially keep advertisements that are backed by higher UTXO values divided by advertisement size, and drop those with too low UTXO value divided by advertisement size.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thus, spammers will either need to rent larger UTXO values for their spam, paying for the higher rent involved, or fall back to pre-Bitcoin spamming methods.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thus I think I have presented a use-case that is viable for this and does not simply devolve to &amp;#34;just burn a 1-satoshi output&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I still do not quite support generalized covenants as the use-case is already possible on current Bitcoin (and given that with just a little more transaction introspection this enables Turing-completeness), but the basic concept of &amp;#34;renting a UTXO of substantial value&amp;#34; appears sound to me.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T20:19:08&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsp85a5qd83n756d9gh3644yucy40fmts0h3jrvejpgkyca9fsq9uqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu7l073l</id>
    
      <title type="html">📅 Original date posted:2019-07-04 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsp85a5qd83n756d9gh3644yucy40fmts0h3jrvejpgkyca9fsq9uqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu7l073l" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9tz5e5fr6ph8xe69ds7xznel324u00ch7z38p8rhh9kg8q0h37rqxaty4e&#39;&gt;nevent1q…ty4e&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-04&lt;br/&gt;📝 Original message:&amp;gt; On Jul 4, 2019, at 12:10, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; there are some other ways to impose cost on use without direct billing, e.g.:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Burn Bitcoins to use the service, as you mentioned. This could work and would benefit remaining Bitcoin owner, but is unsustainable.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Pay high fees in self dealing transactions. This could work and would benefit miner.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Time lock own Bitcoins. This is forgoing control of an UTXO for a time period, which implies opportunity cost. This could be done with CLTV (OP_HODL). It damages the current owner but benefits no one.&lt;br/&gt;&lt;br/&gt;I meant to point out that a voluntarily trade cannot represent “damage” to the person making it. The person chooses the action because it is preferred over alternatives (i.e. it is beneficial). Such choices are the only objective expression of preference, a fundamental principle of praxeology.&lt;br/&gt;&lt;br/&gt;&amp;gt; The problem is one might not have substantial UTXO to  imply high enough opportunity cost.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Pay someone else to time lock. This is paying someone to lock an UTXO for a time span. Payment and time lock could be combined in the same transaction.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Transferable borrowed Bitcoin.  This needs the covenant. This benefits those who consciously give up control for a time span. Its advantage is that since transferable it can be sold if no longer needed, thereby shortening the term of the original arrangement. It coul be re-rented for a shorter time period.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jul 4, 2019, at 18:43, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Hi ZmnSCPxj,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Generalizing a bit this appears to be the same with one exception. The amount of encumbered coin is relevant to an external observer. Of course the effective dust limit is the maximum necessary encumbrance otherwise.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; In the case of simple tracking, the market value of the coin is not relevant, all that is required is a valid output. Hence the devolution to 1 sat tracking. In your scenario the objective is to establish a meaningful cost for the output.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; A community of people using this as a sort of hashcash spam protection can raise the amount of encumbered coin (i.e. advertising threshold price) required in that context. The cost of this encumberance includes not only at least one tx fee but market cost of the coin rental.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; At a 1 year advertisement term, 10% APR capital cost, and threshold of 1 encumbered coin, the same is achieved by burning .1 coin. In other words the renter (advertiser) has actually paid to the coin owner .1 coin to rent 1 coin for one year.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; As with Bitcoin mining, it is the consumed cost that matters in this scenario, (i.e., not the hash rate, or in this case the encumbered coin face value). Why would the advertiser not simply be required to burn .1 coin for the same privilege, just as miners burn energy? Why would it not make more sense to spend that coin in support of the secondary network (e.g. paying for confirmation security), just as with the burning of energy in Bitcoin mining?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jul 3, 2019, at 23:57, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and thanks to you and ZmnSCPxj we now have two additional uses cases for UTXOs that are only temporarily accessible to their current owner.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Actually you have a single potentially-valid use case, the one I have presented. The others I have shown to be invalid (apart from scamming) and no additional information to demonstrate errors in my conclusions have been offered.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I presented another use case, that of the &amp;#34;Bitcoin Classified Ads Network&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Advertisements are &amp;#34;backed&amp;#34; by an unspent TXO.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; In order to limit their local resource consumption, nodes of this network will preferentially keep advertisements that are backed by higher UTXO values divided by advertisement size, and drop those with too low UTXO value divided by advertisement size.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thus, spammers will either need to rent larger UTXO values for their spam, paying for the higher rent involved, or fall back to pre-Bitcoin spamming methods.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thus I think I have presented a use-case that is viable for this and does not simply devolve to &amp;#34;just burn a 1-satoshi output&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I still do not quite support generalized covenants as the use-case is already possible on current Bitcoin (and given that with just a little more transaction introspection this enables Turing-completeness), but the basic concept of &amp;#34;renting a UTXO of substantial value&amp;#34; appears sound to me.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ZmnSCPxj&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T20:19:08&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9esdsgyjl0aet5ln9cr7wm5tv2yjenjffp3gz8u5c5yef5usqcgszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4rese6</id>
    
      <title type="html">📅 Original date posted:2019-07-04 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9esdsgyjl0aet5ln9cr7wm5tv2yjenjffp3gz8u5c5yef5usqcgszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4rese6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstwydzlq63ppuhxwcap52hazwqzvphzvqwzvapr9xcwytlphgkk9gyc5q8s&#39;&gt;nevent1q…5q8s&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-04&lt;br/&gt;📝 Original message:Hi ZmnSCPxj,&lt;br/&gt;&lt;br/&gt;Generalizing a bit this appears to be the same with one exception. The amount of encumbered coin is relevant to an external observer. Of course the effective dust limit is the maximum necessary encumbrance otherwise.&lt;br/&gt;&lt;br/&gt;In the case of simple tracking, the market value of the coin is not relevant, all that is required is a valid output. Hence the devolution to 1 sat tracking. In your scenario the objective is to establish a meaningful cost for the output.&lt;br/&gt;&lt;br/&gt;A community of people using this as a sort of hashcash spam protection can raise the amount of encumbered coin (i.e. advertising threshold price) required in that context. The cost of this encumberance includes not only at least one tx fee but market cost of the coin rental.&lt;br/&gt;&lt;br/&gt;At a 1 year advertisement term, 10% APR capital cost, and threshold of 1 encumbered coin, the same is achieved by burning .1 coin. In other words the renter (advertiser) has actually paid to the coin owner .1 coin to rent 1 coin for one year.&lt;br/&gt;&lt;br/&gt;As with Bitcoin mining, it is the consumed cost that matters in this scenario, (i.e., not the hash rate, or in this case the encumbered coin face value). Why would the advertiser not simply be required to burn .1 coin for the same privilege, just as miners burn energy? Why would it not make more sense to spend that coin in support of the secondary network (e.g. paying for confirmation security), just as with the burning of energy in Bitcoin mining?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jul 3, 2019, at 23:57, ZmnSCPxj &amp;lt;ZmnSCPxj at protonmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Good morning Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and thanks to you and ZmnSCPxj we now have two additional uses cases for UTXOs that are only temporarily accessible to their current owner.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Actually you have a single potentially-valid use case, the one I have presented. The others I have shown to be invalid (apart from scamming) and no additional information to demonstrate errors in my conclusions have been offered.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I presented another use case, that of the &amp;#34;Bitcoin Classified Ads Network&amp;#34;.&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-July/017083.html&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Advertisements are &amp;#34;backed&amp;#34; by an unspent TXO.&lt;br/&gt;&amp;gt; In order to limit their local resource consumption, nodes of this network will preferentially keep advertisements that are backed by higher UTXO values divided by advertisement size, and drop those with too low UTXO value divided by advertisement size.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus, spammers will either need to rent larger UTXO values for their spam, paying for the higher rent involved, or fall back to pre-Bitcoin spamming methods.&lt;br/&gt;&amp;gt; Thus I think I have presented a use-case that is viable for this and does not simply devolve to &amp;#34;just burn a 1-satoshi output&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I still do not quite support generalized covenants as the use-case is already possible on current Bitcoin (and given that with just a little more transaction introspection this enables Turing-completeness), but the basic concept of &amp;#34;renting a UTXO of substantial value&amp;#34; appears sound to me.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj
    </content>
    <updated>2023-06-07T20:19:07&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs2kwznvsru925qmgd57cveeva3hsewgnuw7xwha9293ystsrlvf0szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujcctru</id>
    
      <title type="html">📅 Original date posted:2019-07-03 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs2kwznvsru925qmgd57cveeva3hsewgnuw7xwha9293ystsrlvf0szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujcctru" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsr86pdl22r8hraslgp6gsd9nl7a54vnf30s7zecg66dwundhmfajsmltv2g&#39;&gt;nevent1q…tv2g&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-03&lt;br/&gt;📝 Original message:&amp;gt; On Jul 2, 2019, at 00:08, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jul 1, 2019, at 20:52, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I said that I would make no further comment given the belief that no new ideas were surfacing. However, after giving it some more thought on my own, I believe I have found the one case in which a person could value such encumbered coins.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; In the case of tracking an asset that becomes worthless at a specific time, one could value a record of ownership, and the ability to trade ownership of the asset during the period. Consider colored coin type tracking of a theater ticket for a specific show, where the ticket is worthless by the end of the show.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In other words you now see the utility of a register offered by UTXOs that are only temporary availability to current owner. If there is a utility there is also a value in it for them.&lt;br/&gt;&lt;br/&gt;In other words I discovered a potentially-valid use case for you. The concern I expressed was that you had not presented one.&lt;br/&gt;&lt;br/&gt;&amp;gt; I am glad we are on the same side on this utility&lt;br/&gt;&lt;br/&gt;My goal is never to discourage, but understanding of provable behavior and utility. Our space is replete with unsupportable conjecture and hyperbole. There are no sides, just discovery of truth.&lt;br/&gt;&lt;br/&gt;&amp;gt; and thanks to you and ZmnSCPxj we now have two additional uses cases for UTXOs that are only temporarily accessible to their current owner.&lt;br/&gt;&lt;br/&gt;Actually you have a single potentially-valid use case, the one I have presented. The others I have shown to be invalid (apart from scamming) and no additional information to demonstrate errors in my conclusions have been offered.&lt;br/&gt;&lt;br/&gt;I’ve noticed that in subsequent posts you continue to imply that there is economic value in such tracking of any asset, and of course here imply the validity of your other use case, monetary lending. This, as I have shown, is not the case. Tracking of an asset of value beyond the net compound interest cost of dust is more cheaply accomplished by burning than by renting, and as I have shown, it is not accurate to claim that the encumbered coin can be used as money (or to track any asset of perpetual value). When the coin expires the money/asset holder becomes a bag holder, invalidating any initial value apart from scamming.&lt;br/&gt;&lt;br/&gt;In the valid use case that I have demonstrated (tracking of expiring assets), the marketable value of the rented coin is not the market price of that coin, but the price paid for it. So for example, 1 coin rented at 10% APR for one year is worth .1 coin. And when a renter resells this tracking coin it is worth the fraction of this amount for the time remaining. The coin itself (i.e. its face value) cannot be used by the renter to purchase anything.&lt;br/&gt;&lt;br/&gt;As such this is truly not a loan in the financial or economic sense. Given an actual loan the borrower can use the full value of the amount borrowed to purchase goods that can be used in production. Subsequent generation of products and thereby revenue is the source of yield on a loan (economically equivalent to dividend on an equity contract). This allows the borrower to repay the loan with interest. Without *any* usable capital over the term of the rental, there is no investment possible and the time value of the rented coin cannot be realized by the renter.&lt;br/&gt;&lt;br/&gt;So the one potentially-valid scenario, a fixed-term tracking rental, is entirely an *expense*, not a loan. A financial loan incurs an interest expense, but also implies the value of the amount loaned is fully usable (i.e., consumed or traded) during the term (the reason to pay interest). That is money over time, yielding the time value of money. In this case the value of the loan at any time to the renter is simply the amortized interest remaining. This implies that no income can be generated from the rental “principle” by the renter. A price is paid for the rental and that value of the rental is fully exhausted by the end of the term, with no other benefit than the tracking that was purchased.&lt;br/&gt;&lt;br/&gt;The person renting the fixed-term tracking coin (i.e. “owner”) can earn income by selling dust&#43;1 outputs at the cost of capital, limited to a maximum term dictated by the cost of capital and the dust limit (as shown previously). Economically speaking, all business returns gravitate toward the cost of capital, including lending, and this is no different. But it cannot be said that the owner is a financial lender. The owner is simply selling non-depreciating (from his perspective) fixed-term tracking space.&lt;br/&gt;&lt;br/&gt;The owner can of course trade rights to the controlling output. The rental contract has been prepaid (by your design, in order to shift counterparty risk). As such the traded contract has no yield and therefore contracting for its sale is a currency future, not an interest rate future as would be implied by a debt market. Yet FX speculation already exists for Bitcoin, requiring no covenant or rental market. This would seem to undermine any secondary market for these more complex and limited currency futures.&lt;br/&gt;&lt;br/&gt;Finally, valuation is based on the assumption of a non-zero dust&#43;1, which BTC enforces as a 0 satoshi dust limit (i.e. 0 sats is considered dust and is not valid). Anything above this is policy-enforced only. As such a miner can undercut the cost of tracking an individual asset down to 1 sat. Given that there is no financial incentive to a higher dust limit for a miner, but a positive financial incentive to undercut the rental price for the same return, this is economically rational and therefore must be assumed.&lt;br/&gt;&lt;br/&gt;One might argue that a lower dust policy would hurt BTC and therefore its miners collectively, creating an offsetting negative financial pressure. However given that the apparent cost is socialized in relation to individual benefit, this is not an economically rational conclusion. Furthermore, as the tracking outputs become unspendable due to the nature of the covenant, there is no actual dust accumulation (implementation dependent).&lt;br/&gt;&lt;br/&gt;As such the return on any fixed-term tracking output, given a 10% APR, would become as low as .1 sat per year, assuming such a market could continue to function at that level. But it is also the case that a 1 sat output can be burned directly by the tracker and used indefinitely. This would presumably undermine any robust market for fixed-term tracking rental.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; Since ZmnSCPxj also raised the question if covenants are needed at all, let me continue my thoughts on this in reply to his mail.&lt;br/&gt;&lt;br/&gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 13:26, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; My argument does not need the comparison with ICOs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; They were just an example that people pay for the utility of register even though others think the tokens they keep track of are worthless.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 22:13, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ICO tokens can be traded (indefinitely) for other things of value, so the comparison isn’t valid. I think we’ve both made our points clearly, so I’ll leave it at that.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Eric&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 12:55, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 20:54, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Could you please explain the meaning and utility of “unforgeable register” as it pertains to such encumbered coins?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I guess we agree that some way of keeping track of ownership is prerequisite for something to aquire value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; We likely also agree that the security of that ownership register has great influence to the value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The question remains if a register as utility in itself gives value to the thing needed to use that register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think it does, if people are interested in what it keeps track of, for whatever reason, even for reasons you find bogus.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It was not intentional, but I think I just explained why Ethereum aquired higher market value by being register of ICO tokens.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Now back to the coins encumbered with the debt covenant:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Transactions moving them constitute a register of covered debt and you need them to update that register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Should some people find such a register useful then those coins needed to update this register will aquire value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Does not matter if you think the concept of covered debt is just as bogus as ICOs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Here some good news: If they aquire value then they offer a way to generate income for hodler by temporarily giving up control.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The meaning in terms of Bitcoin is clear - the “owner” of outputs that represent value (i.e. in the ability to trade them for something else) is recorded publicly and, given Bitcoin security assumptions, cannot be faked. What is not clear is the utility of a record of outputs that cannot be traded for something else. You seem to imply that a record is valuable simply because it’s a record.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 11:35, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 19:41, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 03:56, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi Eric,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 29, 2019, at 23:21, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What loan? Alice has paid Bob for something of no possible utility to her, or anyone else.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Coins encumbered with the described covenant represent temporary control of a scarce resource.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Can this obtain value? That depends on the availability of final control and ability to deal with temporary control.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; For something to become property (and therefore have marketable value) requires that it be both scarce and useful. Bitcoin is useful only to the extent that it can be traded for something else that is useful. Above you are only dealing with scarcity, ignoring utility.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; There is a deeper utility of Bitcoin than it can be traded for something else. That utility is to use its unforgeable register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; We have only one kind of units in this register and by having covenants we would create other kinds that are while encumbered not fungible with the common ones.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Units are certainly less desirable if encumbered with a debt covenant. You say no one would assign them any value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I am not that sure as they still offer the utility of using the unforgeable register, in this case a register of debt covered by reserves.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; You also doubt forcing debt to be covered by reserves is a good idea, I got that, but suppose we do not discuss this here.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If there are people who think it is a good idea, then they would find having an unforgeable register of it useful and therefore units needed to maintain that register valuable to some extent.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think you do not show the neccesary respect of the market.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I’m not sure what is meant here by respect, or how much of it is necessary. I am merely explaining the market.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; You are not explaining an existing market but claim that market that is not yet there will follow your arguments.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Your rant reminds me of renowed economists who still argue final control Bitcoin can not have value, you do the same proclaiming that temporary control of Bitcoin can not have value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It seems to me you have reversed the meaning of temporary and final. Bitcoin is useful because of the presumption that there is no finality of control. One presumes an ability to trade control of it for something else. This is temporary control. Final control would be the case in which, at some point, it can no longer be traded, making it worthless at that point. If this is known to be the case it implies that it it worthless at all prior points as well.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; These are distinct scenarios. The fact that temporary (in my usage) control implies the possibility of value does not imply that finality of control does as well. The fact that (renowned or otherwise) people have made errors does not imply that I am making an error. These are both non-sequiturs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I say, that temporary control does not have value until means dealing with it are offered, and that is I work on. Thereafter might obtain value if final control is deemed too expensive or not attainable, we shall see.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The analogy to rental of a consumable good does not apply to the case of a non-consumable good. If it cannot be traded and cannot be consumed it cannot obtain marketable value. To this point it matters not whether it exists.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I meant with control the control of entries in the register which I think is the deeper utility of Bitcoin. Final control is meant to be the opposite of temporary which is the time limited control with some expiry.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thank you for your thoughts as they help to sharpen my arguments.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Eric&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T20:19:06&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsqaft2wcvf44ssv5ra5g06elrl3tmm97ldyxug7egh704j57ecf7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpur5j276</id>
    
      <title type="html">📅 Original date posted:2019-07-01 📝 Original message:It’s ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsqaft2wcvf44ssv5ra5g06elrl3tmm97ldyxug7egh704j57ecf7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpur5j276" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsre8jg4h64t09ksjmahzdgxvfgt60rz4ytuvdpv7slr4407jeuhucku8vr5&#39;&gt;nevent1q…8vr5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-07-01&lt;br/&gt;📝 Original message:It’s an exceedingly poor example. First, value is subjective. It matters not what other people may consider, only those who act. Given that people trade them (ICO tokens), they have value to those people. Second, the scenario would not function given that the value, as with money, is based on the ability to trade perpetually.&lt;br/&gt;&lt;br/&gt;I said that I would make no further comment given the belief that no new ideas were surfacing. However, after giving it some more thought on my own, I believe I have found the one case in which a person could value such encumbered coins.&lt;br/&gt;&lt;br/&gt;In the case of tracking an asset that becomes worthless at a specific time, one could value a record of ownership, and the ability to trade ownership of the asset during the period. Consider colored coin type tracking of a theater ticket for a specific show, where the ticket is worthless by the end of the show.&lt;br/&gt;&lt;br/&gt;Now consider the value attributable to renting coin (e.g. to the tick issuer) in order to track the ticket. First, there is no net value in renting coin to pay confirmation (mining) fees on transfers. The cost of a fee is driven by competition and remains the same whether the coin used for payment is encumbered or not. In other words, even with value in tracking there is no *cost advantage* to renting of such coins for use as money.&lt;br/&gt;&lt;br/&gt;But tracking an asset in this manner has required not only a fee for each trade, but also the burning of coin. By allowing the lender to recover the coin when the asset expires, this part of the cost of on-chain tracking can be time-shared (rented), and without depreciation of the coin.&lt;br/&gt;&lt;br/&gt;In this case the lender is achieving both a time-locked hoard/speculation and a pre-paid rental return. The return to the lender would be the rental price minus the opportunity cost of not investing (ie, in production) this coin otherwise during that period. This is of course based on the economic principle that both hoarding and speculation are expected to produce no predictable return. As such the cost of the rental would be driven (by competition) toward the cost of capital (e.g. annualized 10% of the coin price) for the same period. &lt;br/&gt;&lt;br/&gt;Depending on the term, rental will be cheaper than the outright cost of burning the same minimum amount of coin (i.e. dust&#43;1, assuming policy compliance) as required for tracking. As soon as the rental cost exceeds the minimum tracking burn, rental becomes more expensive than just purchasing the coin. So, for example, at 10% market return on capital (rental cost), purchasing the coin is cheaper than rental at any tracking term beyond 7.2 years.&lt;br/&gt;&lt;br/&gt;As discussed previously, there can be no monetary value of such encumbered coins. And as shown above, the non-monetary (tracking) scenario is limited to fixed-term tracking. This use of Bitcoin would of course reduce the average cost of non-monetary blockchain storage. I’m not sure that is a use people want to facilitate with a protocol change, but that’s for the community to decide.&lt;br/&gt;&lt;br/&gt;Best,&lt;br/&gt;Eric&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 30, 2019, at 13:26, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My argument does not need the comparison with ICOs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; They were just an example that people pay for the utility of register even though others think the tokens they keep track of are worthless.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 22:13, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; ICO tokens can be traded (indefinitely) for other things of value, so the comparison isn’t valid. I think we’ve both made our points clearly, so I’ll leave it at that.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt; Eric&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 12:55, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 20:54, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Could you please explain the meaning and utility of “unforgeable register” as it pertains to such encumbered coins?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I guess we agree that some way of keeping track of ownership is prerequisite for something to aquire value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; We likely also agree that the security of that ownership register has great influence to the value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The question remains if a register as utility in itself gives value to the thing needed to use that register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I think it does, if people are interested in what it keeps track of, for whatever reason, even for reasons you find bogus.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; It was not intentional, but I think I just explained why Ethereum aquired higher market value by being register of ICO tokens.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Now back to the coins encumbered with the debt covenant:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Transactions moving them constitute a register of covered debt and you need them to update that register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Should some people find such a register useful then those coins needed to update this register will aquire value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Does not matter if you think the concept of covered debt is just as bogus as ICOs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Here some good news: If they aquire value then they offer a way to generate income for hodler by temporarily giving up control.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The meaning in terms of Bitcoin is clear - the “owner” of outputs that represent value (i.e. in the ability to trade them for something else) is recorded publicly and, given Bitcoin security assumptions, cannot be faked. What is not clear is the utility of a record of outputs that cannot be traded for something else. You seem to imply that a record is valuable simply because it’s a record.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 11:35, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 19:41, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2019, at 03:56, Tamas Blummer &amp;lt;tamas.blummer at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi Eric,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 29, 2019, at 23:21, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What loan? Alice has paid Bob for something of no possible utility to her, or anyone else.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Coins encumbered with the described covenant represent temporary control of a scarce resource.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Can this obtain value? That depends on the availability of final control and ability to deal with temporary control.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; For something to become property (and therefore have marketable value) requires that it be both scarce and useful. Bitcoin is useful only to the extent that it can be traded for something else that is useful. Above you are only dealing with scarcity, ignoring utility.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; There is a deeper utility of Bitcoin than it can be traded for something else. That utility is to use its unforgeable register.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; We have only one kind of units in this register and by having covenants we would create other kinds that are while encumbered not fungible with the common ones.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Units are certainly less desirable if encumbered with a debt covenant. You say no one would assign them any value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I am not that sure as they still offer the utility of using the unforgeable register, in this case a register of debt covered by reserves.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; You also doubt forcing debt to be covered by reserves is a good idea, I got that, but suppose we do not discuss this here.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; If there are people who think it is a good idea, then they would find having an unforgeable register of it useful and therefore units needed to maintain that register valuable to some extent.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I think you do not show the neccesary respect of the market.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I’m not sure what is meant here by respect, or how much of it is necessary. I am merely explaining the market.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; You are not explaining an existing market but claim that market that is not yet there will follow your arguments.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Your rant reminds me of renowed economists who still argue final control Bitcoin can not have value, you do the same proclaiming that temporary control of Bitcoin can not have value.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It seems to me you have reversed the meaning of temporary and final. Bitcoin is useful because of the presumption that there is no finality of control. One presumes an ability to trade control of it for something else. This is temporary control. Final control would be the case in which, at some point, it can no longer be traded, making it worthless at that point. If this is known to be the case it implies that it it worthless at all prior points as well.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; These are distinct scenarios. The fact that temporary (in my usage) control implies the possibility of value does not imply that finality of control does as well. The fact that (renowned or otherwise) people have made errors does not imply that I am making an error. These are both non-sequiturs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I say, that temporary control does not have value until means dealing with it are offered, and that is I work on. Thereafter might obtain value if final control is deemed too expensive or not attainable, we shall see.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The analogy to rental of a consumable good does not apply to the case of a non-consumable good. If it cannot be traded and cannot be consumed it cannot obtain marketable value. To this point it matters not whether it exists.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I meant with control the control of entries in the register which I think is the deeper utility of Bitcoin. Final control is meant to be the opposite of temporary which is the time limited control with some expiry.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Thank you for your thoughts as they help to sharpen my arguments.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Eric&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T20:19:03&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs20dqq0ljhfcajk4mvn2e4swtxpse55auahva32e72ae6a3njyj9gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuqveywy</id>
    
      <title type="html">📅 Original date posted:2019-06-28 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs20dqq0ljhfcajk4mvn2e4swtxpse55auahva32e72ae6a3njyj9gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuqveywy" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyxjdhml4390sgqvrvseepw7ax6ry8ducgst9a6me9psvr6c8j7wsf4zqrh&#39;&gt;nevent1q…zqrh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-06-28&lt;br/&gt;📝 Original message:Hi Tamas,&lt;br/&gt;&lt;br/&gt;There are a number of economic assumptions contained herein. While I understand you would like to focus on implementation, the worst bugs are requirements bugs. IMO these should be addressed first. I’ve addressed some possible issues inline.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 28, 2019, at 01:27, Tamas Blummer via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I start with a formalisation of loans as common in finance:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A zero bond is a contract between two parties Alice and Bob whereby Alice receives an amount less than P and has to pay back P at a later time point called maturity.&lt;br/&gt;&amp;gt; The difference between the amount received and P is the interest implied by the contract. E.g. receiving 1 Bitcoin (&amp;lt;P) and agree to pay back 1.1 (=P) in a year is the same as getting a loan with 10% p.a. interest.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The inherent risk in the contract is that Alice may not honor the agreement or be bankrupt by then.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If we could programmatically guarantee that Alice honors the contract then we would be able to create a riskless zero bond, the fundation of financial engineering.&lt;br/&gt;&lt;br/&gt;I’m not aware of the basis of this statement. While people use the term “risk free rate of return” there has never actually been such a thing. It’s not clear to me how a unicorn has been the foundation of “financial engineering”, but I’m not also clear and what is intended by “engineering” in this sense. Generally engineering is the implementation of higher level concepts. It is those concepts that constitute requirements here.&lt;br/&gt;&lt;br/&gt;At a minimum, interest cannot be guaranteed by this proposal, which implies that at best it guarantees, setting aside changes in purchasing power, a return of principle minus economic interest on that principle (ie opportunity cost). Given that purchasing power changes over time, risk increases with the term of the loan. As such this is not riskless - both volatility and opportunity cost remain as risks.&lt;br/&gt;&lt;br/&gt;&amp;gt; A systemic problem with loans is that the lender might operate on fractional reserve, that is lending more than his capital.&lt;br/&gt;&lt;br/&gt;This is not a systemic problem, this is the very nature of lending. Fractional reserve is simply a state banking term used to describe the fact that people invest (lend) a fraction of their savings and hoard the rest. It matters not that banks or individuals do this, credit expansion is inherent in economy. Without it there is no investment and therefore no production whatsoever.&lt;br/&gt;&lt;br/&gt;&amp;gt; Unchecked inflation of money supply through fractional reserve is creating a mess in the world we live in. Bitcoin could overcome this mess implementing this proposal!&lt;br/&gt;&lt;br/&gt;You seem to be conflating state banking with the effects of investing. Taxpayer support for bank investment creates both a moral hazard (and the resulting misallocation of capital to state-favored projects, creating the famed economic “business cycle”) and is a manifestation of persistent monetary inflation (ie seigniorage is a source taxation. Investment implies credit expansion, and the level of this expansion is controlled by time preference alone.&lt;br/&gt;&lt;br/&gt;&amp;gt; I stop here with finance speak as the purpose of this mail is not to dive into finance, but to show how loans with full reserve check could be implemented in Bitcoin.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. Receiving the loan is a payment from Bob to Alice, but we need a restriction how Alice can use the funds, so Bob can get them back unconditionally at maturity, so lending is riskless to him.&lt;br/&gt;&amp;gt; 2. Bob wants to receive interest, since he gives up his control of the coins until maturity, he can not use them elsewhere until then. That interest could be paid in advance, this can be solved with Bitcoin as is.&lt;br/&gt;&lt;br/&gt;Interest cannot be paid in advance. This implies nothing more than a smaller amount of principle.&lt;br/&gt;&lt;br/&gt;&amp;gt; How do we allow Alice to use the coins, that is: split/merge and transfer them to others, but still ensure Bob can claim them back at maturity?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; We ensure that Alice can only send the coins to outputs that inherit a taproot path of validation (using &lt;a href=&#34;http://bitcoin.sipa.be/miniscript/&#34;&gt;http://bitcoin.sipa.be/miniscript/&lt;/a&gt;): &amp;#39;and(time(100),pk(C))&amp;#39; where C is Bob’s key and 100 is maturity&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This requires a generalization of the Bitcoin Covenants Idea[1] such that it nicely fits with taproot as follows:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. A covenant in the form of &amp;#39;_ covenant C’ on output means that it can be spent to an output that maches the covenant pattern with placeholder _  and the output(s) will be assigned &amp;#39;covenant C&amp;#39;.&lt;br/&gt;&amp;gt; 2. A covenant that mandates an output script with alternate validation paths can also assign alternate covernants to be inherited by the output(s) depending on which path was used to spend the input eg. &amp;#39;covenant or(c covenant C, d covernant D)’&lt;br/&gt;&amp;gt; 3. The resulting covenant of outputs should be reduced following boolean algebra, e.g. or(b,or(b,a)) to or(b, a)&lt;br/&gt;&amp;gt; 4. express transitivity with &amp;#39;covenant transitive’ which means the output will have the same covenant as the input&lt;br/&gt;&amp;gt; 5. allow to omit covenant on the output with &amp;#39;covenant drop&amp;#39;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The covenant Bob would assign to the loan output sent to Alice is: &amp;#39;covenant or(and(time(100),pk(Bob)) covenant drop, _ covenant transitive)&amp;#39; which means:&lt;br/&gt;&amp;gt; - Alice can send to an output script where she is free to chose the embedded script at the placeholder _ and that output will again have the same covenant as the input.&lt;br/&gt;&amp;gt; - After maturity Bob can claim any coin that is transitively rooted in the loan (more on this later) and the covenant will no longer be assigned to his new output(s).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Assuming Alice wants to send some of the borrowed coins to Charlie:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; for shorter notation lets use b=&amp;#39;and(time(100),pk(Bob)) covenant drop’ for the script that gives Bob control after maturity.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Alice can not send to pk(Charlie), but she can send to or(b, pk(Charlie) covenant transitive)&lt;br/&gt;&amp;gt; Sending to pk(Charlie) would be sending cash, sending to or(b, pk(Charlie) covenant transitive) is a promissory note issued by Alice to Charlie, here is why:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If Charlie accepts an or(b, pk(Charlie) covenant transitive) output then he trusts, that Alice will offer a regular payment in exchange for it before maturity, since that output is worthless to Charlie after maturity as Bob can just take it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It seems at the first sight that there is no value in these outputs for Charlie, since he still has to ensure Alice replaces them before maturity.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The value of these outputs to Charlie is the proof that he has exclusive control of the coins until maturity.&lt;br/&gt;&lt;br/&gt;At a minimum, money that predictably depreciates (to zero in this case) must be discounted accordingly. How much is money worth today that is worth zero tomorrow? This can be observed with both inflation and demurrage money. This also implies that each encumbered coin is not fungible with any other of a distinct discount schedule.&lt;br/&gt;&lt;br/&gt;What is the economic consequence of lending discounted money? Lower interest rates. How much lower? The rate of depreciation. This can also be observed with inflation and demurrage, but observation isn’t required. This is a necessary outcome.&lt;br/&gt;&lt;br/&gt;So when one lends 1 demurrage coin for a term one cannot earn interest on 1 coin, one is earning interest on a fraction of a coin. That fraction creates credit expansion and reduces return in direct proportion to the risk that has been offset. In other words, the risk cost has been converted to opportunity cost. The discounted fraction earns no interest.&lt;br/&gt;&lt;br/&gt;So credit expansion and risk remain, in the same proportions as without such a system. However lack of fungibility introduces an additional overhead cost.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; Alice can not issue promissory notes in excess of own capital or capital that she was able to borrow. No coin inflation or fractional reserve here, which also reduces the credit risk Charlie takes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Due to the transitive covenant Charlie could pass on the coins to an other temporary owner until maturity when Bob would re-collect them unconditionally.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Should Charlie no longer be comfortable with Alice’s promise or need final coins (cash) immediatelly, then he could turn to Dan and do a re-purchase (repo) agreement with him.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Charlie would receive final coins from Dan in exchange for the temporarily controled coins and Charlie&amp;#39;s promise to replace them with final coins before maturity.&lt;br/&gt;&amp;gt; Dan would thereby charge high interest through a discount since as he has to bear the credit risk of Charlie. This is not a riskless but a plain zero bond.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Why would Dan want to take temporary control of the coins at all? Again, to ensure Charlie is not doing yet another repo with Frank on the same coins, the sum of Charlie&amp;#39;s repo deals are not in excess of his claims against others.&lt;br/&gt;&amp;gt; This again avoids lending in excess of coin supply and reduces the credit risk Dan takes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Here are the sketches for the transacions for above alternate actions:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; lets use shortcut c for &amp;#39;or(and(time(100),pk(Bob)) covenant drop, _ covenant transitive)’&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; the transactions offer a fee of 0.0001&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Bob gives a riskless credit to Alice:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Input            Output&lt;br/&gt;&amp;gt; 1 pk(Bob)        1 or(b,pk(Alice) covenant c)&lt;br/&gt;&amp;gt; 0.1 pk(Alice)        0.9999 pk(Bob)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Alice could send a 0.5 promissory note to Charlie:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Input                    Output&lt;br/&gt;&amp;gt; 1 or(pk(Alice) covenant c)        0.5 or(b,pk(Charlie) covenant c)&lt;br/&gt;&amp;gt; 1 pk(Alice)                0.5 or(b,pk(Alice) covenant c)&lt;br/&gt;&amp;gt;                    0.9999 pk(Alice)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Alice could make good of the note before maturity, pay some interest and get back temporary control of the coins with:&lt;br/&gt;&amp;gt; Input                        Output&lt;br/&gt;&amp;gt; 0.5 or(b,pk(Charlie) covenant c)        0.5 or(b,pk(Alice) covenant c)&lt;br/&gt;&amp;gt; 0.5101 pk(Alice)                0.51 pk(Charlie)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; alternatively Charlie borrows from Dan at high interest:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Input                        Output&lt;br/&gt;&amp;gt; 0.5 or(b,pk(Charlie) covenant c)        0.5 or(b,pk(Dan) covenant c)&lt;br/&gt;&amp;gt; 0.3001 pk(Dan)                0.3 pk(Charlie)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; and Charlie re-purchases the temporary coins before maturity, making good of the repo with Dan:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Input                            Output&lt;br/&gt;&amp;gt; 0.5 or(b,pk(Dan) covenant c)            0.5 or(b,pk(Charlie) covenant c)&lt;br/&gt;&amp;gt; 0.5001 pk(Charlie)                    0.5 pk(Dan)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; We need to define further transaction level validations for transactions spending inputs with covenants as follows:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. If there are inputs without covenant before the input with covenant than inputs without covenant must be spent exactly with outputs preceeding the outputs with covenants.&lt;br/&gt;&amp;gt; 2. A transaction can have inputs with different covenants, their allocation to outputs should follow input order.&lt;br/&gt;&amp;gt; 3. For output(s) that share input(s) with covenant, the sum of covenant outputs must exactly add up to the input(s). This allows merging and splitting them.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Bob would re-collect his coins at maturity unconditionally. Who followed through promises or defaulted down the transitive chain is irrelevant to him.&lt;br/&gt;&amp;gt; Remark: we might also need a covenant attribute defining the minimum size of output, so Bob is not forced to collect dust, which would be expensive or even impossible. I am not yet happy with this solution, looking for better.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am very excited about the possibilities this proposal would unlock and ask you verify usefulness of this scheme and join working out the details and how covenants would be integrated with taproot.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Tamas Blummer&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [1] Malte Moser, Ittay Eyal, and Emin Gun Sirer. Bitcoin Covenants. URL: &lt;a href=&#34;http://fc16.ifca.ai/bitcoin/papers/MES16.pdf&#34;&gt;http://fc16.ifca.ai/bitcoin/papers/MES16.pdf&lt;/a&gt;&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&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;
    </content>
    <updated>2023-06-07T20:18:55&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfgh7fc26ffffvzx0kywh680q5mxkf48v7humz49jmpm7t4pqqcrgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpumaaxqe</id>
    
      <title type="html">📅 Original date posted:2018-09-03 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfgh7fc26ffffvzx0kywh680q5mxkf48v7humz49jmpm7t4pqqcrgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpumaaxqe" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxhfrsjlqurh0sd5ya2nv76vtj8keve7rc74x2s3ak2g26fr3fzgcvajjj8&#39;&gt;nevent1q…jjj8&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2018-09-03&lt;br/&gt;📝 Original message:Without commenting on the other merits of either proposal, the addition of the service flag resolves bip151’s previously-discussed lack of backward compatibility.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Sep 3, 2018, at 21:16, Jonas Schnelli via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; During work on the implementation of BIP151 [1] I figured out that the current&lt;br/&gt;&amp;gt; published proposal could be further optimized.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I wrote an overhauled BIP151 specification with some – partially radical –&lt;br/&gt;&amp;gt; changes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Now it’s unclear to me if this should be published under a new BIP nr. or if it&lt;br/&gt;&amp;gt; is acceptable to change the existing 151 proposal.&lt;br/&gt;&amp;gt; If a new BIP number would be required, I think withdrawing BIP151 should be&lt;br/&gt;&amp;gt; done (which somehow indicates we should alter 151).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The only BIP151 implementation I’m aware of is the one from Armory [2].&lt;br/&gt;&amp;gt; BCoins implementation has been removed [3].&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The new proposal draft is available here:&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://gist.github.com/jonasschnelli/c530ea8421b8d0e80c51486325587c52&#34;&gt;https://gist.github.com/jonasschnelli/c530ea8421b8d0e80c51486325587c52&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Major changes&lt;br/&gt;&amp;gt; =============&lt;br/&gt;&amp;gt; - the encryption handshake no longer requires the v1 protocol, it’s a pure&lt;br/&gt;&amp;gt;  32bytes-per-side „pseudorandom&amp;#34; key exchange that happens before anything else.&lt;br/&gt;&amp;gt; - the multi message envelope has been removed.&lt;br/&gt;&amp;gt; - a new NODE_ENCRYPTED service bit&lt;br/&gt;&amp;gt; - the key derivation and what communication direction uses what key is now more&lt;br/&gt;&amp;gt;  specific&lt;br/&gt;&amp;gt; - the length of a packet uses now a 3-byte integer with 23 available bits&lt;br/&gt;&amp;gt; - introduction of short-command-ID (ex.: uint8_t 13 == INV, etc.) which result in&lt;br/&gt;&amp;gt;  some v2 messages require less bandwidth then v1&lt;br/&gt;&amp;gt; - rekeying doesn’t require a message and can be signaled in the most&lt;br/&gt;&amp;gt;  significant bit in the packet-size field&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Points that are in discussion and may be added to the BIP (or to a new one):&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hybrid NewHope key exchange&lt;br/&gt;&amp;gt; ===========================&lt;br/&gt;&amp;gt; The current ECDH key exchange is vulnerable to Shor’s algorithm and is thus not&lt;br/&gt;&amp;gt; considered quantum-safe.&lt;br/&gt;&amp;gt; Following TORs approach [4] by adding a NewHope [5] key-exchange the handshake&lt;br/&gt;&amp;gt; protocol would very likely make the encryption PQ safe with little costs.&lt;br/&gt;&amp;gt; There is also a straight forward implementation [6] from the NewHope team that&lt;br/&gt;&amp;gt; has been submitted to NIST PQC project.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Inefficiency of ChaCha20Poly1305 at openssh&lt;br/&gt;&amp;gt; ========================================&lt;br/&gt;&amp;gt; The proposed AEAD could eventually be further optimized.&lt;br/&gt;&amp;gt; ChaCha20Poly1305 at openssh uses at least three rounds of ChaCha20 which&lt;br/&gt;&amp;gt; eventually can be reduced to two (messages below &amp;lt;=64 bytes [inv, ping,&lt;br/&gt;&amp;gt; pong,...] only require one round of ChaCha20, but two for the Poly1305 key and&lt;br/&gt;&amp;gt; the message length encryption where the Poly1305 key chacha round „throws away“&lt;br/&gt;&amp;gt; 32 bytes).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I would suggest that we don’t rehash discussions about the general&lt;br/&gt;&amp;gt; concept of encrypting the traffic. This has already been discussed [7][8].&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I hope we can limit this thread to discuss further ideas for optimisation as well as&lt;br/&gt;&amp;gt; technical details of the published proposal or its implementation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;https://github.com/bitcoin/bitcoin/pull/14032&#34;&gt;https://github.com/bitcoin/bitcoin/pull/14032&lt;/a&gt;&lt;br/&gt;&amp;gt; [2] &lt;a href=&#34;https://github.com/goatpig/BitcoinArmory/pull/510&#34;&gt;https://github.com/goatpig/BitcoinArmory/pull/510&lt;/a&gt;&lt;br/&gt;&amp;gt; [3] &lt;a href=&#34;https://github.com/bcoin-org/bcoin/commit/41af7acfd68b0492a6442865afd439300708e662&#34;&gt;https://github.com/bcoin-org/bcoin/commit/41af7acfd68b0492a6442865afd439300708e662&lt;/a&gt;&lt;br/&gt;&amp;gt; [4] &lt;a href=&#34;https://gitweb.torproject.org/user/isis/torspec.git/plain/proposals/XXX-newhope-hybrid-handshake.txt?h=draft/newhope&#34;&gt;https://gitweb.torproject.org/user/isis/torspec.git/plain/proposals/XXX-newhope-hybrid-handshake.txt?h=draft/newhope&lt;/a&gt;&lt;br/&gt;&amp;gt; [5] &lt;a href=&#34;https://eprint.iacr.org/2015/1092&#34;&gt;https://eprint.iacr.org/2015/1092&lt;/a&gt;&lt;br/&gt;&amp;gt; [6] &lt;a href=&#34;https://github.com/newhopecrypto/newhope&#34;&gt;https://github.com/newhopecrypto/newhope&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [7] &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-February/013565.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-February/013565.html&lt;/a&gt;&lt;br/&gt;&amp;gt; [8] &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2016-June/012826.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2016-June/012826.html&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thanks&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&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;
    </content>
    <updated>2023-06-07T20:14:32&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszyg0vk4kj9xdda4t2jgqzzsvxwgehwxlwcfle7lf95gcr8jt7pdczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6whvu8</id>
    
      <title type="html">📅 Original date posted:2018-02-18 📝 Original message:As a ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszyg0vk4kj9xdda4t2jgqzzsvxwgehwxlwcfle7lf95gcr8jt7pdczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6whvu8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0ryxt787qyhgxzssl5gzn2ltxcvfpfn3dm7k7whe6zxypw02m4ugxtuvpx&#39;&gt;nevent1q…uvpx&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2018-02-18&lt;br/&gt;📝 Original message:As a soft fork, all preceding rules remain in effect. No rule has been “replaced”. Blocks must validate against pre-segwit rules or are invalid. Additional rules are applied that further restrict validity, and consider additional (witness) data in the context of the block.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Feb 18, 2018, at 09:04, Ryan Havar via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; No, you are misunderstanding. The block size limit (1MB) has been replaced in favor of a block weight limit (4M weight). Bytes which must be sent to old clients are weighted at 4 units each which is what allows it to be a soft fork.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So as such, there&amp;#39;s not two separate limits or anything. &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; P.S. what&amp;#39;s up with your signature lol&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ​-Ryan&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ​&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -------- Original Message --------&lt;br/&gt;&amp;gt;&amp;gt; On February 18, 2018 11:26 AM, CANNON via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; -----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;&amp;gt;&amp;gt; Hash: SHA512&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I have a question in reference to the increased blockspace enabled&lt;br/&gt;&amp;gt;&amp;gt; by the segregated witness upgrade. Is this extra blockspace beyond&lt;br/&gt;&amp;gt;&amp;gt; the legacy 1 MB limit limited to just witness data?&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; Cannon&lt;br/&gt;&amp;gt;&amp;gt; PGP Fingerprint: 2BB5 15CD 66E7 4E28 45DC 6494 A5A2 2879 3F06 E832&lt;br/&gt;&amp;gt;&amp;gt; Email: cannon at cannon-ciota.info&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; NOTICE: ALL EMAIL CORRESPONDENCE NOT SIGNED/ENCRYPTED WITH PGP SHOULD&lt;br/&gt;&amp;gt;&amp;gt; BE CONSIDERED POTENTIALLY FORGED, AND NOT PRIVATE.&lt;br/&gt;&amp;gt;&amp;gt; -----BEGIN PGP SIGNATURE-----&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; iQIcBAEBCgAGBQJaiajLAAoJEAYDai9lH2mwDbMQAKgJseZG9oOoP9WJlESFdAzm&lt;br/&gt;&amp;gt;&amp;gt; jLM69KLF4RVWDQjMWCtyVayyolXMLavW6fL4GL7/ztLYSl9Pz&#43;FDlH3Qgo1GLDx4&lt;br/&gt;&amp;gt;&amp;gt; fRUkmb0ApLBSAjmdqM&#43;kWjgq3s6/oZaIkNxGeyK5SYY4QhF80Z42PWLBPKjAc7vn&lt;br/&gt;&amp;gt;&amp;gt; pe7Im13NwtyJiRuCmq4e1z6GmW86fFOKOsR4rlWcftHOFmH8Gz5d9KK9LbPqU6Ca&lt;br/&gt;&amp;gt;&amp;gt; &#43;rde8yb&#43;A9uXEv3O9MqeLId7FYSJixgzFGJosidVkAVQI7YZ0TAfG4HSwKjtqDz7&lt;br/&gt;&amp;gt;&amp;gt; SW2Bs3nDeiCr2QN7Su9TUaoSN/yKTBOw5jnql9cNOYuf4GAG0MXWinmYP8MWCiqh&lt;br/&gt;&amp;gt;&amp;gt; bIrzvOnlZGapX/36Fpab67VDcFnXJJc8ofqYmn&#43;oUoW/q7geQpu/V1oz&#43;AR9nD/d&lt;br/&gt;&amp;gt;&amp;gt; n8wFxvZdRlTbq2XDXySaontxNH0rd80fSG5SJtO5Js9hK/vNG&#43;Xa7Zc&#43;76gEtvlF&lt;br/&gt;&amp;gt;&amp;gt; 5G1F6MOcsoXUDCnMteuNxaZx6TPML6RuWVmbR1wXOaX4qZ01p7AsjQlTIcrlVDsB&lt;br/&gt;&amp;gt;&amp;gt; LVGW70wjfETBCffn1JQvFmIK7NzggIUuYfLF0IrfM4BrTa/01RnmfBOpWGiIvyIG&lt;br/&gt;&amp;gt;&amp;gt; qZqKLYDbW7BDkc/HMtAonR/0t6bTUv/388USSnbMakO9bvih0xxIw4NWTyoSoef/&lt;br/&gt;&amp;gt;&amp;gt; I&#43;W6ny7qXt&#43;pegLF4cYL&lt;br/&gt;&amp;gt;&amp;gt; =YqEM&lt;br/&gt;&amp;gt;&amp;gt; -----END PGP SIGNATURE-----&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; &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&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;
    </content>
    <updated>2023-06-07T20:10:54&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqst99nn08hzwgaggss9tzeff5m2zdpxwc5euzqsa8yd7pka2drqucczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpueudlq8</id>
    
      <title type="html">📅 Original date posted:2017-12-18 📝 Original message:How ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqst99nn08hzwgaggss9tzeff5m2zdpxwc5euzqsa8yd7pka2drqucczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpueudlq8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0h3xyw5gzpmsz5jjdv60yf7gm6pztx3wu74sa3h9fd3pzzuzlz8cgrx2wg&#39;&gt;nevent1q…x2wg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-12-18&lt;br/&gt;📝 Original message:How does one know what consensus has formed (around a UTXO set)?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Dec 18, 2017, at 16:27, Kalle Rosenbaum via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi Mark&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Yes, it seems like sign-to-contract protocols, which I just now briefly read about [1][2], may need to use historic witnesses. That raises the question, what are Bitcoin witnesses for?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To me it seems witnesses should be regarded as temporary. But it seems both respondents to this thread, Eric and Mark, mean that witnesses are forever. I regard witnesses as a way to authenticate updates to the UTXO set, and once buried deep enough in the blockchain, the witness is no longer needed, because consensus has formed around the UTXO set update.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Suppose a transaction with an invalid witness happens to enter the blockchain and gets buried 100000 blocks down with the witness still available. Is the blockchain above it valid? I&amp;#39;d say the blockchain is valid and that it was a bug that the transaction made it into the blockchain. We will have to live with such bugs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Another way to put it: Suppose that all witnesses from 2017 dissappears from all nodes in 2020. Is the blockchain still valid? I think so. I would continue using it without looking back.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; With that approach, I think sign-to-contract protocols has to find ways to work in a witnessless environment. For example, users of such protocols can setup their own archival nodes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I&amp;#39;d love to hear alternative views on this.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thanks,&lt;br/&gt;&amp;gt; /Kalle&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;https://download.wpsoftware.net/bitcoin/wizardry/mw-slides/2017-03-mit-bitcoin-expo/slides.pdf&#34;&gt;https://download.wpsoftware.net/bitcoin/wizardry/mw-slides/2017-03-mit-bitcoin-expo/slides.pdf&lt;/a&gt;&lt;br/&gt;&amp;gt; [2] &lt;a href=&#34;https://bitcointalk.org/index.php?topic=893898.msg9861102#msg9861102&#34;&gt;https://bitcointalk.org/index.php?topic=893898.msg9861102#msg9861102&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 2017-12-18 18:30 GMT&#43;01:00 Mark Friedenbach via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt; Sign-to-contract enables some interesting protocols, none of which are in wide use as far as I’m aware. But if they were (and arguably this is an area that should be more developed), then SPV nodes validating these protocols will need access to witness data. If a node is performing IBD with assumevalid set to true, and is also intending to prune history, then there’s no reason to fetch those witnesses as far as I’m aware. But it would be a great disservice to the network for nodes intending to serve SPV clients to prune this portion of the block history. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Dec 18, 2017, at 8:19 AM, Eric Voskuil via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; You can&amp;#39;t know (assume) a block is valid unless you have previously validated the block yourself. But in the case where you have, and then intend to rely on it in a future sync, there is no need for witness data for blocks you are not going to validate. So you can just not request it. &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; However you will not be able to provide those blocks to nodes that *are* validating; the client is pruned and therefore not a peer (cannot reciprocate). (An SPV client is similarly not a peer; it is a more deeply pruned client than the witnessless client.)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; There is no other reason that a node requires witness data. SPV clients don&amp;#39;t need it as it is neither require it to verify header commitment to transactions nor to extract payment addresses from them.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The harm to the network by pruning is that eventually it can become harder and even impossible for anyone to validate the chain. But because you are fully validating you individually remain secure, so there is no individual incentive working against this system harm.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Dec 18, 2017, at 08:35, Kalle Rosenbaum &amp;lt;kalle at rosenbaum.se&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 2017-12-18 13:43 GMT&#43;01:00 Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; On Dec 18, 2017, at 03:32, Kalle Rosenbaum via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Dear list,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; I find it hard to understand why a full node that does initial block&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; download also must download witnesses if they are going to skip verification anyway.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Why run a full node if you are not going to verify the chain?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I meant to say &amp;#34;I find it hard to understand why a full node that does initial block&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; download also must download witnesses when it is going to skip verification of the witnesses anyway.&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m referring to the &amp;#34;assumevalid&amp;#34; feature of Bitcoin Core that skips signature verification up to block X. Or have I misunderstood assumevalid?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; /Kalle&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;  &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; If my full node skips signature verification for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; blocks earlier than X, it seems the reasons for downloading the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; witnesses for those blocks are:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; * to be able to send witnesses to other nodes.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; * to verify the witness root hash of the blocks&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; I suppose that it&amp;#39;s important to verify the witness root hash because&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; a bad peer may send me invalid witnesses during initial block&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; download, and if I don&amp;#39;t verify that the witness root hash actually&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; commits to them, I will get banned by peers requesting the blocks from&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; me because I send them garbage.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; So both the reasons above (there may be more that I don&amp;#39;t know about)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; are actually the same reason: To be able to send witnesses to others&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; without getting banned.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; What if a node could chose not to download witnesses and thus chose to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; send only witnessless blocks to peers. Let&amp;#39;s call these nodes&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; witnessless nodes. Note that witnessless nodes are only witnessless&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; for blocks up to X. Everything after X is fully verified.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Witnessless nodes would be able to sync faster because it needs to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; download less data to calculate their UTXO set. They would therefore&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; more quickly be able to provide full service to SPV wallets and its&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; local wallets as well as serving blocks to other witnessless nodes&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; with same or higher assumevalid block. For witnessless nodes with&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; lower assumevalid they can serve at least some blocks. It could also&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; serve blocks to non-segwit nodes.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Do witnessless nodes risk dividing the network in two parts, one&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; witnessless and one with full nodes, with few connections between the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; parts?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; So basically, what are the reasons not to implement witnessless&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; nodes?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Thank you,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; /Kalle&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;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;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&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; &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&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;-------------- 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/20171218/f9f579ba/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171218/f9f579ba/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:08:49&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsq9e2qy6wckgzywzlmwmhdtdwuenftgc60a5h2xn2p3sgm84pvh6gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug059tk</id>
    
      <title type="html">📅 Original date posted:2017-11-11 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsq9e2qy6wckgzywzlmwmhdtdwuenftgc60a5h2xn2p3sgm84pvh6gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug059tk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq7r6uk47taxeglakylx7zrsanchu9k5zhy24fn44p9yh2gk79a5sn8watv&#39;&gt;nevent1q…watv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-11-11&lt;br/&gt;📝 Original message:&amp;gt; On Nov 6, 2017, at 20:38, Devrandom &amp;lt;c1.bitcoin at niftybox.net&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A hard-fork is a situation where non-upgraded nodes reject a block mined and relayed by upgraded nodes.&lt;br/&gt;&lt;br/&gt;As Peter pointed out, that is the case here.&lt;br/&gt;&lt;br/&gt;&amp;gt; This creates a fork that cannot heal regardless of what follows.&lt;br/&gt;&lt;br/&gt;That is not a condition of the hard fork concept.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://github.com/bitcoin/bips/blob/master/bip-0099.mediawiki&#34;&gt;https://github.com/bitcoin/bips/blob/master/bip-0099.mediawiki&lt;/a&gt;&lt;br/&gt;Softfork&lt;br/&gt;A consensus fork wherein everything that was previously invalid remains invalid while blocks that would have previously considered valid become invalid. A hashrate majority of miners can impose the new rules. They have some deployment advantages like backward compatibility.&lt;br/&gt;Hardfork&lt;br/&gt;A consensus fork that makes previously invalid blocks valid. Hardforks require all users to upgrade.&lt;br/&gt;&lt;br/&gt;The essential element of a hard fork is that the new rule may cause rejection of blocks that are not rejected by old rules (thereby requiring that all users adopt the new rule in order to avoid a split). The reason a hard fork is interesting is that it can create a chain split even if it is enforced by majority hash power.&lt;br/&gt;&lt;br/&gt;That is not the case with a soft fork and it is not the case here. A split can occur. The fact that it is possible for the split to also eventually orphan the old nodes does not make it a soft fork. A soft fork requires that a hash power majority can impose the rule. However, under the proposed new rule the hash power majority (according to the new rule) cannot impose the rule on existing nodes.&lt;br/&gt;&lt;br/&gt;&amp;gt; This proposal is not a hard-fork, because the non-upgraded node *will heal* if the attack has less than 1/2 of the original-POW power in the long term.&lt;br/&gt;&lt;br/&gt;Nothing about this proposal implies an attack. From the Motivation section:&lt;br/&gt;&lt;br/&gt;Mitigate centralization pressures by introducing a POW that does not have economies of scale&lt;br/&gt;Introduce an intermediary confirmation point, reducing the impact of mining power fluctuations&lt;br/&gt;&lt;br/&gt;&amp;gt; The cost of such an attack is the cost of a normal &amp;#34;51%&amp;#34; attack, multiplied by the fractional weight of the original POW (e.g. 0.75 or 0.5).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So rather than saying this is a hard-fork, I would say that this is a soft-fork with reduced security for non-upgraded nodes.&lt;br/&gt;&lt;br/&gt;Presumably this preference exists because it implies the new rule would not cause a chain split, making it more acceptable to a risk-averse economy. This is precisely why it should be described correctly.&lt;br/&gt;&lt;br/&gt;&amp;gt; I would also say that the reduction in security is proportional to the reduction in weight of the original POW at the time of attack.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; As mentioned before, the original-POW weight starts at 1.0 and is reduced over a long period of time.  I would set up the transition curve so that all nodes upgrade by the time the weight is, say, 0.75.  In reality, nodes protecting high economic value would upgrade early.&lt;br/&gt;&lt;br/&gt;In reality you have no way to know if/when people would adopt this rule. What matters in the proposal is that people who do adopt it are well aware of its ability to split them from the existing economy.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; On Mon, Nov 6, 2017 at 3:55 PM Eric Voskuil via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; If a block that would be discarded under previous rules becomes accepted after a rule addition, there is no reason to not simply call the new rule a hard fork. IOW it&amp;#39;s perfectly rational to consider a weaker block as &amp;#34;invalid&amp;#34; relative to the strong chain. As such I don&amp;#39;t see any reason to qualify the term, it&amp;#39;s a hard fork. But Peter&amp;#39;s observation (the specific behavior) is ultimately what matters.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Nov 6, 2017, at 12:30, Paul Sztorc via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &#43;1 to all of Peter Todd&amp;#39;s comments&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Nov 6, 2017 11:50 AM, &amp;#34;Peter Todd via bitcoin-dev&amp;#34; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Wed, Nov 01, 2017 at 05:48:27AM &#43;0000, Devrandom via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Some quick thoughts...&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Hi all,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Feedback is welcome on the draft below.  In particular, I want to see if&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; there is interest in further development of the idea and also interested in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; any attack vectors or undesirable dynamics.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; (Formatted version available here:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &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; )&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; # Soft-fork Introduction of a New POW&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; First of all, I don&amp;#39;t think you can really call this a soft-fork; I&amp;#39;d call it a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;#34;pseudo-soft-fork&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; My reasoning being that after implementation, a chain with less total work than&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the main chain - but more total SHA256^2 work than the main chain - might be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; followed by non-supporting clients. It&amp;#39;s got some properties of a soft-fork,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; but it&amp;#39;s security model is definitely different.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; ### Aux POW intermediate block&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Auxiliary POW blocks are introduced between normal blocks - i.e. the chain&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; alternates between the two POWs.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Each aux-POW block points to the previous normal block and contains&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; transactions just like a normal block.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Each normal block points to the previous aux-POW block and must contain all&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; transactions from the aux-POW block.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Note how you&amp;#39;re basically proposing for the block interval to be decreased,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; which has security implications due to increased orphan rates.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; ### Heaviest chain rule change&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; This is a semi-hard change, because non-upgraded nodes can get on the wrong&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; chain in case of attack.  However,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Exactly! Not really a soft-fork.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;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;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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; 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;-------------- 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/20171111/1ce6f87b/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171111/1ce6f87b/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:07:25&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsthr3caagupesymnd5jp8v2mx05u5t5l6ezaf6kctfrmqwadujq7gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu2ley5a</id>
    
      <title type="html">📅 Original date posted:2017-11-06 📝 Original message:If a ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsthr3caagupesymnd5jp8v2mx05u5t5l6ezaf6kctfrmqwadujq7gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu2ley5a" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs94hm2sj3nluaw7nfczk9yzkha056xk6jw5zsk6kqznuc92cejpvq2350c9&#39;&gt;nevent1q…50c9&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-11-06&lt;br/&gt;📝 Original message:If a block that would be discarded under previous rules becomes accepted after a rule addition, there is no reason to not simply call the new rule a hard fork. IOW it&amp;#39;s perfectly rational to consider a weaker block as &amp;#34;invalid&amp;#34; relative to the strong chain. As such I don&amp;#39;t see any reason to qualify the term, it&amp;#39;s a hard fork. But Peter&amp;#39;s observation (the specific behavior) is ultimately what matters.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Nov 6, 2017, at 12:30, Paul Sztorc via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &#43;1 to all of Peter Todd&amp;#39;s comments&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Nov 6, 2017 11:50 AM, &amp;#34;Peter Todd via bitcoin-dev&amp;#34; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; On Wed, Nov 01, 2017 at 05:48:27AM &#43;0000, Devrandom via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Some quick thoughts...&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Hi all,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Feedback is welcome on the draft below.  In particular, I want to see if&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; there is interest in further development of the idea and also interested in&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; any attack vectors or undesirable dynamics.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; (Formatted version available here:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &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; )&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; # Soft-fork Introduction of a New POW&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; First of all, I don&amp;#39;t think you can really call this a soft-fork; I&amp;#39;d call it a&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;pseudo-soft-fork&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; My reasoning being that after implementation, a chain with less total work than&lt;br/&gt;&amp;gt;&amp;gt; the main chain - but more total SHA256^2 work than the main chain - might be&lt;br/&gt;&amp;gt;&amp;gt; followed by non-supporting clients. It&amp;#39;s got some properties of a soft-fork,&lt;br/&gt;&amp;gt;&amp;gt; but it&amp;#39;s security model is definitely different.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; ### Aux POW intermediate block&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Auxiliary POW blocks are introduced between normal blocks - i.e. the chain&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; alternates between the two POWs.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Each aux-POW block points to the previous normal block and contains&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; transactions just like a normal block.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; Each normal block points to the previous aux-POW block and must contain all&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; transactions from the aux-POW block.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Note how you&amp;#39;re basically proposing for the block interval to be decreased,&lt;br/&gt;&amp;gt;&amp;gt; which has security implications due to increased orphan rates.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; ### Heaviest chain rule change&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; This is a semi-hard change, because non-upgraded nodes can get on the wrong&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; chain in case of attack.  However,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Exactly! Not really a soft-fork.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org&lt;br/&gt;&amp;gt;&amp;gt; &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; _______________________________________________&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&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;-------------- 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/20171106/08da67fe/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171106/08da67fe/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T20:07:24&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsf60jsrdqvcmkvrktenr4fgr3jmq3cys4g6pn2uqlaegev7exchpgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwuyk9v</id>
    
      <title type="html">📅 Original date posted:2017-05-26 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsf60jsrdqvcmkvrktenr4fgr3jmq3cys4g6pn2uqlaegev7exchpgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwuyk9v" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdykc583ghj9fvplfkkcgwxymhgga9krgjfayrxjk7swhdlmuajsct5q9kv&#39;&gt;nevent1q…q9kv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-05-26&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;Hi Cameron,&lt;br/&gt;&lt;br/&gt;Presumably the &amp;#34;very serious security vulnerability&amp;#34; posed is one of&lt;br/&gt;increased centralization of hash power. Would this danger exist&lt;br/&gt;without the patent risk?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 05/26/2017 01:02 AM, Cameron Garnham via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Thank you for your reply Andreas,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I can assure you that I have many motivations for activating&lt;br/&gt;&amp;gt; SegWit.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Before studding ASICBOOST I wanted to activate SegWit as it is a&lt;br/&gt;wonderful upgrade for Bitcoin. It seems to me that virtually the&lt;br/&gt;entire Bitcoin Ecosystem agrees with me.  Except for around 67% of the&lt;br/&gt;mining hash-rate who very conspicuously refuse to signal for it’s&lt;br/&gt;activation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So, I started searching for the motivations of such a large amount&lt;br/&gt;of the mining hash-rate holding a position that isn’t at-all&lt;br/&gt;represented in the wider Bitcoin Community. My study of ASICBOOST lead&lt;br/&gt;to a ‘bingo’ moment:  If one assumes that the 67% of the hash rate&lt;br/&gt;that refuse to signal for SegWit are using ASICBOOST. The entire&lt;br/&gt;picture of this political stalemate became much more understandable.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This only strengthened my resolve to activate SegWit: not only is&lt;br/&gt;SegWit great, it partially mitigates a very serious security&lt;br/&gt;vulnerability.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is why I call into question why you would suggest:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; “This proposal is unnecessarily conflating two contentious issues&lt;br/&gt;and will attract criticism of self serving motivation.”&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. I am not conflating the issues.  I would argue that very fact&lt;br/&gt;that SegWit has not been activated yet is directly because of&lt;br/&gt;CVE-2017-9230.&lt;br/&gt;&amp;gt; 2. I have no reason to believe that SegWit is contentious, except&lt;br/&gt;for the attackers who it would frustrate.&lt;br/&gt;&amp;gt; 3. I have no negative responses to my endeavours to get ASICBOOST&lt;br/&gt;&amp;gt; as&lt;br/&gt;regarded as a legitimate security vulnerability.  This would suggest&lt;br/&gt;that it is not contentious in the wider technical community.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If SegWit is NOT contentious within the technical community and it&lt;br/&gt;is NOT contentious to regard CVE-2017-9230 as a credible security&lt;br/&gt;vulnerability. Then using it as partial security fix for a security&lt;br/&gt;vulnerability SHOULD NOT be contentious.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If you believe that SegWit is contentious within the technical&lt;br/&gt;community.  Or you believe CVE-2017-9230 should not be regarded as a&lt;br/&gt;credible security vulnerability. Then I would logically agree with you&lt;br/&gt;that we should separate the issues so that we may gain consensus.&lt;br/&gt;However, I just don’t see this as the case.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cameron.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On 26 May 2017, at 09:52 , Andreas M. Antonopoulos&lt;br/&gt;&amp;lt;andreas at antonopoulos.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I rarely post here, out of respect to the mailing list. But&lt;br/&gt;&amp;gt;&amp;gt; since&lt;br/&gt;my name was mentioned...&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I much prefer Gregory Maxwell&amp;#39;s proposal to defuse covert&lt;br/&gt;&amp;gt;&amp;gt; ASICBOOST&lt;br/&gt;(only) with a segwit-like commitment to the coinbase which does not&lt;br/&gt;obligate miners to signal Segwit or implement Segwit, thus disarming&lt;br/&gt;any suspicion that the issue is being exploited only to activate Segwit.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; This proposal is unnecessarily conflating two contentious issues&lt;br/&gt;and will attract criticism of self serving motivation.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Politicising CVE  is damaging to the long term bitcoin&lt;br/&gt;&amp;gt;&amp;gt; development&lt;br/&gt;and to its security. Not claiming that is the intent here, but the&lt;br/&gt;damage is done by the mere appearance of motive.&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; On May 26, 2017 16:30, &amp;#34;Cameron Garnham via bitcoin-dev&amp;#34;&lt;br/&gt;&amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; Hello Bitcoin-Dev,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; CVE-2017-9230 (1) (2), or commonly known as ‘ASICBOOST’ is a&lt;br/&gt;&amp;gt;&amp;gt; severe&lt;br/&gt;(3) (4) and actively exploited (5) security vulnerability.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; To learn more about this vulnerability please read Jeremy&lt;br/&gt;&amp;gt;&amp;gt; Rubin’s&lt;br/&gt;detailed report:&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://www.mit.edu/~jlrubin//public/pdfs/Asicboost.pdf&#34;&gt;http://www.mit.edu/~jlrubin//public/pdfs/Asicboost.pdf&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Andreas Antonopoulos has an excellent presentation on why&lt;br/&gt;&amp;gt;&amp;gt; asicboost&lt;br/&gt;is dangerous:&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://www.youtube.com/watch?v=t6jJDD2Aj8k&#34;&gt;https://www.youtube.com/watch?v=t6jJDD2Aj8k&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; In decisions on the #bitcoin-core-dev IRC channel; It was&lt;br/&gt;&amp;gt;&amp;gt; proposed,&lt;br/&gt;without negative feedback, that SegWit be used as a partial-mitigation&lt;br/&gt;of CVE-2017-9230.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; SegWit partially mitigates asicboost with the common reasonable&lt;br/&gt;assumption that any block that doesn’t include a witness commit in&lt;br/&gt;it&amp;#39;s coinbase transaction was mined using covert asicboost.  Making&lt;br/&gt;the use of covert asicboost far more conspicuous.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It was also proposed that this partial mitigation should be&lt;br/&gt;&amp;gt;&amp;gt; quickly&lt;br/&gt;strengthened via another soft-fork that makes the inclusion of witness&lt;br/&gt;commits mandatory, without negative feedback.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The security trade-offs of deploying a partial-mitigation to&lt;br/&gt;CVE-2017-9230 quickly vs more slowly but more conservatively is under&lt;br/&gt;intense debate.  The author of this post has a strong preference to&lt;br/&gt;the swiftest viable option.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Cameron.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (1) CVE Entry: &lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://cve.mitre.org/cgi-bin/cvename.cgi?name=&#43;CVE-2017-9230&#34;&gt;https://cve.mitre.org/cgi-bin/cvename.cgi?name=&#43;CVE-2017-9230&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (2) Announcement of CVE to Mailing List:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014416&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014416&lt;/a&gt;.&lt;br/&gt;html&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (3) Discussion of the perverse incentives created by &amp;#39;ASICBOOST&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt; by&lt;br/&gt;Ryan Grant:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014352&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014352&lt;/a&gt;.&lt;br/&gt;html&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (4) Discussion of ASICBOOST&amp;#39;s non-independent PoW calculation by&lt;br/&gt;Tier Nolan:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014351&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-May/014351&lt;/a&gt;.&lt;br/&gt;html&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; (5) Evidence of Active Exploit by Gregory Maxwell:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-April/01399&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-April/01399&lt;/a&gt;&lt;br/&gt;6.html&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJZJ&#43;Q1AAoJEDzYwH8LXOFOqakH/R1YCifIGjV07vnnsxeC/77x&lt;br/&gt;d6w5tBmtEd5MLzrX/6VtMoI8UzgLEcDM1WfFox3jDVz/HurkTVorliyJrr14BVsc&lt;br/&gt;rL2nTbfychYh1rAdTIsNwFt15Wgjcp/5eAq7Lw5TM5OJ3YbPn2zWJY19QmjEAJ&#43;M&lt;br/&gt;kGz26R&#43;IJL1095yed5RN2JoN8O9x&#43;HVdtIjaHJJRJzLsy&#43;3g22zMWgN1nZN0olhX&lt;br/&gt;mFQJZbvS0gQyiRGJmNku3zP5Qg2cFzWt&#43;VBtFrzNu1QTTkbK2e1owHOmpgfygTD3&lt;br/&gt;g3F4VoDfyA7pBnpMMMjjTaCaG34Am3CvYu8iYnZXy85s2ZjC&#43;XeKgqMkBLj4&#43;q8=&lt;br/&gt;=A3ne&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T20:01:53&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsw8q02qr4cnpddtt6c4kacxka50wjasguwh58szs7l5r4dg4qswwqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuphhdlp</id>
    
      <title type="html">📅 Original date posted:2017-05-13 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsw8q02qr4cnpddtt6c4kacxka50wjasguwh58szs7l5r4dg4qswwqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuphhdlp" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsx56t9t9km46ku9dl0y9z472srh4658les8y37khtj2kp8v0mjc2q9mkess&#39;&gt;nevent1q…kess&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-05-13&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 05/12/2017 08:54 PM, ZmnSCPxj wrote:&lt;br/&gt;&amp;gt; Good morning,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I do not see why any person would want to pay, and then trust,&lt;br/&gt;&amp;gt;&amp;gt; another to mine accordingly. Each person can mine and attain&lt;br/&gt;&amp;gt;&amp;gt; their level of influence. This not only avoids the side payment,&lt;br/&gt;&amp;gt;&amp;gt; but earns the person money.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The problem, is that, the rate of conversion of Bitcoin-&amp;gt; hashrate&lt;br/&gt;&amp;gt; is different for different people.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; For some, it&amp;#39;s very cheap to convert Bitcoin -&amp;gt; hashrate.  For&lt;br/&gt;&amp;gt; others, it&amp;#39;s very expensive.  The reason, is the large difference&lt;br/&gt;&amp;gt; in electricity rates depending on country.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It&amp;#39;s all very well for those who can get electricity cheaply.  But,&lt;br/&gt;&amp;gt; for some, it is not.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Thus, paying someone with better Bitcoin-&amp;gt;hashrate conversion via&lt;br/&gt;&amp;gt; fees such as these is more economically logical, than to suffer a&lt;br/&gt;&amp;gt; lower Bitcoin-&amp;gt;hashrate conversion.&lt;br/&gt;&lt;br/&gt;Despite the tedious explanation of absolute advantage, this is simply&lt;br/&gt;an argument for all people to pay one person to mine, as there is&lt;br/&gt;presumably always one person who will be able to mine more efficiently&lt;br/&gt;than all others.&lt;br/&gt;&lt;br/&gt;The argument fails to recognize that mining for one&amp;#39;s self may (or may&lt;br/&gt;not) result in a net loss, but donating to a miner in the hope of some&lt;br/&gt;action is comparatively a total loss. One is an expense in exchange&lt;br/&gt;for the intended social outcome, and the other is payment for&lt;br/&gt;representative government.&lt;br/&gt;&lt;br/&gt;And in this form of representative government that you propose, if we&lt;br/&gt;assume that miners are somehow bound to honor the payments (votes),&lt;br/&gt;how are the votes distributed? Is this supposed to be democratic in&lt;br/&gt;the sense of one person one vote? Your argument below is clearly based&lt;br/&gt;on that idea. However the result would be very different. The&lt;br/&gt;wealthier would of course exert the greater influence. So the idea&lt;br/&gt;fails by its own standard.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; If a person does not want to bother then he/she clearly does not&lt;br/&gt;&amp;gt;&amp;gt; have a strong opinion. As developers we should be focused on&lt;br/&gt;&amp;gt;&amp;gt; reducing the complexities of mining and of validation, not&lt;br/&gt;&amp;gt;&amp;gt; finding ways for people to avoid participating in these&lt;br/&gt;&amp;gt;&amp;gt; necessarily distributed roles.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It is also, very obviously, clear that you are operating under&lt;br/&gt;&amp;gt; very strange assumptions, that all people are already equal&lt;br/&gt;&amp;gt; somehow, or that someone who is paid x10 more is strictly superior,&lt;br/&gt;&amp;gt; even though skill-wise and ability-wise, they are the same, and the&lt;br/&gt;&amp;gt; one paid less is simply suffering due to the country where he or&lt;br/&gt;&amp;gt; she is born in, through no fault of their own.&lt;br/&gt;&lt;br/&gt;You are making a political argument wrapped in appeal to emotion. Both&lt;br/&gt;are pointless in this context.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJZFptnAAoJEDzYwH8LXOFOs34IAIciCyrn7FMq7leiQ6jAvr3g&lt;br/&gt;sW9YRQ403IJd9BiBj3lI6xpsxtJ4zezkU2AFZUTf9X6AoIX/UJtPb8clb4RIpicf&lt;br/&gt;ACK&#43;iec4YM&#43;15kgPcLyLij3aALvNNCNQ&#43;XuXeHT1bHqfukP&#43;bc/DBAnm48qGvW9o&lt;br/&gt;ugRIFFWqtt8FB9MAh/VM6SsfaQc3D8hk6Dh3SyEVzohkrgWpRVQKNGD/FYY8odCA&lt;br/&gt;8KPo/R3jrgO6JNR0EGxR3SatuKLYUgMcl3n63fanAOh8ESHGHHiP0SEpYoG3wOCt&lt;br/&gt;eAyEcPI4SezJHBjJWcsPe0hhLg0HkvFaLwQe8tGHXrCzsZ18QTNBA0h9npWqqi4=&lt;br/&gt;=LKcb&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T20:01:08&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx7g3zm09uyxe2k69w5kal46ene4patqa5nzhu09lthst3phgsveszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuck4s4g</id>
    
      <title type="html">📅 Original date posted:2017-05-13 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx7g3zm09uyxe2k69w5kal46ene4patqa5nzhu09lthst3phgsveszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuck4s4g" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqhxjcf2z55lf78uerf6duthd8tkqpy9g5k6nwhxjpesrwyecgh0qzdsvl6&#39;&gt;nevent1q…svl6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-05-13&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 05/12/2017 10:45 PM, Luke Dashjr wrote:&lt;br/&gt;&amp;gt; On Saturday 13 May 2017 3:26:08 AM Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; If people want to influence the decisions of miners, all they&lt;br/&gt;&amp;gt;&amp;gt; need to do is mine.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Most people cannot mine except at a huge expense (profit is limited&lt;br/&gt;&amp;gt; to few people via monopoly and electric costs). But more&lt;br/&gt;&amp;gt; importantly, the profits from every miner you buy will go to pay&lt;br/&gt;&amp;gt; for Bitmain growing their arsenal more than enough to offset your&lt;br/&gt;&amp;gt; influence.&lt;br/&gt;&lt;br/&gt;You seem to be suggesting that in order to decentralize mining nobody&lt;br/&gt;should mine. I&amp;#39;m having a hard time making sense out of that.&lt;br/&gt;&lt;br/&gt;&amp;gt; Mining is simply broken at this point.&lt;br/&gt;&lt;br/&gt;So maybe you are just saying that nobody should mine because it&amp;#39;s a&lt;br/&gt;zero sum game that one miner will always win and therefore we should&lt;br/&gt;not push up the hash rate by trying to compete because the same miner&lt;br/&gt;just makes more money on the hardware. Apparently it is economically&lt;br/&gt;impossible for anyone else to compete in hardware as well.&lt;br/&gt;&lt;br/&gt;I agree that there is a serious problem of mining centralization (and&lt;br/&gt;economic/validation centralization). If these problems are not solved&lt;br/&gt;Bitcoin will fail. It will rise again, with people a little wiser, but&lt;br/&gt;the disruption will be unfortunate for many.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t want to see that, so I tend to not advocate for solutions that&lt;br/&gt;run counter to the security model. Many people must mine, there is no&lt;br/&gt;way around it. And if people want a say with respect to mining, they&lt;br/&gt;should mine. As a developer I would rather work toward fixing that&lt;br/&gt;problem than putting a band-aid over it that basically tells people&lt;br/&gt;that the way they get their say is by donating to the big mining&lt;br/&gt;personality of their choice.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; There is nothing inherently wrong with paying people to run nodes&lt;br/&gt;&amp;gt;&amp;gt; or signal &amp;#34;readiness&amp;#34;, but there is no reason whatsoever to&lt;br/&gt;&amp;gt;&amp;gt; consider these ideas beneficial from a personal/economic or &lt;br/&gt;&amp;gt;&amp;gt; security/decentralization standpoint.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Running a node and mining are two very different things.&lt;br/&gt;&lt;br/&gt;No, really?&lt;br/&gt;&lt;br/&gt;If it wasn&amp;#39;t clear, I was relating two sets of proposals. One aims to&lt;br/&gt;find ways to fund node operation and the other aims to fund miner&lt;br/&gt;signaling. The former fails to understand the economics and security&lt;br/&gt;model of full node operation and the latter fails to understand that&lt;br/&gt;distributed mining is as essential to Bitcoin survival as distributed&lt;br/&gt;validation.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; The argument fails to recognize that mining for one&amp;#39;s self may&lt;br/&gt;&amp;gt;&amp;gt; (or may not) result in a net loss, but donating to a miner in the&lt;br/&gt;&amp;gt;&amp;gt; hope of some action is comparatively a total loss. One is an&lt;br/&gt;&amp;gt;&amp;gt; expense in exchange for the intended social outcome, and the&lt;br/&gt;&amp;gt;&amp;gt; other is payment for representative government.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; And in this form of representative government that you propose,&lt;br/&gt;&amp;gt;&amp;gt; if we assume that miners are somehow bound to honor the payments&lt;br/&gt;&amp;gt;&amp;gt; (votes), ...&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; First of all, this isn&amp;#39;t donating to miners, but forbidding them&lt;br/&gt;&amp;gt; from mining your transaction (and thereby collecting your&lt;br/&gt;&amp;gt; transaction fee) unless they signal for the softfork.&lt;br/&gt;&lt;br/&gt;I assumed that people understand how markets work. Miners compete for&lt;br/&gt;fees. By eliminating a subset of potential sellers (currently by ~70%)&lt;br/&gt;the buyer raises his own price. Presumably the price is raised even&lt;br/&gt;further by increasing the size of the transaction. This is either a&lt;br/&gt;donation to the cause or a purchase of the signal, depending on how&lt;br/&gt;you want to describe it (all donations are purchases of a sort).&lt;br/&gt;&lt;br/&gt;So there is a cost increase that could alternatively be incurred by&lt;br/&gt;mining (i.e. assuming a lossy operation). If one is going to spend&lt;br/&gt;money on influencing mining one might as well not do it in a way that&lt;br/&gt;contributes to centralization while training people to rely on it.&lt;br/&gt;&lt;br/&gt;&amp;gt; Secondly, your argument here assumes miners are a government or&lt;br/&gt;&amp;gt; control Bitcoin in some way. This is not correct.&lt;br/&gt;&lt;br/&gt;Miners absolutely &amp;#34;control Bitcoin in some way&amp;#34; - that is their&lt;br/&gt;purpose. They control the ordering of transactions, and with&lt;br/&gt;sufficient hash power can double-spend and therefore make the network&lt;br/&gt;unusable. Why would you bother to make me type this?&lt;br/&gt;&lt;br/&gt;&amp;gt; So miners are in fact already bound to honour the wishes of the&lt;br/&gt;&amp;gt; greater economy, and their refusal to do so is an attack on the&lt;br/&gt;&amp;gt; network.&lt;br/&gt;&lt;br/&gt;Absolute nonsense, a miner incurs no obligation to the &amp;#34;greater&lt;br/&gt;economy&amp;#34;. He is offering a service in voluntary trade. He is likely to&lt;br/&gt;do what it takes to spend his coinbase, assuming he wants to. This&lt;br/&gt;gives the economy strong economic control over his behavior. But&lt;br/&gt;nothing whatsoever obligates him to signal soft forks (or not optimize&lt;br/&gt;his operations).&lt;br/&gt;&lt;br/&gt;Double spending is an attack, on the person who has been robbed. The&lt;br/&gt;state enforcing a patent is an attack, on the person against whom it&lt;br/&gt;is enforced. These are called attacks **because they are actually&lt;br/&gt;theft**. You are conflating normal operation (despite disagreement&lt;br/&gt;with some unmeasurable &amp;#34;wishes&amp;#34;) with robbery.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJZFqstAAoJEDzYwH8LXOFOsvsH/2aWlsfi5hB1IrnX1UBsMJl8&lt;br/&gt;&#43;R6BZE&#43;d5C5uNkk6/yENHqwwgTv8yhOKav2Y7xYx/DedhVftX90h9CtdeKGgCS2H&lt;br/&gt;cYNtoNauAvF2nlEMGGGcinLkYbS0dyQm07zwOI8gwuzbkslFGxLFClngFlFgMF4S&lt;br/&gt;4/YCWvtRJ0O5dkrAZuKwG/7JQ1JNopbDTxssirA/OzwTGjq7BUv7INyR8nBbOp6I&lt;br/&gt;xcrjq2bXja6Kxo08pr3&#43;UrWc&#43;0LO8fvX9z3rkm6USyin7TueS85gEUsk30h1Xng3&lt;br/&gt;Al1QccJ9KKJ&#43;iQKdGozeHD2OlTFC1zW2kZaWbhgxOewDlmf7cNwZXEUwfr4C4Hs=&lt;br/&gt;=j5eo&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T20:01:08&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszxqxta2a8cz8r5nut2gaqlevge62vl3acww9nq7q9zlavjwge2uczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuf6sklg</id>
    
      <title type="html">📅 Original date posted:2017-05-13 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszxqxta2a8cz8r5nut2gaqlevge62vl3acww9nq7q9zlavjwge2uczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuf6sklg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyznc88r29lq4gyvxhta7sh30kwp543rxj8yszdquzlfd5rkfsrqgczxtc5&#39;&gt;nevent1q…xtc5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-05-13&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;If people want to influence the decisions of miners, all they need to&lt;br/&gt;do is mine.&lt;br/&gt;&lt;br/&gt;I do not see why any person would want to pay, and then trust, another&lt;br/&gt;to mine accordingly. Each person can mine and attain their level of&lt;br/&gt;influence. This not only avoids the side payment, but earns the person&lt;br/&gt;money.&lt;br/&gt;&lt;br/&gt;There is nothing inherently wrong with paying people to run nodes or&lt;br/&gt;signal &amp;#34;readiness&amp;#34;, but there is no reason whatsoever to consider&lt;br/&gt;these ideas beneficial from a personal/economic or&lt;br/&gt;security/decentralization standpoint.&lt;br/&gt;&lt;br/&gt;If you are not running a node you are not part of the economic&lt;br/&gt;consensus. If you are not mining you have no say in transaction&lt;br/&gt;ordering. The &amp;#34;solution&amp;#34; is both obvious and necessary to secure Bitcoin&lt;br/&gt;.&lt;br/&gt;&lt;br/&gt;If a person does not want to bother then he/she clearly does not have&lt;br/&gt;a strong opinion. As developers we should be focused on reducing the&lt;br/&gt;complexities of mining and of validation, not finding ways for people&lt;br/&gt;to avoid participating in these necessarily distributed roles.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 05/12/2017 05:49 PM, Luke Dashjr via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; On Friday 12 May 2017 10:22:14 PM Peter Todd wrote:&lt;br/&gt;&amp;gt;&amp;gt; nVersion signaling is already technically unenforceable, in the &lt;br/&gt;&amp;gt;&amp;gt; sense that we don&amp;#39;t have good ways of ensuring miners actually &lt;br/&gt;&amp;gt;&amp;gt; adopt the rules they&amp;#39;re claiming to signal. Equally, it&amp;#39;s users &lt;br/&gt;&amp;gt;&amp;gt; who ultimately adopt rules, not miners, and attempting to pay &lt;br/&gt;&amp;gt;&amp;gt; miners to signal certain bits will further confuse this point.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This BIP doesn&amp;#39;t change that. Enforcement remains primarily by &lt;br/&gt;&amp;gt; users.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Quite likely the outcome of users trying to anonymously pay &lt;br/&gt;&amp;gt;&amp;gt; anonymous miners to signal certain bits will be the complete &lt;br/&gt;&amp;gt;&amp;gt; breakdown of the honesty of the nVersion signalling system, &lt;br/&gt;&amp;gt;&amp;gt; currently enforced only by &amp;#34;gentlemans agreement&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You assume users will pay for signalling of softforks prematurely.&lt;br/&gt;&amp;gt;  So long as it waits until deployment of the softfork is &lt;br/&gt;&amp;gt; widespread, this risk is minimal. At worst, it creates risks &lt;br/&gt;&amp;gt; similar to a UASF. So long as UASF is the alternative, this way &lt;br/&gt;&amp;gt; seems strictly better.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Also, as an aside, this &amp;#34;specification&amp;#34; again shows the &lt;br/&gt;&amp;gt;&amp;gt; inadequacy and unreadability of English language specifications.&lt;br/&gt;&amp;gt;&amp;gt;  I&amp;#39;d strongly suggest you delete it and instead mark the &lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;reference implementation&amp;#34; as the specification.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; How so?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Friday 12 May 2017 10:17:30 PM ZmnSCPxj wrote:&lt;br/&gt;&amp;gt;&amp;gt; Minor editorial nitpick, this paragraph is repeated, maybe one of&lt;br/&gt;&amp;gt;&amp;gt; these should be Testnet?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; For Bitcoin &amp;#39;&amp;#39;&amp;#39;mainnet&amp;#39;&amp;#39;&amp;#39;, the BIP8 &amp;#39;&amp;#39;&amp;#39;starttime&amp;#39;&amp;#39;&amp;#39; will be TBD &lt;br/&gt;&amp;gt;&amp;gt; (Epoch timestamp TBD) and BIP8 &amp;#39;&amp;#39;&amp;#39;timeout&amp;#39;&amp;#39;&amp;#39; will be TBD (Epoch &lt;br/&gt;&amp;gt;&amp;gt; timestamp TBD).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; For Bitcoin &amp;#39;&amp;#39;&amp;#39;mainnet&amp;#39;&amp;#39;&amp;#39;, the BIP8 &amp;#39;&amp;#39;&amp;#39;starttime&amp;#39;&amp;#39;&amp;#39; will be TBD &lt;br/&gt;&amp;gt;&amp;gt; (Epoch timestamp TBD) and BIP8 &amp;#39;&amp;#39;&amp;#39;timeout&amp;#39;&amp;#39;&amp;#39; will be TBD (Epoch &lt;br/&gt;&amp;gt;&amp;gt; timestamp TBD).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Fixed, thanks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Luke _______________________________________________ bitcoin-dev &lt;br/&gt;&amp;gt; mailing list bitcoin-dev at lists.linuxfoundation.org &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;&amp;gt; &lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJZFnzNAAoJEDzYwH8LXOFOlMsH/2Li7lDTr57EC2mSt4BuCf3Q&lt;br/&gt;Q1sx21CBumm6OQKMxd207wgXTaxVJVmrGPXfJ6ZW8Bf&#43;2tMKgc/LsZfzXdEo5&#43;Fx&lt;br/&gt;iTkdgJeW8QbKiEGzOFKMxWXH9jyCnd0WcDnKw/v7WqUhYfy2c9wz9RzCMY5iJqph&lt;br/&gt;xd2&#43;DeiEIjXIvE&#43;l2TXGwjnB8Wp41QeY0I98kG3HHwNvNREbbGS/BjtLj5&#43;eBygU&lt;br/&gt;m&#43;6dxkJoEttms31F47WFoZRzN7u5pe3BY5kDfZdVkbG7MOomSYwlhMvR3PtA1wrz&lt;br/&gt;FeAUcHpp9MPj&#43;qgHGwAGMfJiG/5WsVSrl/dJTm68zPOdwH60fMNNT/Srfbj1Ty8=&lt;br/&gt;=9Xik&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T20:01:07&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs8pv4vfy6r0mvhtlgvcpse4xp8xgh5lvkhfu9pmf64xknyw6zqepqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu56ucc9</id>
    
      <title type="html">📅 Original date posted:2017-04-08 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs8pv4vfy6r0mvhtlgvcpse4xp8xgh5lvkhfu9pmf64xknyw6zqepqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu56ucc9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8wdurxpuedxp88yxac6jqdctkjymgdc9js36m65lfxp64cwxmtaqyjuwhm&#39;&gt;nevent1q…uwhm&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-08&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/08/2017 11:15 AM, praxeology_guy via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; ASICBOOST causes Bitcoin&amp;#39;s PoW to become more memory/latency&lt;br/&gt;&amp;gt; throttled instead of raw computation throttled.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; There is the equation: Power Cost &#43; Captial Rent &#43; Labor ~= block&lt;br/&gt;&amp;gt; reward &#43; fees&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Capital Rent is a barrier to entry, and hence in desiring a more &lt;br/&gt;&amp;gt; distributed system, we would like to minimize the Capital Rent&lt;br/&gt;&amp;gt; portion of the equation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Resolving memory/latency throttle requires a greater Captial Rent&lt;br/&gt;&amp;gt; than raw computation throttle.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hence (agreeing with Luke), ASICBOOST is not desirable, even if it &lt;br/&gt;&amp;gt; wasn&amp;#39;t a government enforced monopoly on mining.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Please let me know if I made a mistake.&lt;br/&gt;&lt;br/&gt;Electric power is not an abstraction, it&amp;#39;s the output of machines.&lt;br/&gt;What you are referring to as Power Cost typically consists of a higher&lt;br/&gt;rent component than computing hardware, where rent is the sharing of a&lt;br/&gt;resource by multiple people. So by your reasoning you appear to have&lt;br/&gt;drawn the wrong conclusion.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY6TEUAAoJEDzYwH8LXOFOiQIH/RN8YhLCokZtGoFZ&#43;dOgwCxc&lt;br/&gt;/ej3m9CXVGyWvcCJMQd2ZJFgpjL5mgJdcCdaWoTeZfh0Nmvc3hDex46wWpUZc/mR&lt;br/&gt;NbRj56hyqe&#43;cWAwQJJpAOWiJXjEuS3npXFvZIBpslECXCL6U&#43;LSxdW9WSg0w&#43;HBD&lt;br/&gt;jihIlG2TeGSrMR/atKfSnVRAnz9ahPvgUwcR8l7oLsjP2JvBGl&#43;fQHL5MwpvRg4a&lt;br/&gt;sXK3eMIeH7wGJyiKOwXyMeRMfCRlwpkBCw0R&#43;FYt2Q5l/uwkRAKuJiYUlJixFAZA&lt;br/&gt;ggQth02pFn/tASB49oBKZU3QviVRGgoIQ5DFyI8OPa10FeVsxaeNeBQylwWJA3c=&lt;br/&gt;=Ryo5&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:48&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsyvhezvxmsu2n2au34f7sxsz6clawvetmylsygk3zj6j8rqm2mhzczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu89xa2k</id>
    
      <title type="html">📅 Original date posted:2017-04-07 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsyvhezvxmsu2n2au34f7sxsz6clawvetmylsygk3zj6j8rqm2mhzczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu89xa2k" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvtm00wuh3ucw8el3uthjwtcvhhd7eayl0tzafpwjfjlguel0fspgqcldjt&#39;&gt;nevent1q…ldjt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-07&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/07/2017 02:44 PM, Tomas via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Hi Eric,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Fri, Apr 7, 2017, at 21:55, Eric Voskuil via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; Optimization for lower memory platforms then becomes a process&lt;br/&gt;&amp;gt;&amp;gt; of reducing the need for paging. This is the purpose of a cache.&lt;br/&gt;&amp;gt;&amp;gt; The seam between disk and memory can be filled quite nicely by a&lt;br/&gt;&amp;gt;&amp;gt; small amount of cache. On high RAM systems any cache is actually&lt;br/&gt;&amp;gt;&amp;gt; a de-optimization but on low RAM systems it can prevent excessive&lt;br/&gt;&amp;gt;&amp;gt; paging. This is directly analogous to a CPU cache.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am not entirely sure I agree with that, or understand it&lt;br/&gt;&amp;gt; correctly.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If -for example - the data of some application is a set  of&lt;br/&gt;&amp;gt; records which can be sorted from least frequently used to most&lt;br/&gt;&amp;gt; frequently used then doing just that sort will beat any&lt;br/&gt;&amp;gt; application-layer cache. Regardless of size of data and size of&lt;br/&gt;&amp;gt; RAM, you simply allow the OS to use disk caching or memory map&lt;br/&gt;&amp;gt; caching to work its  magic .&lt;br/&gt;&lt;br/&gt;It&amp;#39;s a reasonable assumption, and given that the no-explicit-cache&lt;br/&gt;implementation is a subset of the optionally-cached implementation,&lt;br/&gt;was of course the initial implementation.&lt;br/&gt;&lt;br/&gt;&amp;gt; In fact, I would argue that an application-layer cache *only*&lt;br/&gt;&amp;gt; makes sense if the data model shows a *hard* distinction between&lt;br/&gt;&amp;gt; often and not often used data. If usage-frequency is a continuous&lt;br/&gt;&amp;gt; line, caching is best left to the OS by focussing on proper spatial&lt;br/&gt;&amp;gt; and temporal locality of reference of your data, because the OS has&lt;br/&gt;&amp;gt; much more information to make the right decision.&lt;br/&gt;&lt;br/&gt;In practice this is not the case. The Bitcoin data model is neither&lt;br/&gt;continuous nor strictly segregated by usage.&lt;br/&gt;&lt;br/&gt;It is true that with sufficient RAM a cache is totally&lt;br/&gt;counterproductive. It is also my experience that an independent UTXO&lt;br/&gt;store is not a reasonable/necessary trade of disk space, memory&lt;br/&gt;scalability, and/or code complexity in exchange for speed.&lt;br/&gt;&lt;br/&gt;But on lower memory systems a explicit cache is beneficial. The&lt;br/&gt;difference is clearly measurable in production code by simply changing&lt;br/&gt;the cache limit and testing on various configurations.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY6CXnAAoJEDzYwH8LXOFOf0YH/2qk3hYC6iEDW/DWM2ffkdb9&lt;br/&gt;QM7A29Pvbfw9Wjr5Xx&#43;ugIQvlAr4T&#43;nByOCT6AnrqNU5K3UUmbC0KIB1rEL94hsK&lt;br/&gt;QYVlLs0cOrjg8qKJpck&#43;wcgiWw3VbEa/Y44hK7NLUxoy2HsLYaxPhqFH3GGgowqR&lt;br/&gt;syga626jf2YUyudZxj1gFuqn7grkwghnzdrEUJMcqQo8IvCqjftGXlKxBGyB/AIs&lt;br/&gt;Dx&#43;5EWO9Q9IxrNpg/fsKKB6xkMxkmSx2hbD7dmEBvi/afbVF66rDTinjInG/LCju&lt;br/&gt;pV7kT/GAWqGQGku6sQyAOexsxVhWA8EA/QEjvbyyGb&#43;3YnR0s6nPk&#43;CxO&#43;RkOgo=&lt;br/&gt;=e&#43;Pr&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:40&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsga4vn5c63fg368tx2ya590lmlyyjx239el4zn3dmjh2tafxh7x5czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwk6c2h</id>
    
      <title type="html">📅 Original date posted:2017-04-07 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsga4vn5c63fg368tx2ya590lmlyyjx239el4zn3dmjh2tafxh7x5czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwk6c2h" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstq849n7rn9exlrgskrv9vh0u6ck29py20eu7m9f02yc6hes6emfgjnuzrd&#39;&gt;nevent1q…uzrd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-07&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/07/2017 11:39 AM, Bram Cohen via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Expanding on this question a bit, it&amp;#39;s optimized for parallel&lt;br/&gt;&amp;gt; access, but hard drive access isn&amp;#39;t parallel and memory accesses&lt;br/&gt;&amp;gt; are very fast, so shouldn&amp;#39;t the target of optimization be about&lt;br/&gt;&amp;gt; cramming as much as possible in memory and minimizing disk&lt;br/&gt;&amp;gt; accesses?&lt;br/&gt;&lt;br/&gt;While this may seem to be the case it is not generally optimal. The&lt;br/&gt;question is overly broad as one may or may not be optimizing for any&lt;br/&gt;combination of:&lt;br/&gt;&lt;br/&gt;startup time (first usability)&lt;br/&gt;warm-up time (priming)&lt;br/&gt;shutdown time (flush)&lt;br/&gt;fault tolerance (hard shutdown survivability)&lt;br/&gt;top block validation (read speed)&lt;br/&gt;full chain validation (read/write speed)&lt;br/&gt;RAM consumption&lt;br/&gt;Disk consumption&lt;br/&gt;Query response&lt;br/&gt;Servers (big RAM)&lt;br/&gt;Desktops (small RAM)&lt;br/&gt;Mining (fast validation)&lt;br/&gt;Wallets (background performance)&lt;br/&gt;SSD vs. HDD&lt;br/&gt;&lt;br/&gt;But even limiting the question to input validation, all of these&lt;br/&gt;considerations (at least) are present.&lt;br/&gt;&lt;br/&gt;Ideally one wants the simplest implementation that is optimal under&lt;br/&gt;all considerations. While this may be a unicorn, it is possible to&lt;br/&gt;achieve a simple implementation (relative to alternatives) that allows&lt;br/&gt;for the trade-offs necessary to be managed through configuration (by&lt;br/&gt;the user and/or implementation).&lt;br/&gt;&lt;br/&gt;Shoving the entire data set into RAM has the obvious problem of&lt;br/&gt;limited RAM. Eventually the OS will be paging more of the data back to&lt;br/&gt;disk (as virtual RAM). In other words this does not scale, as a change&lt;br/&gt;in hardware disproportionately impacts performance. Ideally one wants&lt;br/&gt;the trade between &amp;#34;disk&amp;#34; and &amp;#34;memory&amp;#34; to be made by the underlying&lt;br/&gt;platform, as that is its purpose. Creating one data structure for disk&lt;br/&gt;and another for memory not only increases complexity, but denies the&lt;br/&gt;platform visibility into this trade-off. As such the platform&lt;br/&gt;eventually ends up working directly against the optimization.&lt;br/&gt;&lt;br/&gt;An on-disk structure that is not mapped into memory by the application&lt;br/&gt;allows the operating system to maintain as much or as little state in&lt;br/&gt;memory as it considers optimal, given the other tasks that the user&lt;br/&gt;has given it. In the case of memory mapped files (which are optimized&lt;br/&gt;by all operating systems as central to their virtual memory systems)&lt;br/&gt;it is possible for everything from zero to the full store to be memory&lt;br/&gt;resident.&lt;br/&gt;&lt;br/&gt;Optimization for lower memory platforms then becomes a process of&lt;br/&gt;reducing the need for paging. This is the purpose of a cache. The seam&lt;br/&gt;between disk and memory can be filled quite nicely by a small amount&lt;br/&gt;of cache. On high RAM systems any cache is actually a de-optimization&lt;br/&gt;but on low RAM systems it can prevent excessive paging. This is&lt;br/&gt;directly analogous to a CPU cache. There are clear optimal points in&lt;br/&gt;terms of cache size, and the implementation and management of such a&lt;br/&gt;cache can and should be internal to a store. Of course a cache cannot&lt;br/&gt;provide perfect scale all the way to zero RAM, but it scales quite&lt;br/&gt;well for actual systems.&lt;br/&gt;&lt;br/&gt;While a particular drive may not support parallel operations one&lt;br/&gt;should not assume that a disk-based store does not benefit from&lt;br/&gt;parallelism. Simply refer to the model described above and you will&lt;br/&gt;see that with enough memory the entire blockchain can be&lt;br/&gt;memory-resident, and for high performance operations a fraction of&lt;br/&gt;that is sufficient for a high degree of parallelism.&lt;br/&gt;&lt;br/&gt;In practice a cache of about 10k transactions worth of outputs is&lt;br/&gt;optimal for 8GB RAM. This requires just a few blocks for warm-up,&lt;br/&gt;which can be primed in inconsequential time at startup. Fault&lt;br/&gt;tolerance can be managed by flushing after all writes, which also&lt;br/&gt;reduces shutdown time to zero. For higher performance systems,&lt;br/&gt;flushing can be disabled entirely, increasing shutdown time but also&lt;br/&gt;dramatically increasing write performance. Given that the blockchain&lt;br/&gt;is a cache, this is a very reasonable trade-off in some scenarios. The&lt;br/&gt;model works just as well with HDD as SSD, although certainly SSD&lt;br/&gt;performs better overall.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY5&#43;7GAAoJEDzYwH8LXOFOsAsH/3QK55aWH6sAi6OsTwV1FLZV&lt;br/&gt;Y/2SSjwn1vUh55MDkPpCxDwV99JqVwpk0vGM8mGg5s4ZS8sxOPqwGiBz/SZWbF9v&lt;br/&gt;oStJS0DjUPnbYtI/mrC30GuAYVcKnc5DFDHvjX6f0xrLIzViFR7eiW0npUH6Xipt&lt;br/&gt;RI9Mockaf1CqqGExtbIqWal0YDEQGH0ekXRp7uEjh8nPUoKqTVvxDCgqVooQfvfx&lt;br/&gt;EeKX9ruSv/r91EM1JQuH8HBBF7&#43;R24tmMtwbpGx0zrDg5ytpIyrRzVH/ze1Mj2a3&lt;br/&gt;ZxThvofGzhKcDiTPWiJI11DBYUvhSH4Kx0uWLzFUA0gxPfWkZQKJWNDl2CEwljk=&lt;br/&gt;=C7rD&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:39&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdl9qk78h5ephldkh4ut2jnkf20gp2d676m44jc7a02zfms4mytcgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpun8zy2l</id>
    
      <title type="html">📅 Original date posted:2017-04-11 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdl9qk78h5ephldkh4ut2jnkf20gp2d676m44jc7a02zfms4mytcgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpun8zy2l" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxvak4nhkkxttfspuarqnlr4gy7yvaquvwd7xsykg894xyp56unnca9krfh&#39;&gt;nevent1q…krfh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-11&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/11/2017 01:43 AM, Tomas wrote:&lt;br/&gt;&amp;gt; Splitting transactions only happens *on storage* and is just a&lt;br/&gt;&amp;gt; minor optimization compared to storing them in full.&lt;br/&gt;&lt;br/&gt;Ok&lt;br/&gt;&lt;br/&gt;&amp;gt; Sure, we can still call switching tips a &amp;#34;reorg&amp;#34;. And it is indeed&lt;br/&gt;&amp;gt; a trade off as orphan blocks are stored, but a block in the spend&lt;br/&gt;&amp;gt; tree takes only ~12kb and contains the required state information.&lt;br/&gt;&amp;gt; &lt;br/&gt;It&amp;#39;s not the headers/tx-hashes of the blocks that I&amp;#39;m referring to, it&lt;br/&gt;is the confirmation and spend information relative to all txs and all&lt;br/&gt;outputs for each branch. This reverse navigation (i.e. utxo&lt;br/&gt;information) is essential, must be persistent and is branch-relative.&lt;br/&gt;&lt;br/&gt;&amp;gt; The blockchain is - by design - only eventually consistent across&lt;br/&gt;&amp;gt; nodes. Even if nodes would use the same &amp;#34;tip-selection&amp;#34; rules, you&lt;br/&gt;&amp;gt; cannot rely on all blocks being propagated and hence each&lt;br/&gt;&amp;gt; transaction having the same number of confirmations across all&lt;br/&gt;&amp;gt; nodes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; As a simpler example, if two miners both mine a block at&lt;br/&gt;&amp;gt; approximately the same time and send it to each other, then surely&lt;br/&gt;&amp;gt; they would want to continue mining on their own block. Otherwise&lt;br/&gt;&amp;gt; they would be throwing away their own reward.&lt;br/&gt;&lt;br/&gt;That&amp;#39;s not your concurrent validation scenario. In the scenario you&lt;br/&gt;described, the person chooses the weaker block of two that require&lt;br/&gt;validation because it&amp;#39;s better somehow, not because it&amp;#39;s his own&lt;br/&gt;(which does not require validation).&lt;br/&gt;&lt;br/&gt;&amp;gt; And yes, this can also happen over multiple blocks, but the chances&lt;br/&gt;&amp;gt; of consistency are vastly increased with each confirmation.&lt;br/&gt;&lt;br/&gt;Consistency is reached, despite seeing things at different times,&lt;br/&gt;because people use the same rules. If the economy ran on arbitrary&lt;br/&gt;block preference consistency would be elusive.&lt;br/&gt;&lt;br/&gt;&amp;gt; I am not talking about rejecting blocks, I am only talking choosing&lt;br/&gt;&amp;gt; on which tip to mine.&lt;br/&gt;&lt;br/&gt;This line of reasoning has me a bit baffled. Yet as I said, it&amp;#39;s not&lt;br/&gt;important to the question at hand. It is not likely to be optimal to&lt;br/&gt;validate concurrently even if you consider selection of a weaker block&lt;br/&gt;advantageous.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; If you intend this to be useful it has to help build the chain,&lt;br/&gt;&amp;gt;&amp;gt; not just rely on hardwiring checkpoints once rule changes are&lt;br/&gt;&amp;gt;&amp;gt; presumed to be buried deeply enough to do so (as the result of&lt;br/&gt;&amp;gt;&amp;gt; other implementations ).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I understand this approach, it was ours at one time. There is a &lt;br/&gt;&amp;gt;&amp;gt; significant difference, and your design is to some degree based&lt;br/&gt;&amp;gt;&amp;gt; on a failure to fully consider this. I encourage you to not&lt;br/&gt;&amp;gt;&amp;gt; assume any consensus-related detail is too small.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am not failing to consider this, and I don&amp;#39;t consider this too&lt;br/&gt;&amp;gt; small . But ensuring contextual transaction validity by &amp;#34;validate&lt;br/&gt;&amp;gt; =&amp;gt;  valid with rules X,Y,Z&amp;#34; and then checking the active rules&lt;br/&gt;&amp;gt; (softfork activation) on order validation, will give logically the&lt;br/&gt;&amp;gt; same results as &amp;#34;validate with X,Y,Z =&amp;gt; valid&amp;#34;. This is not&lt;br/&gt;&amp;gt; &amp;#34;hardwiring checkpoints&amp;#34; at all.&lt;br/&gt;&lt;br/&gt;Storing the validation flags with each tx is exactly what libbitcoin&lt;br/&gt;does (otherwise pre-validation would be infeasible). But that was not&lt;br/&gt;the full point. You said on this in response previously:&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ...height-based compliance as meta data of validation seems to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; be&lt;br/&gt;adequate and safe.&lt;br/&gt;&lt;br/&gt;I read this as encoding the height at which a fork historically&lt;br/&gt;activated. If you intend to track activation for each branch that will&lt;br/&gt;not be &amp;#34;height-based&amp;#34; it will be history based.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY7KTHAAoJEDzYwH8LXOFOI&#43;QH/RzX&#43;&#43;1TNLC9DEMWioE7SmMj&lt;br/&gt;yKOrP8WEkOnnrZdFKxVmwV9oZBekEvDABMnJmFiW5TMjsmPz7XwKAYzV0Y5L5oGU&lt;br/&gt;fZYo3IOPyr0dA9TcpP15gNziR6pFUBq/QTYB6BcbUvvlkJv6xjgIdedgDMEyREWU&lt;br/&gt;Hm/JU5g7gQUQd6MIDWbQ9FbYjtPuNSRQi851YfIn5mDivT4HuidaqQYMd9t5yS2Z&lt;br/&gt;FuoQBI6L5GTJIqml1bTwJ0wsA7&#43;ZseBEgMn1TT1ehy2v1FFJTojTpzIwG&#43;m3eiXg&lt;br/&gt;TxN3U/&#43;fNAj&#43;sKBb8Hq&#43;nb7DvgjvKHyHuyRryBju7yq5d5rsb6meXcoiOtAznP8=&lt;br/&gt;=fRXf&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:36&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdfgdmqgqpehcwz3xzg0vka7cn6hcx0sqgsgmk52f3dlute4lr0fgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujhumus</id>
    
      <title type="html">📅 Original date posted:2017-04-10 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdfgdmqgqpehcwz3xzg0vka7cn6hcx0sqgsgmk52f3dlute4lr0fgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujhumus" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdwnct90u44t3zlcj4fvdjn23y88spgj7tztf3qtlcf086t92lupcvue8aw&#39;&gt;nevent1q…e8aw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-10&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/08/2017 04:58 PM, Tomas wrote:&lt;br/&gt;&amp;gt; You seem to ignore here the difference between base load and peak &lt;br/&gt;&amp;gt; load. If Compact blocks/XThin with further optimizations can &lt;br/&gt;&amp;gt; presync nearly 100% of the transactions, and nodes can do as much &lt;br/&gt;&amp;gt; as possible when a transaction comes in, the time spent when a &lt;br/&gt;&amp;gt; block comes in can be minimized and a lot more transactions can be &lt;br/&gt;&amp;gt; handled with the same resources.&lt;br/&gt;&lt;br/&gt;Maybe it&amp;#39;s an issue of terminology. I have never used the terms&lt;br/&gt;base/peak load. However I&amp;#39;ve been trying to get across, poorly I&lt;br/&gt;suppose, that this is actually implemented in libbitcoin. I generally&lt;br/&gt;refer to it as tx pre-validation. I&amp;#39;ve also tried to relate that you&lt;br/&gt;are unnecessarily relating pre-validation to compactness. These are&lt;br/&gt;unrelated ideas and better considered independently. One can get&lt;br/&gt;nearly all of the benefit of pre-validation while still receiving&lt;br/&gt;blocks (vs. compact blocks). The advantage of compactness is reduced&lt;br/&gt;latency of the block announcement. The reason for pre-validation is&lt;br/&gt;amortization of the validation and/or storage cost of a block.&lt;br/&gt;&lt;br/&gt;&amp;gt; The reason for &amp;#34;splitting&amp;#34; is that for an incoming transaction the&lt;br/&gt;&amp;gt;  spent-state of the outputs being spent isn&amp;#39;t particularly&lt;br/&gt;&amp;gt; relevant as you seem to acknowledge. When the block comes in, the&lt;br/&gt;&amp;gt; actual output data isn&amp;#39;t relevant.&lt;br/&gt;&lt;br/&gt;As I understand it you would split tx inputs and outputs and send them&lt;br/&gt;independently, and that you intend this to be a P2P network&lt;br/&gt;optimization - not a consensus rule change. So my comments are based&lt;br/&gt;on those inferences. If we are talking about consensus changes this&lt;br/&gt;conversation will end up in an entirely different place.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t agree with the input/output relevance statements above. When a&lt;br/&gt;tx is announced the entire tx is relevant. It cannot be validated as&lt;br/&gt;outputs only. If it cannot be validated it cannot be stored by the&lt;br/&gt;node. Validating the outputs only would require the node store invalid&lt;br/&gt;transactions.&lt;br/&gt;&lt;br/&gt;I do accept that a double-spend detection is not an optimal criteria&lt;br/&gt;by which to discard a tx. One also needs fee information. But without&lt;br/&gt;double-spend knowledge the node has no rational way to defend itself&lt;br/&gt;against an infinity of transactions that spend the minimal fee but&lt;br/&gt;also have conflicting inputs (i.e. risking the fee only once). So tx&lt;br/&gt;(pool) validation requires double-spend knowledge and at least a&lt;br/&gt;summary from outputs.&lt;br/&gt;&lt;br/&gt;&amp;gt; The *only* thing that needs to be checked when a block comes in is &lt;br/&gt;&amp;gt; the order, and the spend-tree approach absolves the need to access &lt;br/&gt;&amp;gt; outputs here.&lt;br/&gt;&lt;br/&gt;Inputs that are already valid against prevouts remain valid assuming&lt;br/&gt;consensus rules have not changed. But any input that spends a coinbase&lt;br/&gt;must be validated for prevout height once there is a block context for&lt;br/&gt;validation. Additionally the set of txs must be validated for total&lt;br/&gt;size, sigops, and fee claim. So it&amp;#39;s not true that conflict detection&lt;br/&gt;alone is sufficient. Yet one can cache a tx&amp;#39;s size, sigops, fee and&lt;br/&gt;minimum height in a graph so that when a block appears that contains&lt;br/&gt;that tx the input validation can be skipped.&lt;br/&gt;&lt;br/&gt;Ignoring the (actual) requirement for the full tx on the pool&lt;br/&gt;validation, the required &amp;#34;order&amp;#34; validation at (compact or other)&lt;br/&gt;block arrival basically consists of traversing each tx, ensuring none&lt;br/&gt;are confirmed in a block below the fork point; traversing each each of&lt;br/&gt;its confirmed inputs, ensuring that none are spent in a block below&lt;br/&gt;the fork point; and ensuring the block&amp;#39;s set of transactions do not&lt;br/&gt;contain missing inputs and do not double spend internal to the block.&lt;br/&gt;&lt;br/&gt;This and the above-mentioned other required per-transaction block&lt;br/&gt;validation data can be cached to an in-memory structure as a potential&lt;br/&gt;optimization over navigating the store, and as you say, does not&lt;br/&gt;therefore require the actual outputs (script/value). But the original&lt;br/&gt;issue of needing full transactions for independent transaction&lt;br/&gt;validation remains.&lt;br/&gt;&lt;br/&gt;&amp;gt; As it also absolves the need for reorgs this greatly simplifies the&lt;br/&gt;&amp;gt; design.&lt;br/&gt;&lt;br/&gt;A reorg is conceptual and cannot be engineered out. What you are&lt;br/&gt;referring to is a restructuring of stored information as a consequence&lt;br/&gt;of a reorg. I don&amp;#39;t see this as related to the above. The ability to&lt;br/&gt;perform reorganization via a branch pointer swap is based not on the&lt;br/&gt;order or factoring of validation but instead on the amount of&lt;br/&gt;information stored. It requires more information to maintain multiple&lt;br/&gt;branches.&lt;br/&gt;&lt;br/&gt;Transactions have confirmation states, validation contexts and spender&lt;br/&gt;heights for potentially each branch of an unbounded number of&lt;br/&gt;branches. It is this requirement to maintain that state for each&lt;br/&gt;branch that makes this design goal a very costly trade-off of space&lt;br/&gt;and complexity for reorg speed. As I mentioned earlier, it&amp;#39;s the&lt;br/&gt;optimization for this scenario that I find questionable.&lt;br/&gt;&lt;br/&gt;&amp;gt; I am not sure why you say that a one-step approach is more &lt;br/&gt;&amp;gt; &amp;#34;test-friendly&amp;#34; as this seems to be unrelated.&lt;br/&gt;&lt;br/&gt;Full separation of concerns allows all validation to be performed in&lt;br/&gt;isolation from the store. As such validation state can be faked and&lt;br/&gt;provided to a tx, block or chain, for the purpose of test. Validation&lt;br/&gt;that interacts with a complex store during validation is harder to&lt;br/&gt;fake and tests can be hard to verify.&lt;br/&gt;&lt;br/&gt;It&amp;#39;s not really the &amp;#34;one-step&amp;#34; approach that make this possible. In&lt;br/&gt;fact that&amp;#39;s not an accurate description. Validation and storage of txs&lt;br/&gt;and blocks consists of four steps:&lt;br/&gt;&lt;br/&gt;(1) context free&lt;br/&gt;(2) contextual (chain-based)&lt;br/&gt;(3) expensive (script eval)&lt;br/&gt;(4) storage and notification&lt;br/&gt;&lt;br/&gt;So we have:&lt;br/&gt;&lt;br/&gt;tx.check()&lt;br/&gt;tx.accept(state)&lt;br/&gt;tx.connect(state)&lt;br/&gt;chain.organize(tx)&lt;br/&gt;&lt;br/&gt;block.check()&lt;br/&gt;block.accept(state)&lt;br/&gt;block.connect(state)&lt;br/&gt;chain.organize(block)&lt;br/&gt;&lt;br/&gt;...where &amp;#34;chain&amp;#34; is the store, from which &amp;#34;state&amp;#34; is derived. The&lt;br/&gt;state for an unconfirmed tx is based on the presumption that the tx&lt;br/&gt;would be mined in the next block. If that is not the case then its&lt;br/&gt;pre-validation can become invalidated. So from my perspective, this&lt;br/&gt;discussion is all about populating state. Anything that cannot be&lt;br/&gt;placed into that pattern would complicate both the conceptual model&lt;br/&gt;and testing. We&amp;#39;ve also seen that this isolation also has performance&lt;br/&gt;advantages, as it facilitates optimizations that are otherwise&lt;br/&gt;challenging.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; Despite the site&amp;#39;s explanation I cannot think of any reason to &lt;br/&gt;&amp;gt;&amp;gt; ever validate two blocks at the same time. You would always &lt;br/&gt;&amp;gt;&amp;gt; prioritize the block with the greatest PoW. Doing otherwise just &lt;br/&gt;&amp;gt;&amp;gt; slows down the net validation in all but the pathological case &lt;br/&gt;&amp;gt;&amp;gt; where a miner has produced an *invalid* block with *more* PoW &lt;br/&gt;&amp;gt;&amp;gt; than another valid block which arrived at the node within the &lt;br/&gt;&amp;gt;&amp;gt; same second. Rejecting a *valid* block with more PoW in favor of &lt;br/&gt;&amp;gt;&amp;gt; one with *less* &amp;#34;processing&amp;#34; is a hard fork, so you probably &lt;br/&gt;&amp;gt;&amp;gt; wouldn&amp;#39;t want to do that either. But with compact block &lt;br/&gt;&amp;gt;&amp;gt; validation times approaching 25ms it&amp;#39;s hard to justify stopping&lt;br/&gt;&amp;gt;&amp;gt; a block validation for any reason.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I don&amp;#39;t get what you are saying. Why pick the greatest PoW of two &lt;br/&gt;&amp;gt; competing blocks?&lt;br/&gt;&lt;br/&gt;Because choosing the lesser amount of work is non-consensus behavior.&lt;br/&gt;Under the same circumstances (i.e. having seen the same set of blocks)&lt;br/&gt;two nodes will disagree on whether there is one confirmation or no&lt;br/&gt;confirmations for a given tx. This disagreement will persist (i.e. why&lt;br/&gt;take the weaker block only to turn around and replace it with the&lt;br/&gt;stronger block that arrives a few seconds or minutes later). It stands&lt;br/&gt;to reason that if one rejects a stronger block under a race condition,&lt;br/&gt;one would reorg out a stronger block when a weaker block arrives a&lt;br/&gt;little after the stronger block. Does this &amp;#34;optimization&amp;#34; then apply&lt;br/&gt;to chains of blocks too?&lt;br/&gt;&lt;br/&gt;&amp;gt; If two blocks come in, an implementation is free to choose &lt;br/&gt;&amp;gt; whichever block to build on.&lt;br/&gt;&lt;br/&gt;Implementations are free to choose no blocks. That&amp;#39;s not really the issu&lt;br/&gt;e.&lt;br/&gt;&lt;br/&gt;&amp;gt; Choosing so is not a &amp;#34;hardfork&amp;#34;.&lt;br/&gt;&lt;br/&gt;Accepting a block that all previous implementations would have&lt;br/&gt;rejected under the same circumstance could be considered a hard fork,&lt;br/&gt;but you may be right.&lt;br/&gt;&lt;br/&gt;Yet the classification is not essential to my point. Nor is any&lt;br/&gt;material change required to validate blocks in parallel. We can do it&lt;br/&gt;using current design, but it doesn&amp;#39;t make sense to do so.&lt;br/&gt;&lt;br/&gt;&amp;gt; Parallel validation simply makes it easier to make an optimal &lt;br/&gt;&amp;gt; choice, for if two blocks come in, the one that is validated &lt;br/&gt;&amp;gt; fastest can be build upon without the risk of validationless &lt;br/&gt;&amp;gt; mining.&lt;br/&gt;&lt;br/&gt;This is not an optimization, since it should always be optimal to&lt;br/&gt;validate blocks independently. Performing multiple together inherently&lt;br/&gt;slows both of them. And the advantage to not validating *either* would&lt;br/&gt;remain.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; I am also interested in your previous comments about soft forks. &lt;br/&gt;&amp;gt;&amp;gt; These are material considerations that Greg touched on but it &lt;br/&gt;&amp;gt;&amp;gt; doesn&amp;#39;t sound like you fully appreciate just yet. When a tx is &lt;br/&gt;&amp;gt;&amp;gt; pre-validated the rules applied must be the same rules as those &lt;br/&gt;&amp;gt;&amp;gt; of some future block. Yet a tx can be included in more than one &lt;br/&gt;&amp;gt;&amp;gt; block (different branches). Across branches and even in one &lt;br/&gt;&amp;gt;&amp;gt; branch, validation rules change, and can change back. The&lt;br/&gt;&amp;gt;&amp;gt; changes are based on accumulated branch history. Pre-validation&lt;br/&gt;&amp;gt;&amp;gt; can later become invalidated, and differently in different&lt;br/&gt;&amp;gt;&amp;gt; branches. And maintaining proper context requires either storing&lt;br/&gt;&amp;gt;&amp;gt; state that you are apparently not storing, or invalidating&lt;br/&gt;&amp;gt;&amp;gt; optimizations. Based on your comments you do not seem to be&lt;br/&gt;&amp;gt;&amp;gt; accounting for this in your storage assumptions or in your&lt;br/&gt;&amp;gt;&amp;gt; results. A recent post by Greg highlights the complexity and&lt;br/&gt;&amp;gt;&amp;gt; consensus criticality of these considerations.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Frankly, I think this is a bit of an exaggeration. Soft forks are &lt;br/&gt;&amp;gt; counted on a hand, and I don&amp;#39;t think there are many - if any - &lt;br/&gt;&amp;gt; transactions in the current chain that have changed compliance &lt;br/&gt;&amp;gt; based on height.&lt;br/&gt;&lt;br/&gt;Hope is a bug.&lt;br/&gt;&lt;br/&gt;&amp;gt; This makes this a compliance issue and not a performance issue&lt;br/&gt;&lt;br/&gt;You cannot have a useful performance measure without full compliance.&lt;br/&gt;&lt;br/&gt;&amp;gt; and the solution I have explained, to add height-based compliance &lt;br/&gt;&amp;gt; as meta data of validation seems to be adequate and safe.&lt;br/&gt;&lt;br/&gt;If you intend this to be useful it has to help build the chain, not&lt;br/&gt;just rely on hardwiring checkpoints once rule changes are presumed to&lt;br/&gt;be buried deeply enough to do so (as the result of other implementations&lt;br/&gt;).&lt;br/&gt;&lt;br/&gt;I understand this approach, it was ours at one time. There is a&lt;br/&gt;significant difference, and your design is to some degree based on a&lt;br/&gt;failure to fully consider this. I encourage you to not assume any&lt;br/&gt;consensus-related detail is too small.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; The hash table store that I described can fully navigate the &lt;br/&gt;&amp;gt;&amp;gt; block tree and transaction DAG, since the stored tx, parent and &lt;br/&gt;&amp;gt;&amp;gt; point hashes are also natural keys and each link is navigable in &lt;br/&gt;&amp;gt;&amp;gt; constant time. It is also lock-free, can concurrently write any &lt;br/&gt;&amp;gt;&amp;gt; number of blocks during initial block download and supports &lt;br/&gt;&amp;gt;&amp;gt; read/write concurrency. It has successfully indexed and stored &lt;br/&gt;&amp;gt;&amp;gt; the entire blockchain from the P2P network in 16 minutes &lt;br/&gt;&amp;gt;&amp;gt; (locally). It also stores both confirmed and unconfirmed &lt;br/&gt;&amp;gt;&amp;gt; transactions in the same store, so there is nothing to write&lt;br/&gt;&amp;gt;&amp;gt; when a block is confirmed except for the block header/hashes and&lt;br/&gt;&amp;gt;&amp;gt;  updates to spender heights for any output spent by the new &lt;br/&gt;&amp;gt;&amp;gt; block&amp;#39;s txs. It is similarly capable of storage in the block &lt;br/&gt;&amp;gt;&amp;gt; table of weak chain blocks...&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think I get the gist of your approach and it sounds very &lt;br/&gt;&amp;gt; interesting and I will definitely dive in deeper.&lt;br/&gt;&lt;br/&gt;It&amp;#39;s worth noting that many of your stated objectives, including&lt;br/&gt;modularity, developer platform, store isolation, consensus rule&lt;br/&gt;isolation (including optional use of libbitcoinconsensus) are implemente&lt;br/&gt;d.&lt;br/&gt;&lt;br/&gt;It seems like you are doing some good work and it&amp;#39;s not my intent to&lt;br/&gt;discourage that. Libbitcoin is open source, I don&amp;#39;t get paid and I&amp;#39;m&lt;br/&gt;not selling anything. But if you are going down this path you should&lt;br/&gt;be aware of it and may benefit from our successes as well as some of&lt;br/&gt;the other stuff :). And hopefully we can get the benefit of your&lt;br/&gt;insights as well.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY7DUUAAoJEDzYwH8LXOFOTB0H/jDtfnC6B9CtGrCTPtET&#43;dDx&lt;br/&gt;r0uQ0SXo40AUTplyKQ228rVkjmZyczTOtIP5uNvKpvlr9wW8TyYzFzNW4RNCNtdP&lt;br/&gt;xZ9OjrfC24J2n&#43;m1b9z9&#43;CA85qAQxzLztBybDYzXCJG/dQ&#43;y&#43;&#43;7BR&#43;rILGiRWUhs&lt;br/&gt;lROeaEMqlDl0fy5J3dlpe0RGZJPSRqlxW7EBNHYc3IEDNL&#43;j5m80/tWb6H5a3Mv8&lt;br/&gt;7GTr6ulZef/04u/hRTXQ0ONy0MAIoi63HNHQuR0wF70ewGVmtFY4RHXEnNi&#43;ucIG&lt;br/&gt;w3QZuNTPtjqIS&#43;ZbpFuqBop&#43;L3CtId9&#43;jxaBAao2tEieoIUl/faLjdTPP&#43;r0n6A=&lt;br/&gt;=5mz8&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:35&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsv6wcnhax97vv0q6gmuq58a3t6t6p00yye3gzkxge55evhrpc0kvczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpurcz3yt</id>
    
      <title type="html">📅 Original date posted:2017-04-08 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsv6wcnhax97vv0q6gmuq58a3t6t6p00yye3gzkxge55evhrpc0kvczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpurcz3yt" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxyra24nkjm75wwdcvzhxtp987th9qaku9wdv2qrev82jq9s2ualqej37na&#39;&gt;nevent1q…37na&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-08&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/06/2017 05:17 PM, Tomas wrote:&lt;br/&gt;&amp;gt; Thanks, but I get the impression that the similarity is rather &lt;br/&gt;&amp;gt; superficial.&lt;br/&gt;&lt;br/&gt;My point was that &amp;#34;Using a storage engine without UTXO-index&amp;#34; has been&lt;br/&gt;done, and may be a useful reference, not that implementation details&lt;br/&gt;are the same.&lt;br/&gt;&lt;br/&gt;&amp;gt; To address your points:&lt;br/&gt;&lt;br/&gt;Below you addressed two points I made regarding the downside of the&lt;br/&gt;original libbitcoin implementation. These were initial learnings that&lt;br/&gt;informed future implementations (also without a UTXO index). These&lt;br/&gt;were not comparisons to your implementation.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; (1) higher than necessary storage space requirement due to&lt;br/&gt;&amp;gt;&amp;gt; storing the indexing data required for correlate the spends, and&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hmm. No. Spends are simply scanned in the spend-tree (full tree, &lt;br/&gt;&amp;gt; prunable, fully 5.6gb), or caught by the spend-index (bit index, &lt;br/&gt;&amp;gt; non-prunable, fully 180mb). Neither impose significant storage &lt;br/&gt;&amp;gt; requirements.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; 2) higher than necessary validation complexity and cost in terms&lt;br/&gt;&amp;gt;&amp;gt; of computing the spent-ness (including spender height) of an&lt;br/&gt;&amp;gt;&amp;gt; output.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; With the exception of de-linking (not deleted) in the case of&lt;br/&gt;&amp;gt;&amp;gt; reorgs, the entire store is append only, implemented in a small&lt;br/&gt;&amp;gt;&amp;gt; set of memory mapped file&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I guess this is the key difference. As the spend-tree stores the&lt;br/&gt;&amp;gt; spend information in a tree structure, no reorgs are required, and&lt;br/&gt;&amp;gt; the resulting code is actually much less complex.&lt;br/&gt;&lt;br/&gt;The references to &amp;#34;higher than necessary storage&amp;#34; and &amp;#34;higher than&lt;br/&gt;necessary validation cost&amp;#34; are explicitly relative statements,&lt;br/&gt;comparing earlier and later libbitcoin implementations.&lt;br/&gt;&lt;br/&gt;It is not clear to me how you are relating both the storage cost&lt;br/&gt;(&amp;#34;Hmm. No. ... Neither impose significant storage requirements.&amp;#34;) and&lt;br/&gt;code complexity (&amp;#34;... resulting code is actually much less complex&amp;#34;)&lt;br/&gt;of your tx ordering software to my statements. Do you think I am wrong&lt;br/&gt;and libbitcoin v3 is not actually more space and code efficient than&lt;br/&gt;libbitcoin v2?&lt;br/&gt;&lt;br/&gt;But given that you have thrown some numbers and ideas out in a request&lt;br/&gt;for feedback, I&amp;#39;m happy to give you some based on several years of&lt;br/&gt;experience working closely with these issues.&lt;br/&gt;&lt;br/&gt;First, I remain confused on your comments pertaining to UTXO growth&lt;br/&gt;and network protocol. I followed your conversation with Greg and it&lt;br/&gt;remains unclear to me. From what I understand you have isolated order&lt;br/&gt;(double spend) from script validation. I think we all understand that&lt;br/&gt;script validation requires inputs and outputs while double spend&lt;br/&gt;detection requires correlation of inputs. What I do not understand is&lt;br/&gt;your choice of optimization axis.&lt;br/&gt;&lt;br/&gt;Detection of double spend is not useful in isolation. One must also&lt;br/&gt;validate scripts, which requires outputs. I can see that there is an&lt;br/&gt;opportunity to reject blocks (within the same branch) faster by&lt;br/&gt;validating for double spends before validating script. But unconfirmed&lt;br/&gt;transactions do not exist in a branch, and are therefore not truly&lt;br/&gt;conflicting, until they are mined. And even after they are mined&lt;br/&gt;conflicting txs remain potentially valid in other branches. So&lt;br/&gt;rejecting txs due to conflict comes down to a denial of service&lt;br/&gt;policy, which ultimately must be based on fee increment (e.g. RBF).&lt;br/&gt;But fees are based on the amount of the output value that remains&lt;br/&gt;unspent in the transaction. So this in turn requires the retrieval of&lt;br/&gt;outputs.&lt;br/&gt;&lt;br/&gt;And yet the remaining scenario of fast rejection of invalid blocks is&lt;br/&gt;not a meaningful optimization. Optimizing for the case where a block&lt;br/&gt;has valid and sufficient PoW and yet is invalid (for double spend) is&lt;br/&gt;counterproductive. And even so, the txs within the invalid block may&lt;br/&gt;be entirely valid independent of the block, so you are back to looking&lt;br/&gt;up their outputs to obtain fees in the case of a double spend or to&lt;br/&gt;validate script otherwise. In all cases you need to get the outputs.&lt;br/&gt;&lt;br/&gt;&amp;gt; Bitcrust simply scans the tree. Although earlier designs used a &lt;br/&gt;&amp;gt; skip-list, it turns out that accompanied by a spent-index lagging a&lt;br/&gt;&amp;gt; few blocks behind, raw scanning is faster then anything even though&lt;br/&gt;&amp;gt; it needs to scan ~5 blocks times ~4000 inputs before reaching the&lt;br/&gt;&amp;gt; first spent-index,  the actual scan is highly cache efficient and&lt;br/&gt;&amp;gt; little more then a &amp;#34;REP SCASQ&amp;#34;, reaching sub-microsecond per input&lt;br/&gt;&amp;gt; on each core *including* the lookup in the spend index.&lt;br/&gt;&lt;br/&gt;I realize that you see the implementation of the ordering validation&lt;br/&gt;as interesting detail, but I find it hard to justify contemplating the&lt;br/&gt;implementation in isolation from the output lookup requirement. And if&lt;br/&gt;one must looking up both outputs and spends for each validation, it&lt;br/&gt;makes more sense to co-locate that data.&lt;br/&gt;&lt;br/&gt;Recovering in one step all data necessary to validate a tx has real&lt;br/&gt;advantages over either interleaving queries and validation or&lt;br/&gt;splitting input vs. output validation queries into two steps. It is a&lt;br/&gt;significantly more test-friendly approach, has better performance&lt;br/&gt;characteristics, and simplifies code. I cannot see any reason to&lt;br/&gt;perform the data read for double spend validation in isolation of that&lt;br/&gt;for script validation.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; I don&amp;#39;t follow this part, maybe you could clarify. A spends&lt;br/&gt;&amp;gt;&amp;gt; index grows with the size of the spend set (forever) as it cannot&lt;br/&gt;&amp;gt;&amp;gt; be pruned, which certainly exceeds the size of the UTXO set&lt;br/&gt;&amp;gt;&amp;gt; (unless nothing is spent). The advantage is that you don&amp;#39;t have&lt;br/&gt;&amp;gt;&amp;gt; to keep rewriting the store when you use a spends set (because&lt;br/&gt;&amp;gt;&amp;gt; the store can be append only).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My point is, that the spend tree grows per *input* of a&lt;br/&gt;&amp;gt; transaction instead of per *output* of a transaction, because this&lt;br/&gt;&amp;gt; is what is scanned on order validation.&lt;br/&gt;&lt;br/&gt;I think the conversation with Greg resolved my questions in this area.&lt;br/&gt;What I find interesting is the reliance on Core&amp;#39;s UTXO store to&lt;br/&gt;implement script validation. This is not, &amp;#34;a storage engine without a&lt;br/&gt;UTXO-index&amp;#34; as it has a dependency on Core&amp;#39;s UTXO index.&lt;br/&gt;&lt;br/&gt;On the other hand the initial libbitcoin implementation that I&lt;br/&gt;described to you is *actually* a bitcoin store with no UTXO index. The&lt;br/&gt;current implementation is as well, however it is implemented&lt;br/&gt;differently and is much more efficient than the original. How it&lt;br/&gt;compares to your design is not really the point and impossible to&lt;br/&gt;measure until you have production code.&lt;br/&gt;&lt;br/&gt;I can say however that your assumptions about the storage (and&lt;br/&gt;performance) superiority of the design, or at least its&lt;br/&gt;implementation, seem unfounded. If you are storing more index data&lt;br/&gt;(5.6gb) than 32 bits per output, you are using more space than&lt;br/&gt;production implementations. As for complexity, I don&amp;#39;t think you&amp;#39;ll&lt;br/&gt;get any simpler than a loop to populate spend heights from a hash&lt;br/&gt;table and a loop to test their integer values.&lt;br/&gt;&lt;br/&gt;&amp;gt; The spend tree can be pruned because the spend index (~200mb)&lt;br/&gt;&amp;gt; catches early spends.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Disregarding the baseload script validation, the peak load order &lt;br/&gt;&amp;gt; validation of bitcrust is more negatively effected by a transaction&lt;br/&gt;&amp;gt; with many inputs than by a transaction of many outputs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I encourage you to check out the results at &lt;a href=&#34;https://bitcrust.org&#34;&gt;https://bitcrust.org&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;If by results you are referring to performance numbers, it&amp;#39;s very hard&lt;br/&gt;to draw any conclusions without a full benchmark. It&amp;#39;s great that if&lt;br/&gt;you are able to boost Core, but from my perspective the numbers aren&amp;#39;t&lt;br/&gt;especially compelling.&lt;br/&gt;&lt;br/&gt;As for some of the site&amp;#39;s comments, these again cause me to question&lt;br/&gt;the optimization choices:&lt;br/&gt;&lt;br/&gt;&amp;#34;Blocks can be verified in parallel...&amp;#34;&lt;br/&gt;&lt;br/&gt;Despite the site&amp;#39;s explanation I cannot think of any reason to ever&lt;br/&gt;validate two blocks at the same time. You would always prioritize the&lt;br/&gt;block with the greatest PoW. Doing otherwise just slows down the net&lt;br/&gt;validation in all but the pathological case where a miner has produced&lt;br/&gt;an *invalid* block with *more* PoW than another valid block which&lt;br/&gt;arrived at the node within the same second. Rejecting a *valid* block&lt;br/&gt;with more PoW in favor of one with *less* &amp;#34;processing&amp;#34; is a hard fork,&lt;br/&gt;so you probably wouldn&amp;#39;t want to do that either. But with compact&lt;br/&gt;block validation times approaching 25ms it&amp;#39;s hard to justify stopping&lt;br/&gt;a block validation for any reason.&lt;br/&gt;&lt;br/&gt;That&amp;#39;s not to say parallel block validation difficult to do. If you&lt;br/&gt;can validate one block&amp;#39;s full set of inputs in parallel (which is not&lt;br/&gt;novel) doing the same with additional blocks has trivial additional&lt;br/&gt;complexity.&lt;br/&gt;&lt;br/&gt;&amp;#34;The storage engine is optimized from ground up for&lt;br/&gt;xthin/compact-block synchronization. This ensures that when the&lt;br/&gt;majority of transactions are already synced, incoming blocks can be&lt;br/&gt;verified at minimal resources using order-validation only.&amp;#34;&lt;br/&gt;&lt;br/&gt;There are two distinct considerations here. One is pre-validation of&lt;br/&gt;txs and the other is compact announcements. Just to be clear, the&lt;br/&gt;former does not require the latter. Libbitcoin for example fully&lt;br/&gt;exploits the former, independent of compactness. With a low min fee&lt;br/&gt;setting and a few peers it is typical for the node to have&lt;br/&gt;pre-validated 100% of non-coinbase txs. Averages at 1 satoshi per byte&lt;br/&gt;are about 99.9%, effectively amortizing all script validation cost. So&lt;br/&gt;this optimization is neither novel nor limited to compactness (which&lt;br/&gt;is about reducing latency).&lt;br/&gt;&lt;br/&gt;I am also interested in your previous comments about soft forks. These&lt;br/&gt;are material considerations that Greg touched on but it doesn&amp;#39;t sound&lt;br/&gt;like you fully appreciate just yet. When a tx is pre-validated the&lt;br/&gt;rules applied must be the same rules as those of some future block.&lt;br/&gt;Yet a tx can be included in more than one block (different branches).&lt;br/&gt;Across branches and even in one branch, validation rules change, and&lt;br/&gt;can change back. The changes are based on accumulated branch history.&lt;br/&gt;Pre-validation can later become invalidated, and differently in&lt;br/&gt;different branches. And maintaining proper context requires either&lt;br/&gt;storing state that you are apparently not storing, or invalidating&lt;br/&gt;optimizations. Based on your comments you do not seem to be accounting&lt;br/&gt;for this in your storage assumptions or in your results. A recent post&lt;br/&gt;by Greg highlights the complexity and consensus criticality of these&lt;br/&gt;considerations.&lt;br/&gt;&lt;br/&gt;By &amp;#34;order-validation only&amp;#34; I believe you are referring to a&lt;br/&gt;determination of whether the txs organized into a candidate block&lt;br/&gt;double spend internal to the block or in the ancestry. Assuming that&lt;br/&gt;one recovers outputs at the same time (and presumably from the same&lt;br/&gt;location) as spender height (which is required both for validating&lt;br/&gt;spends of a coinbase and for determination of whether the spend is&lt;br/&gt;above the fork point), this determination is straightforward. One&lt;br/&gt;simply loops over the spender records and invalidates a tx that has a&lt;br/&gt;spender height not above the fork point (while also validating&lt;br/&gt;coinbase maturity using the same height). A loop over the set of&lt;br/&gt;in-memory spend heights of each output a tx is certainly fast enough&lt;br/&gt;to not be worthy of any further optimization. And as previously&lt;br/&gt;discussed, the population of the spender heights is not even a&lt;br/&gt;material additional cost over obtaining the (necessary) output scripts.&lt;br/&gt;&lt;br/&gt;The hash table store that I described can fully navigate the block&lt;br/&gt;tree and transaction DAG, since the stored tx, parent and point hashes&lt;br/&gt;are also natural keys and each link is navigable in constant time. It&lt;br/&gt;is also lock-free, can concurrently write any number of blocks during&lt;br/&gt;initial block download and supports read/write concurrency. It has&lt;br/&gt;successfully indexed and stored the entire blockchain from the P2P&lt;br/&gt;network in 16 minutes (locally). It also stores both confirmed and&lt;br/&gt;unconfirmed transactions in the same store, so there is nothing to&lt;br/&gt;write when a block is confirmed except for the block header/hashes and&lt;br/&gt;updates to spender heights for any output spent by the new block&amp;#39;s&lt;br/&gt;txs. It is similarly capable of storage in the block table of weak&lt;br/&gt;chain blocks...&lt;br/&gt;&lt;br/&gt;But one thing it does *not* do is maintain spender and fork state for&lt;br/&gt;multiple branches. In other words it is optimized for one long chain,&lt;br/&gt;not multiple long branches. Your approach has a limited (in terms of&lt;br/&gt;double spend identification) optimization for reorganization (i.e. a&lt;br/&gt;change to the strong chain identity). However, applying that&lt;br/&gt;optimization to the full store and supportive of soft forks, as&lt;br/&gt;opposed to just input ordering, is a much larger task than it appears&lt;br/&gt;you have attempted. I know, as I created a design for that approach&lt;br/&gt;and after some time scrapped it. The cost of performing the&lt;br/&gt;reorganization in the above store is low enough and very long reorgs&lt;br/&gt;infrequent enough, for the optimization to be counterproductive. It&amp;#39;s&lt;br/&gt;elegant in theory, but in practice it increases storage requirements,&lt;br/&gt;impacts general performance and significantly increases complexity.&lt;br/&gt;Bitcoin&amp;#39;s data model pushes one away from a tree design in that it is&lt;br/&gt;always pruning the tree. Having the tree is necessary, but it&amp;#39;s not&lt;br/&gt;something to optimize for.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; Regards, Tomas&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Fri, Apr 7, 2017, at 01:38, Eric Voskuil wrote: On 04/06/2017&lt;br/&gt;&amp;gt; 03:12 PM, Tomas via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi Tomas,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I have been working on a bitcoin implementation that uses a &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; different approach to indexing for verifying the order of &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; transactions. Instead of using an index of unspent outputs,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; double spends are verified by using a spend-tree where spends&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; are scanned against spent outputs instead of unspent&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; outputs.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is the approach that genjix used in libbitcoin version2. With&lt;br/&gt;&amp;gt; the exception of de-linking (not deleted) in the case of reorgs,&lt;br/&gt;&amp;gt; the entire store is append only, implemented in a small set of&lt;br/&gt;&amp;gt; memory mapped files. The downsides to the approach are:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (1) higher than necessary storage space requirement due to storing&lt;br/&gt;&amp;gt; the indexing data required for correlate the spends, and&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (2) higher than necessary validation complexity and cost in terms&lt;br/&gt;&amp;gt; of computing the spent-ness (including spender height) of an&lt;br/&gt;&amp;gt; output.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; His implementation used a hash table, so performance-wise it did&lt;br/&gt;&amp;gt; quite well and would theoretically outperform a tree, O(1) vs.&lt;br/&gt;&amp;gt; O(log2(N)).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This allows for much better concurrency, as not only blocks,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; but also individual inputs can be verified fully in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; parallel.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I was successful in parallelizing input validation (across the&lt;br/&gt;&amp;gt; inputs of an unconfirmed tx and across the set of all inputs in a&lt;br/&gt;&amp;gt; block) using the v2 store. However, it is not the case that the&lt;br/&gt;&amp;gt; spends approach is necessary for concurrency.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To resolve the above two problems the version3 store does not use&lt;br/&gt;&amp;gt; a spends table/index. Nor does it store any table of UTXOs. Yet &lt;br/&gt;&amp;gt; validation is highly parallelized. Instead of additional indexes&lt;br/&gt;&amp;gt; it uses the tx hash table, augmented with 32 bits per output for&lt;br/&gt;&amp;gt; spender height. So there is a O(1) cost of finding the tx and a&lt;br/&gt;&amp;gt; O(N) cost of finding the spender height where N is the number of&lt;br/&gt;&amp;gt; outputs in the tx. But because the number of outputs in a tx is&lt;br/&gt;&amp;gt; bounded (by block size) this is constant time in the number of&lt;br/&gt;&amp;gt; transactions.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This works out much faster than the spends table, and without the &lt;br/&gt;&amp;gt; storage cost or complexity disadvantages. It also scales with &lt;br/&gt;&amp;gt; available hardware, as the memory mapped files become in-memory&lt;br/&gt;&amp;gt; hash tables. For low memory machines we found it was important to&lt;br/&gt;&amp;gt; implement an opaque UTXO cache to limit paging, but for higher end&lt;br/&gt;&amp;gt; systems zero cache is optimal.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I am sharing this not only to ask for your feedback, but also&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to call for a clear separation of protocol and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; implementations: As this solution, reversing the costs of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; outputs and inputs, seems to have excellent performance&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; characteristics (as shown in the test results), updates to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the protocol addressing the UTXO growth, might not be worth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; considering *protocol improvements* and it might be best to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; address these concerns as implementation details.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I don&amp;#39;t follow this part, maybe you could clarify. A spends index &lt;br/&gt;&amp;gt; grows with the size of the spend set (forever) as it cannot be&lt;br/&gt;&amp;gt; pruned, which certainly exceeds the size of the UTXO set (unless&lt;br/&gt;&amp;gt; nothing is spent). The advantage is that you don&amp;#39;t have to keep&lt;br/&gt;&amp;gt; rewriting the store when you use a spends set (because the store&lt;br/&gt;&amp;gt; can be append only).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Feel free to message me if you&amp;#39;d like to discuss in more detail, or&lt;br/&gt;&amp;gt; to continue on the libbitcoin mailing list (copied).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY6WY4AAoJEDzYwH8LXOFO&#43;wwH/1uE/&#43;P1&#43;KLJWTkcttVWsO//&lt;br/&gt;QAlikqg0HLFDtkd5jaYsBtx6op/Uz2o53ohZwVJt71ITCjQQI&#43;yYK2RjBX92xIhd&lt;br/&gt;K0rE901Np4PfMFbDA60LB0c/65aPlkUCr3f2PYIlizJs4Qq5Kn2sIpC5v9T3B7H4&lt;br/&gt;MPq5UJwoPP&#43;m3RZ9TSsVyee3ejHYXM7y2VNNnnWD3edIioA3cLh&#43;y6sczpco2Hpa&lt;br/&gt;P&#43;GSDnv2cwV6FA22Is1Z15tpfLyQnPrrGJ9QEJJ15vnhCTxZe0j1PQ4y&#43;OOZh5Iq&lt;br/&gt;mqBkGRNPeUnPAPDM&#43;/qvhr2kUyxFbaJNtwg5HDGHWFOq5B/YeKxVk8Qjnk&#43;9epA=&lt;br/&gt;=XRKl&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:33&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvhfcgqlg56j8vcz73fa0ff5csxzv4dddw97hdqznjmkmkzpjhtpgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuy0x5dn</id>
    
      <title type="html">📅 Original date posted:2017-04-06 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvhfcgqlg56j8vcz73fa0ff5csxzv4dddw97hdqznjmkmkzpjhtpgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuy0x5dn" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsy7z049llruc4rkl2uxe7qy82p7ltvhh524fy52em5q6z6maaa37qw475mx&#39;&gt;nevent1q…75mx&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-06&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 04/06/2017 03:12 PM, Tomas via bitcoin-dev wrote:&lt;br/&gt;&lt;br/&gt;Hi Tomas,&lt;br/&gt;&lt;br/&gt;&amp;gt; I have been working on a bitcoin implementation that uses a&lt;br/&gt;&amp;gt; different approach to indexing for verifying the order of&lt;br/&gt;&amp;gt; transactions. Instead of using an index of unspent outputs, double&lt;br/&gt;&amp;gt; spends are verified by using a spend-tree where spends are scanned&lt;br/&gt;&amp;gt; against spent outputs instead of unspent outputs.&lt;br/&gt;&lt;br/&gt;This is the approach that genjix used in libbitcoin version2. With the&lt;br/&gt;exception of de-linking (not deleted) in the case of reorgs, the&lt;br/&gt;entire store is append only, implemented in a small set of memory&lt;br/&gt;mapped files. The downsides to the approach are:&lt;br/&gt;&lt;br/&gt;(1) higher than necessary storage space requirement due to storing the&lt;br/&gt;indexing data required for correlate the spends, and&lt;br/&gt;&lt;br/&gt;(2) higher than necessary validation complexity and cost in terms of&lt;br/&gt;computing the spent-ness (including spender height) of an output.&lt;br/&gt;&lt;br/&gt;His implementation used a hash table, so performance-wise it did quite&lt;br/&gt;well and would theoretically outperform a tree, O(1) vs. O(log2(N)).&lt;br/&gt;&lt;br/&gt;&amp;gt; This allows for much better concurrency, as not only blocks, but&lt;br/&gt;&amp;gt; also individual inputs can be verified fully in parallel.&lt;br/&gt;&lt;br/&gt;I was successful in parallelizing input validation (across the inputs&lt;br/&gt;of an unconfirmed tx and across the set of all inputs in a block)&lt;br/&gt;using the v2 store. However, it is not the case that the spends&lt;br/&gt;approach is necessary for concurrency.&lt;br/&gt;&lt;br/&gt;To resolve the above two problems the version3 store does not use a&lt;br/&gt;spends table/index. Nor does it store any table of UTXOs. Yet&lt;br/&gt;validation is highly parallelized. Instead of additional indexes it&lt;br/&gt;uses the tx hash table, augmented with 32 bits per output for spender&lt;br/&gt;height. So there is a O(1) cost of finding the tx and a O(N) cost of&lt;br/&gt;finding the spender height where N is the number of outputs in the tx.&lt;br/&gt;But because the number of outputs in a tx is bounded (by block size)&lt;br/&gt;this is constant time in the number of transactions.&lt;br/&gt;&lt;br/&gt;This works out much faster than the spends table, and without the&lt;br/&gt;storage cost or complexity disadvantages. It also scales with&lt;br/&gt;available hardware, as the memory mapped files become in-memory hash&lt;br/&gt;tables. For low memory machines we found it was important to implement&lt;br/&gt;an opaque UTXO cache to limit paging, but for higher end systems zero&lt;br/&gt;cache is optimal.&lt;br/&gt;&lt;br/&gt;&amp;gt; I am sharing this not only to ask for your feedback, but also to&lt;br/&gt;&amp;gt; call for a clear separation of protocol and implementations: As&lt;br/&gt;&amp;gt; this solution, reversing the costs of outputs and inputs, seems to&lt;br/&gt;&amp;gt; have excellent performance characteristics (as shown in the test&lt;br/&gt;&amp;gt; results), updates to the protocol addressing the UTXO growth, might&lt;br/&gt;&amp;gt; not be worth considering *protocol improvements* and it might be&lt;br/&gt;&amp;gt; best to address these concerns as implementation details.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t follow this part, maybe you could clarify. A spends index&lt;br/&gt;grows with the size of the spend set (forever) as it cannot be pruned,&lt;br/&gt;which certainly exceeds the size of the UTXO set (unless nothing is&lt;br/&gt;spent). The advantage is that you don&amp;#39;t have to keep rewriting the&lt;br/&gt;store when you use a spends set (because the store can be append only).&lt;br/&gt;&lt;br/&gt;Feel free to message me if you&amp;#39;d like to discuss in more detail, or to&lt;br/&gt;continue on the libbitcoin mailing list (copied).&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY5tFpAAoJEDzYwH8LXOFOcMgH/2mw5iOvUYNwvZ2z0KKTSUOA&lt;br/&gt;Pd8d5mKoWvd94QxhQ&#43;RyTbkEkMhHl75&#43;zcBgRsfUTtZlBIe/Z0&#43;OgVIN6ibEw&#43;WD&lt;br/&gt;w7k3HqgQi9gLgydEelxTAX&#43;z3dJ24n4kCCdKAmZbBuK&#43;Yr/7AViugbEqYemKepku&lt;br/&gt;pRWZZS74MUvrYesc0xPn4Ao3DTzMjjY0K2mkuqV8jlwdfZjlAQX9pTx&#43;iSCuMhkd&lt;br/&gt;HJ8w7s8QnjVnUeOlLe29mZwaFJPyOTLJMqgDE6s2sXacAy5QQbVCatygvDQ8A/wC&lt;br/&gt;ktBnKPFb2lGX3bGKu/KwABegBy/hyec&#43;NP0wFR&#43;0MVivCwTK1&#43;SjeHu5MNOSVlM=&lt;br/&gt;=tfVj&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:59:33&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsxpmxrm2luusmf6r8pjf425ehjetxhxy89z6u53yykekvyyf8zakczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudrrv5d</id>
    
      <title type="html">📅 Original date posted:2017-04-01 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsxpmxrm2luusmf6r8pjf425ehjetxhxy89z6u53yykekvyyf8zakczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudrrv5d" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsp8p5w75vx9ngf5gcta9s62f4yn9qhtpzngvy6552muv0r7zjmejc0eq7t4&#39;&gt;nevent1q…q7t4&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-01&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;On 03/31/2017 11:18 PM, Jared Lee Richardson wrote:&lt;br/&gt;&amp;gt;&amp;gt; If a typical personal computer cannot run a node there is no&lt;br/&gt;&amp;gt;&amp;gt; security.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If you can&amp;#39;t describe an attack that is made possible when typical &lt;br/&gt;&amp;gt; personal computers can&amp;#39;t run nodes, this kind of logic has no place&lt;br/&gt;&amp;gt; in this discussion.&lt;br/&gt;&lt;br/&gt;&amp;#34;Governments are good at cutting off the heads of a centrally&lt;br/&gt;controlled networks...&amp;#34;&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: GnuPG v2.0.22 (GNU/Linux)&lt;br/&gt;&lt;br/&gt;iQEcBAEBCAAGBQJY31m0AAoJEDzYwH8LXOFOayIH/0DcWukHZUVTV8952mkWnqjS&lt;br/&gt;RCM8StQOuuTQ/2elvKoZa/nEv1PvpOQEO/AxJDEdIKOqjdXoc/QdZT/Qj834yyFi&lt;br/&gt;mmNLm3x8voO7rTFEVtBrXQ4VYO7Zj5gVy6nRyMrhSGtzg4XqYiyGVoijiumfXOvq&lt;br/&gt;ejLwyWJEf8klBwegIPkX4XX6UYjNyBt&#43;E32Je7NxUbi54EPDRszWpEGGKfJrWiCQ&lt;br/&gt;JO2jqB3O2RbMd0J1onBt2AGsjeQSE3HO0EBQSkdGQZ7PVSdE3I49uT2aAaScnPOt&lt;br/&gt;ymbNz4QtlUWWpUgEI6VSjxHCGjX4&#43;Vrn3HLRwjLe4nS2EX3mOVNY8MHMvbCeAuY=&lt;br/&gt;=tD9k&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:58:42&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswkvd07gx60dqgt3dx32mmql0zu66uzmj58c8tv8lt8l0xst2623gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu85f2a4</id>
    
      <title type="html">📅 Original date posted:2017-03-05 📝 Original message:There ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswkvd07gx60dqgt3dx32mmql0zu66uzmj58c8tv8lt8l0xst2623gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu85f2a4" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstyyedkmgahd9dgw6k0n5gq3lzju3pdgqzh4u6z5gzr05fhkg4eugnm7lvz&#39;&gt;nevent1q…7lvz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-03-05&lt;br/&gt;📝 Original message:There are two aspects of system security in Bitcoin, mining (hash power) and payment validation (economy). The security of each is a function of its level of decentralization. Another way to think of it is that a system with less decentralization has a smaller community (consensus). A large consensus is more secure in that it is more resistant to change (forks) than a system with a small consensus.&lt;br/&gt;&lt;br/&gt;The fact that mining is highly centralized makes it relatively easy to enforce a fork via miner collaboration, and hard to do so without it.&lt;br/&gt;&lt;br/&gt;So clearly the other option, as being discussed here, is to enforce a fork via the economy. Given the highly centralized nature of the economy, described below as &amp;#34;economic hubs&amp;#34;, it is also relatively easy as well.&lt;br/&gt;&lt;br/&gt;Independent of one&amp;#39;s opinion on the merits of one fork or another, the state of centralization in Bitcoin is an area of great concern. If &amp;#34;we&amp;#34; can sit down with 75% of the economy and/or 90% of the hash power (which of course has been done) and negotiate a change to any rule, Bitcoin is a purely political money.&lt;br/&gt;&lt;br/&gt;If &amp;#34;we&amp;#34; can do this, so can &amp;#34;they&amp;#34;.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Mar 5, 2017, at 10:10 AM, David Vorick via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I also think that the UASF is a good idea. Hashrate follows coin price. If the UASF has the higher coin price, the other chain will be annihilated. If the UASF has a lower coin price, the user activated chain can still exist (though their coins can be trivially stolen on the majority chain).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The success of the UASF depends entirely on the price. And actually, the price is easy to manipulate. If you, as an economically active full node, refuse to acknowledge the old chain and demand that incoming coins arrive over the UASF chain. In doing so, you drive down the utility of the old chain and drive up the utility of the new chain. This ultimately impacts the price.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think it would be pretty easy to get high confidence of the success of a UASF. Basically you need all the major economic hubs to agree to upgrade and then exclusively accept UASF coins. I don&amp;#39;t have a comprehensive list, but if we could sign on 75% of the major exchanges and payment processors, and get 75% of the wallets to upgrade, then the UASF would be very likely to successfully obliterate the old rules, as miners would be unable to sell their coins or pay their bills by stubbornly sticking to the old chain. It&amp;#39;s less risky than a hard fork by far, because there is zero risk of coin split if the UASF has majority hashrate, which will follow majority economic value.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A serious proposal I think would get all the code ready and merged, but without setting a flag day. Then we would get signatures from the major institutions promising to use the software and saying that they are ready for a flag day. After that, you release a patch with a flag day 12 months in the future. People can upgrade immediately, and have a full year to transition.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That gives tons of time for people to upgrade, and tons of confidence that the UASF will end up as the majority chain.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If we cannot get enough major exchanges, payment processors, and other economic hubs to upgrade,  the flag day should remain upset, as the risk of coin split will be non-zero.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I would suggest that a carefully executed UASF is much riskier than a soft fork, but far, far less risky than a hard fork.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &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&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;-------------- 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/20170305/2631a5b3/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170305/2631a5b3/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:57:03&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9klgp8409t74kw9vndy9e86equ7vza82sw4dute32k0epk34s80czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpus62nj0</id>
    
      <title type="html">📅 Original date posted:2017-01-05 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9klgp8409t74kw9vndy9e86equ7vza82sw4dute32k0epk34s80czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpus62nj0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgrzastm2wj9yryjzp9kr4sqm44w0fnvap0cuhm6edlezyp87pl8qvtzf0j&#39;&gt;nevent1q…zf0j&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-01-05&lt;br/&gt;📝 Original message:On 01/04/2017 11:06 PM, Chris Priest via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; On 1/3/17, Jonas Schnelli via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; There are plenty, more sane options. If you can&amp;#39;t run your own full-node&lt;br/&gt;&amp;gt;&amp;gt; as a merchant (trivial), maybe co-use a wallet-service with centralized&lt;br/&gt;&amp;gt;&amp;gt; verification (maybe use two of them), I guess Copay would be one of&lt;br/&gt;&amp;gt;&amp;gt; those wallets (as an example). Use them in watch-only mode.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The best way is to connect to the mempool of each miner and check to&lt;br/&gt;&amp;gt; see if they have your txid in their mempool.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://www.antpool.com/api/is_in_mempool?txid=334847bb&#34;&gt;https://www.antpool.com/api/is_in_mempool?txid=334847bb&lt;/a&gt;...&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://www.f2pool.com/api/is_in_mempool?txid=334847bb&#34;&gt;https://www.f2pool.com/api/is_in_mempool?txid=334847bb&lt;/a&gt;...&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://bw.com/api/is_in_mempool?txid=334847bb&#34;&gt;https://bw.com/api/is_in_mempool?txid=334847bb&lt;/a&gt;...&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://bitfury.com/api/is_in_mempool?txid=334847bb&#34;&gt;https://bitfury.com/api/is_in_mempool?txid=334847bb&lt;/a&gt;...&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://btcc.com/api/is_in_mempool?txid=334847bb&#34;&gt;https://btcc.com/api/is_in_mempool?txid=334847bb&lt;/a&gt;...&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If each of these services return &amp;#34;True&amp;#34;, and you know those services&lt;br/&gt;&amp;gt; so not engage in RBF, then you can assume with great confidence that&lt;br/&gt;&amp;gt; your transaction will be in the next block, or in a block very soon.&lt;br/&gt;&amp;gt; If any one of those services return &amp;#34;False&amp;#34;, then you must assume that&lt;br/&gt;&amp;gt; it is possible that there is a double spend floating around, and that&lt;br/&gt;&amp;gt; you should wait to see if that tx gets confirmed. The problem is that&lt;br/&gt;&amp;gt; not every pool runs such a service to check the contents of their&lt;br/&gt;&amp;gt; mempool...&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is an example of mining centralization increasing the security of&lt;br/&gt;&amp;gt; zero confirm.&lt;br/&gt;&lt;br/&gt;A world connected up to a few web services to determine payment validity&lt;br/&gt;is an example of a bitcoin security catastrophe.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 490 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170104/4df3d1a9/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170104/4df3d1a9/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:55:10&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs25f8suscpap9rc6gs6u0mqvljxj5f6qggzsa0upl54el55kh526szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpusmtgyd</id>
    
      <title type="html">📅 Original date posted:2017-01-04 📝 Original message:Credit ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs25f8suscpap9rc6gs6u0mqvljxj5f6qggzsa0upl54el55kh526szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpusmtgyd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqsmx80p8j5cryegmstv7vusgr6zvygnf9qfprla0e3rdjc2rma6gpkwvwk&#39;&gt;nevent1q…wvwk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-01-04&lt;br/&gt;📝 Original message:Credit card reversals involve an escrow agent with control over the entire network and with a strong interest in preserving the network. A better analogy would be blind acceptance of any slip of paper under the assumption that it is sufficient currency. It may or may not be so, but you are on your own in either case.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jan 3, 2017, at 4:36 PM, Aaron Voisine via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Knowing that a transaction is property formatted and that it has been broadcast to the gossip network is useful in many situations. You&amp;#39;re only thinking about whether you can know a transaction is valid and/or settled. This is not the only possible useful information in actual real world use. Any situation where credit card transactions are accepted today for instance, it is useful to know that a transaction has been initiated, even though it can be reversed at any time up to 60 days later.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Aaron Voisine&lt;br/&gt;&amp;gt; co-founder and CEO&lt;br/&gt;&amp;gt; breadwallet&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Jan 3, 2017 at 4:10 PM, &amp;lt;bfd at cock.lu&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; Unfortunately a non validating SPV wallet has absolutely no idea if&lt;br/&gt;&amp;gt;&amp;gt; the information about an unconfirmed transaction they are seeing is&lt;br/&gt;&amp;gt;&amp;gt; anything but properly formatted. They are connecting to an easily&lt;br/&gt;&amp;gt;&amp;gt; manipulated, sybil attacked, and untrusted network and then asking&lt;br/&gt;&amp;gt;&amp;gt; them for financial information. Seeing an unconfirmed transaction in a&lt;br/&gt;&amp;gt;&amp;gt; wallet that&amp;#39;s not also fully validating is at best meaningless.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On 2017-01-03 15:46, Aaron Voisine wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If the sender doesn&amp;#39;t control the receiver&amp;#39;s network connection, then&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the information the receiver gains by watching the mempool is if the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; transaction has propagated across the bitcoin network. This is useful&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; to know in all kinds of situations.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Aaron Voisine&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; co-founder and CEO&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; breadwallet [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Tue, Jan 3, 2017 at 3:06 PM, adiabat &amp;lt;rx at awsomnet.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Mempool transactions have their place, but &amp;#34;unconfirmed&amp;#34; and &amp;#34;SPV&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; don&amp;#39;t belong together.  Only a full node can tell if a transaction&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; may get confirmed, or is nonsense.  Unfortunately all the light /&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; SPV wallets I know of show mempool transactions, which makes it hard&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to go back... (e.g. &amp;#34;why doesn&amp;#39;t your software show 0-conf! your&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wallet is broken!&amp;#34;, somewhat akin to people complaining about RBF)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; So, this is easy, just don&amp;#39;t worry about mempool filtering.  Why are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; light clients looking at the mempool anyway?  Maybe if there were&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; some way to provide SPV proofs of all inputs, but that&amp;#39;s a bit of a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; mess for full nodes to do.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Without mempool filtering, I think the committed bloom filters would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; be a great improvement over the current bloom filter setup,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; especially for lightning network use cases (with lightning, not&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; finding out about a transaction can make you lose money).  I want to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; work on it and may be able to at some point as it&amp;#39;s somewhat related&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to lightning.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Also, if you&amp;#39;re running a light client, and storing the filters the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; way you store block headers, there&amp;#39;s really no reason to go all the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; way back to height 0.  You can start grabbing headers at some point&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; a while ago, before your set of keys was generated.  I think it&amp;#39;d be&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; very worth it even with GB-scale disk usage.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -Tadge&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Tue, Jan 3, 2017 at 5:18 PM, Aaron Voisine via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Unconfirmed transactions are incredibly important for real world&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; use. Merchants for instance are willing to accept credit card&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; payments of thousands of dollars and ship the goods despite the fact&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that the transaction can be reversed up to 60 days later. There is a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; very large cost to losing the ability to have instant transactions&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; in many or even most situations. This cost is typically well above&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the fraud risk.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It&amp;#39;s important to recognize that bitcoin serves a wide variety of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; use cases with different profiles for time sensitivity and fraud&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; risk.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Aaron&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Tue, Jan 3, 2017 at 12:41 PM bfd--- via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The concept combined with the weak blocks system where miners commit&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to potential transaction inclusion with fractional difficulty blocks&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is possible. I&amp;#39;m not personally convinced that unconfirmed&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; transaction&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; display in a wallet is worth the privacy trade-off. The user has&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; very&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; little to gain from this knowledge until the txn is in a block.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On 2017-01-01 13:01, Jonas Schnelli via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; We introduce several concepts that rework the lightweight Bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; client model in a manner which is secure, efficient and privacy&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; compatible.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The BFD can be used verbatim in replacement of BIP37, where the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; filter&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; can be cached between clients without needing to be recomputed.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; also be used by normal pruned nodes to do re-scans locally of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; their&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wallet without needing to have the block data available to scan,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; or&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; without reading the entire block chain from disk.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I started exploring the potential of BFD after this specification.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What would be the preferred/recommended way to handle&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 0-conf/mempool&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; filtering – if &amp;amp; once BDF would have been deployed (any type,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; semi-trusted oracles or protocol-level/softfork)?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; From the user-experience perspective, this is probably pretty&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; important&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (otherwise the experience will be that incoming funds can take&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; serval&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; minutes to hours until they appear).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Using BIP37 bloom filters just for mempool filtering would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; obviously&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; result in the same unwanted privacy-setup.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;/jonas&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;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; [1]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;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; [1]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;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; [1]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Links:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ------&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [1] &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;&amp;gt; [2] &lt;a href=&#34;http://breadwallet.com&#34;&gt;http://breadwallet.com&lt;/a&gt;&lt;br/&gt;&amp;gt; &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&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;-------------- 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/20170103/0950eb13/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170103/0950eb13/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:55:06&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszuqej9krstnnvg8m6wpc77lw3qumvxxd6dkshc5wyl950yjx8r7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuxhlyrc</id>
    
      <title type="html">📅 Original date posted:2016-11-16 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszuqej9krstnnvg8m6wpc77lw3qumvxxd6dkshc5wyl950yjx8r7szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuxhlyrc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2fhgfjts4qn5hzwlfyls55j9s3dy5u854utulqke5gt5srakpahcmc5r0c&#39;&gt;nevent1q…5r0c&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-11-16&lt;br/&gt;📝 Original message:On 11/16/2016 03:58 PM, Jorge Timón via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; On Wed, Nov 16, 2016 at 3:18 PM, Thomas Kerin via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; BIP30 actually was given similar treatment after a reasonable amount of time&lt;br/&gt;&amp;gt;&amp;gt; had passed.&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/bitcoin/bitcoin/blob/master/src/main.cpp#L2392&#34;&gt;https://github.com/bitcoin/bitcoin/blob/master/src/main.cpp#L2392&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is not really the same. BIP30 is not validated after BIP34 is&lt;br/&gt;&amp;gt; active because blocks complying with BIP34 will always necessarily&lt;br/&gt;&amp;gt; comply with BIP30 (ie coinbases cannot be duplicated after they&lt;br/&gt;&amp;gt; include the block height).&lt;br/&gt;&lt;br/&gt;This is a misinterpretation of BIP30. Duplicate transaction hashes can&lt;br/&gt;and will happen and are perfectly valid in Bitcoin. BIP34 does not&lt;br/&gt;prevent this.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 490 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161116/b8912894/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161116/b8912894/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:54:21&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs2t4ds23w3qqduls25lq8qhyur3lh4tx8r2pzvjpf8lwm27a60w6szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputhpqaw</id>
    
      <title type="html">📅 Original date posted:2016-11-16 📝 Original message:This ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs2t4ds23w3qqduls25lq8qhyur3lh4tx8r2pzvjpf8lwm27a60w6szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytputhpqaw" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfakky6fvu22afklk7td6edq2yn9cvals6r59spu2793urjz0ck3cspthf5&#39;&gt;nevent1q…thf5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-11-16&lt;br/&gt;📝 Original message:This sort of statement represents one consequence of the aforementioned bad precedent.&lt;br/&gt;&lt;br/&gt;Are checkpoints good now? Are hard forks okay now?&lt;br/&gt;&lt;br/&gt;What is the maximum depth of a reorg allowed by this non-machine consensus?&lt;br/&gt;&lt;br/&gt;Shouldn&amp;#39;t we just define a max depth so that all cruft deeper than that can just be discarded on a regular basis?&lt;br/&gt;&lt;br/&gt;Why are there activation heights defined by this hard fork if it&amp;#39;s not possible to reorg back to them?&lt;br/&gt;&lt;br/&gt;The &amp;#34;BIP&amp;#34; is neither a Proposal (it&amp;#39;s been decided, just documenting for posterity), nor an Improvement (there is no actual benefit, just some tidying up in the notoriously obtuse satoshi code base), nor Bitcoin (a hard fork defines an alt coin, so from Aug 4 forward it has been CoreCoin).&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Nov 16, 2016, at 5:29 AM, Jameson Lopp &amp;lt;jameson.lopp at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Since &amp;#34;buried deployments&amp;#34; are specifically in reference to historical consensus changes, I think the question is more one of human consensus than machine consensus. Is there any disagreement amongst Bitcoin users that BIP34 activated at block 227931, BIP65 activated at block 388381, and BIP66 activated at block 363725? Somehow I doubt it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It seems to me that this change is merely cementing into place a few attributes of the blockchain&amp;#39;s history that are not in dispute.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; - Jameson&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Nov 15, 2016 at 5:42 PM, Eric Voskuil via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; Actually this does nothing to provide justification for this consensus rule change. It is just an attempt to deflect criticism from the fact that it is such a change.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; On Nov 15, 2016, at 9:45 AM, Btc Drak &amp;lt;btcdrak at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; I think this is already covered in the BIP text:-&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &amp;#34;As of November 2016, the most recent of these changes (BIP 65,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; enforced since December 2015) has nearly 50,000 blocks built on top of&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; it. The occurrence of such a reorg that would cause the activating&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; block to be disconnected would raise fundamental concerns about the&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; security assumptions of Bitcoin, a far bigger issue than any&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; non-backwards compatible change.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; So while this proposal could theoretically result in a consensus&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; split, it is extremely unlikely, and in particular any such&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; circumstances would be sufficiently damaging to the Bitcoin network to&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; dwarf any concerns about the effects of this proposed change.&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; On Mon, Nov 14, 2016 at 6:47 PM, Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; NACK&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Horrible precedent (hardcoding rule changes based on the assumption that&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; large forks indicate a catastrophic failure), extremely poor process&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; (already shipped, now the discussion), and not even a material performance&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; optimization (the checks are avoidable once activated until a sufficiently&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; deep reorg deactivates them).&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; On Nov 14, 2016, at 10:17 AM, Suhas Daftuar via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Recently Bitcoin Core merged a simplification to the consensus rules&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; surrounding deployment of BIPs 34, 66, and 65&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; (&lt;a href=&#34;https://github.com/bitcoin/bitcoin/pull/8391&#34;&gt;https://github.com/bitcoin/bitcoin/pull/8391&lt;/a&gt;), and though the change is a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; minor one, I thought it was worth documenting the rationale in a BIP for&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; posterity.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Here&amp;#39;s the abstract:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; Prior soft forks (BIP 34, BIP 65, and BIP 66) were activated via miner&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; signaling in block version numbers. Now that the chain has long since passed&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; the blocks at which those consensus rules have triggered, we can (as a&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; simplification and optimization) replace the trigger mechanism by caching&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; the block heights at which those consensus rules became enforced.&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; The full draft can be found here:&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&#34;&gt;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;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; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;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; &amp;gt;&amp;gt;&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; &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/20161116/9709e645/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161116/9709e645/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:54:18&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvm8urgles42easrsm76pkngqahrcmwsyuaw9prx565zepwyzq37gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuazrva6</id>
    
      <title type="html">📅 Original date posted:2016-11-15 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvm8urgles42easrsm76pkngqahrcmwsyuaw9prx565zepwyzq37gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuazrva6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrdncptr7qn8t9j8cdvuwxgauvpgkkt0dek3mwvlthm0xnt8yhkcsu08u75&#39;&gt;nevent1q…8u75&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-11-15&lt;br/&gt;📝 Original message:Actually this does nothing to provide justification for this consensus rule change. It is just an attempt to deflect criticism from the fact that it is such a change.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Nov 15, 2016, at 9:45 AM, Btc Drak &amp;lt;btcdrak at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think this is already covered in the BIP text:-&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;#34;As of November 2016, the most recent of these changes (BIP 65,&lt;br/&gt;&amp;gt; enforced since December 2015) has nearly 50,000 blocks built on top of&lt;br/&gt;&amp;gt; it. The occurrence of such a reorg that would cause the activating&lt;br/&gt;&amp;gt; block to be disconnected would raise fundamental concerns about the&lt;br/&gt;&amp;gt; security assumptions of Bitcoin, a far bigger issue than any&lt;br/&gt;&amp;gt; non-backwards compatible change.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So while this proposal could theoretically result in a consensus&lt;br/&gt;&amp;gt; split, it is extremely unlikely, and in particular any such&lt;br/&gt;&amp;gt; circumstances would be sufficiently damaging to the Bitcoin network to&lt;br/&gt;&amp;gt; dwarf any concerns about the effects of this proposed change.&amp;#34;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Mon, Nov 14, 2016 at 6:47 PM, Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; NACK&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Horrible precedent (hardcoding rule changes based on the assumption that&lt;br/&gt;&amp;gt;&amp;gt; large forks indicate a catastrophic failure), extremely poor process&lt;br/&gt;&amp;gt;&amp;gt; (already shipped, now the discussion), and not even a material performance&lt;br/&gt;&amp;gt;&amp;gt; optimization (the checks are avoidable once activated until a sufficiently&lt;br/&gt;&amp;gt;&amp;gt; deep reorg deactivates them).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Nov 14, 2016, at 10:17 AM, Suhas Daftuar via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Recently Bitcoin Core merged a simplification to the consensus rules&lt;br/&gt;&amp;gt;&amp;gt; surrounding deployment of BIPs 34, 66, and 65&lt;br/&gt;&amp;gt;&amp;gt; (&lt;a href=&#34;https://github.com/bitcoin/bitcoin/pull/8391&#34;&gt;https://github.com/bitcoin/bitcoin/pull/8391&lt;/a&gt;), and though the change is a&lt;br/&gt;&amp;gt;&amp;gt; minor one, I thought it was worth documenting the rationale in a BIP for&lt;br/&gt;&amp;gt;&amp;gt; posterity.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Here&amp;#39;s the abstract:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Prior soft forks (BIP 34, BIP 65, and BIP 66) were activated via miner&lt;br/&gt;&amp;gt;&amp;gt; signaling in block version numbers. Now that the chain has long since passed&lt;br/&gt;&amp;gt;&amp;gt; the blocks at which those consensus rules have triggered, we can (as a&lt;br/&gt;&amp;gt;&amp;gt; simplification and optimization) replace the trigger mechanism by caching&lt;br/&gt;&amp;gt;&amp;gt; the block heights at which those consensus rules became enforced.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The full draft can be found here:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&#34;&gt;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; &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;&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;
    </content>
    <updated>2023-06-07T19:54:17&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs2mdezp6z7utgyrxxuavum9ymwe6k6amspych0pdah29jj9828vdszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu2vdupj</id>
    
      <title type="html">📅 Original date posted:2016-11-14 📝 Original message:NACK ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs2mdezp6z7utgyrxxuavum9ymwe6k6amspych0pdah29jj9828vdszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu2vdupj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsz8kqpjttjnuqw04jg39jyyjem4h2c4tmv8qqqjn6l6w88hv8x0vgu64f9p&#39;&gt;nevent1q…4f9p&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-11-14&lt;br/&gt;📝 Original message:NACK&lt;br/&gt;&lt;br/&gt;Horrible precedent (hardcoding rule changes based on the assumption that large forks indicate a catastrophic failure), extremely poor process (already shipped, now the discussion), and not even a material performance optimization (the checks are avoidable once activated until a sufficiently deep reorg deactivates them).&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Nov 14, 2016, at 10:17 AM, Suhas Daftuar via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Recently Bitcoin Core merged a simplification to the consensus rules surrounding deployment of BIPs 34, 66, and 65 (&lt;a href=&#34;https://github.com/bitcoin/bitcoin/pull/8391&#34;&gt;https://github.com/bitcoin/bitcoin/pull/8391&lt;/a&gt;), and though the change is a minor one, I thought it was worth documenting the rationale in a BIP for posterity.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Here&amp;#39;s the abstract:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Prior soft forks (BIP 34, BIP 65, and BIP 66) were activated via miner signaling in block version numbers. Now that the chain has long since passed the blocks at which those consensus rules have triggered, we can (as a simplification and optimization) replace the trigger mechanism by caching the block heights at which those consensus rules became enforced.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The full draft can be found here: &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&#34;&gt;https://github.com/sdaftuar/bips/blob/buried-deployments/bip-buried-deployments.mediawiki&lt;/a&gt;&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&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;-------------- 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/20161114/03f1190e/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161114/03f1190e/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:54:16&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswa5lxlsr02n6grfcc8mf0vzz67lmkm67hc9nhe3c5ay7aml5z6jgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuukq6st</id>
    
      <title type="html">📅 Original date posted:2016-10-16 📝 Original message:If ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswa5lxlsr02n6grfcc8mf0vzz67lmkm67hc9nhe3c5ay7aml5z6jgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuukq6st" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs082qz8u72xvgyws8mlj8flduxfnhww2mssq0h92hlzeu38e562zsmq7v24&#39;&gt;nevent1q…7v24&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-10-16&lt;br/&gt;📝 Original message:If somebody is not &amp;#34;running their own validation code&amp;#34;  then they aren&amp;#39;t actually using Bitcoin, so their ease in transition is irrelevant. For all they know they are accepting random numbers.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Oct 16, 2016, at 9:35 AM, Gavin Andresen via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Sun, Oct 16, 2016 at 10:58 AM, Tom Zander via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; The fallow period sounds waaaay to short. I suggest 2 months at minimum&lt;br/&gt;&amp;gt;&amp;gt; since anyone that wants to be safe needs to upgrade.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I asked a lot of businesses and individuals how long it would take them to upgrade to a new release over the last year or two.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Nobody said it would take them more than two weeks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If somebody is running their own validation code... then we should assume they&amp;#39;re sophisticated enough to figure out how to mitigate any risks associated with segwit activation on their own.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; --&lt;br/&gt;&amp;gt; Gavin Andresen&lt;br/&gt;&amp;gt; &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&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;-------------- 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/20161016/57ac3ff7/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161016/57ac3ff7/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:54:01&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs07dw5pj5hrd44u97w7c7vdqsl2jee47fwzf8meyxantkd9h2uuaszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu92g4ts</id>
    
      <title type="html">📅 Original date posted:2016-09-09 📝 Original message:ACK ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs07dw5pj5hrd44u97w7c7vdqsl2jee47fwzf8meyxantkd9h2uuaszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu92g4ts" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdr0epj5vw4n8he28ls5zr6nkfmkwj3jx0t843j478fuwpd9ugwhshz3h4s&#39;&gt;nevent1q…3h4s&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-09-09&lt;br/&gt;📝 Original message:ACK&lt;br/&gt;&lt;br/&gt;libbitcoin defines the message and includes the public key but only for completeness and reference purposes. It has never been used in the node.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Sep 9, 2016, at 5:42 PM, Gregory Maxwell via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The alert system was a centralized facility to allow trusted parties&lt;br/&gt;&amp;gt; to send messages to be displayed in wallet software (and, very early&lt;br/&gt;&amp;gt; on, actually remotely trigger the software to stop transacting).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It has been removed completely in Bitcoin Core after being disabled for a while.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; While the system had some potential uses, there were a number of&lt;br/&gt;&amp;gt; problems with it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The alert system was a frequent source of misunderstanding about the&lt;br/&gt;&amp;gt; security model and &amp;#39;effective governance&amp;#39;, for example a years ago a&lt;br/&gt;&amp;gt; BitcoinJ developer wanted it to be used to control fee levels on the&lt;br/&gt;&amp;gt; network and few months back one of Bloq&amp;#39;s staff was pushing for a&lt;br/&gt;&amp;gt; scheme where &amp;#34;the developers&amp;#34; would use it to remotely change the&lt;br/&gt;&amp;gt; difficulty-- apparently with no idea how abhorrent others would find&lt;br/&gt;&amp;gt; it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The system also had a problem of not being scalable to different&lt;br/&gt;&amp;gt; software vendors-- it didn&amp;#39;t really make sense that core would have&lt;br/&gt;&amp;gt; that facility but armory had to do something different (nor would it&lt;br/&gt;&amp;gt; really make sense to constantly have to maintain some list of keys in&lt;br/&gt;&amp;gt; the node software).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It also had the problem of being unaccountable. No one can tell which&lt;br/&gt;&amp;gt; of the key holders created a message. This creates a risk of misuse&lt;br/&gt;&amp;gt; with a false origin to attack someone&amp;#39;s reputation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Finally, there is good reason to believe that the key has been&lt;br/&gt;&amp;gt; compromised-- It was provided to MTGox by a developer and MTGox&amp;#39;s&lt;br/&gt;&amp;gt; systems&amp;#39; were compromised and later their CEO&amp;#39;s equipment taken by the&lt;br/&gt;&amp;gt; Japanese police.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In any case, it&amp;#39;s gone now in Core and most other current software--&lt;br/&gt;&amp;gt; and I think it&amp;#39;s time to fully deactivate it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I&amp;#39;ve spent some time going around the internet looking for all&lt;br/&gt;&amp;gt; software that contains this key (which included a few altcoins) and&lt;br/&gt;&amp;gt; asked them to remove it. I will continue to do that.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; One of the facilities in the alert system is that you can send a&lt;br/&gt;&amp;gt; maximum sequence alert which cannot be overridden and displays only a&lt;br/&gt;&amp;gt; static key compromise text message and blocks all other alerts. I plan&lt;br/&gt;&amp;gt; to send a triggering alert in the not-distant future (exact time to be&lt;br/&gt;&amp;gt; announced well in advance) feedback on timing would be welcome.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; There are likely a few production systems that automatically shut down&lt;br/&gt;&amp;gt; when there is an alert, so this risks some small one-time disruption&lt;br/&gt;&amp;gt; of those services-- but none worse than if an alert were sent to&lt;br/&gt;&amp;gt; advise about a new system upgrade.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; At some point after that, I would then plan to disclose this private&lt;br/&gt;&amp;gt; key in public, eliminating any further potential of reputation attacks&lt;br/&gt;&amp;gt; and diminishing the risk of misunderstanding the key as some special&lt;br/&gt;&amp;gt; trusted source of authority.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cheers,&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&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;
    </content>
    <updated>2023-06-07T19:53:17&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfdm6xljvac3m8kesm33wgvjjl84x57szn76wuc6temf7qd6pncqszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug6hu7q</id>
    
      <title type="html">📅 Original date posted:2016-06-30 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfdm6xljvac3m8kesm33wgvjjl84x57szn76wuc6temf7qd6pncqszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug6hu7q" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdhpzrheqhj00e2zt0efryfu0wfz5r47fwmshanl7xymh5jgxncqgfvl57p&#39;&gt;nevent1q…l57p&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-30&lt;br/&gt;📝 Original message:&amp;gt; On Jun 30, 2016, at 9:06 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Thu, Jun 30, 2016 at 08:25:45PM &#43;0200, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; To be clear, are you against Bitcoin Core&amp;#39;s tor support?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Because node-to-node connections over tor are encrypted, and make use of onion&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; addresses, which are self-authenticated in the exact same way as BIP151 proposes.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; BIP151 is self-admittedly insufficient to protect against a MITM attack. It proposes node identity to close this hole (future BIP required). The yet-to-be-specified requirement for node identity is the basis of my primary concern. This is not self-authentication.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; And we&amp;#39;re shipping that in production as of 0.12.0, and by default Tor onion support is enabled and will be automatically setup if you have a recent version of Tor installed.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Does that &amp;#34;create pressure to expand node identity&amp;#34;?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The orthogonal question of whether Tor is safe for use with the Bitcoin P2P protocol is a matter of existing research.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I don&amp;#39;t think you answered my question.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Again, we _already have_ the equivalent of BIP151 functionality in Bitcoin&lt;br/&gt;&amp;gt; Core, shipping in production, but implemented with a Tor dependency.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP151 removes that dependency on Tor, enabling encrypted connections&lt;br/&gt;&amp;gt; regardless of whether or not you have Tor installed.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So any arguments against BIP151 being implemented, are equally arguments&lt;br/&gt;&amp;gt; against our existing Tor onion support. Are you against that support? Because&lt;br/&gt;&amp;gt; if you aren&amp;#39;t, you can&amp;#39;t have any objections to BIP151 being implemented&lt;br/&gt;&lt;br/&gt;Neither Tor nor Bitcoin Core are part of this BIP (or its proposed dependency on node identity).&lt;br/&gt;&lt;br/&gt;But again, given that node identity is not part of the Bitcoin Core Tor integration, my objection to the presumption of node identity by BIP151 is unrelated to Bitcoin Core&amp;#39;s Tor integration.&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-07T19:51:45&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsy5m3tmd60zt7q6sn87fgg39n7uu8083exzfjznx42jglpshw8ysgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwc4v4u</id>
    
      <title type="html">📅 Original date posted:2016-06-30 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsy5m3tmd60zt7q6sn87fgg39n7uu8083exzfjznx42jglpshw8ysgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuwc4v4u" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqz3fnxs24u97m5nwvdmljge462mf4qkmuaam5zpw42pyvlu9a5zq49lnax&#39;&gt;nevent1q…lnax&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-30&lt;br/&gt;📝 Original message:&amp;gt; On Jun 30, 2016, at 6:52 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Thu, Jun 30, 2016 at 05:22:08PM &#43;0200, Eric Voskuil via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Jun 30, 2016, at 2:43 PM, Jonas Schnelli &amp;lt;dev at jonasschnelli.ch&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The core problem posed by BIP151 is a MITM attack. The implied solution (BIP151 &#43; authentication) requires that a peer trusts that another is not an attacker.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BIP151 would increase the risks for MITM attackers.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What are the benefits for Mallory of he can&amp;#39;t be sure Alice and Bob may&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; know that he is intercepting the channel?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It is not clear to me why you believe an attack on privacy by an anonymous peer is detectable.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If Mallory has substituted the ephemeral keys in both directions, at the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; point where Alice and Bob will do an authentication, they can be sure&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Mallory is listening.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I understand the mechanics of a tunnel between trusting parties that have a secure side channel. But this assumes that no other peer can connect to these two nodes. How then do they maintain the chain?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The &amp;#34;middle&amp;#34; in this sense does not have to be the wire directly between these two peers. It can be between either of them and any anonymous connection they (must) allow.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Of course this creates pressure to expand their tunnel. Hence the problem of expanding node identity in an effort to preserve privacy. The protection will remain weak until the entire network is &amp;#34;secure&amp;#34;. At that point it would necessarily be a private network.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; As Pieter rightly observes, there are and always will be tunnels between trusting nodes. Often these are groups of nodes that are in collaboration, so logically they are one node from a system security standpoint. But if people become generally reliant on good node registration, it will become the registrar who controls access to the network. So my concern rests I this proposal becoming widely adopted.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To be clear, are you against Bitcoin Core&amp;#39;s tor support?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Because node-to-node connections over tor are encrypted, and make use of onion&lt;br/&gt;&amp;gt; addresses, which are self-authenticated in the exact same way as BIP151 proposes.&lt;br/&gt;&lt;br/&gt;BIP151 is self-admittedly insufficient to protect against a MITM attack. It proposes node identity to close this hole (future BIP required). The yet-to-be-specified requirement for node identity is the basis of my primary concern. This is not self-authentication.&lt;br/&gt;&lt;br/&gt;&amp;gt; And we&amp;#39;re shipping that in production as of 0.12.0, and by default Tor onion support is enabled and will be automatically setup if you have a recent version of Tor installed.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Does that &amp;#34;create pressure to expand node identity&amp;#34;?&lt;br/&gt;&lt;br/&gt;The orthogonal question of whether Tor is safe for use with the Bitcoin P2P protocol is a matter of existing research.&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-07T19:51:44&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsrcy9l7qzth9xx7n9cdaujk5lnyzh3hevsvuwajyrqraf5vaw7j9gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudkcj0y</id>
    
      <title type="html">📅 Original date posted:2016-06-30 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrcy9l7qzth9xx7n9cdaujk5lnyzh3hevsvuwajyrqraf5vaw7j9gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudkcj0y" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspkfqpv0e99gv25lyyd67lp9g2wvduxl07rgdkglj740d3lkjnuqgrxrykf&#39;&gt;nevent1q…rykf&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-30&lt;br/&gt;📝 Original message:&amp;gt; On Jun 30, 2016, at 2:20 PM, Jonas Schnelli &amp;lt;dev at jonasschnelli.ch&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Yes, this is exactly what I meant. The complexity of the proposed construction is comparable to that of Bitcoin itself. This is not itself prohibitive, but it is clearly worthy of consideration.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; A question we should ask is whether decentralized anonymous credentials is applicable to the authentication problem posed by BIP151. I propose that it is not.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The core problem posed by BIP151 is a MITM attack. The implied solution (BIP151 &#43; authentication) requires that a peer trusts that another is not an attacker.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP151 would increase the risks for MITM attackers.&lt;br/&gt;&amp;gt; What are the benefits for Mallory of he can&amp;#39;t be sure Alice and Bob may&lt;br/&gt;&amp;gt; know that he is intercepting the channel?&lt;br/&gt;&lt;br/&gt;It is not clear to me why you believe an attack on privacy by an anonymous peer is detectable.&lt;br/&gt;&lt;br/&gt;&amp;gt; MITM is possible today, it would still be possible (though under higher&lt;br/&gt;&amp;gt; costs) with BIP151.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; With BIP151 we would have the basic tool-set to effectively reduce the&lt;br/&gt;&amp;gt; risks of being MITMled.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; IMO we should focus on the risks and benefits of BIP151 and not drag&lt;br/&gt;&amp;gt; this discussion into the realm of authentication. This can and should be&lt;br/&gt;&amp;gt; done once we have proposals for authentication (and I&amp;#39;m sure this will&lt;br/&gt;&amp;gt; be a heated debate).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The only valid risk I have on my list from you, Eric, is the false sense&lt;br/&gt;&amp;gt; of security.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My countermeasure for that would be...&lt;br/&gt;&amp;gt; - deploy BIP151 together with the simplest form of authentication&lt;br/&gt;&amp;gt; (know_hosts / authorized_keys file, no TOFU only editable &amp;#34;by hand&amp;#34;)&lt;br/&gt;&amp;gt; - make it more clear (in the BIP151 MOTIVATION text) that it won&amp;#39;t solve&lt;br/&gt;&amp;gt; the privacy/MITM problem without additional authentication.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Or could you elaborate again – without stepping into the realm of&lt;br/&gt;&amp;gt; authentication/MITM (which is not part of the BIP or possible already&lt;br/&gt;&amp;gt; today) – why BIP151 would make things worse?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;lt;/jonas&amp;gt;&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T19:51:43&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsylks4gl0l3xk6fdldqegzr5yjfv6a4mpqgadmen7fwxvys64jwfqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuvf0g9f</id>
    
      <title type="html">📅 Original date posted:2016-06-30 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsylks4gl0l3xk6fdldqegzr5yjfv6a4mpqgadmen7fwxvys64jwfqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuvf0g9f" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspzravp7gp0prh22rtn0cm6p0fl4e9zjcz572hnnh0adadjhzj5xczmyhmu&#39;&gt;nevent1q…yhmu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-30&lt;br/&gt;📝 Original message:Hi Alfie,&lt;br/&gt;&lt;br/&gt;Yes, this is exactly what I meant. The complexity of the proposed construction is comparable to that of Bitcoin itself. This is not itself prohibitive, but it is clearly worthy of consideration.&lt;br/&gt;&lt;br/&gt;A question we should ask is whether decentralized anonymous credentials is applicable to the authentication problem posed by BIP151. I propose that it is not.&lt;br/&gt;&lt;br/&gt;The core problem posed by BIP151 is a MITM attack. The implied solution (BIP151 &#43; authentication) requires that a peer trusts that another is not an attacker. &lt;br/&gt;&lt;br/&gt;Authentication of an anonymous peer cannot achieve this objective, since the peer may be anyone and an attack on privacy can be undetectable. The identity of a peer must be known to the relying peer, either directly or transitively.&lt;br/&gt;&lt;br/&gt;DAC is applicable in cases where identity is never required.  The prime example in the paper is that of first-come-first-served name registration. No identity is required in that scenario, just proof that a party in question is the original registrant. All participants are presumed to be &amp;#34;good&amp;#34;.&lt;br/&gt;&lt;br/&gt;I believe that a distributed anonymous system is fundamentally at odds with isolation of &amp;#34;good&amp;#34; vs. &amp;#34;bad&amp;#34; participants who comply with protocol rules (DoS considerations aside), and that any attempt to resolve this conflict will result in the system no longer allowing anonymous participation.&lt;br/&gt;&lt;br/&gt;I may be mistaken, but I haven&amp;#39;t found a way out of this realization.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 29, 2016, at 1:17 PM, Alfie John &amp;lt;alfie at alfie.wtf&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Tue, Jun 28, 2016 at 06:45:58PM &#43;0200, Eric Voskuil via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; then we should definitively use a form of end-to-end encryption between&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; nodes. Built into the network layer.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Widespread application of this model is potentially problematic. It is a&lt;br/&gt;&amp;gt;&amp;gt; non-trivial problem to design a distributed system that requires authentication&lt;br/&gt;&amp;gt;&amp;gt; but without identity and without central control. In fact this may be more&lt;br/&gt;&amp;gt;&amp;gt; challenging than Bitcoin itself. Trust on first use (TOFU) does not solve this&lt;br/&gt;&amp;gt;&amp;gt; problem.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Maybe the following paper can feed into this discussion:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;#34;Decentralized Anonymous Credentials&amp;#34; by Christina Garman, Matthew Green, Ian Miers&lt;br/&gt;&amp;gt;   &lt;a href=&#34;https://eprint.iacr.org/2013/622.pdf&#34;&gt;https://eprint.iacr.org/2013/622.pdf&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Alfie&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; Alfie John&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://www.alfie.wtf&#34;&gt;https://www.alfie.wtf&lt;/a&gt;
    </content>
    <updated>2023-06-07T19:51:42&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsz9gltzya25jcmm6stelhx04qq6q5g5k80wn6fz6eg28eyuz3d99szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuqs2877</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:On Jun ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsz9gltzya25jcmm6stelhx04qq6q5g5k80wn6fz6eg28eyuz3d99szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuqs2877" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqst8zud2zu9uphlek6mgaw3ta992cva6yjxxn7f4a7tds89j8xvmjqne5xr6&#39;&gt;nevent1q…5xr6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:On Jun 28, 2016, at 10:06 PM, Jonas Schnelli &amp;lt;dev at jonasschnelli.ch&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; In my opinion, the question should be &amp;#34;why would you _not_ encrypt&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; 1) creation of a false sense of security&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; False sense of security is mostly a communication issue.&lt;br/&gt;&amp;gt; BIP151 does focus on encryption (not trust).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Are users aware of the fact that ISP/WiFi-Providers can track their&lt;br/&gt;&amp;gt; bitcoin spending (if they use SPV&#43;BF) and link it with other internet&lt;br/&gt;&amp;gt; traffic or sell the data to anyone who is interested to do correlation?&lt;br/&gt;&lt;br/&gt;The relevant question would be to ask whether encryption would prevent an ISP from doing so (which it would not). This is a good example of false sense of security.&lt;br/&gt;&lt;br/&gt;&amp;gt; Are node operators aware of the possibilities that ISPs/Data-Centers,&lt;br/&gt;&amp;gt; etc. can hold back peers, etc.?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If there is a false sense of security/anonymity, then we are already&lt;br/&gt;&amp;gt; deep into this territory.&lt;br/&gt;&amp;gt; BIP151 was designed as a puzzle-pice towards better security and better&lt;br/&gt;&amp;gt; censorship resistance. You shouldn&amp;#39;t project all sorts of &amp;#34;false sense&lt;br/&gt;&amp;gt; of security&amp;#34; into BIP151. Is a stepping stone towards greater security.&lt;br/&gt;&lt;br/&gt;FWIW I was just answering your question comprehensively. Relationship to BIP151 is incidental (though apparently applicable).&lt;br/&gt;&lt;br/&gt;Keep in mind my specific concern is not with the design of BIP151, it is with the implication of its dependency on an unspecified authentication proposal.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; 2) as a tradeoff against anonymity&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Can you point out the tradeoffs?&lt;br/&gt;&amp;gt; BIP151 does not introduce fingerprinting possibilities.&lt;br/&gt;&lt;br/&gt;The security tradeoff would arise from widespread deployment of authentication - which is necessary to make encryption useful against envisioned MITM attacks. See my previous discussion of trust zones below.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; 3) benefit does not justify cost&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Can you elaborate the costs?&lt;br/&gt;&amp;gt; [Extremely simplified]: we need 300 lines of code from openssh&lt;br/&gt;&amp;gt; (ChaCha20-Poly1305 at openssl) and some ECDH magic (already in&lt;br/&gt;&amp;gt; Bitcoin-Cores codebase) together with two or three (maybe payed)&lt;br/&gt;&amp;gt; cryptoanalysis once the implementation is done.&lt;br/&gt;&lt;br/&gt;Simply put, any code that is unnecessary does not justify its cost.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; There are plenty of other options to solve this problem. stunnel,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Bernsteins CurveCP, VPN, etc. which are available since years.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; But the reality has shown that most bitcoin traffic is still unencrypted.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The question arises from concern over the security of the network in the case where encryption (and therefore authentication) is pervasive.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; As you point out, anyone can set up a private network of nodes today. These nodes must also connect to the permissionless network to maintain the chain. These nodes constitute a trust zone within Bitcoin. This zone of exclusion operates as a single logical node from the perspective of the Bitcoin security model (one entity controls the validation rules for all nodes).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Widespread application of this model is potentially problematic. It is a non-trivial problem to design a distributed system that requires authentication but without identity and without central control. In fact this may be more challenging than Bitcoin itself. Trust on first use (TOFU) does not solve this problem.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Yes. There is no plan to adopt a TUFO scheme. Bip151 does not use TUFO&lt;br/&gt;&amp;gt; it does not cover &amp;#34;trust&amp;#34; (It just encrypt all traffic).&lt;br/&gt;&lt;br/&gt;TOFU (trust on first use) was a reference to what was discussed on IRC as a potential solution to the (deferred) authentication problem. I didn&amp;#39;t mean to imply that it was part of BIP151.&lt;br/&gt;&lt;br/&gt;&amp;gt; Imaging Bip151 together with a simple form of preshared EC key&lt;br/&gt;&amp;gt; authentication (nonce signing or similar). You could drastically&lt;br/&gt;&amp;gt; increase the security/censor-resistance-properties between nodes where&lt;br/&gt;&amp;gt; owners have preshared identity keys (with nodes I also mean SPV/wallet&lt;br/&gt;&amp;gt; nodes).&lt;br/&gt;&lt;br/&gt;This is a restatement of what I have accepted as a premise - that authentication, and as such, key distribution, will be a necessary part of making any encryption scheme effective. &amp;#34;Preshared&amp;#34; implies a secure side channel for key distribution.&lt;br/&gt;&lt;br/&gt;&amp;gt; And I guess there are plenty of awesome identity management system ideas&lt;br/&gt;&amp;gt; tied or not tied to the Bitcoin blockchain out there.&lt;br/&gt;&amp;gt; This is also a reason to not cover trust/authentication/identity in BIP151.&lt;br/&gt;&amp;gt; It is  possible to have multiple authentication schemes.&lt;br/&gt;&lt;br/&gt;Whether or not there are multiple schemes is not relevant to the point I have raised. The issue is that authentication is necessary.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; In my opinion this question has not received sufficient consideration to warrant proceeding with a network encryption scheme (which concerns me as well, but as I consider it premature I won&amp;#39;t comment).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Yes. I think nobody have started implementing BIP151. It&amp;#39;s a draft BIP&lt;br/&gt;&amp;gt; and I think it&amp;#39;s still okay and great that we have this discussion.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP151 hopefully has started some brainwork in how encryption and&lt;br/&gt;&amp;gt; authentication could work in Bitcoin and I&amp;#39;m happy to deprecate BIP151 if we have found a better solution or if we come to a point where we agree that BIP151 does make the network security worse.&lt;br/&gt;&lt;br/&gt;We should contemplate what the distributed permissionless network of anonymous peers looks like once every node authenticates every one of its peers using one or more key distribution side channels.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Example: IIRC non of the available SPV wallets can &amp;#34;speak&amp;#34; on of the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; possible encryption techniques. Encrypting traffic below the application&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; layer is extremely hard to set up for non-experienced users.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Bloom filters can (and IMO should) be isolated from the P2P protocol. Also, if the proposal creates an insecurity its ease of deployment is moot.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If we assume increasing amount of novice users starting with Bitcoin every day, how should these users run wallets without increasing centralization by using webwallets or client/central-server wallets?&lt;br/&gt;&amp;gt; (which is OT, but an interesting question)&lt;br/&gt;&lt;br/&gt;I fully appreciate the significant security risk arising from the proliferation of web wallets. This can only be resolved by people validating using code under their own control.&lt;br/&gt;&lt;br/&gt;Encryption/authentication are orthogonal to this question, assuming people have wallets directly attached to full nodes. Remoting a wallet from a full node does not require use of the P2P protocol, and can use encryption/authentication without the concerns I&amp;#39;ve raised. It properly places the trust boundary around a wallet and its trusted node(s), as opposed to spanning (independent) nodes.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On top of that, encryption allows us to drop the SHA256 checksum per p2p&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; message which should result in a better performance on the network layer&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; once BIP151 is deployed.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I would not consider this a performance enhancing proposal. Simply dropping the checksum seems like a better option. But again, it is moot if it creates an insecurity.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I agree that BIP151 _must_ be deployed together with an authentication&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; scheme (I&amp;#39;m working on that) to protect again MITM during encryption&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; initialization.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; At a minimum I would propose that you modify BIP151 to declare a dependency on a future BIP, making BIP151 incomplete without it. I think we can agree that it would be unadvisable to deploy (and therefore to implement) encryption alone.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think BIP151 does what it says: encryption and laying groundwork for authentication.&lt;br/&gt;&amp;gt; You wouldn&amp;#39;t probably say BIP32 is incomplete because it does not cover&lt;br/&gt;&amp;gt; a scheme how to recover funds (or BIP141 [SW consensus] is incomplete&lt;br/&gt;&amp;gt; because it does not cover p2p [BIP144]).&lt;br/&gt;&lt;br/&gt;This is an unfair statement. You have acknowledged that BIP151 requires authentication to accomplish its sole objective.&lt;br/&gt;&lt;br/&gt;&amp;gt; The missing MITM protection (solvable over auth) is prominent mentioned in the BIP [1].&lt;br/&gt;&lt;br/&gt;As I pointed out.&lt;br/&gt;&lt;br/&gt;&amp;gt; (from your other mail):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I don&amp;#39;t see reasons why BIP151 could weaken the security of the P2P network. Can you point out some specific concerns?&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; TOFU cannot prevent MITM attacks (the goal of the encryption). Authentication requires a secure (trusted) side channel by which to distribute public keys. This presents what I consider a significant problem. If widespread, control over this distribution network would constitute control over who can use Bitcoin.&lt;br/&gt;&amp;gt;&amp;gt; The effort to prevent censorship could actually enable it. I don&amp;#39;t think it would get that far. Someone would point this out in the process of vetting the authentication BIP, and the result would be the scrapping of BIP151.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I agree that the secure trusted 2nd channel key-sharing problem can be significant for large networks and/or connecting to unknown identities.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; But as said, there could be multiple ways of sharing identity keys.&lt;br/&gt;&amp;gt; If you want to connect your node to serval other trusted nodes, you can simply physically preshare keys or do it over GPG / Signal App, etc..&lt;br/&gt;&lt;br/&gt;Again, it&amp;#39;s the fact that authentication is required that produces the issue, not that there are multiple ways to implement it.&lt;br/&gt;&lt;br/&gt;&amp;gt; And if I have followed the news correctly, there are some clever guys&lt;br/&gt;&amp;gt; working on various internet of trust 2.0 proposals...&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t see how this is relevant.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; BIP151 does not rely on identities. BIP151 does not use persisted keys&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (only ephemeral keys).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; BIP 151 is incomplete without authentication.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I would agree if you would say, _trusted encryption_ is incomplete with&lt;br/&gt;&amp;gt; authentication. But IMO BIP151 is complete and should be deployed together with one or multiple authentication schemes.&lt;br/&gt;&lt;br/&gt;It seems that we are talking past each other. You haven&amp;#39;t yet addressed the issue that I have raised.&lt;br/&gt;&lt;br/&gt;It is the requirement for authentication of any node that any other node may wish to connect to that is the issue. We end up with something that looks like WoT or PKI. And if not fully controlled by PKI (so using WoT) we will have hybrid nodes that accept untrusted connections and propagate information between trusted and untrusted nodes.&lt;br/&gt;&lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;https://github.com/bitcoin/bips/blob/master/bip-0151.mediawiki#risks&#34;&gt;https://github.com/bitcoin/bips/blob/master/bip-0151.mediawiki#risks&lt;/a&gt;&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-07T19:51:41&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs0f8el649zxzj00ng28jwck9hqrjdxpz8rxqwkktwf4zt8y8vge3szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug07msr</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs0f8el649zxzj00ng28jwck9hqrjdxpz8rxqwkktwf4zt8y8vge3szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpug07msr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq5fxh87xu0myw5n8wefndxwv2w3aquux79tdqwdqd90wwesjdrncj408ps&#39;&gt;nevent1q…08ps&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:&amp;gt; On Jun 28, 2016, at 11:36 PM, Gregory Maxwell &amp;lt;greg at xiph.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Tue, Jun 28, 2016 at 9:22 PM, Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; An &amp;#34;out of band key check&amp;#34; is not part of BIP151.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It has a session ID for this purpose.&lt;br/&gt;&lt;br/&gt;Passing the session ID out of band is authentication. As this is explicitly not part of BIP151 it cannot be that BIP151 provides the tools to detect a attack (the point at issue).&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; It requires a secure channel and is authentication. So BIP151 doesn&amp;#39;t provide the tools to detect an attack, that requires authentication. A general requirement for authentication is the issue I have raised.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; One might wonder how you ever use a Bitcoin address, or even why we might guess these emails from &amp;#34;you&amp;#34; aren&amp;#39;t actually coming from the NSA.&lt;br/&gt;&lt;br/&gt;The sarcasm is counterproductive Greg. By the same token I could ask how you ever use Bitcoin given that the P2P protocol is not encrypted or authenticated.&lt;br/&gt;&lt;br/&gt;It doesn&amp;#39;t matter who I am, maybe I am the NSA. I don&amp;#39;t argue from a position of authority. Signing my emails while traveling on holiday with only my phone gets a little tedious.&lt;br/&gt;&lt;br/&gt;The blockchain and mempool are a cache of public data. Transmission of a payment address to a payer is not a comparable scenario.&lt;br/&gt;&lt;br/&gt;The possibility that authentication may become required to participate in this trustless network is a legitimate concern, and one that has not been addressed.&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-07T19:51:40&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsphg3yj37vdjt852rj48ek32plk4w24hrhfex0z0265p9u750pw4szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4336wp</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsphg3yj37vdjt852rj48ek32plk4w24hrhfex0z0265p9u750pw4szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4336wp" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs25vtfp2px9lux68sm87xsen0yaht7gef202tt3a8f2me538c2j8s0fwkd0&#39;&gt;nevent1q…wkd0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:Hi Cameron, good to hear from you!&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 28, 2016, at 11:40 PM, Cameron Garnham &amp;lt;da2ce7 at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Unauthenticated link level encryption is wonderful! MITM attacks are overrated; as they require an active attacker.&lt;br/&gt;&lt;br/&gt;This is not really the case with Bitcoin. A MITM attack does not require that the attacker find a way to inject traffic into the communication between nodes. Peers will connect to the attacker directly, or accept connections directly from it. Such attacks can be easier than even passive attacks.&lt;br/&gt;&lt;br/&gt;&amp;gt; Stopping passive attacks is the low hanging fruit. This should be taken first.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Automated and secure peer authentication in a mesh network is a huge topic. One of the unsolved problems in computer science.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A simple &amp;#39;who is that&amp;#39; by asking for the fingerprint of your peers from your other peers is a very simple way to get &amp;#39;some&amp;#39; authentication.  Semi-trusted index nodes also is a low hanging fruit for authentication.&lt;br/&gt;&lt;br/&gt;It is the implication of widespread authentication that is at issue. Clearly there are ways to implement it using a secure side channels.&lt;br/&gt;&lt;br/&gt;&amp;gt; However, let&amp;#39;s first get unauthenticated encryption. Force the attackers to use active attacks. (That are thousands times more costly to couduct).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Sent from my iPhone&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On 29 Jun 2016, at 00:36, Gregory Maxwell via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Jun 28, 2016 at 9:22 PM, Eric Voskuil via bitcoin-dev&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; An &amp;#34;out of band key check&amp;#34; is not part of BIP151.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It has a session ID for this purpose.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; It requires a secure channel and is authentication. So BIP151 doesn&amp;#39;t provide the tools to detect an attack, that requires authentication. A general requirement for authentication is the issue I have raised.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; One might wonder how you ever use a Bitcoin address, or even why we&lt;br/&gt;&amp;gt;&amp;gt; might guess these emails from &amp;#34;you&amp;#34; aren&amp;#39;t actually coming from the&lt;br/&gt;&amp;gt;&amp;gt; NSA.&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;-------------- 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/20160629/5fb01d58/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20160629/5fb01d58/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:51:39&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsf0areg0jw7mh4gg8n4q2gh48l5fxpy4cn4s40mv87pfwqttfafnszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuddfst3</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsf0areg0jw7mh4gg8n4q2gh48l5fxpy4cn4s40mv87pfwqttfafnszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuddfst3" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqst4d3xdt6g7qyd2qdhd0me5eqyqgeqgh5vn5zqxhypfy2a9xvd83cw3hkyv&#39;&gt;nevent1q…hkyv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:&amp;gt; On Jun 28, 2016, at 10:36 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Jun 28, 2016 at 10:29:54PM &#43;0200, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Jun 28, 2016, at 10:14 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; On Tue, Jun 28, 2016 at 08:35:26PM &#43;0200, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi Peter,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What in this BIP makes a MITM attack easier (or easy) to detect, or increases the probability of one being detected?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; BIP151 gives users the tools to detect a MITM attack.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; It&amp;#39;s kinda like PGP in that way: lots of PGP users don&amp;#39;t properly check keys,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; PGP requires a secure side channel for transmission of public keys. How does one &amp;#34;check&amp;#34; a key of an anonymous peer? I know you well enough to know you wouldn&amp;#39;t trust a PGP key received over an insecure channel.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; All you can prove is that you are talking to a peer and that communications in the session remain with that peer. The peer can be the attacker. As Jonas has acknowledged, authentication is required to actually guard against MITM attacks.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Easy: anonymous peers aren&amp;#39;t always actually anonymous.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A MITM attacker can&amp;#39;t easily distinguish communications between two nodes that&lt;br/&gt;&amp;gt; randomly picked their peers, and nodes that are connected because their operators manually used -addnode to peer; in the latter case the operators can&lt;br/&gt;&amp;gt; check whether or not they&amp;#39;re being attacked with an out-of-band key check.&lt;br/&gt;&lt;br/&gt;An &amp;#34;out of band key check&amp;#34; is not part of BIP151. It requires a secure channel and is authentication. So BIP151 doesn&amp;#39;t provide the tools to detect an attack, that requires authentication. A general requirement for authentication is the issue I have raised.&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-07T19:51:38&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs0y84uanpc7jt48k5g5p9vdzkpfnfywzqjj49ylerwmg6g3sykj4czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpua8vmxk</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs0y84uanpc7jt48k5g5p9vdzkpfnfywzqjj49ylerwmg6g3sykj4czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpua8vmxk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrrhj5qt409pqa9gl5gj58lsm52jxsenna0qy0vu7fmdsq4sfdmscc0dqxd&#39;&gt;nevent1q…dqxd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:Hi Peter,&lt;br/&gt;&lt;br/&gt;What in this BIP makes a MITM attack easier (or easy) to detect, or increases the probability of one being detected?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 28, 2016, at 8:22 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Tue, Jun 28, 2016 at 06:45:58PM &#43;0200, Eric Voskuil via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; 1) Transaction censorship&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ISPs, WIFI provider or any other MITM, can holdback/censor unconfirmed&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; transactions. Regardless if you are a miner or a validation/wallet node.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; 2) Peer censorship&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; MITM can remove or add entries from a &amp;#34;addr&amp;#34; message.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; 3) Fingerprinting&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ISPs or any other MITM can intercept/inject fingerprinting relevant&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; messages like &amp;#34;mempool&amp;#34; to analyze the bitcoin network.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Encryption alone cannot protect against a MITM attack in an anonymous and permissionless network. This is accepted in the BIP (and your follow-up reply).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Being able to easily detect MITM attacks is a _huge_ step forward that&lt;br/&gt;&amp;gt; shouldn&amp;#39;t be underestimated; even if 99% of users aren&amp;#39;t in a position to&lt;br/&gt;&amp;gt; detect the MITM you only need a small subset of users that do the necessary&lt;br/&gt;&amp;gt; checks to alert the wider community, who can then respond with stronger&lt;br/&gt;&amp;gt; security measures. Those measures are likely to be more costly - authenticated&lt;br/&gt;&amp;gt; systems are significantly harder than not - so better to save your efforts&lt;br/&gt;&amp;gt; until the need for them is more obvious.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Also the fact that an attack has a reasonable probability of detection is a big&lt;br/&gt;&amp;gt; disincentive for many types of attackers - note how one of the things revealed&lt;br/&gt;&amp;gt; in the Snowden leaks was the fact that the NSA generally tries quite hard to&lt;br/&gt;&amp;gt; avoid tipping off targets to the fact that they&amp;#39;re being surveilled, with a&lt;br/&gt;&amp;gt; myriad of carefully scripted policies to control when and how exploits are used&lt;br/&gt;&amp;gt; against targets.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org
    </content>
    <updated>2023-06-07T19:51:37&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsqmwlcnqhet4fg65kfqnfcumgtjc4a5hg57qphtt9e7qaqacnrzhqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpukgy983</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:&amp;gt; ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsqmwlcnqhet4fg65kfqnfcumgtjc4a5hg57qphtt9e7qaqacnrzhqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpukgy983" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspcukdy76w9rm7hhatxaadvpdkahe437lnhtdy0jcala5gvqxjc7slgkpm0&#39;&gt;nevent1q…kpm0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:&amp;gt; On Jun 28, 2016, at 10:14 PM, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; On Tue, Jun 28, 2016 at 08:35:26PM &#43;0200, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; Hi Peter,&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; What in this BIP makes a MITM attack easier (or easy) to detect, or increases the probability of one being detected?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP151 gives users the tools to detect a MITM attack.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It&amp;#39;s kinda like PGP in that way: lots of PGP users don&amp;#39;t properly check keys,&lt;br/&gt;&lt;br/&gt;PGP requires a secure side channel for transmission of public keys. How does one &amp;#34;check&amp;#34; a key of an anonymous peer? I know you well enough to know you wouldn&amp;#39;t trust a PGP key received over an insecure channel.&lt;br/&gt;&lt;br/&gt;All you can prove is that you are talking to a peer and that communications in the session remain with that peer. The peer can be the attacker. As Jonas has acknowledged, authentication is required to actually guard against MITM attacks.&lt;br/&gt;&lt;br/&gt;&amp;gt; so an attacker won&amp;#39;t have a hard time MITM attacking those users. But some&lt;br/&gt;&amp;gt; users do check keys, a labor intensive manual process, but not a process that&lt;br/&gt;&amp;gt; requires any real cryptographic sophistication, let alone writing any code.&lt;br/&gt;&amp;gt; It&amp;#39;s very difficult for widescale attackers to distinguish the users who do&lt;br/&gt;&amp;gt; check keys from the ones that don&amp;#39;t, so if you MITM attack _any_ user you run&lt;br/&gt;&amp;gt; the risk of running into one of the few that does check, and those users can&lt;br/&gt;&amp;gt; alert everyone else.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The key thing, is we need to get everyones communications encrypted first: if&lt;br/&gt;&amp;gt; we don&amp;#39;t the MITM attacker can intercept 99% of the communications with 0% risk&lt;br/&gt;&amp;gt; of detection, because the non-sophisticated users are trivially distinguishable from the sophisticated users: just find the users with unencrypted&lt;br/&gt;&amp;gt; communications!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org
    </content>
    <updated>2023-06-07T19:51:37&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsgqmdef780lc773hy3kny8ge028clvkkqsjn09qr5vuggcdgqkkyszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytput5rhe4</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsgqmdef780lc773hy3kny8ge028clvkkqsjn09qr5vuggcdgqkkyszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytput5rhe4" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsg5pa2t49f3hl3t4j3t054fmpjexzcy630mugf9v22x9cjagmytrql97d2u&#39;&gt;nevent1q…7d2u&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:Hi Jonas, I&amp;#39;ll follow up in your second reply as well. Responses inline:&lt;br/&gt;&lt;br/&gt;&amp;gt; On Jun 28, 2016, at 10:26 AM, Jonas Schnelli via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Hi Eric&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I haven&amp;#39;t seen much discussion here on the rationale behind BIP 151. Apologies if I missed it. I&amp;#39;m trying to understand why libbitcoin (or any node) would want to support it.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I understand the use, when coupled with a yet-to-be-devised identity system, with Bloom filter features. Yet these features are client-server in nature. Libbitcoin (for example) supports client-server features on an independent port (and implements a variant of CurveCP for encryption and identity). My concern arises with application of identity to the P2P protocol (excluding Bloom filter features).&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It seems to me that the desire to secure against the weaknesses of BF is being casually generalized to the P2P network. That generalization may actually weaken the security of the P2P protocol. One might consider the proper resolution is to move the BF features to a client-server protocol.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; The BIP does not make a case for other scenarios, or contemplate the significant problems associated with key distribution in any identity system. Given that the BIP relies on identity, these considerations should be fully vetted before heading down another blind alley.&lt;br/&gt;&lt;br/&gt;&amp;gt; In my opinion, the question should be &amp;#34;why would you _not_ encrypt&amp;#34;.&lt;br/&gt;&lt;br/&gt;1) creation of a false sense of security&lt;br/&gt;2) as a tradeoff against anonymity&lt;br/&gt;3) benefit does not justify cost&lt;br/&gt;&lt;br/&gt;&amp;gt; 1) Transaction censorship&lt;br/&gt;&amp;gt; ISPs, WIFI provider or any other MITM, can holdback/censor unconfirmed&lt;br/&gt;&amp;gt; transactions. Regardless if you are a miner or a validation/wallet node.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 2) Peer censorship&lt;br/&gt;&amp;gt; MITM can remove or add entries from a &amp;#34;addr&amp;#34; message.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 3) Fingerprinting&lt;br/&gt;&amp;gt; ISPs or any other MITM can intercept/inject fingerprinting relevant&lt;br/&gt;&amp;gt; messages like &amp;#34;mempool&amp;#34; to analyze the bitcoin network.&lt;br/&gt;&lt;br/&gt;Encryption alone cannot protect against a MITM attack in an anonymous and permissionless network. This is accepted in the BIP (and your follow-up reply).&lt;br/&gt;&lt;br/&gt;&amp;gt; 4) SPV&lt;br/&gt;&amp;gt; For obvious reasons regarding BF (see BIP or above).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 5) Goundwork for a &amp;#34;client-server&amp;#34; model over the P2P channel&lt;br/&gt;&amp;gt; Fee estimation, bloom-filters, or any other message type that requires&lt;br/&gt;&amp;gt; authentication.&lt;br/&gt;&lt;br/&gt;I do not challenge the usefulness and appropriateness of encryption with authentication in a client-server blockchain protocol.&lt;br/&gt;&lt;br/&gt;&amp;gt; I would not reduce BIP151 to only solve the BF privacy/censorship problem.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If we agree that censorship-resistance is one of the main properties of Bitcoin,&lt;br/&gt;&lt;br/&gt;We do.&lt;br/&gt;&lt;br/&gt;&amp;gt; then we should definitively use a form of end-to-end encryption between nodes. Built into the network layer.&lt;br/&gt;&lt;br/&gt;This is the assumption that I&amp;#39;m questioning.&lt;br/&gt;&lt;br/&gt;&amp;gt; There are plenty of other options to solve this problem. stunnel,&lt;br/&gt;&amp;gt; Bernsteins CurveCP, VPN, etc. which are available since years.&lt;br/&gt;&amp;gt; But the reality has shown that most bitcoin traffic is still unencrypted.&lt;br/&gt;&lt;br/&gt;The question arises from concern over the security of the network in the case where encryption (and therefore authentication) is pervasive.&lt;br/&gt;&lt;br/&gt;As you point out, anyone can set up a private network of nodes today. These nodes must also connect to the permissionless network to maintain the chain. These nodes constitute a trust zone within Bitcoin. This zone of exclusion operates as a single logical node from the perspective of the Bitcoin security model (one entity controls the validation rules for all nodes).&lt;br/&gt;&lt;br/&gt;Widespread application of this model is potentially problematic. It is a non-trivial problem to design a distributed system that requires authentication but without identity and without central control. In fact this may be more challenging than Bitcoin itself. Trust on first use (TOFU) does not solve this problem.&lt;br/&gt;&lt;br/&gt;In my opinion this question has not received sufficient consideration to warrant proceeding with a network encryption scheme (which concerns me as well, but as I consider it premature I won&amp;#39;t comment).&lt;br/&gt;&lt;br/&gt;&amp;gt; Example: IIRC non of the available SPV wallets can &amp;#34;speak&amp;#34; on of the&lt;br/&gt;&amp;gt; possible encryption techniques. Encrypting traffic below the application&lt;br/&gt;&amp;gt; layer is extremely hard to set up for non-experienced users.&lt;br/&gt;&lt;br/&gt;Bloom filters can (and IMO should) be isolated from the P2P protocol. Also, if the proposal creates an insecurity its ease of deployment is moot.&lt;br/&gt;&lt;br/&gt;&amp;gt; On top of that, encryption allows us to drop the SHA256 checksum per p2p&lt;br/&gt;&amp;gt; message which should result in a better performance on the network layer&lt;br/&gt;&amp;gt; once BIP151 is deployed.&lt;br/&gt;&lt;br/&gt;I would not consider this a performance enhancing proposal. Simply dropping the checksum seems like a better option. But again, it is moot if it creates an insecurity.&lt;br/&gt;&lt;br/&gt;&amp;gt; I agree that BIP151 _must_ be deployed together with an authentication&lt;br/&gt;&amp;gt; scheme (I&amp;#39;m working on that) to protect again MITM during encryption&lt;br/&gt;&amp;gt; initialization.&lt;br/&gt;&lt;br/&gt;At a minimum I would propose that you modify BIP151 to declare a dependency on a future BIP, making BIP151 incomplete without it. I think we can agree that it would be unadvisable to deploy (and therefore to implement) encryption alone.&lt;br/&gt;&lt;br/&gt;I&amp;#39;ll respond to the question of authentication in your follow-up post.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; ---&lt;br/&gt;&amp;gt; &amp;lt;/jonas&amp;gt;&lt;br/&gt;&amp;gt; &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&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;
    </content>
    <updated>2023-06-07T19:51:36&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs83yh7ke8ztz9g6z7cuwy06necjf97ge34janw0y05fsr8523ns9qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuw6y4yt</id>
    
      <title type="html">📅 Original date posted:2016-06-28 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs83yh7ke8ztz9g6z7cuwy06necjf97ge34janw0y05fsr8523ns9qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuw6y4yt" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdp69myh248vcvpnqdjmv9s4wzvl83pdvcrh2sggpymaqutyzxe0gzgfj0w&#39;&gt;nevent1q…fj0w&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-06-28&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA256&lt;br/&gt;&lt;br/&gt;I haven&amp;#39;t seen much discussion here on the rationale behind BIP 151. Apologies if I missed it. I&amp;#39;m trying to understand why libbitcoin (or any node) would want to support it.&lt;br/&gt;&lt;br/&gt;I understand the use, when coupled with a yet-to-be-devised identity system, with Bloom filter features. Yet these features are client-server in nature. Libbitcoin (for example) supports client-server features on an independent port (and implements a variant of CurveCP for encryption and identity). My concern arises with application of identity to the P2P protocol (excluding Bloom filter features).&lt;br/&gt;&lt;br/&gt;It seems to me that the desire to secure against the weaknesses of BF is being casually generalized to the P2P network. That generalization may actually weaken the security of the P2P protocol. One might consider the proper resolution is to move the BF features to a client-server protocol.&lt;br/&gt;&lt;br/&gt;The BIP does not make a case for other scenarios, or contemplate the significant problems associated with key distribution in any identity system. Given that the BIP relies on identity, these considerations should be fully vetted before heading down another blind alley.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: oPenGP 6.0 on iOS&lt;br/&gt;&lt;br/&gt;iQEVAwUBV3IkYjzYwH8LXOFOAQg&#43;iggAkFShi/ibZXiVv3A3z1a1SMd&#43;4ar0kiZk&lt;br/&gt;mCkBBZaatoW8tXVZmuv5xzLnj3ali9Y4jp/3h2nUJ1B4ov2kcB0kZIKE/a1DTFwb&lt;br/&gt;4X3uSzgu0lEAqSZormOvt7Op46NPn6KJ&#43;/wTtP4lUFU72lSd7qrVKMlCVc88VE7/&lt;br/&gt;pMloKSc69nAeFIkyWbOUi/zDzefu/5tarfif85jumooYjPmAwJnkgiPCqpqBbuga&lt;br/&gt;5lBdS1r47KK&#43;SaDFl6Cbn4i/c6tBPLTnu&#43;TR7TEKOW5vwVA7eUqb6SOK7pETWJGK&lt;br/&gt;0Ii4ZWYt7MOPSEda381CMjWEwtsCNp0eI4GPZAAz&#43;jNLo4G1&#43;PAbaw==&lt;br/&gt;=Balw&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T19:51:36&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsv0dwp6wnwkjn5s7p2jytan3vdth04zqq2ac59m76myn3hfma7saszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu5j27j5</id>
    
      <title type="html">📅 Original date posted:2016-03-03 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsv0dwp6wnwkjn5s7p2jytan3vdth04zqq2ac59m76myn3hfma7saszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu5j27j5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvdvhp6u3gpwdz2lxf2692vqanmf40x3mf5cdt38mrj7krg28gkzc0gx8r3&#39;&gt;nevent1q…x8r3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-03-03&lt;br/&gt;📝 Original message:On 03/02/2016 03:02 PM, Peter Todd wrote:&lt;br/&gt;&amp;gt; On Wed, Mar 02, 2016 at 11:01:36AM -0800, Eric Voskuil via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; A 6 month investment with 3 months on the high subsidy and 3 months on low subsidy would not be made…&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Yes, this is the essential point. All capital investments are made based on expectations of future returns. To the extent that futures are perfectly knowable, they can be perfectly factored in. This is why inflation in Bitcoin is not a tax, it’s a cost. These step functions are made continuous by their predictability, removing that predictability will make them -- unpredictable.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You know, I do agree with you.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; But see, this is one of the reasons why we keep reminding people that&lt;br/&gt;&amp;gt; strictly speaking a hardfork *is* an altcoin, and the altcoin can change&lt;br/&gt;&amp;gt; any rule currently in Bitcoin.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It&amp;#39;d be perfectly reasonable to create an altcoin with a 22-million-coin&lt;br/&gt;&amp;gt; limit and an inflation schedule that had smooth, rather than abrupt,&lt;br/&gt;&amp;gt; drops. It&amp;#39;d also be reasonable to make that altcoin start with the same&lt;br/&gt;&amp;gt; UTXO set as Bitcoin as a means of initial coin distribution.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If miners choose to start mining that altcoin en-mass on the halving,&lt;br/&gt;&amp;gt; all the more power to them. It&amp;#39;s our choice whether or not we buy those&lt;br/&gt;&amp;gt; coins. We may choose not to, but if 95% of the hashing power decides to&lt;br/&gt;&amp;gt; go mine something different we have to accept that under our current&lt;br/&gt;&amp;gt; chosen rules confirmations might take a long time.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Of course, personally I agree with Gregory Maxwell: this is all fairly&lt;br/&gt;&amp;gt; unlikely to happen, so the discussion is academic. But we&amp;#39;ll see.&lt;br/&gt;&amp;gt; &lt;br/&gt;I agree, this is a perfectly rational interpretation. I also agree that&lt;br/&gt;this particular instance is academic. But I see more to this than&lt;br/&gt;accepting what is possible.&lt;br/&gt;&lt;br/&gt;In the case of Federal Reserve Notes the gold obligation was abrogated.&lt;br/&gt;This was (at least) a contract default, implemented by force of arms.&lt;br/&gt;This contentious hard fork was clearly an attack.&lt;br/&gt;&lt;br/&gt;But in a system with no authority and in which nobody has formed a&lt;br/&gt;contractual obligation with anyone else, what would constitute an attack&lt;br/&gt;on the money? There is no difference between state attacks on (or&lt;br/&gt;collusion with) miners and miners acting on self interest.&lt;br/&gt;&lt;br/&gt;One answer is that nothing is an attack, it&amp;#39;s up to the market to&lt;br/&gt;decide. But to the extent that there can be an attack on the money, the&lt;br/&gt;attempt to move the value of the coin to an altcoin (hard fork) is it.&lt;br/&gt;Though the choice of the term &amp;#34;attack&amp;#34; isn&amp;#39;t essential.&lt;br/&gt;&lt;br/&gt;The importance of recognizing an attack is that it affords one the&lt;br/&gt;opportunity to defend against it. People holding &amp;#34;dollars&amp;#34; in 1933 were&lt;br/&gt;ill equipped to defend against a system level attack (monetary policy),&lt;br/&gt;in part because many did not recognize it as such, and in part because&lt;br/&gt;there was insufficient preparation by those who did.&lt;br/&gt;&lt;br/&gt;I see us building the tools and awareness necessary for defense. As you&lt;br/&gt;say, nobody has to buy into an altcoin forked from their coin. This much&lt;br/&gt;is simple to achieve. The more difficult problem is preserving the&lt;br/&gt;utility of the original coin. Clearly the purpose of a hard fork (as&lt;br/&gt;opposed to a new coin) is to transfer this value.&lt;br/&gt;&lt;br/&gt;We&amp;#39;ve all seen arguments for contentious hard fork deployment that&lt;br/&gt;explicitly depend on the fear of monetary loss to drag people to&lt;br/&gt;acceptance. While this may be the nature of the technology, it&amp;#39;s&lt;br/&gt;important that we develop effective defense against it.&lt;br/&gt;&lt;br/&gt;Ultimately the only defense is individual validation. The collusion of&lt;br/&gt;banks (web wallets) with miners in attacking consensus is obvious. But&lt;br/&gt;even without active collusion, the surrender of validation leaves people&lt;br/&gt;just as defenseless as *being* unarmed while retaining a right to&lt;br/&gt;*become* armed.&lt;br/&gt;&lt;br/&gt;Even if every person mines at the same level, the system amounts to&lt;br/&gt;little more than majority rule if validation is not decentralized. There&lt;br/&gt;are people perfectly willing to exploit this weakness.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20160303/10b4501e/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20160303/10b4501e/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:49:31&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdfyl4rv0dkhy95ydq5hn5hz8kukukc0j532atf9g46a7y67axrygzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu0uq4kd</id>
    
      <title type="html">📅 Original date posted:2016-03-02 📝 Original message:&amp;gt; A ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdfyl4rv0dkhy95ydq5hn5hz8kukukc0j532atf9g46a7y67axrygzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu0uq4kd" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxk5dxpgl5xra02xxva7tld80ghexnzf432qqjjszpaudh5tn5a7saddndm&#39;&gt;nevent1q…dndm&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-03-02&lt;br/&gt;📝 Original message:&amp;gt; A 6 month investment with 3 months on the high subsidy and 3 months on low subsidy would not be made…&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;Yes, this is the essential point. All capital investments are made based on expectations of future returns. To the extent that futures are perfectly knowable, they can be perfectly factored in. This is why inflation in Bitcoin is not a tax, it’s a cost. These step functions are made continuous by their predictability, removing that predictability will make them -- unpredictable.&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;Changing these futures punishes those who have planned properly and favors those who have not. Sort of like a Bitcoin bail-in; are some miners are too big to fail? It also creates the expectation that it may happen again. This infects the money with the sort of uncertainty that Bitcoin is designed to prevent.&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;From: bitcoin-dev-bounces at lists.linuxfoundation.org [mailto:bitcoin-dev-bounces at lists.linuxfoundation.org] On Behalf Of Tier Nolan via bitcoin-dev&lt;br/&gt;Sent: Wednesday, March 2, 2016 10:08 AM&lt;br/&gt;Cc: Bitcoin Dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;Subject: Re: [bitcoin-dev] Hardfork to fix difficulty drop algorithm&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;On Wed, Mar 2, 2016 at 4:27 PM, Paul Sztorc 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;&lt;br/&gt;For example, it is theoretically possible that 100% of miners (not 50%&lt;br/&gt;or 10%) will shut off their hardware. This is because it is revenue&lt;br/&gt;which ~halves, not profit.&lt;br/&gt;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;It depends on how much is sunk costs and how much is marginal costs too.&lt;br/&gt;&lt;br/&gt;If hashing costs are 50% capital and 50% marginal, then the entire network will be able to absorb a 50% drop in subsidy.&lt;br/&gt;&lt;br/&gt;50% capital costs means that the cost of the loan to buy the hardware represents half the cost.&lt;br/&gt;&lt;br/&gt;Assume that for every $100 of income, you have to pay $49 for the loan and $49 for electricity giving 2% profit.  If the subsidy halves, then you only get $50 of income, so lose $48.  &lt;br/&gt;&lt;br/&gt;But if the bank repossesses the operation, they might as well keep things running for the $1 in marginal profit (or sell on the hardware to someone who will keep using it).&lt;br/&gt;&lt;br/&gt;Since this drop in revenue is well known in advance, businesses will spend less on capital.  That means that there should be less mining hardware than otherwise.&lt;br/&gt;&lt;br/&gt;A 6 month investment with 3 months on the high subsidy and 3 months on low subsidy would not be made if it only generated a small profit for the first 3 and then massive losses for the 2nd period of 3 months.  For it to be made, there needs to be large profit during the first period to compensate for the losses in the 2nd period.&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/20160302/0439b647/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20160302/0439b647/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:49:30&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsvmmcnu8fhxkler8ygerzk9h5lv8z3g777kutd42vu9s7se7v5efczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuvp3ydy</id>
    
      <title type="html">📅 Original date posted:2015-09-19 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsvmmcnu8fhxkler8ygerzk9h5lv8z3g777kutd42vu9s7se7v5efczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuvp3ydy" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8tc5985t9qwzv90sfwumhun8fwdzhagzqmnjfuagmzmv73r49kmskxnd09&#39;&gt;nevent1q…nd09&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-09-19&lt;br/&gt;📝 Original message:On 09/19/2015 12:57 AM, NxtChg wrote:&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Your vision of censorship resistance is to become such a strong&lt;br/&gt;&amp;gt;&amp;gt; central authority that you can resist it in direct physical&lt;br/&gt;&amp;gt;&amp;gt; confrontation. If you succeed at this, you are the threat.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; My vision is a strong _decentralized_ system, which is:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;   a) too important to close,&lt;br/&gt;&lt;br/&gt;Your argument is that the state is not a threat to a system designed to&lt;br/&gt;deprive the state of seigniorage, because the state will see that system&lt;br/&gt;as too important?&lt;br/&gt;&lt;br/&gt;Bitcoin cannot be both decentralized and reliant on being, &amp;#34;too&lt;br/&gt;important to close&amp;#34;. If it can be closed there is insufficient&lt;br/&gt;decentralization.&lt;br/&gt;&lt;br/&gt;I was concerned that this was going off topic for a technical forum.&lt;br/&gt;However this is the central technical issue of Bitcoin. If one does not&lt;br/&gt;understand the threat then one cannot model it or design systems to&lt;br/&gt;defend against it. On the other hand, this is unfortunately not new&lt;br/&gt;territory, so I&amp;#39;ll leave it at this, which is also not news to most of us...&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt;   b) able to provide adequate response to governments, like EFF or&lt;br/&gt;Google do.&lt;br/&gt;&lt;br/&gt;&amp;#34;The National Security Agency paid millions of dollars to cover the&lt;br/&gt;costs of major internet companies involved in the Prism surveillance&lt;br/&gt;program after a court ruled that some of the agency&amp;#39;s activities were&lt;br/&gt;unconstitutional, according to top-secret material passed to the Guardian.&lt;br/&gt;&lt;br/&gt;The technology companies, which the NSA says includes Google...&amp;#34;&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;http://www.theguardian.com/world/2013/aug/23/nsa-prism-costs-tech-companies-paid&#34;&gt;http://www.theguardian.com/world/2013/aug/23/nsa-prism-costs-tech-companies-paid&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150919/9fb0d870/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150919/9fb0d870/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:40:31&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs0etx9d5fj6kxraev4de4fjmgcqwyt7pg99r7dy2hglau9e97am3qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuh23rxm</id>
    
      <title type="html">📅 Original date posted:2015-09-19 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs0etx9d5fj6kxraev4de4fjmgcqwyt7pg99r7dy2hglau9e97am3qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuh23rxm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsves7aj4v64aahxwcyrhvag0zh2aqx7xg2jzmzpkgyqsaxsql9kvc3xhrl2&#39;&gt;nevent1q…hrl2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-09-19&lt;br/&gt;📝 Original message:On 09/18/2015 11:06 PM, NxtChg via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; While to many of us that sounds crazy, if you&amp;#39;re threat model assumes&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin is a legal/regulated service provided by a highly trusted&lt;br/&gt;&amp;gt;&amp;gt; mining community it&amp;#39;s a reasonable design.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; There is a large, grey area all the way to &amp;#34;legal/regulated service&lt;br/&gt;&amp;gt; provided by a highly trusted mining community&amp;#34;. Painting the worst&lt;br/&gt;&amp;gt; looking picture is either a defect in thinking or intentional FUD.&lt;br/&gt;&lt;br/&gt;The state is the threat in the Bitcoin threat model. You comments below&lt;br/&gt;acknowledge it. The assumption of hostile state actors is the only&lt;br/&gt;rational starting point. That which is regulated (and regulatable) in&lt;br/&gt;Bitcoin is the attack surface.&lt;br/&gt;&lt;br/&gt;While of course there are various degrees of weakness, the reference to&lt;br/&gt;&amp;#34;legal/regulated service provided by a highly trusted mining&amp;#34; as the&lt;br/&gt;threat is by no means irrational or misdirecting. This threat represents&lt;br/&gt;the difference between Bitcoin and Fedcoin.&lt;br/&gt;&lt;br/&gt;I found Mike&amp;#39;s threat model downright disturbing. All benefits of&lt;br/&gt;Bitcoin arise from its resistance to this threat. Anyone investor in&lt;br/&gt;this space should be paying attention... the apparent benefits of&lt;br/&gt;Bitcoin will vaporize with regulation.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; Mike Hearn recently posted his threat model, which specifically&lt;br/&gt;&amp;gt;&amp;gt; argues we should assume governments are not a threat.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; There are two ways to fight governments:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; 1. either you become too big to close, so political repercussions&lt;br/&gt;&amp;gt; become unacceptable&lt;br/&gt;&lt;br/&gt;This is extremely naive. At a minimum, getting popular/successful (and&lt;br/&gt;regulated) is the formula for regulatory capture.&lt;br/&gt;&lt;br/&gt;&amp;gt; 2. or you become too tiny to hunt, in which case you are much better&lt;br/&gt;&amp;gt; off with a specialized alt-coin, designed specifically for that&lt;br/&gt;&amp;gt; purpose.&lt;br/&gt;&lt;br/&gt;I assume you are referring some marginal and largely irrelevant effort.&lt;br/&gt;&lt;br/&gt;False dichotomy.&lt;br/&gt;&lt;br/&gt;[cross-posted to libbitcoin]&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150918/ca1214fd/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150918/ca1214fd/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:40:30&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsrrk68nu8x0vtau0sy92f7v00qkqee2c36z0x9vm7jl5q5nk5q57czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudyn0az</id>
    
      <title type="html">📅 Original date posted:2015-09-19 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrrk68nu8x0vtau0sy92f7v00qkqee2c36z0x9vm7jl5q5nk5q57czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudyn0az" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsy2rusu3t927dz9at9yzvc9zmvanhnxtsa9zt6c7lphhc24t6qwjg7jfrtr&#39;&gt;nevent1q…frtr&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-09-19&lt;br/&gt;📝 Original message:On 09/19/2015 12:27 AM, NxtChg wrote:&lt;br/&gt;&amp;gt;&amp;gt; This is extremely naive. At a minimum, getting popular/successful (and regulated) is the formula for regulatory capture.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Let me give you an example.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Suppose you are a regular guy, say Peter Todd, and you are faced with 10 policemen in anti-riot gear.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You can fight them in two ways:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. become stronger, so you could provide an adequate response, either by turning into Hulk or by getting another 30-50 Peter Todds.&lt;br/&gt;&lt;br/&gt;Your vision of censorship resistance is to become such a strong central&lt;br/&gt;authority that you can resist it in direct physical confrontation. If&lt;br/&gt;you succeed at this, you are the threat.&lt;br/&gt;&lt;br/&gt;&amp;gt; 2. lose some fat, learn a few parkour tricks and move around mostly by night behind dumpsters.&lt;br/&gt;&lt;br/&gt;And your alternative is to lurk in dark corners.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;The inability to see another option is the inability to understand what&lt;br/&gt;Satoshi created.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150919/5262f3ce/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150919/5262f3ce/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:40:30&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9yzxy456fhy7pejh8rqvgljj70myuhud34kdfawf2r45uwxrr25gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpulj8g8a</id>
    
      <title type="html">📅 Original date posted:2015-08-19 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9yzxy456fhy7pejh8rqvgljj70myuhud34kdfawf2r45uwxrr25gzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpulj8g8a" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqzf04fgme2rs7uls5stnd5r59hpvqjtkhdl0j07d7gf58v5swacs7et7ga&#39;&gt;nevent1q…t7ga&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-19&lt;br/&gt;📝 Original message:On 08/19/2015 04:27 PM, Jorge Timón wrote:&lt;br/&gt;&amp;gt; On Thu, Aug 20, 2015 at 1:07 AM, Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; [cross-posted to libbitcoin]&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; On 08/19/2015 03:00 PM, Jorge Timón via bitcoin-dev wrote:&amp;gt; On Wed, Aug&lt;br/&gt;&amp;gt;&amp;gt; 19, 2015 at 10:04 PM, Eric Lombrozo &amp;lt;elombrozo at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; But the consensus code should NOT be subject to the same commit&lt;br/&gt;&amp;gt;&amp;gt; policies…and we should make an effort to separate the two clearly. And&lt;br/&gt;&amp;gt;&amp;gt; we should find a way to communicate the difference succinctly and&lt;br/&gt;&amp;gt;&amp;gt; clearly to laypeople (which is something I think the XT opponents have&lt;br/&gt;&amp;gt;&amp;gt; been horrible at doing so far).&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I think that effort is in progress (again, much slower that I would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; like it to be) and it&amp;#39;s called libconsensus.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Once we have libconsensus Bitcoin Core it&amp;#39;s just another&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; implementation (even if it is the reference one) and it&amp;#39;s not &amp;#34;the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; specification of the consensus rules&amp;#34; which is a &amp;#34;privileged&amp;#34; position&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; that brings all sorts of misunderstandings and problems (the block&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; size debate is just one example).&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Jorge,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I applaud your efforts and objectives WRT libconsensus independence. But&lt;br/&gt;&amp;gt;&amp;gt; as you know I differ with you on this point:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Once we have libconsensus Bitcoin Core it&amp;#39;s just another&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; implementation&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I do not consider Bitcoin Core just another implementation as long as&lt;br/&gt;&amp;gt;&amp;gt; libconsensus is built directly out of the bitcoind repository. It&amp;#39;s a&lt;br/&gt;&amp;gt;&amp;gt; finer point, but an important one. Eric makes this point emphatically as&lt;br/&gt;&amp;gt;&amp;gt; well:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; But the consensus code should NOT be subject to the same commit&lt;br/&gt;&amp;gt;&amp;gt; policies...and we should make an effort to separate the two clearly.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; As you have implied, it&amp;#39;s not likely to happen in the Bitcoin Core repo.&lt;br/&gt;&amp;gt;&amp;gt; Taking a dependency on Bitcoin Core is a metaphorical deal with the&lt;br/&gt;&amp;gt;&amp;gt; devil from our perspective. So my question is, how do you expect other&lt;br/&gt;&amp;gt;&amp;gt; implementations to transition off of that repository (and commit&lt;br/&gt;&amp;gt;&amp;gt; policies)? Or do you expect the dependency to be perpetual?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; No, as previously explained, once libconsensus is complete it can be&lt;br/&gt;&amp;gt; moved to a separate repository like libsecp256k1.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t see this happening any time soon, and I&amp;#39;m not sure why we should&lt;br/&gt;wait for it.&lt;br/&gt;&lt;br/&gt;&amp;gt; At first it will need to be a subtree/subrepository of Bitcoin Core&lt;br/&gt;&amp;gt; (like libsecp256k1 currently is), but I still don&amp;#39;t undesrtand how&lt;br/&gt;&amp;gt; that can possibly be a problem for alternative implementations (they&lt;br/&gt;&amp;gt; can use a subtree as well if they want to). Depending on a separated&lt;br/&gt;&amp;gt; libconsensus doesn&amp;#39;t &amp;#34;make Bitcoin Core a dependency&amp;#34; more than&lt;br/&gt;&amp;gt; depending on libsecp256k1 currently does.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; In our discussion leading up to libbitcoin building libbitcoin-consensus&lt;br/&gt;&amp;gt;&amp;gt; we disagreed on whether intentional hard forks would (or even could)&lt;br/&gt;&amp;gt;&amp;gt; happen. I think that issue is now settled. So my question remains how do&lt;br/&gt;&amp;gt;&amp;gt; stakeholders (users/miners) maintain consensus when it&amp;#39;s their&lt;br/&gt;&amp;gt;&amp;gt; individual intent (the first objective of libconsensus), and diverge&lt;br/&gt;&amp;gt;&amp;gt; when intended (which a direct dependency on libconsensus makes harder)?&lt;br/&gt;&amp;gt;&amp;gt; IMO it&amp;#39;s unreasonable to operate as if this won&amp;#39;t happen, given that it has.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I believe the simplest option...&lt;br/&gt;&lt;br/&gt;You might consider this as feedback from your customer base.&lt;br/&gt;&lt;br/&gt;&amp;gt; would be to fork the libconsensus&lt;br/&gt;&amp;gt; project and do the schism/controversial/contentious hardfork there.&lt;br/&gt;&amp;gt; But of course modifying libconsensus will be much easier than&lt;br/&gt;&amp;gt; modifying Bitcoin Core (if anything, because the amount of code is&lt;br/&gt;&amp;gt; much smaller).&lt;br/&gt;&lt;br/&gt;That&amp;#39;s a false dichotomy. We never would have considered forking Bitcoin&lt;br/&gt;Core, and still wouldn&amp;#39;t. Why would we set ourselves up for this&lt;br/&gt;disruption, which would inevitably lead to us factoring the consensus&lt;br/&gt;portions of libconsensus out of /bitcoin at the 11th hour?&lt;br/&gt;&lt;br/&gt;We have to operate as if it can happen at any time. Otherwise we have&lt;br/&gt;relinquished control of this vote and failed our users. Given that&lt;br/&gt;operating assumption, it is much safer for us to have already done this&lt;br/&gt;work (which we did). [It also provides a forcing function for us to&lt;br/&gt;review in detail any consensus changes that get pushed out.]&lt;br/&gt;&lt;br/&gt;My question is why you would not embrace an independent consensus&lt;br/&gt;repository? Your work to evolve it doesn&amp;#39;t change.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; There are a very small number of implementations that rely on consensus&lt;br/&gt;&amp;gt;&amp;gt; (fewer that aren&amp;#39;t also forks of Bitcoin Core). I think it&amp;#39;s time we&lt;br/&gt;&amp;gt;&amp;gt; discuss how to work together to achieve our mutual goal. I assume you&lt;br/&gt;&amp;gt;&amp;gt; have been in contact with all of us. If you would like to facilitate&lt;br/&gt;&amp;gt;&amp;gt; this I&amp;#39;d be happy to join in an offline discussion.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Unfortunately I only directly contacted libbitcoin because I was&lt;br/&gt;&amp;gt; subscribed to the list at the time (maybe I&amp;#39;m still subscribed, not&lt;br/&gt;&amp;gt; really sure).&lt;br/&gt;&amp;gt; The other attempts to get feedback from other alternative&lt;br/&gt;&amp;gt; implementations have been just mostly-ignored threads in bitcoin-dev.&lt;br/&gt;&amp;gt; So, no, I cannot facilitate such a discussion, but I&amp;#39;m more than happy&lt;br/&gt;&amp;gt; to collaborate to achieve our mutual goal.&lt;br/&gt;&lt;br/&gt;OK&lt;br/&gt;&lt;br/&gt;e
    </content>
    <updated>2023-06-07T19:35:55&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdk7y78x4j0mfhy0h8vtmy945dgspzfq2kmfvf2ctv3hjktf0t8zczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuf4fnt7</id>
    
      <title type="html">📅 Original date posted:2015-08-19 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdk7y78x4j0mfhy0h8vtmy945dgspzfq2kmfvf2ctv3hjktf0t8zczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuf4fnt7" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsv3haghnkjfmhnls9lc955arz6v64ph767z78pd78cfx6e76adxpsadvcyt&#39;&gt;nevent1q…vcyt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-19&lt;br/&gt;📝 Original message:[cross-posted to libbitcoin]&lt;br/&gt;&lt;br/&gt;On 08/19/2015 03:00 PM, Jorge Timón via bitcoin-dev wrote:&amp;gt; On Wed, Aug&lt;br/&gt;19, 2015 at 10:04 PM, Eric Lombrozo &amp;lt;elombrozo at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt;&amp;gt; But the consensus code should NOT be subject to the same commit&lt;br/&gt;policies…and we should make an effort to separate the two clearly. And&lt;br/&gt;we should find a way to communicate the difference succinctly and&lt;br/&gt;clearly to laypeople (which is something I think the XT opponents have&lt;br/&gt;been horrible at doing so far).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I think that effort is in progress (again, much slower that I would&lt;br/&gt;&amp;gt; like it to be) and it&amp;#39;s called libconsensus.&lt;br/&gt;&amp;gt; Once we have libconsensus Bitcoin Core it&amp;#39;s just another&lt;br/&gt;&amp;gt; implementation (even if it is the reference one) and it&amp;#39;s not &amp;#34;the&lt;br/&gt;&amp;gt; specification of the consensus rules&amp;#34; which is a &amp;#34;privileged&amp;#34; position&lt;br/&gt;&amp;gt; that brings all sorts of misunderstandings and problems (the block&lt;br/&gt;&amp;gt; size debate is just one example).&lt;br/&gt;&lt;br/&gt;Jorge,&lt;br/&gt;&lt;br/&gt;I applaud your efforts and objectives WRT libconsensus independence. But&lt;br/&gt;as you know I differ with you on this point:&lt;br/&gt;&lt;br/&gt;&amp;gt; Once we have libconsensus Bitcoin Core it&amp;#39;s just another&lt;br/&gt;&amp;gt; implementation&lt;br/&gt;&lt;br/&gt;I do not consider Bitcoin Core just another implementation as long as&lt;br/&gt;libconsensus is built directly out of the bitcoind repository. It&amp;#39;s a&lt;br/&gt;finer point, but an important one. Eric makes this point emphatically as&lt;br/&gt;well:&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; But the consensus code should NOT be subject to the same commit&lt;br/&gt;policies...and we should make an effort to separate the two clearly.&lt;br/&gt;&lt;br/&gt;As you have implied, it&amp;#39;s not likely to happen in the Bitcoin Core repo.&lt;br/&gt;Taking a dependency on Bitcoin Core is a metaphorical deal with the&lt;br/&gt;devil from our perspective. So my question is, how do you expect other&lt;br/&gt;implementations to transition off of that repository (and commit&lt;br/&gt;policies)? Or do you expect the dependency to be perpetual?&lt;br/&gt;&lt;br/&gt;In our discussion leading up to libbitcoin building libbitcoin-consensus&lt;br/&gt;we disagreed on whether intentional hard forks would (or even could)&lt;br/&gt;happen. I think that issue is now settled. So my question remains how do&lt;br/&gt;stakeholders (users/miners) maintain consensus when it&amp;#39;s their&lt;br/&gt;individual intent (the first objective of libconsensus), and diverge&lt;br/&gt;when intended (which a direct dependency on libconsensus makes harder)?&lt;br/&gt;IMO it&amp;#39;s unreasonable to operate as if this won&amp;#39;t happen, given that it has.&lt;br/&gt;&lt;br/&gt;There are a very small number of implementations that rely on consensus&lt;br/&gt;(fewer that aren&amp;#39;t also forks of Bitcoin Core). I think it&amp;#39;s time we&lt;br/&gt;discuss how to work together to achieve our mutual goal. I assume you&lt;br/&gt;have been in contact with all of us. If you would like to facilitate&lt;br/&gt;this I&amp;#39;d be happy to join in an offline discussion.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150819/091d7e5f/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150819/091d7e5f/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:35:53&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs94r0ptm9n66z7aemxhs4tqtccep4g83xlf33d63kkq797tyf30nszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudwtdty</id>
    
      <title type="html">📅 Original date posted:2015-08-16 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs94r0ptm9n66z7aemxhs4tqtccep4g83xlf33d63kkq797tyf30nszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpudwtdty" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxqqp585yvx763qsqum4zmnkrlmj5et05jsr69x9mjhulzf0fmlgsl6fgs5&#39;&gt;nevent1q…fgs5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-16&lt;br/&gt;📝 Original message:[cross-posted to libbitcoin]&lt;br/&gt;&lt;br/&gt;I applaud this effort not for the merits of the hard fork but on the&lt;br/&gt;effects of the code fork. We have been witnessing the self-destruction&lt;br/&gt;of Bitcoin&amp;#39;s central authority. This is a necessary outcome.&lt;br/&gt;&lt;br/&gt;Understandably, many are concerned that if consensus settles on a larger&lt;br/&gt;block size Bitcoin will suffer greater centralization. The point of&lt;br/&gt;Bitcoin however is that nobody is in control of consensus. If a&lt;br/&gt;consensus decision leads to centralization, the consensus will move.&lt;br/&gt;&lt;br/&gt;Yes, when this happens people who bet on the losing fork will lose&lt;br/&gt;money. This is how Bitcoin works. One bets not on personal desires but&lt;br/&gt;on what others will accept. That is how consensus is built.&lt;br/&gt;&lt;br/&gt;Some fret that if this process evolves Bitcoin will suffer a&lt;br/&gt;catastrophic loss of &amp;#34;value&amp;#34; and not recover. This may come to pass, but&lt;br/&gt;there is no avoiding the possibility.&lt;br/&gt;&lt;br/&gt;The ease with which consensus can move when it wants to is important. In&lt;br/&gt;other words, friction is weakness and a single overly complex codebase&lt;br/&gt;is high friction.&lt;br/&gt;&lt;br/&gt;Amir saw this coming before most. While we are posting manifestos, I&lt;br/&gt;thought it more than appropriate to quote from the libbitcoin manifesto:&lt;br/&gt;&lt;br/&gt;&amp;gt; If development is too centralised, with a small core infrastructure,&lt;br/&gt;&amp;gt; then businesses will put real pressure to have features that destroy&lt;br/&gt;&amp;gt; the integrity of the Bitcoin network.&lt;br/&gt;&amp;gt; ...&lt;br/&gt;&amp;gt; The possible malicious scenarios are endless....At the other end of&lt;br/&gt;&amp;gt; the spectrum, is putting development effort into diversifying the&lt;br/&gt;&amp;gt; ecosystem to protect against censorship... That&amp;#39;s where developers&lt;br/&gt;&amp;gt; who believe in Bitcoin should devote time to.&lt;br/&gt;&amp;gt; ...&lt;br/&gt;&amp;gt; A diversified Bitcoin of many wallets and implementations is a strong&lt;br/&gt;&amp;gt; and pure Bitcoin. To protect the integrity of the network, we need to&lt;br/&gt;&amp;gt; eliminate single points of failure. An inbred Bitcoin with the same&lt;br/&gt;&amp;gt; software code everywhere shares the same weaknesses, and is&lt;br/&gt;&amp;gt; susceptible to the same attacks...&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The implications of a diversified Bitcoin is a Bitcoin difficult to&lt;br/&gt;&amp;gt; control. It also sets the protocol in stone, as nobody has sole power&lt;br/&gt;&amp;gt; over the standard. Consensus from many parties is the way forwards.&lt;br/&gt;&amp;gt;...&lt;br/&gt;&amp;gt; Viewed over a longer time period, extra or unnecessary features seem&lt;br/&gt;&amp;gt; to creep into the system beyond the initial goals and the small code&lt;br/&gt;&amp;gt; of 15,000 lines set by Satoshi. The result will be a Bitcoin that&lt;br/&gt;&amp;gt; becomes increasingly difficult to understand or implement without a&lt;br/&gt;&amp;gt; huge initial investment of resources, time and people. No single&lt;br/&gt;&amp;gt; person will fully understand Bitcoin anymore, and development&lt;br/&gt;&amp;gt; monopolies will be further enforced.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;http://libbitcoin.dyne.org/libbitcoin-manifesto.pdf&#34;&gt;http://libbitcoin.dyne.org/libbitcoin-manifesto.pdf&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 08/15/2015 10:02 AM, Mike Hearn via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Hello,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; As promised, we have released Bitcoin XT 0.11A which includes the bigger&lt;br/&gt;&amp;gt; blocks patch set. You can get it from&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;      &lt;a href=&#34;https://bitcoinxt.software/&#34;&gt;https://bitcoinxt.software/&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I feel sad that it&amp;#39;s come to this, but there is no other way. The&lt;br/&gt;&amp;gt; Bitcoin Core project has drifted so far from the principles myself and&lt;br/&gt;&amp;gt; many others feel are important, that a fork is the only way to fix things.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Forking is a natural thing in the open source community, Bitcoin is not&lt;br/&gt;&amp;gt; the first and won&amp;#39;t be the last project to go through this. Often in&lt;br/&gt;&amp;gt; forks, people say there was insufficient communication. So to ensure&lt;br/&gt;&amp;gt; everything is crystal clear I&amp;#39;ve written a blog post and a kind of&lt;br/&gt;&amp;gt; &amp;#34;manifesto&amp;#34; to describe why this is happening and how XT plans to be&lt;br/&gt;&amp;gt; different from Core (assuming adoption, of course).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The article is here:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     &lt;a href=&#34;https://medium.com/@octskyward/why-is-bitcoin-forking-d647312d22c1&#34;&gt;https://medium.com/@octskyward/why-is-bitcoin-forking-d647312d22c1&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It makes no attempt to be neutral: this explains things from our point&lt;br/&gt;&amp;gt; of view.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The manifesto is on the website.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I say to all developers on this list: if you also feel that Core is no&lt;br/&gt;&amp;gt; longer serving the interests of Bitcoin users, come join us. We don&amp;#39;t bite.&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&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;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150816/3390a5eb/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150816/3390a5eb/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T19:35:27&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszdmxwrvezkdvrktzsgrl8yjm3exxv9g6sy5svdaspch0cexakg0szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpud2xjv2</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszdmxwrvezkdvrktzsgrl8yjm3exxv9g6sy5svdaspch0cexakg0szyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpud2xjv2" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyg4j3nznku0c7dwkmh9dmn0e8gfqk3k9xs259dkd64qsta0qg8ec8tvtw6&#39;&gt;nevent1q…vtw6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:Hi Michael,&lt;br/&gt;&lt;br/&gt;&amp;gt; One of the key characteristics toward that is Bitcoin being&lt;br/&gt;&amp;gt; inexpensive to transact.&lt;br/&gt;&lt;br/&gt;What you seem to be missing is *why* bitcoin is better money. Have you&lt;br/&gt;considered why is it comparatively inexpensive to transact in a medium&lt;br/&gt;that is based on such a highly inefficient technology?&lt;br/&gt;&lt;br/&gt;You might want to consider that these two considerations are not&lt;br/&gt;independent. The reduced cost of transacting (and carrying) Bitcoin is a&lt;br/&gt;direct consequence of its trustless nature. Any compromise in that&lt;br/&gt;nature will eliminate that advantage, and therefore Bitcoin.&lt;br/&gt;&lt;br/&gt;Bitcoin is designed to solve only one problem that other systems do not.&lt;br/&gt;To accomplish this it makes significant compromises in other areas. The&lt;br/&gt;benefit of this solution is that it cannot be effectively controlled by&lt;br/&gt;the state. As a result, all of the associated overhead is eliminated.&lt;br/&gt;Hence the net cost benefit despite high technical costs.&lt;br/&gt;&lt;br/&gt;So this is a case where you should be careful what you wish for.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 08/11/2015 02:18 PM, Michael Naber via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; The only reason why Bitcoin has grown the way it has, and in fact the&lt;br/&gt;&amp;gt; only reason why we&amp;#39;re all even here on this mailing list talking about&lt;br/&gt;&amp;gt; this, is because Bitcoin is growing, since it&amp;#39;s &amp;#34;better money than other&lt;br/&gt;&amp;gt; money&amp;#34;. One of the key characteristics toward that is Bitcoin being&lt;br/&gt;&amp;gt; inexpensive to transact. If that characteristic is no longer true, then&lt;br/&gt;&amp;gt; Bitcoin isn&amp;#39;t going to grow, and in fact Bitcoin itself will be replaced&lt;br/&gt;&amp;gt; by better money that is less expensive to transfer.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So the importance of this issue cannot be overstated -- it&amp;#39;s compete or&lt;br/&gt;&amp;gt; die for Bitcoin -- because people want to transact with global consensus&lt;br/&gt;&amp;gt; at high volume, and because technology exists to service that want, then&lt;br/&gt;&amp;gt; it&amp;#39;s going to be met. This is basic rules of demand and supply. I don&amp;#39;t&lt;br/&gt;&amp;gt; necessarily disagree with your position on only wanting to support&lt;br/&gt;&amp;gt; uncontroversial commits, but I think it&amp;#39;s important to get consensus on&lt;br/&gt;&amp;gt; the criticality of the block size issue: do you agree, disagree, or not&lt;br/&gt;&amp;gt; take a side, and why?
    </content>
    <updated>2023-06-07T19:33:53&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfwjjcn0fuh60hspqydasv6y0x3xlmvyru6jx3qkfy4eyr0m87qdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6g2jcc</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfwjjcn0fuh60hspqydasv6y0x3xlmvyru6jx3qkfy4eyr0m87qdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu6g2jcc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvkzj05pa0jm63s2w6rap36wg7uhgvl5zwl69rep6344uj2gdm0wq5ten0j&#39;&gt;nevent1q…en0j&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:Hi Michael,&lt;br/&gt;&lt;br/&gt;&amp;gt; One of the key characteristics toward that is Bitcoin being&lt;br/&gt;&amp;gt; inexpensive to transact.&lt;br/&gt;&lt;br/&gt;What you seem to be missing is *why* bitcoin is better money. Have you&lt;br/&gt;considered why is it comparatively inexpensive to transact in a medium&lt;br/&gt;that is based on such a highly inefficient technology?&lt;br/&gt;&lt;br/&gt;You might want to consider that these two considerations are not&lt;br/&gt;independent. The reduced cost of transacting (and carrying) Bitcoin is a&lt;br/&gt;direct consequence of its trustless nature. Any compromise in that&lt;br/&gt;nature will eliminate that advantage, and therefore Bitcoin.&lt;br/&gt;&lt;br/&gt;Bitcoin is designed to solve only one problem that other systems do not.&lt;br/&gt;To accomplish this it makes significant compromises in other areas. The&lt;br/&gt;benefit of this solution is that it cannot be effectively controlled by&lt;br/&gt;the state. As a result, all of the associated overhead is eliminated.&lt;br/&gt;Hence the net cost benefit despite high technical costs.&lt;br/&gt;&lt;br/&gt;So this is a case where you should be careful what you wish for.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 08/11/2015 02:18 PM, Michael Naber via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; The only reason why Bitcoin has grown the way it has, and in fact the&lt;br/&gt;&amp;gt; only reason why we&amp;#39;re all even here on this mailing list talking about&lt;br/&gt;&amp;gt; this, is because Bitcoin is growing, since it&amp;#39;s &amp;#34;better money than other&lt;br/&gt;&amp;gt; money&amp;#34;. One of the key characteristics toward that is Bitcoin being&lt;br/&gt;&amp;gt; inexpensive to transact. If that characteristic is no longer true, then&lt;br/&gt;&amp;gt; Bitcoin isn&amp;#39;t going to grow, and in fact Bitcoin itself will be replaced&lt;br/&gt;&amp;gt; by better money that is less expensive to transfer.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So the importance of this issue cannot be overstated -- it&amp;#39;s compete or&lt;br/&gt;&amp;gt; die for Bitcoin -- because people want to transact with global consensus&lt;br/&gt;&amp;gt; at high volume, and because technology exists to service that want, then&lt;br/&gt;&amp;gt; it&amp;#39;s going to be met. This is basic rules of demand and supply. I don&amp;#39;t&lt;br/&gt;&amp;gt; necessarily disagree with your position on only wanting to support&lt;br/&gt;&amp;gt; uncontroversial commits, but I think it&amp;#39;s important to get consensus on&lt;br/&gt;&amp;gt; the criticality of the block size issue: do you agree, disagree, or not&lt;br/&gt;&amp;gt; take a side, and why?
    </content>
    <updated>2023-06-07T17:45:58&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfd9ktt5cqs8h8d475k2rvp3zfjnw2xh3fml7gsz2kgz2nq9mnqpszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzyg9y7</id>
    
      <title type="html">📅 Original date posted:2015-07-22 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfd9ktt5cqs8h8d475k2rvp3zfjnw2xh3fml7gsz2kgz2nq9mnqpszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzyg9y7" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsplcwqgmv3zkjua7a4c3h3rvt26t7a2pcvr4ncq9gu69clqllxdwsnmlxpx&#39;&gt;nevent1q…lxpx&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-07-22&lt;br/&gt;📝 Original message:On 07/22/2015 05:13 PM, Eric Lombrozo via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Only being partly serious - I strongly am in favor of a sufficiently&lt;br/&gt;modularized codebase that swapping out consensus rules is fairly&lt;br/&gt;straightforward and easy to test...&lt;br/&gt;&lt;br/&gt;We (libbitcoin) have taken the time to publish and maintain bitcoind&amp;#39;s&lt;br/&gt;&amp;#34;libbitcoinconsensus&amp;#34; source files as an independent C&#43;&#43; library (with&lt;br/&gt;Java and Python bindings).&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://en.bitcoin.it/wiki/Libbitcoin_Consensus&#34;&gt;https://en.bitcoin.it/wiki/Libbitcoin_Consensus&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;It can be easily verified against bitcoind sources and in builds of&lt;br/&gt;libbitcoin-blockchain it can be swapped out for libbitcoin&amp;#39;s native&lt;br/&gt;consensus checks.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://en.bitcoin.it/wiki/Libbitcoin_Blockchain#Consensus_Validation&#34;&gt;https://en.bitcoin.it/wiki/Libbitcoin_Blockchain#Consensus_Validation&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;So there is really no reason to consider the original client synonymous&lt;br/&gt;with consensus. I initially argued for this library to be natively&lt;br/&gt;isolated from bitcoind, but that didn&amp;#39;t seem to be in the cards so we&lt;br/&gt;did it independently.&lt;br/&gt;&lt;br/&gt;In any case I agree with your stated need for this isolation (if not the&lt;br/&gt;means) for the reasons you state. The community needs to move beyond a&lt;br/&gt;largely singular and monolithic codebase that is holding that position&lt;br/&gt;in part due to fear about consensus bug forks.&lt;br/&gt;&lt;br/&gt;To make choice regarding consensus an actual choice (and thereby actual&lt;br/&gt;consensus) the modularity you suggest is essential. One must be able to&lt;br/&gt;take new developments without having to take consensus changes. The&lt;br/&gt;option to fork the codebase is not reasonable for most people. At this&lt;br/&gt;point there is no defensible reason for coupling consensus checks with&lt;br/&gt;other features.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150722/3bf1af8a/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150722/3bf1af8a/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:43:10&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqspfljeh8fh457a5e9fqr5dt0ha05p0jdjwmmxc5jnxhefcstal9wqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuhhjv4a</id>
    
      <title type="html">📅 Original date posted:2015-07-22 📝 Original message:I ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqspfljeh8fh457a5e9fqr5dt0ha05p0jdjwmmxc5jnxhefcstal9wqzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuhhjv4a" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9a474fc747ch469k5c204srtgaywzghss74jevalyjc57jcn9wfqnnfejp&#39;&gt;nevent1q…fejp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-07-22&lt;br/&gt;📝 Original message:I should add that the obvious resolution to this set of problems is to&lt;br/&gt;use a distinct Tor route for each Bitcoin address, not to reinvent Tor&lt;br/&gt;and reproduce its community. So ultimately this is easy to implement,&lt;br/&gt;but the downside is performance.&lt;br/&gt;&lt;br/&gt;But it&amp;#39;s important to keep in mind that poor-performing perfect privacy&lt;br/&gt;for address monitoring is trivial to achieve - just sync the full&lt;br/&gt;blockchain.&lt;br/&gt;&lt;br/&gt;Presumably if you don&amp;#39;t trust a server to protect your privacy, you also&lt;br/&gt;don&amp;#39;t trust it with your money. So any robust privacy optimization would&lt;br/&gt;at least be designed to support partial (SPV) chain clients. It would&lt;br/&gt;also need to support wallet restoration from backup.&lt;br/&gt;&lt;br/&gt;The level of privacy will always be a performance trade-off. The ideal&lt;br/&gt;solution would allow a client to balance privacy against performance.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 07/22/2015 09:30 AM, Eric Voskuil wrote:&lt;br/&gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The scheme is essentially onion routing. The set of {M} are entry nodes&lt;br/&gt;&amp;gt; and the set of {S} are exit nodes. The weaknesses are as you would see&lt;br/&gt;&amp;gt; in an analogous TOR implementation:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (1) The lack of relay nodes {R} make collaboration between any subset of&lt;br/&gt;&amp;gt; {M} and {S} trivial.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (2) OR is a mixnet, so the size of the network matters a lot.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (3) The directory is a perpetual weakness.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (4) Content is visible to the exit node (or the final service). This&lt;br/&gt;&amp;gt; means each address must be passed via a distinct route to prevent&lt;br/&gt;&amp;gt; correlation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; e&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On 07/22/2015 08:51 AM, Thomas Voegtlin via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; Hello,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Although Electrum clients connect to several servers in order to fetch&lt;br/&gt;&amp;gt;&amp;gt; block headers, they typically request address balances and address&lt;br/&gt;&amp;gt;&amp;gt; histories from a single server. This means that the chosen server knows&lt;br/&gt;&amp;gt;&amp;gt; that a given set of addresses belong to the same wallet. That is true&lt;br/&gt;&amp;gt;&amp;gt; even if Electrum is used over TOR.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; There have been various proposals to improve on that, but none of them&lt;br/&gt;&amp;gt;&amp;gt; really convinced me so far. One recurrent proposal has been to create&lt;br/&gt;&amp;gt;&amp;gt; subsets of wallet addresses, and to send them to separate servers. In my&lt;br/&gt;&amp;gt;&amp;gt; opinion, this does not really improve anonymity, because it requires&lt;br/&gt;&amp;gt;&amp;gt; trusting more servers.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Here is an idea, inspired by TOR, on which I would like to have some&lt;br/&gt;&amp;gt;&amp;gt; feedback: We create an anonymous routing layer between Electrum servers&lt;br/&gt;&amp;gt;&amp;gt; and clients.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; * Each server S publishes a RSA public key, KS&lt;br/&gt;&amp;gt;&amp;gt; * Each client receives a list of available servers and their pubkeys&lt;br/&gt;&amp;gt;&amp;gt; * For each wallet address, addr_i, a client chooses a server S_i, and a&lt;br/&gt;&amp;gt;&amp;gt; RSA keypair (K_addr_i, k_addr_i)&lt;br/&gt;&amp;gt;&amp;gt; * The client creates a list of encrypted requests. Each request contains&lt;br/&gt;&amp;gt;&amp;gt; addr_i and K_addr_i, and is encrypted with the pubkey KS_i of S_i&lt;br/&gt;&amp;gt;&amp;gt; * The client chooses a main server M, and sends the list of encrypted&lt;br/&gt;&amp;gt;&amp;gt; requests to M&lt;br/&gt;&amp;gt;&amp;gt; * M dispatches the client&amp;#39;s requests to the corresponding servers S_i&lt;br/&gt;&amp;gt;&amp;gt; (without the client&amp;#39;s IP address.)&lt;br/&gt;&amp;gt;&amp;gt; * Each server decrypts the requests it receives, performs the request,&lt;br/&gt;&amp;gt;&amp;gt; and encrypts the result with K_addr_i&lt;br/&gt;&amp;gt;&amp;gt; * M receives encrypted responses, and forwards them to the client.&lt;br/&gt;&amp;gt;&amp;gt; * The client decrypts the encrypted response with k_addr_i&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; What do you think? What are the costs and benefits of such an approach?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; (Note: this will not work if all servers, or a large fraction of them,&lt;br/&gt;&amp;gt;&amp;gt; are controlled by the same entity that controls M)&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Thomas&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150722/bba8ae1a/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150722/bba8ae1a/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:42:44&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsz7kr5qpr6fxlhg0ccxp4g6ey3ljgja7xdr7dc6zm0f0wjk0xtqhczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzfeumr</id>
    
      <title type="html">📅 Original date posted:2015-02-22 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsz7kr5qpr6fxlhg0ccxp4g6ey3ljgja7xdr7dc6zm0f0wjk0xtqhczyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuzfeumr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqu5znpq7fmaz7llx2h6kk4rspl6nek7hdklcf6jkq5aknptrye4ckjr865&#39;&gt;nevent1q…r865&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-22&lt;br/&gt;📝 Original message:Hi Jan,&lt;br/&gt;&lt;br/&gt;This is really nice work.&lt;br/&gt;&lt;br/&gt;WRT the Schroder and Schildbach proposal, the generalization of the &amp;#34;r&amp;#34;&lt;br/&gt;and &amp;#34;payment_url&amp;#34; parameters makes sense, with only the potential&lt;br/&gt;backward compat issue on payment_url.&lt;br/&gt;&lt;br/&gt;&amp;gt; TBIP75 furthermore proposes to include an additional &amp;#39;h&amp;#39; parameter&lt;br/&gt;&amp;gt; which would be a hash of the BIP70 payment request, preventing a MITM&lt;br/&gt;&amp;gt; attack on the Bluetooth channel even if the BIP70 payment request&lt;br/&gt;&amp;gt; isn&amp;#39;t signed. This would have also been my suggestion, although I&lt;br/&gt;&amp;gt; know that Mike Hearn has raised concerns about this approach. One&lt;br/&gt;&amp;gt; being, that one needs to finalize the BIP70 payment request at the&lt;br/&gt;&amp;gt; time the QR code and NFC URI is generated.&lt;br/&gt;&amp;gt; ...&lt;br/&gt;&amp;gt; 3) Are there other comments regarding &amp;#39;h&amp;#39; parameter as per TBIP75?&lt;br/&gt;&lt;br/&gt;Yes, this design is problematic from a privacy standpoint. Anyone within&lt;br/&gt;the rather significant range of the Bluetooth terminal is able to&lt;br/&gt;capture payment requests and correlate them to people. In other words it&lt;br/&gt;can be used to automate tainting.&lt;br/&gt;&lt;br/&gt;The problem is easily resolved by recognizing that, in the envisioned&lt;br/&gt;face-to-face trade, proximity is the source of trust. Even in the above&lt;br/&gt;proposal the &amp;#34;h&amp;#34; parameter is trusted because it was obtained by&lt;br/&gt;proximity to the NFC terminal. The presumption is that this proximity&lt;br/&gt;produces a private channel.&lt;br/&gt;&lt;br/&gt;As such the &amp;#34;tap&amp;#34; should transfer a session key used for symmetric block&lt;br/&gt;cipher over the Bluetooth channel. This also resolves the issue of&lt;br/&gt;needing to formulate the payment request before the NFC.&lt;br/&gt;&lt;br/&gt;As an aside, in other scenarios, such as an automated dispenser, this&lt;br/&gt;presumption does not hold. The merchant is not present to guard against&lt;br/&gt;device tampering. Those scenarios can be secured using BIP70, but cannot&lt;br/&gt;guarantee privacy.&lt;br/&gt;&lt;br/&gt;The other differences I have with the proposal pertain to efficiency,&lt;br/&gt;not privacy or integrity of the transaction:&lt;br/&gt;&lt;br/&gt;The proposed resource name is redundant with any unique identifier for&lt;br/&gt;the session. For example, the &amp;#34;h&amp;#34; parameter is sufficient. But with the&lt;br/&gt;establishment of a session key both as I propose above, the parties can&lt;br/&gt;derive a sufficiently unique public resource name from a hash of the&lt;br/&gt;key. An additional advantage is that the resource name can be&lt;br/&gt;fixed-length, simplifying the encoding/decoding.&lt;br/&gt;&lt;br/&gt;The MAC address (and resource name) should be encoded using base58. This&lt;br/&gt;is shorter than base16, is often shorter than base64, better&lt;br/&gt;standardized and does not require URI encoding, and is generally&lt;br/&gt;available to implementers.&lt;br/&gt;&lt;br/&gt;There is no need for the establishment of two Bluetooth services.&lt;br/&gt;&lt;br/&gt;I would change the payment_url recommendation so that the list order&lt;br/&gt;represents a recommended ordering provided by the terminal for the wallet.&lt;br/&gt;&lt;br/&gt;I wrote up my thoughts on these considerations last year and recently&lt;br/&gt;revised it by adding a section at the end to incorporate the &amp;#34;r&amp;#34; and&lt;br/&gt;&amp;#34;payment_url&amp;#34; generalizations from Andreas and Andy.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://github.com/evoskuil/bips/tree/master/docs&#34;&gt;https://github.com/evoskuil/bips/tree/master/docs&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;On 02/22/2015 11:08 AM, Jan Vornberger wrote:&lt;br/&gt;&amp;gt; Hi everyone,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I am working on a Bitcoin point of sale terminal based on a Raspberry Pi, which&lt;br/&gt;&amp;gt; displays QR codes, but also provides payment requests via NFC. It can optionally&lt;br/&gt;&amp;gt; receive the sender&amp;#39;s transaction via Bluetooth, so if the sender wallet&lt;br/&gt;&amp;gt; supports it, the sender can be completely offline. Only the terminal needs an&lt;br/&gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Typical scenario envisioned: Customer taps their smartphone (or maybe smartwatch&lt;br/&gt;&amp;gt; in the future) on the NFC pad, confirms the transaction on their phone&lt;br/&gt;&amp;gt; (or smartwatch) and the transaction completes via Bluetooth and/or the phone&amp;#39;s&lt;br/&gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You can see a prototype in action here:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;   &lt;a href=&#34;https://www.youtube.com/watch?v=P7vKHMoapr8&#34;&gt;https://www.youtube.com/watch?v=P7vKHMoapr8&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The above demo uses a release version of Schildbach&amp;#39;s Bitcoin Wallet, so it&lt;br/&gt;&amp;gt; works as shown today. However, some parts - especially the Bluetooth stuff - are&lt;br/&gt;&amp;gt; custom extensions of Schildbach&amp;#39;s wallet which are not yet standard.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I&amp;#39;m writing this post to document my experience implementing NFC and offline&lt;br/&gt;&amp;gt; payments and hope to move the discussion forward around standardizing some of&lt;br/&gt;&amp;gt; this stuff. Andy Schroder&amp;#39;s work around his Bitcoin Fluid Dispenser [1,2]&lt;br/&gt;&amp;gt; follows along the same lines, so his proposed TBIP74 [3] and TBIP75 [4] are&lt;br/&gt;&amp;gt; relevant here as well.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## NFC vs Bluetooth vs NFC&#43;Bluetooth ##&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Before I get into the implementation details, a few words for why I decided to&lt;br/&gt;&amp;gt; go with the combination of NFC and Bluetooth:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Doing everything via NFC is an interesting option to keep things simple, but the&lt;br/&gt;&amp;gt; issue is, that one usually can&amp;#39;t maintain the connection while the user confirms&lt;br/&gt;&amp;gt; the transaction (as they take the device back to press a button or maybe enter a&lt;br/&gt;&amp;gt; PIN). So there are three options:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1. Do a &amp;#34;double tap&amp;#34;: User taps, takes the device back, confirms, then taps&lt;br/&gt;&amp;gt; again to transmit the transaction. (I think Google Wallet does something like&lt;br/&gt;&amp;gt; this.)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 2. Confirm beforehand: User confirms, then taps and everything can happen in one&lt;br/&gt;&amp;gt; go. The disadvantage is, that you confirm the transaction before you have seen&lt;br/&gt;&amp;gt; the details. (I believe Google Wallet can also work this way.)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 3. Tap the phone, then establish a Bluetooth connection which allows you to do&lt;br/&gt;&amp;gt; all necessary communication even if the user takes the device back.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I feel that option 3 is the nicest UX, so that is what I am focusing on right&lt;br/&gt;&amp;gt; now, but there are pros and cons to all options. One disadvantage of option 3 in&lt;br/&gt;&amp;gt; practice is, that many users - in my experience - have Bluetooth turned off, so&lt;br/&gt;&amp;gt; it can result in additional UI dialogs popping up, asking the user to turn on&lt;br/&gt;&amp;gt; Bluetooth.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Regarding doing everything via Bluetooth or maybe BLE: I have been following the&lt;br/&gt;&amp;gt; work that Airbitz has done around that, but personally I prefer the NFC&lt;br/&gt;&amp;gt; interaction of &amp;#34;I touch what I want to pay&amp;#34; rather than &amp;#34;a payment request comes&lt;br/&gt;&amp;gt; to me through the air and I figure out whether it is meant for me/is legitimate&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## NFC data formats ##&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A bit of background for those who are not that familiar with NFC: Most Bitcoin&lt;br/&gt;&amp;gt; wallets with NFC support make use of NDEF (NFC Data Exchange Format) as far as I&lt;br/&gt;&amp;gt; am aware (with CoinBlesk being an exception, which uses host-based card&lt;br/&gt;&amp;gt; emulation, if I understand it correctly). NDEF defines a number of record types,&lt;br/&gt;&amp;gt; among them &amp;#39;URI&amp;#39; and &amp;#39;Mime Type&amp;#39;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; A common way of using NFC with Bitcoin is to create a URI record that contains a&lt;br/&gt;&amp;gt; Bitcoin URI. Beyond that Schildbach&amp;#39;s wallet (and maybe others?) also support&lt;br/&gt;&amp;gt; the mime type record, which is then set to &amp;#39;application/bitcoin-paymentrequest&amp;#39;&lt;br/&gt;&amp;gt; and the rest of the NFC data is a complete BIP70 payment request.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Implementation ##&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; To structure the discussion a little bit, I have listed a number of scenarios to&lt;br/&gt;&amp;gt; consider below. Not every possible combination is listed, but it should cover a&lt;br/&gt;&amp;gt; bit of everything.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Scenarios:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1) Scan QR code, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;    Example QR code: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 2) Touch NFC pad, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;    Example NFC URI: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 3) Scan QR code, fetch BIP70 details via HTTP, post transaction via HTTP&lt;br/&gt;&amp;gt;    Example QR code: bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 4) Touch NFC pad, fetch BIP70 details via HTTP, post transaction via HTTP&lt;br/&gt;&amp;gt;    Example NFC URI: bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 5) Touch NFC pad, receive BIP70 details directly, post transaction via HTTP&lt;br/&gt;&amp;gt;    Example NFC MIME record: application/bitcoin-paymentrequest &#43; BIP70 payment request&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 6) Scan QR code, fetch BIP70 details via Bluetooth, post transaction via Bluetooth&lt;br/&gt;&amp;gt;    Example QR code: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;    Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 7) Touch NFC pad, fetch BIP70 details via Bluetooth, post transaction via Bluetooth&lt;br/&gt;&amp;gt;    Example NFC URI: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;    Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Scenarios 1 and 2 are basically the &amp;#39;legacy&amp;#39;/pre-BIP70 approach and I am just&lt;br/&gt;&amp;gt; listing them here for comparison. Scenario 3 is what is often in use now, for&lt;br/&gt;&amp;gt; example when using a checkout screen by BitPay or Coinbase.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I played around with both scenarios 4 and 5, trying to decide whether I should&lt;br/&gt;&amp;gt; use an NFC URI record or already provide the complete BIP70 payment request via&lt;br/&gt;&amp;gt; NFC.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My experience here has been, that the latter was fairly fragile in my setup&lt;br/&gt;&amp;gt; (Raspberry Pi, NFC dongle from a company called Sensor ID, using nfcpy). I tried&lt;br/&gt;&amp;gt; with signed payment requests that were around 4k to 5k and the transfer would&lt;br/&gt;&amp;gt; often not complete if I didn&amp;#39;t hold the phone perfectly in place. So I quickly&lt;br/&gt;&amp;gt; switched to using the NFC URI record instead and have the phone fetch the BIP70&lt;br/&gt;&amp;gt; payment request via Bluetooth afterwards. Using this approach the amount of data&lt;br/&gt;&amp;gt; is small enough that it&amp;#39;s usually &amp;#39;all or nothing&amp;#39; and that seems more robust to&lt;br/&gt;&amp;gt; me.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That said, I continue to have problems with the NFC stack that I&amp;#39;m using, so it&lt;br/&gt;&amp;gt; might just be my NFC setup that is causing these problems. I will probably give&lt;br/&gt;&amp;gt; the NXP NFC library a try next (which I believe is also the stack that is used&lt;br/&gt;&amp;gt; by Android). Maybe I have more luck with that approach and could then switch to&lt;br/&gt;&amp;gt; scenario 5.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Scenarios 6 and 7 is what the terminal is doing right now. The &amp;#39;bt&amp;#39; parameter is&lt;br/&gt;&amp;gt; the non-standard extension of Andreas&amp;#39; wallet that I was mentioning. TBIP75&lt;br/&gt;&amp;gt; proposes to change &amp;#39;bt&amp;#39; into &amp;#39;r1&amp;#39; as part of a more generic approach of&lt;br/&gt;&amp;gt; numbering different sources for the BIP70 payment request. I think that is a&lt;br/&gt;&amp;gt; good idea and would express my vote for this proposal. So the QR code or NFC URI&lt;br/&gt;&amp;gt; would then look something like this:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;   bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&#34;&gt;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In addition the payment request would need to list additional &amp;#39;payment_url&amp;#39;s. My&lt;br/&gt;&amp;gt; proposal would be to do something like this:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     message PaymentDetails {&lt;br/&gt;&amp;gt;         ...&lt;br/&gt;&amp;gt;         optional string payment_url = 6;&lt;br/&gt;&amp;gt;         optional bytes merchant_data = 7;&lt;br/&gt;&amp;gt;         repeated string additional_payment_urls = 8;&lt;br/&gt;&amp;gt;           // ^-- new; to hold things like &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;     }&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; TBIP75 proposes to just change &amp;#39;optional string payment_url&amp;#39; into &amp;#39;repeated&lt;br/&gt;&amp;gt; string payment_url&amp;#39;. If this isn&amp;#39;t causing any problems (and hopefully not too&lt;br/&gt;&amp;gt; much confusion?) I guess that would be fine too.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In my opinion a wallet should then actually attempt all or multiple of the&lt;br/&gt;&amp;gt; provided mechanisms in parallel (e.g. try to fetch the BIP70 payment request via&lt;br/&gt;&amp;gt; both HTTP and Bluetooth) and go with whatever completes first. But that is of&lt;br/&gt;&amp;gt; course up to each wallet to decide how to handle.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; TBIP75 furthermore proposes to include an additional &amp;#39;h&amp;#39; parameter which would&lt;br/&gt;&amp;gt; be a hash of the BIP70 payment request, preventing a MITM attack on the&lt;br/&gt;&amp;gt; Bluetooth channel even if the BIP70 payment request isn&amp;#39;t signed. This would&lt;br/&gt;&amp;gt; have also been my suggestion, although I know that Mike Hearn has raised&lt;br/&gt;&amp;gt; concerns about this approach. One being, that one needs to finalize the BIP70&lt;br/&gt;&amp;gt; payment request at the time the QR code and NFC URI is generated.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ## Questions ##&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; My questions to the list:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1) Do you prefer changing &amp;#39;optional string payment_url&amp;#39; into &amp;#39;repeated string&lt;br/&gt;&amp;gt; payment_url&amp;#39; or would you rather introduce a new field &amp;#39;additional_payment_urls&amp;#39;?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 2) @Andreas: Is the r, r1, r2 mechanism already implemented in Bitcoin Wallet?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 3) Are there other comments regarding &amp;#39;h&amp;#39; parameter as per TBIP75?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 4) General comments, advice, feedback?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I appreciate your input! :-)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; Jan&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;http://andyschroder.com/BitcoinFluidDispenser/&#34;&gt;http://andyschroder.com/BitcoinFluidDispenser/&lt;/a&gt;&lt;br/&gt;&amp;gt; [2] &lt;a href=&#34;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&#34;&gt;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&lt;/a&gt;&lt;br/&gt;&amp;gt; [3] &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt; [4] &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/0c4aac73/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/0c4aac73/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:10&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9grcy86rhu7f7drgymqrs8jeecf3tdkydk0nyqswucjepjfj8qxgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuasju2y</id>
    
      <title type="html">📅 Original date posted:2015-02-23 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9grcy86rhu7f7drgymqrs8jeecf3tdkydk0nyqswucjepjfj8qxgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuasju2y" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqst209ywf24krfz2njxh5ynu0dxe3wuqnn83zync9hdgfvwlfrd4nqehz2ck&#39;&gt;nevent1q…z2ck&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-23&lt;br/&gt;📝 Original message:On 02/23/2015 03:11 PM, Mike Hearn wrote:&lt;br/&gt;&amp;gt;&amp;gt; I don&amp;#39;t see how you propose to treat the bitcoin address as a&lt;br/&gt;&amp;gt;&amp;gt; secp256k1 public key, or do you mean something else?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Sorry, I skipped a step. I shouldn&amp;#39;t make assumptions about what&amp;#39;s&lt;br/&gt;&amp;gt; obvious.&lt;br/&gt;&lt;br/&gt;No problem, we don&amp;#39;t all have the same context. I may have missed prior&lt;br/&gt;discussion.&lt;br/&gt;&lt;br/&gt;&amp;gt; The server would provide the public key and the client would&lt;br/&gt;&amp;gt; convert it to address form then match against the URI it has scanned.&lt;br/&gt;&amp;gt; If it didn&amp;#39;t match, stop at that point.&lt;br/&gt;&lt;br/&gt;Does this not also require the BT publication of the script for a P2SH&lt;br/&gt;address?&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/d33deef7/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/d33deef7/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:07&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsg8vghw0yfnps2kph4gnnh8mv9tmppmy49e0r8ztu38z8cxgf9e6czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpueqdhau</id>
    
      <title type="html">📅 Original date posted:2015-02-23 📝 Original message:Mike, ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsg8vghw0yfnps2kph4gnnh8mv9tmppmy49e0r8ztu38z8cxgf9e6czyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpueqdhau" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9j05uj6m667mtxjdm646mg7cjn7gx5pfkazp520afdeccs77zhvqn8n9ae&#39;&gt;nevent1q…n9ae&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-23&lt;br/&gt;📝 Original message:Mike,&lt;br/&gt;&lt;br/&gt;Before addressing other issues I could use some clarification on your&lt;br/&gt;intent.&lt;br/&gt;&lt;br/&gt;In one statement you refer to derivation of a session key from a bitcoin&lt;br/&gt;address (passed via NFC):&lt;br/&gt;&lt;br/&gt;&amp;gt; doing ECDH over secp256k1 to derive a session key means we can reuse&lt;br/&gt;&amp;gt; the address that was put in the URI already for pre-BIP70 wallets&lt;br/&gt;&lt;br/&gt;In another statement you refer to derivation of a session key from a&lt;br/&gt;public key (passed via  BT):&lt;br/&gt;&lt;br/&gt;&amp;gt; The public key can then be provided in full in the clear over the&lt;br/&gt;&amp;gt; Bluetooth connection and the session key derived.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t see how you propose to treat the bitcoin address as a secp256k1&lt;br/&gt;public key, or do you mean something else?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;On 02/23/2015 02:58 AM, Mike Hearn wrote:&lt;br/&gt;&amp;gt;     DHKE will not improve the situation. Either we use a simple method to&lt;br/&gt;&amp;gt;     transfer a session key or a complex method.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; You&amp;#39;re right that just sending the session key is simpler. I originally&lt;br/&gt;&amp;gt; suggested doing ECDHE to set up an encrypted channel for the following&lt;br/&gt;&amp;gt; reasons:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  1. URIs are put in QR codes more often than NFC tags. QR codes have&lt;br/&gt;&amp;gt;     limited space. The more stuff you pack into them, the slower and&lt;br/&gt;&amp;gt;     flakier the scanning process becomes.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     For normal wallets, doing ECDH over secp256k1 to derive a session&lt;br/&gt;&amp;gt;     key means we can reuse the address that was put in the URI already&lt;br/&gt;&amp;gt;     for pre-BIP70 wallets, thus we don&amp;#39;t have to expand the URI at all&lt;br/&gt;&amp;gt;     except perhaps to flag that crypted Bluetooth connections are&lt;br/&gt;&amp;gt;     supported. Win!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  2. If the wallet is a watching wallet, this won&amp;#39;t work and in that case&lt;br/&gt;&amp;gt;     you would need to put a separate key into the URI. However, this key&lt;br/&gt;&amp;gt;     is ephemeral and does not need to be very strong. So we can generate&lt;br/&gt;&amp;gt;     a regular secp256k1 key and then put say 5-8 prefix bytes into the&lt;br/&gt;&amp;gt;     URI as a new parameter. The public key can then be provided in full&lt;br/&gt;&amp;gt;     in the clear over the Bluetooth connection and the session key&lt;br/&gt;&amp;gt;     derived. If we put the session key into the URI in full, then we&lt;br/&gt;&amp;gt;     could not use this trick. Win!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  3. It&amp;#39;s quite common in low tech scenarios like little coffee shops to&lt;br/&gt;&amp;gt;     just print a QR code and put it in the menu, or sticky tape it to&lt;br/&gt;&amp;gt;     the back wall of the shop.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     In these cases, it&amp;#39;s possible that the device is actually hanging&lt;br/&gt;&amp;gt;     around in the shop somewhere but having the QR code somewhere larger&lt;br/&gt;&amp;gt;     and more accessible than the shop devices screen is highly&lt;br/&gt;&amp;gt;     convenient. However it means the data is entirely static.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     Putting/reusing an identity key from the URI means the session keys&lt;br/&gt;&amp;gt;     are always unique and known only to both devices, even though the&lt;br/&gt;&amp;gt;     bootstrap data is public.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  4. Doing ECDHE to derive the keys means we can derive a MAC key as well&lt;br/&gt;&amp;gt;     as an AES key. Otherwise you have the issue of exchanging both,&lt;br/&gt;&amp;gt;     which again uses up valuable bootstrap space.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; So for a small increase in session setup complexity we potentially avoid&lt;br/&gt;&amp;gt; troubling problems down the line where people the same functionality&lt;br/&gt;&amp;gt; from NFC and QR code based bootstrap, but we can&amp;#39;t provide it.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; These discussions keep coming up. I think the next step is for someone&lt;br/&gt;&amp;gt; to upgrade Andreas&amp;#39; wallet to support encrypted connections and the&lt;br/&gt;&amp;gt; TBIPs, to see what happens.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Re: the h= parameter. I only objected to requiring this when the payment&lt;br/&gt;&amp;gt; request is also signed. It adds complexity, uses space, and the&lt;br/&gt;&amp;gt; rationale was &amp;#34;the PKI can&amp;#39;t be trusted&amp;#34; even though it&amp;#39;s been used to&lt;br/&gt;&amp;gt; protect credit card payments for 20 years without any issues. In the&lt;br/&gt;&amp;gt; case of unsigned payment requests, sure ... but with a proper&lt;br/&gt;&amp;gt; implementation of an encrypted Bluetooth channel it&amp;#39;d be unnecessary as&lt;br/&gt;&amp;gt; the channel establishment process would guarantee authenticity anyway.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; But don&amp;#39;t let me hold you guys back! I&amp;#39;d rather see something that works&lt;br/&gt;&amp;gt; than an endless debate about the perfect arrangement of hashes and URI&lt;br/&gt;&amp;gt; parameters :)&lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/ec6fbecf/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/ec6fbecf/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:06&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsxvrujdxfspyljjdvddygp6fmmdpahdlsrjg7tk0q0a4xl43fyu7qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujz7hv9</id>
    
      <title type="html">📅 Original date posted:2015-02-23 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsxvrujdxfspyljjdvddygp6fmmdpahdlsrjg7tk0q0a4xl43fyu7qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujz7hv9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0r7dd7y2j858xtaud423dm898l35ehqtfqw6rak59vxka8adptsgxsxtr9&#39;&gt;nevent1q…xtr9&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-23&lt;br/&gt;📝 Original message:On 02/23/2015 01:49 AM, Andreas Schildbach wrote:&lt;br/&gt;&amp;gt; I think at this point I&amp;#39;d like to bring back my original suggestion of&lt;br/&gt;&amp;gt; using DHKE (Diffie-Hellman) or simlar. I know we&amp;#39;d still need to&lt;br/&gt;&amp;gt; transmit some secret that could be eavesdropped, &lt;br/&gt;&lt;br/&gt;Hi Andreas,&lt;br/&gt;&lt;br/&gt;DHKE will not improve the situation. Either we use a simple method to&lt;br/&gt;transfer a session key or a complex method.&lt;br/&gt;&lt;br/&gt;&amp;gt; but at least the session could not be decrypted from recordings.&lt;br/&gt;&lt;br/&gt;DHKE doesn&amp;#39;t offer greater forward secrecy than private transfer of a&lt;br/&gt;session key, in fact it&amp;#39;s lesser.&lt;br/&gt;&lt;br/&gt;&amp;gt; Anyway, establishing a &amp;#34;mostly secure&amp;#34; session is clearly an improvement&lt;br/&gt;&amp;gt; to no protection at all. If we can&amp;#39;t find a solution to the dilemma of&lt;br/&gt;&amp;gt; how to exchange the secret, I suggest going ahead with what we have and&lt;br/&gt;&amp;gt; make the best from it.&lt;br/&gt;&lt;br/&gt;I don&amp;#39;t see that there is a dilemma. The current proposal has a&lt;br/&gt;significant privacy problem that can be easily resolved, and the&lt;br/&gt;resolution actually makes the implementation simpler.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; On 02/23/2015 08:36 AM, Andy Schroder wrote:&lt;br/&gt;&amp;gt;&amp;gt; I agree that NFC is the best we have as far as a trust anchor that you&lt;br/&gt;&amp;gt;&amp;gt; are paying the right person. The thing I am worried about is the privacy&lt;br/&gt;&amp;gt;&amp;gt; loss that could happen if there is someone passively monitoring the&lt;br/&gt;&amp;gt;&amp;gt; connection. So, in response to some of your comments below and also in&lt;br/&gt;&amp;gt;&amp;gt; response to some of Eric Voskuil&amp;#39;s comments in another recent e-mail:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Consider some cases:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If NFC is assumed private, then sending the session key over the NFC&lt;br/&gt;&amp;gt;&amp;gt; connection gives the payer and the payee assumed confidence that that a&lt;br/&gt;&amp;gt;&amp;gt; private bluetooth connection can be created.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If the NFC actually isn&amp;#39;t private, then by sending the session key over&lt;br/&gt;&amp;gt;&amp;gt; it means the bluetooth connection is not private. An eavesdropper can&lt;br/&gt;&amp;gt;&amp;gt; listen to all communication and possibly modify the communication, but&lt;br/&gt;&amp;gt;&amp;gt; the payer and payee won&amp;#39;t necessarily know if eavesdropping occurs&lt;br/&gt;&amp;gt;&amp;gt; unless communication is also modified (which could be difficult to do&lt;br/&gt;&amp;gt;&amp;gt; for a really low range communication).&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If we send a public key of the payee over the NFC connection (in place&lt;br/&gt;&amp;gt;&amp;gt; of a session key) and the NFC connection is assumed trusted (and is&lt;br/&gt;&amp;gt;&amp;gt; unmodified but actually monitored by an eavesdropper) and use that&lt;br/&gt;&amp;gt;&amp;gt; public key received via NFC to encrypt a session key and send it back&lt;br/&gt;&amp;gt;&amp;gt; via bluetooth, to then initiate an encrypted bluetooth connection using&lt;br/&gt;&amp;gt;&amp;gt; that session key for the remaining communication, then the payee still&lt;br/&gt;&amp;gt;&amp;gt; receives payment as expected and the payer sends the payment they&lt;br/&gt;&amp;gt;&amp;gt; expected, and the eavesdropper doesn&amp;#39;t see anything.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If we send a public key of the payee over the NFC connection (in place&lt;br/&gt;&amp;gt;&amp;gt; of a session key) and the NFC connection is assumed trusted (and is&lt;br/&gt;&amp;gt;&amp;gt; actually modified by an eavesdropper) and use that public key received&lt;br/&gt;&amp;gt;&amp;gt; via NFC to encrypt a session key and send it back via bluetooth, to then&lt;br/&gt;&amp;gt;&amp;gt; initiate an encrypted bluetooth connection using that session key for&lt;br/&gt;&amp;gt;&amp;gt; the remaining communication, then the payee receives no payment and the&lt;br/&gt;&amp;gt;&amp;gt; attack is quickly identified because the customer receives no product&lt;br/&gt;&amp;gt;&amp;gt; for their payment and they notify the payee, and hopefully the problem&lt;br/&gt;&amp;gt;&amp;gt; remedied and no further customers are affected. The privacy loss will be&lt;br/&gt;&amp;gt;&amp;gt; significantly reduced and the motive for such attacks will be reduced.&lt;br/&gt;&amp;gt;&amp;gt; It&amp;#39;s possible a really sophisticated modification could be done where&lt;br/&gt;&amp;gt;&amp;gt; the attacker encrypts and decrypts the communication and then relays to&lt;br/&gt;&amp;gt;&amp;gt; each party (without them knowing or any glitches detected), but I guess&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m not sure how easy that would be on such a close proximity device?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Erick Voskuil mentioned this same problem would even occur if you had a&lt;br/&gt;&amp;gt;&amp;gt; hardwired connection to the payment terminal and those wires were&lt;br/&gt;&amp;gt;&amp;gt; compromised. I guess I still think what I am saying would be better in&lt;br/&gt;&amp;gt;&amp;gt; that case. There is also more obvious physical tampering required to&lt;br/&gt;&amp;gt;&amp;gt; mess with wires.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m not sure if there is any trust anchor required of the payer by the&lt;br/&gt;&amp;gt;&amp;gt; payee, is there? Eric also mentioned a need for this. Why does the payer&lt;br/&gt;&amp;gt;&amp;gt; care who they are as long as they get a payment received? Just to avoid&lt;br/&gt;&amp;gt;&amp;gt; a sophisticated modification&amp;#34; that I mention above? I can see how this&lt;br/&gt;&amp;gt;&amp;gt; could be the case for a longer range communication (like over the&lt;br/&gt;&amp;gt;&amp;gt; internet), but I&amp;#39;m not convinced it will be easy on really short ranges?&lt;br/&gt;&amp;gt;&amp;gt; It&amp;#39;s almost like the attacker would be better off to just replace the&lt;br/&gt;&amp;gt;&amp;gt; entire POS internals than mess with an attack like that, in which case&lt;br/&gt;&amp;gt;&amp;gt; everything we could do locally (other than the payment request signing&lt;br/&gt;&amp;gt;&amp;gt; using PKI), is useless.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m not a cryptography expert so I apologize if there is something&lt;br/&gt;&amp;gt;&amp;gt; rudimentary that I am missing here.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Andy Schroder&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; On 02/22/2015 08:02 PM, Andreas Schildbach wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On 02/23/2015 12:32 AM, Andy Schroder wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I guess we need to decide whether we want to consider NFC communication&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; private or not. I don&amp;#39;t know that I think it can be. An eavesdropper can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; place a tiny snooping device near and read the communication. If it is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; just passive, then the merchant/operator won&amp;#39;t realize it&amp;#39;s there. So, I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; don&amp;#39;t know if I like your idea (mentioned in your other reply) of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; putting the session key in the URL is a good idea?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I think the &amp;#34;trust by proximity&amp;#34; is the best we&amp;#39;ve got. If we don&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; trust the NFC link (or the QR code scan), what other options have we&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; got? Speaking the session key by voice? Bad UX, and can be eavesdropped&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; as well of course.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&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; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/9e32d1cc/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/9e32d1cc/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:05&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsydgs6jk6ulxlyyhwq04laacr357mt4shwad7dald8aate39j4mmgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuuwuckh</id>
    
      <title type="html">📅 Original date posted:2015-02-23 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsydgs6jk6ulxlyyhwq04laacr357mt4shwad7dald8aate39j4mmgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpuuwuckh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvkaqtl7s5tr4ffsz2ywaxx59e4g9y4rzq9kdckw6terpgnkvh0mqqzcmnw&#39;&gt;nevent1q…cmnw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-23&lt;br/&gt;📝 Original message:On 02/22/2015 11:36 PM, Andy Schroder wrote:&lt;br/&gt;&amp;gt; I agree that NFC is the best we have as far as a trust anchor that you&lt;br/&gt;&amp;gt; are paying the right person. The thing I am worried about is the privacy&lt;br/&gt;&amp;gt; loss that could happen if there is someone passively monitoring the&lt;br/&gt;&amp;gt; connection. &lt;br/&gt;&lt;br/&gt;We have the same objective. Privacy loss is my primary concern with the&lt;br/&gt;existing proposal.&lt;br/&gt;&lt;br/&gt;&amp;gt; So, in response to some of your comments below and also in&lt;br/&gt;&amp;gt; response to some of Eric Voskuil&amp;#39;s comments in another recent e-mail:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Consider some cases:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If NFC is assumed private, then sending the session key over the NFC&lt;br/&gt;&amp;gt; connection gives the payer and the payee assumed confidence that that a&lt;br/&gt;&amp;gt; private bluetooth connection can be created.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If the NFC actually isn&amp;#39;t private, then by sending the session key over&lt;br/&gt;&amp;gt; it means the bluetooth connection is not private. An eavesdropper can&lt;br/&gt;&amp;gt; listen to all communication and possibly modify the communication, but&lt;br/&gt;&amp;gt; the payer and payee won&amp;#39;t necessarily know if eavesdropping occurs&lt;br/&gt;&amp;gt; unless communication is also modified (which could be difficult to do&lt;br/&gt;&amp;gt; for a really low range communication).&lt;br/&gt;&lt;br/&gt;I realize you are postulating a situation where an interloper monitors&lt;br/&gt;but doesn&amp;#39;t substitute the NFC communication. But clearly if you can do&lt;br/&gt;one you have the potential to do the other, so if one is going to rely&lt;br/&gt;on the assumption that the NFC tap can be monitored one must also accept&lt;br/&gt;that it can be modified. Once one accepts this premise there is no point&lt;br/&gt;in using NFC.&lt;br/&gt;&lt;br/&gt;&amp;gt; If we send a public key of the payee over the NFC connection (in place&lt;br/&gt;&amp;gt; of a session key) and the NFC connection is assumed trusted (and is&lt;br/&gt;&amp;gt; unmodified but actually monitored by an eavesdropper) and use that&lt;br/&gt;&amp;gt; public key received via NFC to encrypt a session key and send it back&lt;br/&gt;&amp;gt; via bluetooth, to then initiate an encrypted bluetooth connection using&lt;br/&gt;&amp;gt; that session key for the remaining communication, then the payee still&lt;br/&gt;&amp;gt; receives payment as expected and the payer sends the payment they&lt;br/&gt;&amp;gt; expected, and the eavesdropper doesn&amp;#39;t see anything.&lt;br/&gt;&lt;br/&gt;You can send a public cert over a public channel but before it can be&lt;br/&gt;used it must be validated and verified to belong to the party that you&lt;br/&gt;intend to communicate with privately. Otherwise the interloper can&lt;br/&gt;substitute a public cert and subvert the payment process.&lt;br/&gt;&lt;br/&gt;The reduces to the system requiring PKI just to establish private&lt;br/&gt;communication. One might argue that BIP-70 already contemplates PKI.&lt;br/&gt;However the above approach is significantly different in that it would&lt;br/&gt;*require* all NFC/BT communication to use PKI just to be private.&lt;br/&gt;&lt;br/&gt;Furthermore, to establish a private channel between *both* intended&lt;br/&gt;parities, public certs must be exchanged in both directions. Otherwise,&lt;br/&gt;if the customer isn&amp;#39;t validated by the merchant, a distant interloper&lt;br/&gt;can trivially use the merchant&amp;#39;s public cert to obtain the payment&lt;br/&gt;request from the Bluetooth terminal. This is the privacy breach that we&lt;br/&gt;are trying to prevent in the first place.&lt;br/&gt;&lt;br/&gt;Any requirement for PKI, in either direction, itself creates privacy&lt;br/&gt;problems. But a requirement for customer certificates really gets hairy.&lt;br/&gt;&lt;br/&gt;The PKI requirement can be dropped by instead exchanging self-generated&lt;br/&gt;public keys, in the RedPhone model. However that requires out-of-band&lt;br/&gt;secure communication of a common derived value by the parties. This&lt;br/&gt;could be as simple as a number on each screen that one or both of the&lt;br/&gt;parties compares. But this requires no private communication, and&lt;br/&gt;therefore NFC is entirely unnecessary. This is in fact what I would&lt;br/&gt;recommend for the BT-only scenario.&lt;br/&gt;&lt;br/&gt;The value added by NFC is that proximity can be used to establish trust.&lt;br/&gt;If that does not meet one&amp;#39;s threshold for privacy then the parties need&lt;br/&gt;to establish this trust through some presumably more private channel&lt;br/&gt;(such as visual or voice confirmation).&lt;br/&gt;&lt;br/&gt;Note that payment integrity can be reasonably ensured by relying on PKI&lt;br/&gt;as established by BIP-70 (which also offers the seller non-repudiation&lt;br/&gt;benefit). So this question is strictly about privacy.&lt;br/&gt;&lt;br/&gt;&amp;gt; If we send a public key of the payee over the NFC connection (in place&lt;br/&gt;&amp;gt; of a session key) and the NFC connection is assumed trusted (and is&lt;br/&gt;&amp;gt; actually modified by an eavesdropper) and use that public key received&lt;br/&gt;&amp;gt; via NFC to encrypt a session key and send it back via bluetooth, to then&lt;br/&gt;&amp;gt; initiate an encrypted bluetooth connection using that session key for&lt;br/&gt;&amp;gt; the remaining communication, then the payee receives no payment and the&lt;br/&gt;&amp;gt; attack is quickly identified because the customer receives no product&lt;br/&gt;&amp;gt; for their payment and they notify the payee, and hopefully the problem&lt;br/&gt;&amp;gt; remedied and no further customers are affected. &lt;br/&gt;&lt;br/&gt;In this case the attacker hijacks the subsequent BT connection, sends a&lt;br/&gt;payment request and gets paid. The only thing to prevent it would be&lt;br/&gt;BIP-70/PKI, as mentioned above.&lt;br/&gt;&lt;br/&gt;In a more complex attack the interloper can sit in the middle of all&lt;br/&gt;communications between payer and receiver. Since the payer is not&lt;br/&gt;validated by the receiver the interloper can impersonate the payer in&lt;br/&gt;all communication with the receiver. As such he can also impersonate the&lt;br/&gt;receiver in all communications with the payer. If the NFC communication&lt;br/&gt;is compromized there is no saving privacy without an alternate private&lt;br/&gt;channel.&lt;br/&gt;&lt;br/&gt;&amp;gt; The privacy loss will be&lt;br/&gt;&amp;gt; significantly reduced and the motive for such attacks will be reduced.&lt;br/&gt;&lt;br/&gt;The motive and privacy loss remain unchanged.&lt;br/&gt;&lt;br/&gt;&amp;gt; It&amp;#39;s possible a really sophisticated modification could be done where&lt;br/&gt;&amp;gt; the attacker encrypts and decrypts the communication and then relays to&lt;br/&gt;&amp;gt; each party (without them knowing or any glitches detected), but I guess&lt;br/&gt;&amp;gt; I&amp;#39;m not sure how easy that would be on such a close proximity device?&lt;br/&gt;&lt;br/&gt;If the NFC tap is sufficiently private, privacy is easy to achieve for&lt;br/&gt;the subsequent communication. If it is not, privacy can be completely&lt;br/&gt;compromised. The question is only how much more difficult is the attack.&lt;br/&gt;&lt;br/&gt;With the public cert tap, the level of difficulty is much lower for&lt;br/&gt;capturing selected payment requests. The interloper no longer needs to&lt;br/&gt;invade the space of the NFC terminal and can instead impersonate the&lt;br/&gt;payer from a safe distance. Nobody gets paid, but privacy is compromised.&lt;br/&gt;&lt;br/&gt;The level of difficulty in the case where the interloper wants to taint&lt;br/&gt;transactions may appear lower, but it is not:&lt;br/&gt;&lt;br/&gt;With the session key tap the interloper must compromise the NFC location&lt;br/&gt;and then monitor the BT traffic. Monitoring BT traffic without being&lt;br/&gt;party to the connection is presumably not rocket surgery, but not&lt;br/&gt;standard BT design either.&lt;br/&gt;&lt;br/&gt;With the public cert tap the interloper must also compromise the NFC&lt;br/&gt;location and communicate over BT. Therefore the hardware and physical&lt;br/&gt;attack requirements are similar. The only added difficulty is that the&lt;br/&gt;attack on the NFC terminal attack is active (modifying the MAC address&lt;br/&gt;directing the payer to the BT service).&lt;br/&gt;&lt;br/&gt;However impersonating the payer is just a matter of software - no more&lt;br/&gt;difficult than the session key attack. In fact it may be much easier to&lt;br/&gt;implement, as the attack can use supported BT features because the&lt;br/&gt;attacker has directed the payer to connect to him and is connecting to&lt;br/&gt;the receiver as if he was a payer.&lt;br/&gt;&lt;br/&gt;But it gets worse for the public cert tap, since a more sophisticated&lt;br/&gt;attacker can set himself up in the same position without subverting the&lt;br/&gt;NFC terminal at all. By broadcasting a more powerful BT service on the&lt;br/&gt;same advertised MAC address, the attacker can capture traffic and relay&lt;br/&gt;it to the intended service.&lt;br/&gt;&lt;br/&gt;So in sum, reliance on a public cert makes the communication less&lt;br/&gt;private under the same physical set of constraints. The difference&lt;br/&gt;results from the receiver allowing non-proximate payers to impersonate&lt;br/&gt;proximate payers from a distance by generating their own session keys&lt;br/&gt;and submitting them over BT.&lt;br/&gt;&lt;br/&gt;&amp;gt; Erick Voskuil mentioned this same problem would even occur if you had a&lt;br/&gt;&amp;gt; hardwired connection to the payment terminal and those wires were&lt;br/&gt;&amp;gt; compromised. I guess I still think what I am saying would be better in&lt;br/&gt;&amp;gt; that case. There is also more obvious physical tampering required to&lt;br/&gt;&amp;gt; mess with wires.&lt;br/&gt;&lt;br/&gt;Attacks against wires do not require tampering with (as in damaging)&lt;br/&gt;wires. The distinction between a wired connection and a wireless&lt;br/&gt;connection is in many ways imaginary.&lt;br/&gt;&lt;br/&gt;&amp;gt; I&amp;#39;m not sure if there is any trust anchor required of the payer by the&lt;br/&gt;&amp;gt; payee, is there? Eric also mentioned a need for this. Why does the payer&lt;br/&gt;&amp;gt; care who they are as long as they get a payment received? Just to avoid&lt;br/&gt;&amp;gt; a sophisticated modification&amp;#34; that I mention above? I can see how this&lt;br/&gt;&amp;gt; could be the case for a longer range communication (like over the&lt;br/&gt;&amp;gt; internet), but I&amp;#39;m not convinced it will be easy on really short ranges?&lt;br/&gt;&lt;br/&gt;I think I addressed this above but let me know if not.&lt;br/&gt;&lt;br/&gt;&amp;gt; It&amp;#39;s almost like the attacker would be better off to just replace the&lt;br/&gt;&amp;gt; entire POS internals than mess with an attack like that, in which case&lt;br/&gt;&amp;gt; everything we could do locally (other than the payment request signing&lt;br/&gt;&amp;gt; using PKI), is useless.&lt;br/&gt;&lt;br/&gt;Yes, ultimately both endpoints must be secured. My point is that (when&lt;br/&gt;intended) NFC is practically the equivalent of a wired connection.&lt;br/&gt;Baseband attacks against buyers&amp;#39; phones or subversion of the entire POS&lt;br/&gt;terminal may be easier than interloping on a monitored NFC terminal. But&lt;br/&gt;that&amp;#39;s the point, once the attack is easier at the endpoints that is&lt;br/&gt;where it will go. Further attempts to secure the gap between the devices&lt;br/&gt;will not help after that point.&lt;br/&gt;&lt;br/&gt;&amp;gt; I&amp;#39;m not a cryptography expert so I apologize if there is something&lt;br/&gt;&amp;gt; rudimentary that I am missing here.&lt;br/&gt;&lt;br/&gt;No need for apology, it&amp;#39;s a good discussion, and there are precious few&lt;br/&gt;experts here.&lt;br/&gt;&lt;br/&gt;This discussion should make people very wary of any terminal system that&lt;br/&gt;doesn&amp;#39;t use signed payment requests :).&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; Andy Schroder&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On 02/22/2015 08:02 PM, Andreas Schildbach wrote:&lt;br/&gt;&amp;gt;&amp;gt; On 02/23/2015 12:32 AM, Andy Schroder wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I guess we need to decide whether we want to consider NFC communication&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; private or not. I don&amp;#39;t know that I think it can be. An eavesdropper can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; place a tiny snooping device near and read the communication. If it is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; just passive, then the merchant/operator won&amp;#39;t realize it&amp;#39;s there. So, I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; don&amp;#39;t know if I like your idea (mentioned in your other reply) of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; putting the session key in the URL is a good idea?&lt;br/&gt;&amp;gt;&amp;gt; I think the &amp;#34;trust by proximity&amp;#34; is the best we&amp;#39;ve got. If we don&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; trust the NFC link (or the QR code scan), what other options have we&lt;br/&gt;&amp;gt;&amp;gt; got? Speaking the session key by voice? Bad UX, and can be eavesdropped&lt;br/&gt;&amp;gt;&amp;gt; as well of course.&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/e131bcbc/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150223/e131bcbc/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:02&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs8mfsga3zxgngf8xfj2z9px0n774kj3fyud42kgjrz60v33jvltdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4fe9ud</id>
    
      <title type="html">📅 Original date posted:2015-02-22 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs8mfsga3zxgngf8xfj2z9px0n774kj3fyud42kgjrz60v33jvltdgzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu4fe9ud" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszyg5fhxcklf4uw7dv6vc4ps5362lyz0gq06nnmm220e8mrxtdurc0kn7aq&#39;&gt;nevent1q…n7aq&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-22&lt;br/&gt;📝 Original message:On 02/22/2015 03:32 PM, Andy Schroder wrote:&lt;br/&gt;&amp;gt; On 02/22/2015 06:06 PM, Eric Voskuil wrote:&lt;br/&gt;&amp;gt;&amp;gt; On 02/22/2015 02:37 PM, Andy Schroder wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;d like to see some discussion too about securing the bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; connection. Right now it is possible for an eavesdropper to monitor the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; data transferred.&lt;br/&gt;&amp;gt;&amp;gt; Yes, this should be a prerequisite issue to all others.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;d personally like to see if wrapping the current&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; connection with SSL works or if we can run https over a bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; socket.&lt;br/&gt;&amp;gt;&amp;gt; There is no reason to add this significant complexity. The purpose of&lt;br/&gt;&amp;gt;&amp;gt; SSL/TLS is to establish privacy over a *public* channel. But to do so&lt;br/&gt;&amp;gt;&amp;gt; requires verification by the user of the merchant&amp;#39;s public certificate.&lt;br/&gt;&amp;gt;&amp;gt; Once we rely on the channel being *private*, the entire SSL process is&lt;br/&gt;&amp;gt;&amp;gt; unnecessary.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I guess we need to decide whether we want to consider NFC communication&lt;br/&gt;&amp;gt; private or not. I don&amp;#39;t know that I think it can be.&lt;br/&gt;&lt;br/&gt;If the NFC communication is not private then there is no reason to use it.&lt;br/&gt;&lt;br/&gt;&amp;gt; An eavesdropper can&lt;br/&gt;&amp;gt; place a tiny snooping device near and read the communication. If it is&lt;br/&gt;&amp;gt; just passive, then the merchant/operator won&amp;#39;t realize it&amp;#39;s there.&lt;br/&gt;&lt;br/&gt;See my comments on an unmonitored terminal.&lt;br/&gt;&lt;br/&gt;&amp;gt; So, I&lt;br/&gt;&amp;gt; don&amp;#39;t know if I like your idea (mentioned in your other reply) of&lt;br/&gt;&amp;gt; putting the session key in the URL is a good idea?&lt;br/&gt;&lt;br/&gt;My point is that you are not solving that problem by creating a more&lt;br/&gt;complex system. Either you establish trust via proximity or you don&amp;#39;t.&lt;br/&gt;If you don&amp;#39;t, it&amp;#39;s a public network. If you do, then keep it simple.&lt;br/&gt;&lt;br/&gt;There&amp;#39;s nothing holy about a session key in this scenario. It&amp;#39;s not&lt;br/&gt;derived from long-lived keys and is itself used only once. There is&lt;br/&gt;nothing wrong with the URL carrying the secret. If you want to secure&lt;br/&gt;this channel without manual intervention, there is ultimately no other&lt;br/&gt;option.&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; Presumably we would not want to require PKI for privacy, since that&amp;#39;s a&lt;br/&gt;&amp;gt;&amp;gt; bit of a contradiction. But if one wants to do this NFC is not required,&lt;br/&gt;&amp;gt;&amp;gt; since the private session can be established over the public (Bluetooth)&lt;br/&gt;&amp;gt;&amp;gt; network.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; There was some criticism of this, but I don&amp;#39;t think it has been&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; tested to know if it is really a problem or not. If we just run https&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; over bluetooth, then a lot of my concerns about the message header&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; inconsistencies will go away and the connection will also be secure. We&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; don&amp;#39;t have to reinvent anything.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Andy Schroder&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On 02/22/2015 02:08 PM, Jan Vornberger wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi everyone,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I am working on a Bitcoin point of sale terminal based on a Raspberry&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Pi, which&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; displays QR codes, but also provides payment requests via NFC. It can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; optionally&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; receive the sender&amp;#39;s transaction via Bluetooth, so if the sender wallet&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; supports it, the sender can be completely offline. Only the terminal&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; needs an&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Typical scenario envisioned: Customer taps their smartphone (or maybe&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; smartwatch&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; in the future) on the NFC pad, confirms the transaction on their phone&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (or smartwatch) and the transaction completes via Bluetooth and/or the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; phone&amp;#39;s&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; You can see a prototype in action here:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;     &lt;a href=&#34;https://www.youtube.com/watch?v=P7vKHMoapr8&#34;&gt;https://www.youtube.com/watch?v=P7vKHMoapr8&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The above demo uses a release version of Schildbach&amp;#39;s Bitcoin Wallet,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; so it&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; works as shown today. However, some parts - especially the Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; stuff - are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; custom extensions of Schildbach&amp;#39;s wallet which are not yet standard.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m writing this post to document my experience implementing NFC and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; offline&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; payments and hope to move the discussion forward around standardizing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; some of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; this stuff. Andy Schroder&amp;#39;s work around his Bitcoin Fluid Dispenser&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [1,2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; follows along the same lines, so his proposed TBIP74 [3] and TBIP75&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [4] are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; relevant here as well.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ## NFC vs Bluetooth vs NFC&#43;Bluetooth ##&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Before I get into the implementation details, a few words for why I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; decided to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; go with the combination of NFC and Bluetooth:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Doing everything via NFC is an interesting option to keep things&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; simple, but the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; issue is, that one usually can&amp;#39;t maintain the connection while the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; user confirms&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the transaction (as they take the device back to press a button or&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; maybe enter a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; PIN). So there are three options:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 1. Do a &amp;#34;double tap&amp;#34;: User taps, takes the device back, confirms, then&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; taps&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; again to transmit the transaction. (I think Google Wallet does&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; something like&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; this.)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 2. Confirm beforehand: User confirms, then taps and everything can&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; happen in one&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; go. The disadvantage is, that you confirm the transaction before you&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; have seen&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the details. (I believe Google Wallet can also work this way.)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 3. Tap the phone, then establish a Bluetooth connection which allows&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; you to do&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; all necessary communication even if the user takes the device back.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I feel that option 3 is the nicest UX, so that is what I am focusing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; on right&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; now, but there are pros and cons to all options. One disadvantage of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; option 3 in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; practice is, that many users - in my experience - have Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; turned off, so&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; it can result in additional UI dialogs popping up, asking the user to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; turn on&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bluetooth.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Regarding doing everything via Bluetooth or maybe BLE: I have been&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; following the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; work that Airbitz has done around that, but personally I prefer the NFC&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; interaction of &amp;#34;I touch what I want to pay&amp;#34; rather than &amp;#34;a payment&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; request comes&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to me through the air and I figure out whether it is meant for me/is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; legitimate&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ## NFC data formats ##&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; A bit of background for those who are not that familiar with NFC: Most&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; wallets with NFC support make use of NDEF (NFC Data Exchange Format)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; as far as I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; am aware (with CoinBlesk being an exception, which uses host-based card&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; emulation, if I understand it correctly). NDEF defines a number of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; record types,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; among them &amp;#39;URI&amp;#39; and &amp;#39;Mime Type&amp;#39;.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; A common way of using NFC with Bitcoin is to create a URI record that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; contains a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin URI. Beyond that Schildbach&amp;#39;s wallet (and maybe others?) also&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; support&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the mime type record, which is then set to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;#39;application/bitcoin-paymentrequest&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; and the rest of the NFC data is a complete BIP70 payment request.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ## Implementation ##&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; To structure the discussion a little bit, I have listed a number of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; scenarios to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; consider below. Not every possible combination is listed, but it&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; should cover a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bit of everything.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Scenarios:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 1) Scan QR code, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example QR code: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 2) Touch NFC pad, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example NFC URI: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 3) Scan QR code, fetch BIP70 details via HTTP, post transaction via&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; HTTP&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example QR code:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 4) Touch NFC pad, fetch BIP70 details via HTTP, post transaction via&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; HTTP&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example NFC URI:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 5) Touch NFC pad, receive BIP70 details directly, post transaction via&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; HTTP&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example NFC MIME record: application/bitcoin-paymentrequest &#43;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; BIP70 payment request&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 6) Scan QR code, fetch BIP70 details via Bluetooth, post transaction&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; via Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example QR code: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 7) Touch NFC pad, fetch BIP70 details via Bluetooth, post transaction&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; via Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Example NFC URI: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;      Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Scenarios 1 and 2 are basically the &amp;#39;legacy&amp;#39;/pre-BIP70 approach and I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; am just&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; listing them here for comparison. Scenario 3 is what is often in use&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; now, for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; example when using a checkout screen by BitPay or Coinbase.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I played around with both scenarios 4 and 5, trying to decide whether&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I should&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; use an NFC URI record or already provide the complete BIP70 payment&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; request via&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; NFC.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; My experience here has been, that the latter was fairly fragile in my&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; setup&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (Raspberry Pi, NFC dongle from a company called Sensor ID, using&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; nfcpy). I tried&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; with signed payment requests that were around 4k to 5k and the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; transfer would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; often not complete if I didn&amp;#39;t hold the phone perfectly in place. So I&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; quickly&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; switched to using the NFC URI record instead and have the phone fetch&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the BIP70&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; payment request via Bluetooth afterwards. Using this approach the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; amount of data&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is small enough that it&amp;#39;s usually &amp;#39;all or nothing&amp;#39; and that seems more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; robust to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; me.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; That said, I continue to have problems with the NFC stack that I&amp;#39;m&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; using, so it&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; might just be my NFC setup that is causing these problems. I will&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; probably give&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the NXP NFC library a try next (which I believe is also the stack that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is used&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; by Android). Maybe I have more luck with that approach and could then&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; switch to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; scenario 5.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Scenarios 6 and 7 is what the terminal is doing right now. The &amp;#39;bt&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; parameter is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the non-standard extension of Andreas&amp;#39; wallet that I was mentioning.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; TBIP75&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; proposes to change &amp;#39;bt&amp;#39; into &amp;#39;r1&amp;#39; as part of a more generic approach of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; numbering different sources for the BIP70 payment request. I think&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that is a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; good idea and would express my vote for this proposal. So the QR code&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; or NFC URI&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would then look something like this:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;   &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&#34;&gt;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; In addition the payment request would need to list additional&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;#39;payment_url&amp;#39;s. My&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; proposal would be to do something like this:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;       message PaymentDetails {&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;           ...&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;           optional string payment_url = 6;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;           optional bytes merchant_data = 7;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;           repeated string additional_payment_urls = 8;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;             // ^-- new; to hold things like &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;       }&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; TBIP75 proposes to just change &amp;#39;optional string payment_url&amp;#39; into&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;#39;repeated&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; string payment_url&amp;#39;. If this isn&amp;#39;t causing any problems (and hopefully&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; not too&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; much confusion?) I guess that would be fine too.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; In my opinion a wallet should then actually attempt all or multiple of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; provided mechanisms in parallel (e.g. try to fetch the BIP70 payment&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; request via&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; both HTTP and Bluetooth) and go with whatever completes first. But&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; that is of&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; course up to each wallet to decide how to handle.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; TBIP75 furthermore proposes to include an additional &amp;#39;h&amp;#39; parameter&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; which would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; be a hash of the BIP70 payment request, preventing a MITM attack on the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bluetooth channel even if the BIP70 payment request isn&amp;#39;t signed. This&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; have also been my suggestion, although I know that Mike Hearn has&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; raised&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; concerns about this approach. One being, that one needs to finalize&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the BIP70&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; payment request at the time the QR code and NFC URI is generated.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ## Questions ##&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; My questions to the list:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 1) Do you prefer changing &amp;#39;optional string payment_url&amp;#39; into &amp;#39;repeated&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; string&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; payment_url&amp;#39; or would you rather introduce a new field&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;#39;additional_payment_urls&amp;#39;?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 2) @Andreas: Is the r, r1, r2 mechanism already implemented in Bitcoin&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Wallet?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 3) Are there other comments regarding &amp;#39;h&amp;#39; parameter as per TBIP75?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 4) General comments, advice, feedback?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I appreciate your input! :-)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Jan&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [1] &lt;a href=&#34;http://andyschroder.com/BitcoinFluidDispenser/&#34;&gt;http://andyschroder.com/BitcoinFluidDispenser/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&#34;&gt;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [3]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; [4]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Dashboards&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Get technology previously reserved for billion-dollar corporations,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; FREE&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/9abdde55/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/9abdde55/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:31:00&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdtdkqwc8fxud7aj2xdrh5x4zv8qewfpxyeswg4jvrfusjcrqu4lszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpus3de3a</id>
    
      <title type="html">📅 Original date posted:2015-02-22 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdtdkqwc8fxud7aj2xdrh5x4zv8qewfpxyeswg4jvrfusjcrqu4lszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpus3de3a" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs88jjkhlndqg54ujwm7lhj99kc7phmvg9u92qrk6ks66uvgtmv9xsuv0tf5&#39;&gt;nevent1q…0tf5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-22&lt;br/&gt;📝 Original message:On 02/22/2015 02:37 PM, Andy Schroder wrote:&lt;br/&gt;&amp;gt; I&amp;#39;d like to see some discussion too about securing the bluetooth&lt;br/&gt;&amp;gt; connection. Right now it is possible for an eavesdropper to monitor the&lt;br/&gt;&amp;gt; data transferred. &lt;br/&gt;&lt;br/&gt;Yes, this should be a prerequisite issue to all others.&lt;br/&gt;&lt;br/&gt;&amp;gt; I&amp;#39;d personally like to see if wrapping the current&lt;br/&gt;&amp;gt; connection with SSL works or if we can run https over a bluetooth&lt;br/&gt;&amp;gt; socket. &lt;br/&gt;&lt;br/&gt;There is no reason to add this significant complexity. The purpose of&lt;br/&gt;SSL/TLS is to establish privacy over a *public* channel. But to do so&lt;br/&gt;requires verification by the user of the merchant&amp;#39;s public certificate.&lt;br/&gt;Once we rely on the channel being *private*, the entire SSL process is&lt;br/&gt;unnecessary.&lt;br/&gt;&lt;br/&gt;Presumably we would not want to require PKI for privacy, since that&amp;#39;s a&lt;br/&gt;bit of a contradiction. But if one wants to do this NFC is not required,&lt;br/&gt;since the private session can be established over the public (Bluetooth)&lt;br/&gt;network.&lt;br/&gt;&lt;br/&gt;&amp;gt; There was some criticism of this, but I don&amp;#39;t think it has been&lt;br/&gt;&amp;gt; tested to know if it is really a problem or not. If we just run https&lt;br/&gt;&amp;gt; over bluetooth, then a lot of my concerns about the message header&lt;br/&gt;&amp;gt; inconsistencies will go away and the connection will also be secure. We&lt;br/&gt;&amp;gt; don&amp;#39;t have to reinvent anything.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Andy Schroder&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On 02/22/2015 02:08 PM, Jan Vornberger wrote:&lt;br/&gt;&amp;gt;&amp;gt; Hi everyone,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I am working on a Bitcoin point of sale terminal based on a Raspberry&lt;br/&gt;&amp;gt;&amp;gt; Pi, which&lt;br/&gt;&amp;gt;&amp;gt; displays QR codes, but also provides payment requests via NFC. It can&lt;br/&gt;&amp;gt;&amp;gt; optionally&lt;br/&gt;&amp;gt;&amp;gt; receive the sender&amp;#39;s transaction via Bluetooth, so if the sender wallet&lt;br/&gt;&amp;gt;&amp;gt; supports it, the sender can be completely offline. Only the terminal&lt;br/&gt;&amp;gt;&amp;gt; needs an&lt;br/&gt;&amp;gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Typical scenario envisioned: Customer taps their smartphone (or maybe&lt;br/&gt;&amp;gt;&amp;gt; smartwatch&lt;br/&gt;&amp;gt;&amp;gt; in the future) on the NFC pad, confirms the transaction on their phone&lt;br/&gt;&amp;gt;&amp;gt; (or smartwatch) and the transaction completes via Bluetooth and/or the&lt;br/&gt;&amp;gt;&amp;gt; phone&amp;#39;s&lt;br/&gt;&amp;gt;&amp;gt; internet connection.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; You can see a prototype in action here:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;    &lt;a href=&#34;https://www.youtube.com/watch?v=P7vKHMoapr8&#34;&gt;https://www.youtube.com/watch?v=P7vKHMoapr8&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; The above demo uses a release version of Schildbach&amp;#39;s Bitcoin Wallet,&lt;br/&gt;&amp;gt;&amp;gt; so it&lt;br/&gt;&amp;gt;&amp;gt; works as shown today. However, some parts - especially the Bluetooth&lt;br/&gt;&amp;gt;&amp;gt; stuff - are&lt;br/&gt;&amp;gt;&amp;gt; custom extensions of Schildbach&amp;#39;s wallet which are not yet standard.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m writing this post to document my experience implementing NFC and&lt;br/&gt;&amp;gt;&amp;gt; offline&lt;br/&gt;&amp;gt;&amp;gt; payments and hope to move the discussion forward around standardizing&lt;br/&gt;&amp;gt;&amp;gt; some of&lt;br/&gt;&amp;gt;&amp;gt; this stuff. Andy Schroder&amp;#39;s work around his Bitcoin Fluid Dispenser [1,2]&lt;br/&gt;&amp;gt;&amp;gt; follows along the same lines, so his proposed TBIP74 [3] and TBIP75&lt;br/&gt;&amp;gt;&amp;gt; [4] are&lt;br/&gt;&amp;gt;&amp;gt; relevant here as well.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; ## NFC vs Bluetooth vs NFC&#43;Bluetooth ##&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Before I get into the implementation details, a few words for why I&lt;br/&gt;&amp;gt;&amp;gt; decided to&lt;br/&gt;&amp;gt;&amp;gt; go with the combination of NFC and Bluetooth:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Doing everything via NFC is an interesting option to keep things&lt;br/&gt;&amp;gt;&amp;gt; simple, but the&lt;br/&gt;&amp;gt;&amp;gt; issue is, that one usually can&amp;#39;t maintain the connection while the&lt;br/&gt;&amp;gt;&amp;gt; user confirms&lt;br/&gt;&amp;gt;&amp;gt; the transaction (as they take the device back to press a button or&lt;br/&gt;&amp;gt;&amp;gt; maybe enter a&lt;br/&gt;&amp;gt;&amp;gt; PIN). So there are three options:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 1. Do a &amp;#34;double tap&amp;#34;: User taps, takes the device back, confirms, then&lt;br/&gt;&amp;gt;&amp;gt; taps&lt;br/&gt;&amp;gt;&amp;gt; again to transmit the transaction. (I think Google Wallet does&lt;br/&gt;&amp;gt;&amp;gt; something like&lt;br/&gt;&amp;gt;&amp;gt; this.)&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 2. Confirm beforehand: User confirms, then taps and everything can&lt;br/&gt;&amp;gt;&amp;gt; happen in one&lt;br/&gt;&amp;gt;&amp;gt; go. The disadvantage is, that you confirm the transaction before you&lt;br/&gt;&amp;gt;&amp;gt; have seen&lt;br/&gt;&amp;gt;&amp;gt; the details. (I believe Google Wallet can also work this way.)&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 3. Tap the phone, then establish a Bluetooth connection which allows&lt;br/&gt;&amp;gt;&amp;gt; you to do&lt;br/&gt;&amp;gt;&amp;gt; all necessary communication even if the user takes the device back.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I feel that option 3 is the nicest UX, so that is what I am focusing&lt;br/&gt;&amp;gt;&amp;gt; on right&lt;br/&gt;&amp;gt;&amp;gt; now, but there are pros and cons to all options. One disadvantage of&lt;br/&gt;&amp;gt;&amp;gt; option 3 in&lt;br/&gt;&amp;gt;&amp;gt; practice is, that many users - in my experience - have Bluetooth&lt;br/&gt;&amp;gt;&amp;gt; turned off, so&lt;br/&gt;&amp;gt;&amp;gt; it can result in additional UI dialogs popping up, asking the user to&lt;br/&gt;&amp;gt;&amp;gt; turn on&lt;br/&gt;&amp;gt;&amp;gt; Bluetooth.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Regarding doing everything via Bluetooth or maybe BLE: I have been&lt;br/&gt;&amp;gt;&amp;gt; following the&lt;br/&gt;&amp;gt;&amp;gt; work that Airbitz has done around that, but personally I prefer the NFC&lt;br/&gt;&amp;gt;&amp;gt; interaction of &amp;#34;I touch what I want to pay&amp;#34; rather than &amp;#34;a payment&lt;br/&gt;&amp;gt;&amp;gt; request comes&lt;br/&gt;&amp;gt;&amp;gt; to me through the air and I figure out whether it is meant for me/is&lt;br/&gt;&amp;gt;&amp;gt; legitimate&amp;#34;.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; ## NFC data formats ##&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; A bit of background for those who are not that familiar with NFC: Most&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin&lt;br/&gt;&amp;gt;&amp;gt; wallets with NFC support make use of NDEF (NFC Data Exchange Format)&lt;br/&gt;&amp;gt;&amp;gt; as far as I&lt;br/&gt;&amp;gt;&amp;gt; am aware (with CoinBlesk being an exception, which uses host-based card&lt;br/&gt;&amp;gt;&amp;gt; emulation, if I understand it correctly). NDEF defines a number of&lt;br/&gt;&amp;gt;&amp;gt; record types,&lt;br/&gt;&amp;gt;&amp;gt; among them &amp;#39;URI&amp;#39; and &amp;#39;Mime Type&amp;#39;.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; A common way of using NFC with Bitcoin is to create a URI record that&lt;br/&gt;&amp;gt;&amp;gt; contains a&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin URI. Beyond that Schildbach&amp;#39;s wallet (and maybe others?) also&lt;br/&gt;&amp;gt;&amp;gt; support&lt;br/&gt;&amp;gt;&amp;gt; the mime type record, which is then set to&lt;br/&gt;&amp;gt;&amp;gt; &amp;#39;application/bitcoin-paymentrequest&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt; and the rest of the NFC data is a complete BIP70 payment request.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; ## Implementation ##&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; To structure the discussion a little bit, I have listed a number of&lt;br/&gt;&amp;gt;&amp;gt; scenarios to&lt;br/&gt;&amp;gt;&amp;gt; consider below. Not every possible combination is listed, but it&lt;br/&gt;&amp;gt;&amp;gt; should cover a&lt;br/&gt;&amp;gt;&amp;gt; bit of everything.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Scenarios:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 1) Scan QR code, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;&amp;gt;     Example QR code: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 2) Touch NFC pad, transmit transaction via Bitcoin network&lt;br/&gt;&amp;gt;&amp;gt;     Example NFC URI: bitcoin:1asdf...?amount=42&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 3) Scan QR code, fetch BIP70 details via HTTP, post transaction via HTTP&lt;br/&gt;&amp;gt;&amp;gt;     Example QR code:&lt;br/&gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 4) Touch NFC pad, fetch BIP70 details via HTTP, post transaction via HTTP&lt;br/&gt;&amp;gt;&amp;gt;     Example NFC URI:&lt;br/&gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70paymentrequest&#34;&gt;https://example.org/bip70paymentrequest&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 5) Touch NFC pad, receive BIP70 details directly, post transaction via&lt;br/&gt;&amp;gt;&amp;gt; HTTP&lt;br/&gt;&amp;gt;&amp;gt;     Example NFC MIME record: application/bitcoin-paymentrequest &#43;&lt;br/&gt;&amp;gt;&amp;gt; BIP70 payment request&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 6) Scan QR code, fetch BIP70 details via Bluetooth, post transaction&lt;br/&gt;&amp;gt;&amp;gt; via Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;     Example QR code: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;&amp;gt;     Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 7) Touch NFC pad, fetch BIP70 details via Bluetooth, post transaction&lt;br/&gt;&amp;gt;&amp;gt; via Bluetooth&lt;br/&gt;&amp;gt;&amp;gt;     Example NFC URI: bitcoin:1asdf...?amount=42&amp;amp;bt=1234567890AB&lt;br/&gt;&amp;gt;&amp;gt;     Payment request has &amp;#39;payment_url&amp;#39; set to &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Scenarios 1 and 2 are basically the &amp;#39;legacy&amp;#39;/pre-BIP70 approach and I&lt;br/&gt;&amp;gt;&amp;gt; am just&lt;br/&gt;&amp;gt;&amp;gt; listing them here for comparison. Scenario 3 is what is often in use&lt;br/&gt;&amp;gt;&amp;gt; now, for&lt;br/&gt;&amp;gt;&amp;gt; example when using a checkout screen by BitPay or Coinbase.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I played around with both scenarios 4 and 5, trying to decide whether&lt;br/&gt;&amp;gt;&amp;gt; I should&lt;br/&gt;&amp;gt;&amp;gt; use an NFC URI record or already provide the complete BIP70 payment&lt;br/&gt;&amp;gt;&amp;gt; request via&lt;br/&gt;&amp;gt;&amp;gt; NFC.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; My experience here has been, that the latter was fairly fragile in my&lt;br/&gt;&amp;gt;&amp;gt; setup&lt;br/&gt;&amp;gt;&amp;gt; (Raspberry Pi, NFC dongle from a company called Sensor ID, using&lt;br/&gt;&amp;gt;&amp;gt; nfcpy). I tried&lt;br/&gt;&amp;gt;&amp;gt; with signed payment requests that were around 4k to 5k and the&lt;br/&gt;&amp;gt;&amp;gt; transfer would&lt;br/&gt;&amp;gt;&amp;gt; often not complete if I didn&amp;#39;t hold the phone perfectly in place. So I&lt;br/&gt;&amp;gt;&amp;gt; quickly&lt;br/&gt;&amp;gt;&amp;gt; switched to using the NFC URI record instead and have the phone fetch&lt;br/&gt;&amp;gt;&amp;gt; the BIP70&lt;br/&gt;&amp;gt;&amp;gt; payment request via Bluetooth afterwards. Using this approach the&lt;br/&gt;&amp;gt;&amp;gt; amount of data&lt;br/&gt;&amp;gt;&amp;gt; is small enough that it&amp;#39;s usually &amp;#39;all or nothing&amp;#39; and that seems more&lt;br/&gt;&amp;gt;&amp;gt; robust to&lt;br/&gt;&amp;gt;&amp;gt; me.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; That said, I continue to have problems with the NFC stack that I&amp;#39;m&lt;br/&gt;&amp;gt;&amp;gt; using, so it&lt;br/&gt;&amp;gt;&amp;gt; might just be my NFC setup that is causing these problems. I will&lt;br/&gt;&amp;gt;&amp;gt; probably give&lt;br/&gt;&amp;gt;&amp;gt; the NXP NFC library a try next (which I believe is also the stack that&lt;br/&gt;&amp;gt;&amp;gt; is used&lt;br/&gt;&amp;gt;&amp;gt; by Android). Maybe I have more luck with that approach and could then&lt;br/&gt;&amp;gt;&amp;gt; switch to&lt;br/&gt;&amp;gt;&amp;gt; scenario 5.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Scenarios 6 and 7 is what the terminal is doing right now. The &amp;#39;bt&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt; parameter is&lt;br/&gt;&amp;gt;&amp;gt; the non-standard extension of Andreas&amp;#39; wallet that I was mentioning.&lt;br/&gt;&amp;gt;&amp;gt; TBIP75&lt;br/&gt;&amp;gt;&amp;gt; proposes to change &amp;#39;bt&amp;#39; into &amp;#39;r1&amp;#39; as part of a more generic approach of&lt;br/&gt;&amp;gt;&amp;gt; numbering different sources for the BIP70 payment request. I think&lt;br/&gt;&amp;gt;&amp;gt; that is a&lt;br/&gt;&amp;gt;&amp;gt; good idea and would express my vote for this proposal. So the QR code&lt;br/&gt;&amp;gt;&amp;gt; or NFC URI&lt;br/&gt;&amp;gt;&amp;gt; would then look something like this:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;   &lt;br/&gt;&amp;gt;&amp;gt; bitcoin:1asdf...?amount=42&amp;amp;r=&lt;a href=&#34;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&#34;&gt;https://example.org/bip70&amp;amp;r1=bt:1234567890AB/resource&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; In addition the payment request would need to list additional&lt;br/&gt;&amp;gt;&amp;gt; &amp;#39;payment_url&amp;#39;s. My&lt;br/&gt;&amp;gt;&amp;gt; proposal would be to do something like this:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;      message PaymentDetails {&lt;br/&gt;&amp;gt;&amp;gt;          ...&lt;br/&gt;&amp;gt;&amp;gt;          optional string payment_url = 6;&lt;br/&gt;&amp;gt;&amp;gt;          optional bytes merchant_data = 7;&lt;br/&gt;&amp;gt;&amp;gt;          repeated string additional_payment_urls = 8;&lt;br/&gt;&amp;gt;&amp;gt;            // ^-- new; to hold things like &amp;#39;bt:1234567890AB&amp;#39;&lt;br/&gt;&amp;gt;&amp;gt;      }&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; TBIP75 proposes to just change &amp;#39;optional string payment_url&amp;#39; into&lt;br/&gt;&amp;gt;&amp;gt; &amp;#39;repeated&lt;br/&gt;&amp;gt;&amp;gt; string payment_url&amp;#39;. If this isn&amp;#39;t causing any problems (and hopefully&lt;br/&gt;&amp;gt;&amp;gt; not too&lt;br/&gt;&amp;gt;&amp;gt; much confusion?) I guess that would be fine too.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; In my opinion a wallet should then actually attempt all or multiple of&lt;br/&gt;&amp;gt;&amp;gt; the&lt;br/&gt;&amp;gt;&amp;gt; provided mechanisms in parallel (e.g. try to fetch the BIP70 payment&lt;br/&gt;&amp;gt;&amp;gt; request via&lt;br/&gt;&amp;gt;&amp;gt; both HTTP and Bluetooth) and go with whatever completes first. But&lt;br/&gt;&amp;gt;&amp;gt; that is of&lt;br/&gt;&amp;gt;&amp;gt; course up to each wallet to decide how to handle.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; TBIP75 furthermore proposes to include an additional &amp;#39;h&amp;#39; parameter&lt;br/&gt;&amp;gt;&amp;gt; which would&lt;br/&gt;&amp;gt;&amp;gt; be a hash of the BIP70 payment request, preventing a MITM attack on the&lt;br/&gt;&amp;gt;&amp;gt; Bluetooth channel even if the BIP70 payment request isn&amp;#39;t signed. This&lt;br/&gt;&amp;gt;&amp;gt; would&lt;br/&gt;&amp;gt;&amp;gt; have also been my suggestion, although I know that Mike Hearn has raised&lt;br/&gt;&amp;gt;&amp;gt; concerns about this approach. One being, that one needs to finalize&lt;br/&gt;&amp;gt;&amp;gt; the BIP70&lt;br/&gt;&amp;gt;&amp;gt; payment request at the time the QR code and NFC URI is generated.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; ## Questions ##&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; My questions to the list:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 1) Do you prefer changing &amp;#39;optional string payment_url&amp;#39; into &amp;#39;repeated&lt;br/&gt;&amp;gt;&amp;gt; string&lt;br/&gt;&amp;gt;&amp;gt; payment_url&amp;#39; or would you rather introduce a new field&lt;br/&gt;&amp;gt;&amp;gt; &amp;#39;additional_payment_urls&amp;#39;?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 2) @Andreas: Is the r, r1, r2 mechanism already implemented in Bitcoin&lt;br/&gt;&amp;gt;&amp;gt; Wallet?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 3) Are there other comments regarding &amp;#39;h&amp;#39; parameter as per TBIP75?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 4) General comments, advice, feedback?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I appreciate your input! :-)&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt;&amp;gt; Jan&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; [1] &lt;a href=&#34;http://andyschroder.com/BitcoinFluidDispenser/&#34;&gt;http://andyschroder.com/BitcoinFluidDispenser/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; [2]&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&#34;&gt;https://www.mail-archive.com/bitcoin-development%40lists.sourceforge.net/msg06354.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; [3] &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0074.mediawiki&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; [4] &lt;a href=&#34;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&#34;&gt;https://github.com/AndySchroder/bips/blob/master/tbip-0075.mediawiki&lt;/a&gt;&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; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&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; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt; Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server&lt;br/&gt;&amp;gt; from Actuate! Instantly Supercharge Your Business Reports and Dashboards&lt;br/&gt;&amp;gt; with Interactivity, Sharing, Native Excel Exports, App Integration &amp;amp; more&lt;br/&gt;&amp;gt; Get technology previously reserved for billion-dollar corporations, FREE&lt;br/&gt;&amp;gt; &lt;a href=&#34;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&#34;&gt;http://pubads.g.doubleclick.net/gampad/clk?id=190641631&amp;amp;iu=/4140/ostg.clktrk&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;&lt;br/&gt;&amp;gt; &lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/a3e8cdc2/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150222/a3e8cdc2/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:30:59&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsppg90kuy5jr4q74h2zkm60a8szcnkuu0uce48c3m68lyprhe5m0qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu8qerxj</id>
    
      <title type="html">📅 Original date posted:2015-02-10 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsppg90kuy5jr4q74h2zkm60a8szcnkuu0uce48c3m68lyprhe5m0qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu8qerxj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvsrmy438p6alttfqjpckydxlxwauxlzf8uk082a6txy6ckj2fajstsl4vn&#39;&gt;nevent1q…l4vn&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-10&lt;br/&gt;📝 Original message:On 02/10/2015 02:41 AM, Natanael wrote:&lt;br/&gt;&amp;gt; Den 10 feb 2015 11:34 skrev &amp;#34;MⒶrtin HⒶboⓋštiak&amp;#34;&lt;br/&gt;&amp;gt; &amp;lt;martin.habovstiak at gmail.com &amp;lt;mailto:martin.habovstiak at gmail.com&amp;gt;&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Why would anyone want to do anything about payment before choosing&lt;br/&gt;&amp;gt;&amp;gt; what he wants to buy and for what price? I&amp;#39;ve never used Amazon but&lt;br/&gt;&amp;gt;&amp;gt; isn&amp;#39;t filling a form with shipping information enough?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That&amp;#39;s not what this is about.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; BIP70 isn&amp;#39;t just payment, it is about communication the terms of the sale.&lt;br/&gt;&lt;br/&gt;Hi Natanael,&lt;br/&gt;&lt;br/&gt;BIP70 exists for seller non-repudiation (i.e. a cryptographically signed&lt;br/&gt;receipt for payment) and establishing strong seller identity in a&lt;br/&gt;face-to-face or other non-web scenario (since TLS doesn&amp;#39;t help).&lt;br/&gt;Anything else is incidental.&lt;br/&gt;&lt;br/&gt;&amp;gt; Let&amp;#39;s say you&amp;#39;re visiting an international webshop. But they don&amp;#39;t ship&lt;br/&gt;&amp;gt; to your country. Wouldn&amp;#39;t you want to know that before your start&lt;br/&gt;&amp;gt; filling the cart? With this, your wallet / browser extension could tell&lt;br/&gt;&amp;gt; you right away that you can&amp;#39;t shop there. No time wasted!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; That&amp;#39;s just one requirement of many where you would benefit from being&lt;br/&gt;&amp;gt; told right away if it is acceptable for both parties or not.&lt;br/&gt;&lt;br/&gt;There&amp;#39;s quite a bit that can be done with wallets and web sites, but&lt;br/&gt;personally I&amp;#39;d freak out if my wallet prompted me because I visited a&lt;br/&gt;web site.&lt;br/&gt;&lt;br/&gt;e&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150210/dcdd1b2d/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150210/dcdd1b2d/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:30:01&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs0yen7c5yrnftu9ujuu0xuczwxt3hgm4j9j8t8ykrmeayy2eufw3qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu292h0x</id>
    
      <title type="html">📅 Original date posted:2015-02-05 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs0yen7c5yrnftu9ujuu0xuczwxt3hgm4j9j8t8ykrmeayy2eufw3qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpu292h0x" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsr54cna08a4yzugquul36vy8r0rkru84pyswyvpwrg7g3jvkqsgfch4rnm3&#39;&gt;nevent1q…rnm3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-05&lt;br/&gt;📝 Original message:On 02/05/2015 04:04 PM, MⒶrtin HⒶboⓋštiak wrote:&lt;br/&gt;&amp;gt; That&amp;#39;s exactly what I though when seeing the RedPhone code, but after&lt;br/&gt;&amp;gt; I studied the commit protocol I realized it&amp;#39;s actually secure and&lt;br/&gt;&amp;gt; convenient way to do it. You should do that too. :)&lt;br/&gt;&lt;br/&gt;I was analyzing the model as you described it to me. A formal analysis&lt;br/&gt;of the security model of a particular implementation, based on inference&lt;br/&gt;from source code, is a bit beyond what I signed up for. But I&amp;#39;m&lt;br/&gt;perfectly willing to comment on your description of the model if you are&lt;br/&gt;willing to indulge me.&lt;br/&gt;&lt;br/&gt;&amp;gt; Shortly, how it works:&lt;br/&gt;&amp;gt; The initiator of the connection sends commit message containing the&lt;br/&gt;&amp;gt; hash of his temporary public ECDH part, second party sends back their&lt;br/&gt;&amp;gt; public ECDH part and then initiator sends his public ECDH part in&lt;br/&gt;&amp;gt; open. All three messages are hashed together and the first two bytes&lt;br/&gt;&amp;gt; are used to select two words from a shared dictionary which are&lt;br/&gt;&amp;gt; displayed on the screen of both the initiator and the second party.&lt;br/&gt;&lt;br/&gt;&amp;gt; The parties communicate those two words and verify they match.&lt;br/&gt;&lt;br/&gt;How do they compare words if they haven&amp;#39;t yet established a secure channel?&lt;br/&gt;&lt;br/&gt;&amp;gt; If an attacker wants to do MITM, he has a chance of choosing right&lt;br/&gt;&amp;gt; public parts 1:65536. There is no way to brute-force it, since that&lt;br/&gt;&amp;gt; would be noticed immediately. If instead of two words based on the&lt;br/&gt;&amp;gt; first two bytes, four words from BIP39 wordlist were chosen, it would&lt;br/&gt;&amp;gt; provide entropy of 44 bits which I believe should be enough even for&lt;br/&gt;&amp;gt; paranoid people.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; How this would work in Bitcoin payment scenario: user&amp;#39;s phone&lt;br/&gt;&amp;gt; broadcasts his name, merchant inputs amount and selects the name from&lt;br/&gt;&amp;gt; the list, commit message is sent (and then the remaining two&lt;br/&gt;&amp;gt; messages), merchant spells four words he sees on the screen and buyer&lt;br/&gt;&amp;gt; confirms transaction after verifying that words match.&lt;br/&gt;&lt;br/&gt;So the assumption is that there exists a secure (as in proximity-based)&lt;br/&gt;communication channel?&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&amp;gt; 2015-02-06 0:46 GMT&#43;01:00 Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt; On 02/05/2015 03:36 PM, MⒶrtin HⒶboⓋštiak wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; A BIP-70 signed payment request in the initial broadcast can resolve the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; integrity issues, but because of the public nature of the broadcast&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; coupled with strong public identity, the privacy compromise is much&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; worse. Now transactions are cryptographically tainted.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This is also the problem with BIP-70 over the web. TLS and other&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; security precautions aside, an interloper on the communication, desktop,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; datacenter, etc., can capture payment requests and strongly correlate&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; transactions to identities in an automated manner. The payment request&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; must be kept private between the parties, and that&amp;#39;s hard to do.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; What about using encryption with forward secrecy? Merchant would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; generate signed request containing public ECDH part, buyer would send&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; back transaction encrypted with ECDH and his public ECDH part. If&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; receiving address/amount is meant to be private, use commit protocol&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (see ZRTP/RedPhone) and short authentication phrase (which is hard to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; spoof thanks to commit protocol - see RedPhone)?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hi Martin,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; The problem is that you need to verify the ownership of the public key.&lt;br/&gt;&amp;gt;&amp;gt; A MITM can substitute the key. If you don&amp;#39;t have verifiable identity&lt;br/&gt;&amp;gt;&amp;gt; associated with the public key (PKI/WoT), you need a shared secret (such&lt;br/&gt;&amp;gt;&amp;gt; as a secret phrase). But the problem is then establishing that secret&lt;br/&gt;&amp;gt;&amp;gt; over a public channel.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; You can bootstrap a private session over the untrusted network using a&lt;br/&gt;&amp;gt;&amp;gt; trusted public key (PKI/WoT). But the presumption is that you are&lt;br/&gt;&amp;gt;&amp;gt; already doing this over the web (using TLS). That process is subject to&lt;br/&gt;&amp;gt;&amp;gt; attack at the CA. WoT is not subject to a CA attack, because it&amp;#39;s&lt;br/&gt;&amp;gt;&amp;gt; decentralized. But it&amp;#39;s also not sufficiently deployed for some scenarios.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150205/bcba6fb2/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150205/bcba6fb2/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:29:47&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs26w2kfyw3alxzulusrdaae7f7fsdws6vswrclh7whqgqeq695rpszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpumwx0ma</id>
    
      <title type="html">📅 Original date posted:2015-02-05 📝 Original message:Yes, a ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs26w2kfyw3alxzulusrdaae7f7fsdws6vswrclh7whqgqeq695rpszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpumwx0ma" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsp4r329qtese0k2z6xk0g5elhf698vj23th2du85n857wje0jyqmsr5t7rk&#39;&gt;nevent1q…t7rk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-05&lt;br/&gt;📝 Original message:Yes, a stellar device for mass surveillance coupled with transaction tainting.&lt;br/&gt;&lt;br/&gt;e&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On Feb 5, 2015, at 1:19 PM, Brian Hoffman &amp;lt;brianchoffman at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This sounds horrible. You could basically monitor anyone with a wallet in a highly populated area and track them super easily by doing facial recognition. Yes you could photograph people but it&amp;#39;s way more burdensome. Sorry to go off topic a little.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Feb 5, 2015, at 3:50 PM, Mike Hearn &amp;lt;mike at plan99.net&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; I&amp;#39;m imagining myself walking around broadcasting my photo and MAC&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; address while hucksters push payment requests to me for approval&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; I hate to break it to you, but you broadcast a photo of your face every time you walk outside ;)&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Bluetooth MAC addresses are random, they aren&amp;#39;t useful identifiers. If someone can see you, a face is a far more uniquely identifying thing than a MAC.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;Payment spam&amp;#34; might be a problem. I can imagine a wallet requiring that such requests are signed and then spammers can be blacklisted in the usual fashion so they can&amp;#39;t push things to your phone anymore. Anyway, a hurdle that can be jumped if/when it becomes an issue.&lt;br/&gt;&amp;gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt;&amp;gt; Dive into the World of Parallel Programming. The Go Parallel Website,&lt;br/&gt;&amp;gt;&amp;gt; sponsored by Intel and developed in partnership with Slashdot Media, is your&lt;br/&gt;&amp;gt;&amp;gt; hub for all things parallel software development, from weekly thought&lt;br/&gt;&amp;gt;&amp;gt; leadership blogs to news, videos, case studies, tutorials and more. Take a&lt;br/&gt;&amp;gt;&amp;gt; look and join the conversation now. &lt;a href=&#34;http://goparallel.sourceforge.net/&#34;&gt;http://goparallel.sourceforge.net/&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&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/20150205/98dcee87/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150205/98dcee87/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:29:41&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstdhmrthgfz0edtwvwn3zg0hq97t6jg973mc69v75dlcc58r8n0qszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujp3gcs</id>
    
      <title type="html">📅 Original date posted:2015-02-05 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstdhmrthgfz0edtwvwn3zg0hq97t6jg973mc69v75dlcc58r8n0qszyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpujp3gcs" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspv2mwdxfy5wrk45ve44qrmrfzn8hm7zve95jctjzxhvuk2etqtgqk40z9s&#39;&gt;nevent1q…0z9s&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-05&lt;br/&gt;📝 Original message:On 02/05/2015 12:28 PM, Mike Hearn wrote:&lt;br/&gt;&amp;gt; The donation to live performer example is good - there&amp;#39;s no issue of&lt;br/&gt;&amp;gt; accidentally paying for someone else in this context as there&amp;#39;s only one&lt;br/&gt;&amp;gt; recipient, but many senders.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m not sure you could assume this, even if the payer only received one&lt;br/&gt;broadcast. And if the payer receives multiple, it constitutes a DOS on&lt;br/&gt;the scenario, potentially unintentional.&lt;br/&gt;&lt;br/&gt;&amp;gt; The issue of confused payments remains in other situations though.&lt;br/&gt;&lt;br/&gt;Agree, the problem of the payer strongly identifying the receiver&lt;br/&gt;requires either proximity (NFC or QR code scan from the known-good&lt;br/&gt;source) or PKI/WoT. The problem can&amp;#39;t be resolved through a broadcast.&lt;br/&gt;&lt;br/&gt;&amp;gt; For the coffee shop use case, it&amp;#39;d be nicer (I think) if we aim for a&lt;br/&gt;&amp;gt; Square-style UI where the device broadcasts a (link to) a photo of the&lt;br/&gt;&amp;gt; user combined with a bluetooth MAC. Then the merchant tablet can show&lt;br/&gt;&amp;gt; faces of people in the shop, and can push a payment request to the users&lt;br/&gt;&amp;gt; device. That device can then buzz the user, show a confirmation screen,&lt;br/&gt;&amp;gt; put something on their smart watch etc or just auto-authorise the&lt;br/&gt;&amp;gt; payment because the BIP70 signature is from a trusted merchant. User&lt;br/&gt;&amp;gt; never even needs to touch their phone at all.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m imagining myself walking around broadcasting my photo and MAC&lt;br/&gt;address while hucksters push payment requests to me for approval, while&lt;br/&gt;recording my photo and correlating it to my address. It will pretty&lt;br/&gt;quickly turn in to a scenario where I need to touch something before&lt;br/&gt;this is turned on.&lt;br/&gt;&lt;br/&gt;&amp;gt; On Thu, Feb 5, 2015 at 9:06 PM, Paul Puey &amp;lt;paul at airbitz.co&lt;br/&gt;&amp;gt; &amp;lt;mailto:paul at airbitz.co&amp;gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     The BIP70 protocol would preclude individuals from utilizing the P2P&lt;br/&gt;&amp;gt;     transfer spec. It would also require that a Sender have internet&lt;br/&gt;&amp;gt;     connectivity to get the payment protocol info. BLE could enable&lt;br/&gt;&amp;gt;     payment w/o internet by first transferring the URI to from Recipient&lt;br/&gt;&amp;gt;     to Sender. Then in the future, we could sign a Tx and send it over&lt;br/&gt;&amp;gt;     BLE back to the recipient (who would still need internet to verify&lt;br/&gt;&amp;gt;     the Tx). This is an important use case for areas with poor 3G/4G&lt;br/&gt;&amp;gt;     connectivity as I&amp;#39;ve experience myself.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     Also, due to Android issues, NFC is incredibly clunky. The URI&lt;br/&gt;&amp;gt;     Sender is required to tap the screen *while* the two phones are in&lt;br/&gt;&amp;gt;     contact. We support NFC the same way Bitcoin Wallet does, but unless&lt;br/&gt;&amp;gt;     the payment recipient has a custom Android device (which a merchant&lt;br/&gt;&amp;gt;     might) then the usage model is worse than scanning a QR code. BLE&lt;br/&gt;&amp;gt;     also allows people to pay at a distance such as for a donation to a&lt;br/&gt;&amp;gt;     live performer. We&amp;#39;ll look at adding this to the Motivation section.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     From: Andreas Schildbach &amp;lt;andreas at sc...&amp;gt; - 2015-02-05 13:47:04&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     Thanks Paul, for writing up your protocol!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     First thoughts:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     For a BIP standard, I think we should skip &amp;#34;bitcoin:&amp;#34; URIs entirely and&lt;br/&gt;&amp;gt;     publish BIP70 payment requests instead. URIs mainly stick around because&lt;br/&gt;&amp;gt;     of QR codes limited capacity. BIP70 would partly address the &amp;#34;copycat&amp;#34;&lt;br/&gt;&amp;gt;     problem by signing payment requests.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;     In your Motivation section, I miss some words about NFC. NFC already&lt;br/&gt;&amp;gt;     addresses all of the usability issues mentioned and is supported by&lt;br/&gt;&amp;gt;     mobile wallets since 2011. That doesn&amp;#39;t mean your method doesn&amp;#39;t make&lt;br/&gt;&amp;gt;     sense in some situations, but I think it should be explained why to&lt;br/&gt;&amp;gt;     prefer broadcasting payment requests over picking them up via near field&lt;br/&gt;&amp;gt;     radio.&lt;br/&gt;&lt;br/&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: 473 bytes&lt;br/&gt;Desc: OpenPGP digital signature&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150205/829bd26c/attachment.sig&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150205/829bd26c/attachment.sig&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T17:29:40&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9gyghennxzd4c22q870qp3sfre3aad3xv9ht2kunp3dgx4zadq7qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucj0yws</id>
    
      <title type="html">📅 Original date posted:2015-02-02 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9gyghennxzd4c22q870qp3sfre3aad3xv9ht2kunp3dgx4zadq7qzyzpzqhe897v4mxl8gfme50qe52hqs53v59yzfsarkq2jt765tytpucj0yws" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfmktqkh4gzvs7xsmn7fetksa86ylnfxx29umxkklps9l9gd2mgrqs92jqy&#39;&gt;nevent1q…2jqy&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-02&lt;br/&gt;📝 Original message:Confusing or not, the reliance on multiple signatures as offering greater security than single relies on the independence of multiple secrets. If the secrets cannot be shown to retain independence in the envisioned threat scenario (e.g. a user&amp;#39;s compromised operating system) then the benefit reduces to making the exploit more difficult to write, which, once written, reduces to no benefit. Yet the user still suffers the reduced utility arising from greater complexity, while being led to believe in a false promise.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On Feb 2, 2015, at 11:35 AM, Brian Erdelyi &amp;lt;brian.erdelyi at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; Bitcoin Authenticator is a desktop app&#43;mobile app pair. It pairs with your phone over wifi, cloud push, maybe Bluetooth as well. I forget exactly. &lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It&amp;#39;s done in the same way as Lighthouse, so it runs Win/Mac/Linux on desktop and Android on mobile.&lt;br/&gt;&amp;gt;&amp;gt; &lt;br/&gt;&amp;gt;&amp;gt; It could be adapted to use BitGo as a third party key holder with SMS authenticator relatively easily, I think. We did the bulk of all the needed work last year as part of the bitcoinj multisig work. Then you&amp;#39;d have a server involved, but not a web app.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I really like the concept of Bitcoin Authenticator and think it’s exactly what I was describing (without a third-party).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think it’s a bit confusing when they describe Bitcoin Authenticator as 2FA.  I think it may be more accurate to describe it as out of band transaction verification/signing or dual transaction signing.  Regardless, it’s very exciting to see others are thinking about this too.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Brian Erdelyi&lt;br/&gt;&amp;gt; ------------------------------------------------------------------------------&lt;br/&gt;&amp;gt; Dive into the World of Parallel Programming. The Go Parallel Website,&lt;br/&gt;&amp;gt; sponsored by Intel and developed in partnership with Slashdot Media, is your&lt;br/&gt;&amp;gt; hub for all things parallel software development, from weekly thought&lt;br/&gt;&amp;gt; leadership blogs to news, videos, case studies, tutorials and more. Take a&lt;br/&gt;&amp;gt; look and join the conversation now. &lt;a href=&#34;http://goparallel.sourceforge.net/&#34;&gt;http://goparallel.sourceforge.net/&lt;/a&gt;&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; Bitcoin-development mailing list&lt;br/&gt;&amp;gt; Bitcoin-development at lists.sourceforge.net&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#34;&gt;https://lists.sourceforge.net/lists/listinfo/bitcoin-development&lt;/a&gt;
    </content>
    <updated>2023-06-07T17:29:17&#43;02:00</updated>
  </entry>

</feed>