Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 1DCCE95D for ; Tue, 13 Jun 2017 08:24:47 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-pf0-f195.google.com (mail-pf0-f195.google.com [209.85.192.195]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 36A7114E for ; Tue, 13 Jun 2017 08:24:46 +0000 (UTC) Received: by mail-pf0-f195.google.com with SMTP id s66so4787065pfs.2 for ; Tue, 13 Jun 2017 01:24:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; bh=pR5Y8Hyiz2rYwE/YJ0Exrnpg0AyZZWixyw1aOOx4ThQ=; b=fXl2QDL19jsUiU79kOdb0yUFtJLUavD5rS1QcLn4Dgsw5urBewjIWlEKcRnO5uzIeg SDfmPapwaweCzGLYe2dwjs8ZKhCITc7G3RNlPsYuUn7SIBm4vIPAadrUrr+vc6gRT7lV 4dbuFUtdTupmkJH/MTyrHPKzIJOivm3zlPIDhxdh0ebN39FWG7lD4I07ECChEQk1833C ffOd8FMZj5IHv0LtSLVT5/FQeaIu0UoEDQ0s8vQg60RmtC2qidFj6eNMiO2KQpDYpCXm lHZAgWK5HROvNMMYkK4BxaPCXr1xkNQdttGRzNe9OqcoR9sJYIds6p8PlD40qSy1rPuj pc+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; bh=pR5Y8Hyiz2rYwE/YJ0Exrnpg0AyZZWixyw1aOOx4ThQ=; b=XiM58aakDGH+kfQjNo6qks5XWiQvEKokKYm3nWh/NY0x9IVGMSK+tCcTzPERg/g9tL mtCb1kcUqaltKpvnaYLqAVon6SkNnbfI8CQTrDL3wwZb82lEA/b2h9McWEpetzAh9CXv X+68s1Vrq4iyifORinydKVeN2uA4dcQ2HO2yTpDjQPVTVIN0IkigYNXMHkMdv9rYH2d6 USJow/2PJU7wB+tnR7UjwajuGUu5ZwaY+56maFCcXztlgQTfwdtAm/kxS/Rn/e6dqe9j 3iDVC8uyrGX2buoegPnVQCWfgPvdVeptl/3cXKLmhL7N/d/bhNtvTASeDeLZnewBroeQ WF+g== X-Gm-Message-State: AODbwcCmyKNAA/1jpWQeiWCvqhCjyhhfz4cHcB513zkNycEo7oX4e5Uo n8vKV6+qoJ0CwipojW79SQ== X-Received: by 10.84.238.134 with SMTP id v6mr62655864plk.261.1497342285385; Tue, 13 Jun 2017 01:24:45 -0700 (PDT) Received: from [192.168.1.102] ([59.56.44.119]) by smtp.gmail.com with ESMTPSA id j6sm27043226pgc.1.2017.06.13.01.24.43 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Jun 2017 01:24:44 -0700 (PDT) Content-Type: text/plain; charset=gb2312 Mime-Version: 1.0 (Mac OS X Mail 11.0 \(3431\)) From: Zheming Lin In-Reply-To: Date: Tue, 13 Jun 2017 16:24:41 +0800 Content-Transfer-Encoding: quoted-printable Message-Id: References: To: bitcoin-dev@lists.linuxfoundation.org X-Mailer: Apple Mail (2.3431) X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Tue, 13 Jun 2017 10:13:50 +0000 Subject: Re: [bitcoin-dev] Proposal: Demonstration of Phase in Full Network Upgrade Activated by Miners X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jun 2017 08:24:47 -0000 Hi all the developers: I must clarify that despite the general ideas comes from discussions = with others. The opinion in replies are only limited to my self. The old TXs can be re-enable after the fourth stage and just like = **nothing happened** with the grace periods. The code can be provided = with the protocol upgrade voting. At the end of the vote, either success = or failed, we can have old TXs work again. It=A1=AFs like after a long = time that the block jammed. I think nobody get harmed (Is there? I=A1=AFm = not so sure about that), that=A1=AFs the purpose. Thank you for your time and kindly replies. Your opinions are more than = welcome. LIN Zheming > =D4=DA 2017=C4=EA6=D4=C213=C8=D5=A3=AC10:23=A3=ACZheming Lin = =D0=B4=B5=C0=A3=BA >=20 > The BIP is described using Chinese and English. If any part is missing = or need more specific, please reply. Forgive for my poor English. >=20 > This method will incorporate any upgrade that affects non-mining = nodes. They should beware that the rule has been changed. >=20 > TLDR: Major miners activate and orphan the minor. That ensures all = miners upgrades. Then invalid the tx from not upgrading nodes. Nodes = must upgrade (with other protocol upgrade codes) in order to work. Then = the final miner vote over protocol upgrade, with all nodes has the same = upgraded codes. >=20 >
> BIP: ???
> Title: Demonstration of Phase in Full Network Upgrade Activated by =
Miners
> Author: LIN Zheming
> Status: Draft
> Type: Standards Track
> Created: 2017-06-12
> 
>=20 > =3D=3DSummary=3D=3D >=20 > =B1=BE=B7=BD=B7=A8=B2=A2=B2=BB=CA=C7=C0=B4=D4=B4=D3=DA=B8=F6=C8=CB=A3=AC= =B6=F8=CA=C7=D6=D0=CE=C4=B1=C8=CC=D8=B1=D2=C9=E7=C7=F8=D6=D0=BC=AF=CC=E5=D6= =C7=BB=DB=B5=C4=BD=E1=B9=FB=A1=A3
> This idea was not created by an individual but is a product of = collaboration in the Chinese bitcoin community between different = interest groups.
>=20 > = =D5=E2=CA=C7=D2=BB=D6=D6=D4=DA=D0=AD=D2=E9=C9=FD=BC=B6=CA=B1=A3=AC=B6=D4=C8= =AB=CD=F8=CD=DA=BF=F3=BA=CD=B7=C7=CD=DA=BF=F3=BD=DA=B5=E3=BD=F8=D0=D0=B1=A3= =BB=A4=BA=CD=BC=A4=C0=F8=B5=C4=B7=BD=B7=A8=A3=AC=B1=DC=C3=E2=B2=BB=B2=CE=D3= =EB=CD=DA=BF=F3=B5=C4=BD=DA=B5=E3=C3=BB=D3=D0=C9=FD=BC=B6=B5=C4=B6=AF=C1=A6= =B6=F8=CA=DC=B5=BD=CB=F0=CA=A7=A1=A3
> This method is put forth to incentivize and to protect mining nodes = and non-mining nodes during protocol upgrading. With this incentive = mechanism, the non-mining nodes will not suffer monetary loss from chain = splitting.
>=20 > = =B7=A2=D0=C5=BA=C5=B5=C4=B6=E0=CA=FD=BF=F3=B9=A4=D4=DA=B4=EF=B5=BD=BC=A4=BB= =EE=CC=F5=BC=FE=BA=F3=B5=DA=D2=BB=B8=F6=BF=ED=CF=DE=C6=DA=A3=A8=D2=BB=B8=F6= =C4=D1=B6=C8=D6=DC=C6=DA=A3=A9=BA=F3=C9=E8=D6=C3=D0=C2=C7=F8=BF=E9=B0=E6=B1= =BE=BA=C5=A3=AC=B9=C2=C1=A2=CE=B4=C9=FD=BC=B6=BF=F3=B9=A4=B5=C4=B5=CD=B0=E6= =B1=BE=BA=C5=B5=C4=BF=E9=A1=A3=CD=A8=B9=FD=D7=EE=B3=F5=B5=C4=D6=D0=B1=BE=B4= =CF=B9=B2=CA=B6=A3=AC=D4=DA=B5=DA=D2=BB=B8=F6=BF=ED=CF=DE=C6=DA=BD=E1=CA=F8= =BA=F3=A3=AC=CB=F9=D3=D0=BF=F3=B9=A4=BD=AB=C9=FD=BC=B6=D6=C1=D7=EE=D0=C2=B0= =E6=B1=BE=BB=F2=CA=B9=D3=C3=D7=EE=D0=C2=B0=E6=B1=BE=A1=A3=D4=DA=B5=DA=B6=FE= =B8=F6=BF=ED=CF=DE=C6=DA=A3=A8=D2=BB=B8=F6=C4=D1=B6=C8=D6=DC=C6=DA=A3=A9=BA= =F3=A3=AC=BF=F3=B9=A4=BD=AB=BD=F6=BD=D3=CA=DC=D0=C2=B0=E6=B1=BE=B5=C4=BD=BB= =D2=D7=A3=AC=CE=B4=C9=FD=BC=B6=B5=C4=BF=CD=BB=A7=B6=CB=B7=A2=CB=CD=B5=C4=BE= =C9=B0=E6=B1=BE=BD=BB=D2=D7=BD=AB=CE=DE=B7=A8=B5=C3=B5=BD=D0=C2=BD=DA=B5=E3= =B5=C4=D7=AA=B2=A5=D2=B2=CE=DE=B7=A8=BD=F8=C8=EB=D0=C2=B0=E6=B1=BE=C7=F8=BF= =E9=A1=A3=D5=E2=BD=AB=D4=DA=B1=A3=BB=A4=D3=C3=BB=A7=D7=CA=B2=FA=B5=C4=CD=AC= =CA=B1=A3=AC=CC=E1=D0=D1=B2=BB=CD=DA=BF=F3=B5=C4=C7=AE=B0=FC=BD=DA=B5=E3=C9= =FD=BC=B6=A1=A3=B2=A2=D4=DA=C9=FD=BC=B6=B4=FA=C2=EB=D6=D0=BC=D3=C8=EB=B6=D4= =D0=AD=D2=E9=BD=F8=D0=D0=B8=C4=B6=AF=B5=C4=B2=BF=B7=D6=A1=A3=C7=AE=B0=FC=C9= =FD=BC=B6=BA=F3=BD=AB=D3=C9=CD=DA=BF=F3=BD=DA=B5=E3=CD=B6=C6=B1=CA=B5=CA=A9= =B8=C3=CF=EE=B8=C4=B6=AF=A3=AC=D2=D4=B4=EF=B3=C9=D0=AD=D2=E9=B8=C4=B6=AF=B5= =C4=B9=E3=B7=BA=B2=BF=CA=F0=A1=A3
>=20 > After the activation condition is met, majority miners will set a new = block versionbits after the first grace period(a difficulty change of = 2016 blocks). The blocks with lower versionbits will be orphaned. In = terms of the Nakamoto Consensus, the end of the first grace period will = force all mining nodes upgraded to signal a new version of consensus. = After the second grace period ( a difficulty change of 2016 blocks), = mining nodes will only accept transactions with new versionbits. = Transactions from nodes not upgrading will not be relayed nor included = in blocks with new versionbits. This will protect funds of non-mining = nodes from utilizing replay attack and will function as a notification = for them to upgrade. Codes dealing with protocol upgrade could be = included in the upgrade. After the non-mining node upgrades, mining = nodes will vote to activate the protocol upgrade and this will achieve = the broad/widespread deployment of the protocol upgrade.
>=20 > =D4=DA=B8=C3=CF=EE=B8=C4=B6=AF=B9=E3=B7=BA=B2=BF=CA=F0=D6=C1=BF=CD=BB=A7= =B6=CB=D6=AE=BA=F3=A3=AC=D2=C0=C8=BB=D3=C9=C6=E4=BC=A4=BB=EE=CC=F5=BC=FE=BF= =D8=D6=C6=A1=A3
> The protocol upgrade depends on its activate condition independently = even after the change deployed among nodes.
>=20 > =3D=3DMotivation=3D=3D >=20 > = =BC=F8=D3=DA=D7=EE=B3=F5=B5=C4=B1=C8=CC=D8=B1=D2=D0=AD=D2=E9=B2=A2=CE=B4=BF= =BC=C2=C7=B2=BB=B2=CE=D3=EB=CD=DA=BF=F3=B5=C4=C7=AE=B0=FC=BD=DA=B5=E3=A3=AC= =B5=BC=D6=C2=D5=E2=D0=A9=C7=AE=B0=FC=BD=DA=B5=E3=B5=C4=D0=AD=D2=E9=C9=FD=BC= =B6=CA=C7=B1=BB=B6=AF=B5=C4=A3=AC=C0=C1=B6=E8=B5=C4=A1=A3=B5=B1=D4=DA=C9=FD= =BC=B6=B7=BD=CF=F2=C9=CF=B3=F6=CF=D6=B7=D6=C6=E7=CA=B1=A3=AC=BF=F3=B9=A4=D2= =B2=B2=BB=D4=B8=D2=E2=D4=DA=B4=ED=CE=F3=B5=C4=C1=B4=C9=CF=CD=DA=BF=F3=A3=AC= =B5=AB=BF=F3=B9=A4=D3=D6=C3=BB=D3=D0=C8=CE=BA=CE=B7=BD=B7=A8=BF=C9=D2=D4=C8= =B7=B1=A3=D5=FD=D4=DA=D1=D3=B3=A4=B5=C4=C1=B4=CA=C7=B1=BB=C7=AE=B0=FC=BD=DA= =B5=E3=B9=E3=B7=BA=BD=D3=CA=DC=B5=C4=C1=B4=A1=A3=D5=E2=BD=AB=D3=B0=CF=EC=C7= =AE=B0=FC=BD=DA=B5=E3=B5=C4=B0=B2=C8=AB=A1=A3
> In view of the fact that the original Bitcoin consensus did not = consider the non-mining wallet nodes(as mentioned above), the result is = that upgrading the consensus of these wallet nodes is passive and lazy. = When there is disagreement in the direction of the upgrade, the miners = have no mechanism to ensure that the chain being extended is the chain = widely accepted by the wallet nodes. This also adversely affects the = security of the wallet nodes.
>=20 > = =CA=B9=D3=C3=B8=C3=B7=BD=B7=A8=BF=C9=D2=D4=D4=DA=B1=A3=D6=A4=C7=AE=B0=FC=BD= =DA=B5=E3=D7=CA=B2=FA=B0=B2=C8=AB=B5=C4=C7=E9=BF=F6=CF=C2=A3=AC=C7=D2=CD=A8= =B9=FD=D4=F6=BC=D3=BC=A4=C0=F8=C8=C3=C7=AE=B0=FC=BD=DA=B5=E3=C9=FD=BC=B6=D0= =AD=D2=E9=A1=A3=D2=BB=B5=A9=C7=AE=B0=FC=BD=DA=B5=E3=C9=FD=BC=B6=D0=AD=D2=E9= =A3=AC=B1=A3=D6=A4=BF=F3=B9=A4=BD=DA=B5=E3=B2=BB=BD=F6=B9=A4=D7=F7=D4=DA=CB= =E3=C1=A6=D7=EE=B3=A4=C1=B4=C9=CF=A3=AC=BB=B9=B9=A4=D7=F7=D4=DA=B1=C8=CC=D8= =B1=D2=C9=FA=CC=AC=BB=B7=BE=B3=D6=D0=C6=E4=CB=FB=C7=AE=B0=FC=BD=DA=B5=E3=CB= =F9=CA=B9=D3=C3=B5=C4=D7=EE=B3=A4=C1=B4=C9=CF=A1=A3=D4=DA=D6=D0=B1=BE=B4=CF= =B9=B2=CA=B6=CF=C2=B2=BB=BB=E1=B3=F6=CF=D6=B7=D6=B2=E6=A3=AC=D2=D4=CA=B5=CF= =D6=BD=A5=BD=F8=CA=BD=B5=C4=D0=AD=D2=E9=C9=FD=BC=B6=A1=A3
>=20 > Apart from ensuring the asset security of wallet nodes, this method = can be used to provide additional incentives to upgrade the protocol for = the wallet nodes. Once the wallet nodes upgrade their protocol, the = miners' nodes can be guaranteed to work - not only on the longest chain, = but also on the longest chain used by other wallet nodes in the broader = bitcoin sphere. Under the Nakamoto Consensus, there will be no = persistent forks as protocol upgrades can be phased in.
>=20 > =3D=3DSpecification=3D=3D >=20 > 1. =CD=DA=BF=F3=BD=DA=B5=E3=BD=AB=CA=B9=D3=C3 versionbits = =B0=E6=B1=BE=CE=BB=C0=B4=B6=A8=D2=E5=D6=A7=B3=D6=D0=C5=BA=C5=A1=A3BIP = =C9=FA=D0=A7=CA=B1=A3=AC=CB=F9=D3=D0=C7=F8=BF=E9=D0=E8=D2=AA=CA=B9=D3=C3=D6= =C6=B6=A8=B5=C4 nVersion =C0=B4=B7=A2=CB=CD=D0=C5=BA=C5
> 2. =CD=DA=BF=F3=BD=DA=B5=E3=BD=AB=CA=B9=D3=C3 tx version = =C0=B4=B6=A8=D2=E5=B5=B1=C7=B0=B5=C4=BD=BB=D2=D7=B0=E6=B1=BE=A1=A3=B5=B1=C7= =B0=B5=C4 tx version =CA=C7 1=A3=AC=BD=AB=D4=CA=D0=ED tx version =CE=AA = 2 =B5=C4=BD=BB=D2=D7=A3=AC=B2=A2=D4=DA=B5=DA=B6=FE=B8=F6=BF=ED=CF=DE=C6=DA= =D6=AE=BA=F3=A3=AC=CA=B9 tx version =CE=AA 1 =B5=C4=BD=BB=D2=D7=B7=C7=B7=A8= =A1=A3
>=20 > 1. Mining nodes signal by setting a version bit. While this BIP is = active, all blocks must set the chosen nVersion.
> 2. Mining nodes will use tx version to define current version = transactions. Current tx version is 1, and tx version 2 will be allowed. = After the second grace period, tx version 1 will be regarded as = invalid.
>=20 >=20 > =3D=3DDeployment=3D=3D > = =D0=AD=D2=E9=C9=FD=BC=B6=A3=AC=BD=AB=B7=D6=B3=C9=C8=FD=B2=BD=D6=F0=B2=BD=CA= =B5=CA=A9=A1=A3=B2=A2=D3=D0=D2=BB=B8=F6=BF=C9=D1=A1=B5=C4=B5=DA=CB=C4=B2=BD= =C0=B4=BC=AF=B3=C9=D0=AD=D2=E9=C9=FD=BC=B6=B4=FA=C2=EB=A1=A3
>=20 > Protocol upgrading will phase in over three stages. We can have an = optional fourth stage to integrate codes of protocol upgrade.
>=20 > 1. =D0=C5=BA=C5=BD=D7=B6=CE=A1=A3=CD=DA=BF=F3=BD=DA=B5=E3=CA=B9=D3=C3 = versionbits =B7=A2=CB=CD=D6=A7=B3=D6=D0=C5=BA=C5=A1=A3=CD=DA=BF=F3=BD=DA=B5= =E3=D4=DA=BC=E0=B2=E2=B5=BD 55% =B5=C4=C7=F8=BF=E9=BC=B4=C7=B0 1109/2016 = =B8=F6=C7=F8=BF=E9=BE=F9=B7=A2=CB=CD=C1=CB=CF=E0=CD=AC=B5=C4=D6=A7=B3=D6=D0= =C5=BA=C5=A3=AC=BD=F8=C8=EB=CF=C2=D2=BB=BD=D7=B6=CE=A1=A3
> 2. =BF=F3=B9=A4=BD=DA=B5=E3=C9=FD=BC=B6=A1=A3=BE=AD=B9=FD=C1=CB=B5=DA=D2= =BB=B8=F6=BF=ED=CF=DE=C6=DA 2016 =B5=C4=C7=F8=BF=E9=BA=F3=A3=AC=C7=D2=D7=DC= =D0=C5=BA=C5=C7=F8=BF=E9=B3=AC=B9=FD=C1=CB = 2218/4032=A3=AC=BE=CD=BF=AA=CA=BC=CA=B9=D3=C3=D0=C2=B5=C4=C7=F8=BF=E9=B0=E6= =B1=BE=B4=F2=B0=FC=C7=F8=BF=E9=A3=AC=B2=A2=CD=AC=CA=B1=BF=AA=CA=BC=B9=C2=C1= =A2=BE=C9=B0=E6=B1=BE=A1=A3=B4=CB=CA=B1=CB=F9=D3=D0=BD=DA=B5=E3=BA=CD=C7=AE= =B0=FC=A3=AC=BD=AB=BF=C9=D2=D4=CA=B9=D3=C3=D0=C2=B0=E6=B1=BE=BA=C5=B7=A2=CB= =CD=BD=BB=D2=D7=A3=AC=CD=AC=CA=B1=BC=E6=C8=DD=BE=C9=B0=E6=B1=BE=BA=C5=BD=BB= =D2=D7=A1=A3
> 3. =C7=AE=B0=FC=BD=DA=B5=E3=C9=FD=BC=B6=A1=A3=D4=DA=CD=DA=BF=F3=BD=DA=B5= =E3=BC=E0=B2=E2=B5=BD=B5=DA=B6=FE=B8=F6=BF=ED=CF=DE=C6=DA 4032 = =B8=F6=C1=AC=D0=F8=B5=C4=D0=C2=B0=E6=B1=BE=B5=C4=C7=F8=BF=E9=BA=F3=A3=AC=BF= =AA=CA=BC=BE=DC=BE=F8=BE=C9=B0=E6=B1=BE=BA=C5=B5=C4=BD=BB=D2=D7=A3=AC=D6=BB= =B4=F2=B0=FC=A3=AF=D7=AA=B2=A5=D0=C2=B0=E6=B1=BE=BA=C5=B5=C4=BD=BB=D2=D7=A1= =A3=CD=AC=CA=B1=BD=AB=B4=D3=C4=DA=B4=E6=B3=D8=D6=D0=C9=BE=B3=FD=BE=C9=B0=E6= =B1=BE=BA=C5=B5=C4=BD=BB=D2=D7=A1=A3
> 4. = =A3=A8=BF=C9=D1=A1=B5=C4=A3=A9=D0=AD=D2=E9=C9=FD=BC=B6=A1=A3=D4=DA=B5=DA=C8= =FD=BD=D7=B6=CE=D6=D0=B0=FC=BA=AC=D3=D0=B5=DA=CB=C4=BD=D7=B6=CE=B5=C4=C9=FD= =BC=B6=B4=FA=C2=EB=A1=A3=B5=B1=CE=D2=C3=C7=C8=B7=B1=A3=C7=AE=B0=FC=BD=DA=B5= =E3=C9=FD=BC=B6=B5=BD=D6=A7=B3=D6=D0=C2=B0=E6=B1=BE=BD=BB=D2=D7=BA=F3=A3=AC= =B1=D8=C8=BB=B0=FC=BA=AC=C1=CB=B5=DA=CB=C4=BD=D7=B6=CE=B5=C4=C9=FD=BC=B6=B4= =FA=C2=EB=A1=A3=D4=F2=B4=CB=CA=B1=BF=C9=D2=D4=CD=A8=B9=FD=BF=F3=B9=A4=BD=DA= =B5=E3=CD=B6=C6=B1=B5=C4=B7=BD=CA=BD=CD=EA=B3=C9=C8=AB=CD=F8=C2=E7=B5=C4=D0= =AD=D2=E9=C9=FD=BC=B6=A1=A3 >=20 > 1. Signal stage: Mining nodes signal using BIP9. The next stage will = be activated after 55% (1109) of 2016 blocks has the signal.
>=20 > 2. Mining nodes upgrade stage: After a first grace period of 2016 = blocks and total signalling blocks passed 2218 of 4032 blocks, miners = broadcasting blocks with new versionbits in block headers will orphan = blocks with old versionbits. At this stage all nodes can send = transactions with new versionbits, and transactions with old versionbits = will be compatible.
>=20 > 3. Non-mining nodes upgrade stage: after 4032 continuous blocks with = new versionbits, mining nodes will start to refuse transactions with old = versionbits. Only transactions with new versionbits can be relayed and = included in blocks. Transactions with old versionbits can be safely = purged from memory pools.
>=20 > 4. (Optional)Protocol Upgrade stage: The codes dealing with protocol = upgrade can be integrated in the third stage. After the non-mining nodes = upgrades to support newer version of transactions, the codes with = protocol upgrade must be included and now we can use miner vote to = activate and finish this upgrade.
>=20 > =D6=C1=B4=CB=A3=AC=D0=AD=D2=E9=C9=FD=BC=B6=CD=EA=B3=C9=A1=A3
>=20 > At this point, the protocol upgrade have phased in.
>=20 > =3D=3DBenefits=3D=3D >=20 > 1. =BD=F6=D0=E8=D2=AA=B6=E0=CA=FD=B5=C4=BF=F3=B9=A4=B7=A2=D0=C5=BA=C5=BA= =F3=BC=B4=BF=C9=BC=A4=BB=EE=A1=A3=D4=DA=D6=D0=B1=BE=B4=CF=B5=C4=B1=C8=CC=D8= =B1=D2=C2=DB=CE=C4=D6=D0=A3=AC99.9% =B5=C4=BF=C9=C4=DC=D0=D4=CF=C2=A3=AC55= % =B5=C4=BF=F3=B9=A4=BD=AB=D4=DA 340 = =B8=F6=C7=F8=BF=E9=BA=F3=C8=B7=B1=A3=B3=C9=CE=AA=D7=EE=B3=A4=C1=B4=A1=A3=D5= =E2=BD=AB=D7=EE=B4=F3=BF=C9=C4=DC=BC=F5=D0=A1=CD=A8=B9=FD=BF=D8=D6=C6=C9=D9= =CA=FD=CB=E3=C1=A6=B6=F8=CD=CF=D1=D3=CD=F8=C2=E7=C9=FD=BC=B6=B5=C4=BF=C9=C4= =DC=D0=D4=A1=A3=CE=D2=C3=C7=BF=C9=D2=D4=D4=A4=BC=FB=B5=BD=D4=DA=CB=E3=C1=A6= =D0=C5=BA=C5=B3=AC=B9=FD 51% = =BA=F3=A3=AC=CD=DA=BF=F3=BD=DA=B5=E3=BD=AB=D1=B8=CB=D9=B5=C4=D4=DA=B5=DA=D2= =BB=B8=F6=BF=ED=CF=DE=C6=DA=C4=DA=BD=F8=D0=D0=C9=FD=BC=B6=A1=A3
> 2. = =D4=DA=C1=BD=B8=F6=BF=ED=CF=DE=C6=DA=C4=DA=A3=AC=C7=AE=B0=FC=BD=DA=B5=E3=BD= =BB=D2=D7=B2=BB=CA=DC=D3=B0=CF=EC=A3=AC=D3=D0=D7=E3=B9=BB=B5=C4=CA=B1=BC=E4= =C9=FD=BC=B6=C7=AE=B0=FC=C8=ED=BC=FE=A1=A3
> 3. =B0=E6=B1=BE=D0=C5=CF=A2=B0=FC=BA=AC=D4=DA block header = =D6=D0=A3=AC=B2=A2=B2=BB=D3=B0=CF=EC SPV =CD=DA=BF=F3=B9=FD=B3=CC=A1=A3=A3= =A8=BF=B4=C6=F0=C0=B4=CA=C7=A3=BF=A3=A9
> 4. = =D4=DA=C1=BD=B8=F6=BF=ED=CF=DE=C6=DA=BA=F3=A3=AC=C7=AE=B0=FC=BD=DA=B5=E3=BD= =AB=B1=D8=D0=EB=C9=FD=BC=B6=C7=AE=B0=FC=A3=AC=B7=F1=D4=F2=D2=F2=C3=BB=D3=D0= =CB=E3=C1=A6=D6=A7=B3=D6=BD=AB=CE=DE=B7=A8=B7=A2=CB=CD=BD=BB=D2=D7=A3=AC=D2= =B2=CE=DE=B7=A8=C8=B7=C8=CF=A1=A3=CF=E0=B6=D4=D3=DA=D4=DA=BD=DA=B5=E3=BC=E4= =D6=D8=D0=C2=B4=EF=B3=C9=D0=C2=B5=C4=B9=B2=CA=B6=A3=AC=D5=E2=D6=D6=D7=B4=BF= =F6=B2=A2=C3=BB=D3=D0=B8=FC=D4=E3=B8=E2=A1=A3
> 5. = =C7=AE=B0=FC=BD=DA=B5=E3=B5=C4=D5=CB=B1=BE=BD=AB=B5=C3=B5=BD=D7=F0=D6=D8=BA= =CD=B1=A3=BB=A4=A1=A3=CA=B9=D3=C3=C1=B4=CF=C2=C7=AE=B0=FC=B5=C4=D3=C3=BB=A7= =BD=AB=D0=E8=D2=AA=D4=DA=C7=AE=B0=FC=B7=FE=CE=F1=CC=E1=B9=A9=C9=CC=B5=C4=C9= =F9=C3=F7=D6=AE=BA=F3=BE=F6=B6=A8=CC=E1=D6=C1=C1=B4=C9=CF=C7=AE=B0=FC=BB=F2= =B8=FA=CB=E6=A1=A3
> 6. = =BD=AB=C0=B4=B5=C4=D0=AD=D2=E9=C9=FD=BC=B6=A3=AC=BF=C9=D2=D4=D4=DA=C9=FD=BC= =B6=BF=CD=BB=A7=B6=CB=B0=E6=B1=BE=CD=AC=CA=B1=B0=F3=B6=A8=D0=AD=D2=E9=C9=FD= =BC=B6=B4=FA=C2=EB=B2=A2=BD=F8=D0=D0=B6=C0=C1=A2=B5=C4=BC=A4=BB=EE=CD=B6=C6= =B1=A1=A3=D5=E2=BD=AB=D4=A4=C1=F4=D7=E3=B9=BB=B5=C4=CA=B1=BC=E4=C8=C3=BD=DA= =B5=E3=C9=FD=BC=B6=C8=ED=BC=FE=D2=D4=D6=A7=B3=D6=D0=C2=B5=C4=D0=AD=D2=E9=A1= =A3=BC=B4=CA=B9=BF=F3=B9=A4=CD=B6=C6=B1=BC=A4=BB=EE=CA=A7=B0=DC=D2=B2=B2=BB= =D3=B0=CF=EC=CF=D6=D7=B4=A1=A3
>=20 > 1. The activation only requires majority miners signal. As described = in the paper by Satoshi Nakamoto, 55% miners will be in the longest = chain after 340 blocks, with 99.9% certainty. This will minimize the = possibility of delaying network upgrades by controlling a small number = of hashing power. We can foresee that after 51% signalling, all miners = will upgrade within the first grace period.
> 2. During the first two grace periods, non-mining nodes will not be = affected. They have enough time to upgrade their software.
> 3. Versionbits included in block header, not influencing the SPY = mining.
> 4. After two grace periods, all nodes must be upgraded. Otherwise they = cannot send transactions or get any confirmations. Compared with forming = new consensus among nodes, the situation is not worse than before.
> 5. The ledger in non-mining wallet nodes is honored and reserved. = Users of off-chain wallet services can decide whether or not to follow = the service providers after they got the public notification from the = service providers.
> 6. Protocol upgrades in the future can be bonded with the upgrades of = nodes, and the upgrades activate through miners vote independently. = There would be enough time for nodes to be upgraded in order to support = new protocols. Even in case of failing in miner activation, the = situation will not worsen and the status quo will remain.
>=20 >=20 > =3D=3DRisks=3D=3D >=20 > 1. = =CB=E3=C1=A6=B5=C4=B2=A8=B6=AF=BB=E1=D3=B0=CF=EC=D7=EE=B3=A4=C1=B4=B5=C4=BD= =E1=B9=FB=A1=A3=D2=F2=B4=CB=D4=BD=B8=DF=B5=C4=BC=A4=BB=EE=B1=C8=C0=FD=D2=AA= =C7=F3=BD=AB=BC=F5=C9=D9=B6=CC=CA=B1=BC=E4=B7=D6=B2=E6=B5=C4=CE=A3=CF=D5=A1= =A3
> 2. = =BF=F3=B9=A4=BF=C9=C4=DC=B7=A2=BC=D9=D0=C5=BA=C5=C0=B4=B1=DC=C3=E2=B1=BB=B9= =C2=C1=A2=A3=AC=B5=AB=D4=DA=C7=AE=B0=FC=BD=DA=B5=E3=BF=B4=C0=B4=CE=DE=B7=A8= =C7=F8=B7=D6=CA=C7=B7=F1=CA=C7=BC=D9=D0=C5=BA=C5=A3=AC=D6=BB=C4=DC=C9=FD=BC= =B6=A1=A3=B6=F8=C7=AE=B0=FC=BD=DA=B5=E3=C9=FD=BC=B6=D6=AE=BA=F3=A3=AC=BF=F3= =B9=A4=D2=B2=BD=AB=B8=FA=CB=E6=A1=A3
> 3. = =C7=AE=B0=FC=BD=DA=B5=E3=BF=C9=C4=DC=B7=A2=BC=D9=D0=C5=BA=C5=C0=B4=BD=F6=C9= =FD=BC=B6=B0=E6=B1=BE=BA=C5=B6=F8=B2=BB=D6=A7=B3=D6=B0=F3=B6=A8=B5=C4=D0=AD= =D2=E9=C9=FD=BC=B6=B4=FA=C2=EB=A3=AC=B5=AB=C7=AE=B0=FC=BD=DA=B5=E3=CA=FD=C1= =BF=CE=DE=B7=A8=C5=D0=B1=F0=A3=AC=D1=CF=CB=E0=B5=C4=D5=E6=CA=B5=BD=DA=B5=E3= =D3=A6=B5=B1=B8=FA=CB=E6=BF=C9=D6=A4=CA=B5=B5=C4=BF=F3=B9=A4=CD=B6=C6=B1=BD= =E1=B9=FB=A1=A3
> 4. = =B4=E6=D4=DA=C9=D9=B2=BF=B7=D6=BF=F3=B9=A4=BA=CD=C7=AE=B0=FC=BD=DA=B5=E3=B9= =B2=C4=B1=A3=AC=D4=DA=D0=C2=D0=AD=D2=E9=C9=FD=BC=B6=BC=A4=BB=EE=BA=F3=D2=C0= =C8=BB=CA=B9=D3=C3=C0=CF=D0=AD=D2=E9=CD=DA=BF=F3=B5=C4=BF=C9=C4=DC=A1=A3=D5= =E2=D6=D6=BF=C9=C4=DC=CB=E6=CA=B1=B7=A2=C9=FA=CE=DE=B7=A8=B6=C5=BE=F8=A3=AC= =B5=AB=CD=A8=B9=FD=C8=C3=B3=C1=C4=AC=B5=C4=B4=F3=B6=E0=CA=FD=C7=AE=B0=FC=BD= =DA=B5=E3=C9=FD=BC=B6=B5=C4=B7=BD=CA=BD=BF=C9=D2=D4=BD=B5=B5=CD=D5=E2=D6=D6= =D0=D0=CE=AA=B4=F8=C0=B4=B5=C4=C0=FB=D2=E6=A1=A3
>=20 > 1. The fluctuation of the hashing power will affect the result of the = longest chain. Higher activating requirement means a lower risk of = temporary fork.
> 2. Miners could simply signal to avoid being orphaned, but from the = perspective of non-mining wallet nodes, they can't distinguish the false = signal from the true signal. They must upgrade with the assumption that = the signals are all true. After all the non-mining nodes have upgraded, = the miners signalling false signal should follow.
> 3. Non-mining wallet nodes could false signal without supporting the = new protocol but since the total number of nodes cannot be = distinguished, genuine nodes should follow the proven result provided by = miners vote.
> 4. Miners and non-mining nodes could conspire to fork using old = protocol consensus. It can't be eliminated, just like in the past but = through most passive non-mining nodes being upgraded, their benefit is = reduced.
>=20 >=20 > =3D=3DImplementation=3D=3D > ___TBD___ >=20