Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id B52EF8EC for ; Thu, 6 Aug 2015 23:26:50 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-wi0-f174.google.com (mail-wi0-f174.google.com [209.85.212.174]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id EC636A6 for ; Thu, 6 Aug 2015 23:26:48 +0000 (UTC) Received: by wicgj17 with SMTP id gj17so41040285wic.1 for ; Thu, 06 Aug 2015 16:26:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=cP3E8fT9/J0oZ1518/4xnXHwVWOTqloQG6tIEMHWDG4=; b=L+yg2Pa6uJJuih3EhgZgpPZUu7emyOGiO8H2G7x42rPVpZYfuuDtSOow0nhs0ZHJ8m xQ2muEBGBIhzKGOpt8Q73YuqpD6FpTFdT/2UT24VO9mHi9zjKcfV2xnsfQfwOHs49Dk5 xJ9nUyyktd6MdHdLXZ7mS7s75OjG66H+whyHD3pAQTLHfpkXEDe9tr+wPVixgwyO+sHr jyH/jk6DoB0FtwgD+wjcBD2Jr1DwGIrNXgBnp8FjCeMBk0SFZSeN4NYPGBZNJWVaQRGM 7HLHyeRy6fSFj7AMAu6ynfFMxTPxJwyHJtEKk/aqtaRwoY6YDXEX0EfOzWlT584w+uFl Dy6A== MIME-Version: 1.0 X-Received: by 10.194.239.167 with SMTP id vt7mr8869463wjc.5.1438903607595; Thu, 06 Aug 2015 16:26:47 -0700 (PDT) Sender: dscotese@gmail.com Received: by 10.27.184.134 with HTTP; Thu, 6 Aug 2015 16:26:47 -0700 (PDT) In-Reply-To: <1c808715eac12f67cf9865dfd97c0a37@xbt.hk> References: <1c808715eac12f67cf9865dfd97c0a37@xbt.hk> Date: Thu, 6 Aug 2015 16:26:47 -0700 X-Google-Sender-Auth: abWuBeOEkJo9IKJnMpUhA7g4hsU Message-ID: From: Dave Scotese To: "jl2012@xbt.hk" , bitcoin-dev@lists.linuxfoundation.org Content-Type: multipart/alternative; boundary=089e013c60c0659639051cacda17 X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [bitcoin-dev] Wrapping up the block size debate with voting X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Aug 2015 23:26:50 -0000 --089e013c60c0659639051cacda17 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable "Miners can do this unilaterally" maybe, if they are a closed group, based on the 51% rule. But aren't they using full nodes for propagation? In this sense, anyone can vote by coding. If and when we need to vote, a pair-wise runoff ("condorcet method") will find an option that is championed by a majority over each other option. There may not be any such option, in which case no change would make the most sense. The voting proposal has several appeals to authority (which no one has) like "People with certain amount of contribution" and "Exchanges operated for at least 1 year with 100,000BTC 30-day volume may also apply": who decided what amount or whether or not the application is approved? It also doesn't specify how many btc equates to one vote. > On Aug 4, 2015, at 12:50 AM, jl2012 via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org > wrote: > > As now we have some concrete proposals ( https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-July/009808.ht= ml), I think we should wrap up the endless debate with voting by different stakeholder groups. > > --------------------------------- > Candidate proposals > > Candidate proposals must be complete BIPs with reference implementation which are ready to merge immediately. They must first go through the usual peer review process and get approved by the developers in a technical standpoint, without political or philosophical considerations. Any fine tune of a candidate proposal may not become an independent candidate, unless it introduces some =E2=80=9Creal=E2=80=9D difference. =E2=80=9CNo ch= ange=E2=80=9D is also one of the voting options. > --------------------------------- > Voter groups > > There will be several voter groups and their votes will be counted independently. (The time frames mentioned below are just for example.) > > Miners: miners of blocks with timestamp between 1 to 30 Sept 2015 are eligible to vote. One block one vote. Miners will cast their votes by signing with the bitcoin address in coinbase. If there are multiple coinbase outputs, the vote is discounted by output value / total coinbase output value. > Many well-known pools are reusing addresses and they may not need to digitally sign their votes. In case there is any dispute, the digitally signed vote will be counted. > > Bitcoin holders: People with bitcoin in the UTXO at block 372500 (around early September) are eligible to vote. The total =E2=80=9Cbalance=E2=80=9D = of each scriptPubKey is calculated and this is the weight of the vote. People will cast their votes by digital signature. > Special output types: > Multi-sig: vote must be signed according to the setting of the multi-sig. > P2SH: the serialized script must be provided > Publicly known private key: not eligible to vote > Non-standard script according to latest Bitcoin Core rules: not eligible to vote in general. May be judged case-by-case > > Developers: People with certain amount of contribution in the past year in Bitcoin Core or other open sources wallet / alternative implementations. One person one vote. > > Exchanges: Centralized exchanges listed on Coindesk Bitcoin Index, Winkdex, or NYSE Bitcoin index, with 30 days volume >100,000BTC are invited. This includes Bitfinex, BTC China, BitStamp, BTC-E, itBit, OKCoin, Huobi, Coinbase. Exchanges operated for at least 1 year with 100,000BTC 30-day volume may also apply to be a voter in this category. One exchange one vote. > > Merchants and service providers: This category includes all bitcoin accepting business that is not centralized fiat-currency exchange, e.g. virtual or physical stores, gambling sites, online wallet service, payment processors like Bitpay, decentralized exchange like Localbitcoin, ETF operators like Secondmarket Bitcoin Investment Trust. They must directly process bitcoin without relying on third party. They should process at least 100BTC in the last 30-days. One merchant one vote. > > Full nodes operators: People operating full nodes for at least 168 hours (1 week) in July 2015 are eligible to vote, determined by the log of Bitnodes. Time is set in the past to avoid manipulation. One IP address one vote. Vote must be sent from the node=E2=80=99s IP address. > > -------------------- > Voting system > > Single transferable vote is applied. ( https://en.wikipedia.org/wiki/Single_transferable_vote). Voters are required to rank their preference with =E2=80=9C1=E2=80=9D, =E2=80=9C2=E2= =80=9D, =E2=80=9C3=E2=80=9D, etc, or use =E2=80=9CN=E2=80=9D to indicate rejection of a candidate. > Vote counting starts with every voter=E2=80=99s first choice. The candida= te with fewest votes is eliminated and those votes are transferred according to their second choice. This process repeats until only one candidate is left, which is the most popular candidate. The result is presented as the approval rate: final votes for the most popular candidate / all valid votes > > After the most popular candidate is determined, the whole counting process is repeated by eliminating this candidate, which will find the approval rate for the second most popular candidate. The process repeats until all proposals are ranked with the approval rate calculated. > > -------------------- > Interpretation of results: > > It is possible that a candidate with lower ranking to have higher approval rate. However, ranking is more important than the approval rate, unless the difference in approval rate is really huge. 90% support would be excellent; 70% is good; 50% is marginal; <50% is failed. > > -------------------- > Technical issues: > > Voting by the miners, developers, exchanges, and merchants are probably the easiest. We need a trusted person to verify the voters=E2=80=99 identit= y by email, website, or digital signature. The trusted person will collect votes and publish the named votes so anyone could verify the results. > > For full nodes, we need a trusted person to setup a website as an interface to vote. The votes with IP address will be published. > > For bitcoin holders, the workload could be very high and we may need some automatic system to collect and count the votes. If people are worrying about reduced security due to exposed raw public key, they should move their bitcoin to a new address before voting. > > Double voting: people are generally not allowed to change their mind after voting, especially for anonymous voters like bitcoin holders and solo miners. A double voting attempt from these classes will invalidate all related votes. > > Multiple identity: People may have multiple roles in the Bitcoin ecology. I believe they should be allowed to vote in all applicable categories since they are contributing more than other people. > > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev --=20 I like to provide some work at no charge to prove my value. Do you need a techie? I own Litmocracy and Meme Racing (in alpha). I'm the webmaster for The Voluntaryist which now accepts Bitcoin. I also code for The Dollar Vigilante . "He ought to find it more profitable to play by the rules" - Satoshi Nakamoto --089e013c60c0659639051cacda17 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable "Miners can do this unilaterally" maybe, if they are a closed gro= up, based on the 51% rule. But aren't they using full nodes for propaga= tion?=C2=A0 In this sense, anyone can vote by coding.

If and when we need to vote, a pair-wise runoff ("condorcet method&quo= t;) will find an option that is championed by a majority over each other op= tion. There may not be any such option, in which case no change would make = the most sense.

The voting proposal has several appeals to authority (which no one has) lik= e "People with certain amount of contribution" and "Exchange= s operated for at least 1 year with 100,000BTC 30-day volume may also apply= ": who decided what amount or whether or not the application is approv= ed?=C2=A0 It also doesn't specify how many btc equates to one vote.





> On Aug 4, 2015, at 12:50 AM, jl2012 via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wrote:=
>
> As now we have some concrete proposals (https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-July/009808= .html), I think we should wrap up the endless debate with voting by dif= ferent stakeholder groups.
>
> ---------------------------------
> Candidate proposals
>
> Candidate proposals must be complete BIPs with reference implementatio= n which are ready to merge immediately. They must first go through the usua= l peer review process and get approved by the developers in a technical sta= ndpoint, without political or philosophical considerations. Any fine tune o= f a candidate proposal may not become an independent candidate, unless it i= ntroduces some =E2=80=9Creal=E2=80=9D difference. =E2=80=9CNo change=E2=80= =9D is also one of the voting options.
> ---------------------------------
> Voter groups
>
> There will be several voter groups and their votes will be counted ind= ependently. (The time frames mentioned below are just for example.)
>
> Miners: miners of blocks with timestamp between 1 to 30 Sept 2015 are = eligible to vote. One block one vote. Miners will cast their votes by signi= ng with the bitcoin address in coinbase. If there are multiple coinbase out= puts, the vote is discounted by output value / total coinbase output value.=
> Many well-known pools are reusing addresses and they may not need to d= igitally sign their votes. In case there is any dispute, the digitally sign= ed vote will be counted.
>
> Bitcoin holders: People with bitcoin in the UTXO at block 372500 (arou= nd early September) are eligible to vote. The total =E2=80=9Cbalance=E2=80= =9D of each scriptPubKey is calculated and this is the weight of the vote. = People will cast their votes by digital signature.
> Special output types:
> Multi-sig: vote must be signed according to the setting of the multi-s= ig.
> P2SH: the serialized script must be provided
> Publicly known private key: not eligible to vote
> Non-standard script according to latest Bitcoin Core rules: not eligib= le to vote in general. May be judged case-by-case
>
> Developers: People with certain amount of contribution in the past yea= r in Bitcoin Core or other open sources wallet / alternative implementation= s. One person one vote.
>
> Exchanges: Centralized exchanges listed on Coindesk Bitcoin Index, Win= kdex, or NYSE Bitcoin index, with 30 days volume >100,000BTC are invited= . This includes Bitfinex, BTC China, BitStamp, BTC-E, itBit, OKCoin, Huobi,= Coinbase. Exchanges operated for at least 1 year with 100,000BTC 30-day vo= lume may also apply to be a voter in this category. One exchange one vote.<= br> >
> Merchants and service providers: This category includes all bitcoin ac= cepting business that is not centralized fiat-currency exchange, e.g. virtu= al or physical stores, gambling sites, online wallet service, payment proce= ssors like Bitpay, decentralized exchange like Localbitcoin, ETF operators = like Secondmarket Bitcoin Investment Trust. They must directly process bitc= oin without relying on third party. They should process at least 100BTC in = the last 30-days. One merchant one vote.
>
> Full nodes operators: People operating full nodes for at least 168 hou= rs (1 week) in July 2015 are eligible to vote, determined by the log of Bit= nodes. Time is set in the past to avoid manipulation. One IP address one vo= te. Vote must be sent from the node=E2=80=99s IP address.
>
> --------------------
> Voting system
>
> Single transferable vote is applied. (https://en.wikipedia.o= rg/wiki/Single_transferable_vote). Voters are required to rank their pr= eference with =E2=80=9C1=E2=80=9D, =E2=80=9C2=E2=80=9D, =E2=80=9C3=E2=80=9D= , etc, or use =E2=80=9CN=E2=80=9D to indicate rejection of a candidate.
> Vote counting starts with every voter=E2=80=99s first choice. The cand= idate with fewest votes is eliminated and those votes are transferred accor= ding to their second choice. This process repeats until only one candidate = is left, which is the most popular candidate. The result is presented as th= e approval rate: final votes for the most popular candidate / all valid vot= es
>
> After the most popular candidate is determined, the whole counting pro= cess is repeated by eliminating this candidate, which will find the approva= l rate for the second most popular candidate. The process repeats until all= proposals are ranked with the approval rate calculated.
>
> --------------------
> Interpretation of results:
>
> It is possible that a candidate with lower ranking to have higher appr= oval rate. However, ranking is more important than the approval rate, unles= s the difference in approval rate is really huge. 90% support would be exce= llent; 70% is good; 50% is marginal; <50% is failed.
>
> --------------------
> Technical issues:
>
> Voting by the miners, developers, exchanges, and merchants are probabl= y the easiest. We need a trusted person to verify the voters=E2=80=99 ident= ity by email, website, or digital signature. The trusted person will collec= t votes and publish the named votes so anyone could verify the results.
>
> For full nodes, we need a trusted person to setup a website as an inte= rface to vote. The votes with IP address will be published.
>
> For bitcoin holders, the workload could be very high and we may need s= ome automatic system to collect and count the votes. If people are worrying= about reduced security due to exposed raw public key, they should move the= ir bitcoin to a new address before voting.
>
> Double voting: people are generally not allowed to change their mind a= fter voting, especially for anonymous voters like bitcoin holders and solo = miners. A double voting attempt from these classes will invalidate all rela= ted votes.
>
> Multiple identity: People may have multiple roles in the Bitcoin ecolo= gy. I believe they should be allowed to vote in all applicable categories s= ince they are contributing more than other people.
>
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation= .org
> https://lists.linuxfoundation.org/mailman/listinfo/b= itcoin-dev


--
I like to provide some work at no charge to= prove my value. Do you need a techie?=C2=A0
I own Litmocracy and Meme Racing (in alpha).
I'm= the webmaster for The Voluntaryist which now accepts Bitcoin.
I also code for The Dollar Vigilante.
"He ought to find it more profitable to play by the rules" = - Satoshi Nakamoto

--089e013c60c0659639051cacda17--