Convert Blocktown ZIP draft to .rst format.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
Daira Hopwood 2019-09-03 13:27:49 +01:00
parent 549f2300b3
commit 8d536a262f
1 changed files with 391 additions and 0 deletions

View File

@ -0,0 +1,391 @@
::
ZIP: Unassigned {numbers are assigned by ZIP editors}
Title: Blocktown ZIP: 10% of the block reward to a 2-of-3 multisig agreement
Owners: James Todaro <james@blocktown.capital>
Joseph Todaro <joseph@blocktown.capital>
Status: Draft
Discussion: Zcash Forum Blocktown ZIP Draft
Category: Consensus
Created: 2019-08-31
License: MIT
Terminology
===========
The key words “MUST”, “SHOULD”, “SHOULD NOT”, “MAY”, “RECOMMENDED”,
“OPTIONAL”, and “REQUIRED” in this document are to be interpreted as
described in RFC 2119 [1].
The additional terms below are to be interpreted as follows:
Mining
The actions of processing transactions, which include processing
transactions in a Proof-of-Stake or Proof-of-Work/Proof-of-Stake
hybrid system, in the event Zcash implements either at a future date.
Mining software
Pool software, local mining software or staking software.
Mining rewards / Block rewards
Network transaction fees and/or coinbase rewards (e.g. newly issued
ZEC associated with block generation).
Network upgrade
Any change to the Zcash software, introduced as part of the standard
Zcash Network Upgrade Pipeline [2] or otherwise.
Founders Reward
The 20% ZEC from mined blocks allocated to the Electric Coin Company
(ECC), Zcash Foundation (ZF), employees, investors and/or other
entities prior to the expected first halving in October 2020.
Zcash Development Fund
Transparent address(es) controlled jointly by the Electric Coin
Company, Zcash Foundation, and a “Third Entity”. The fund is intended
for research, development, maintenance, and other technical work
directly connected to the Zcash protocol, as well as non-technical
initiatives (including design, marketing, events, regulatory
outreach, education, governance, and any other form of business or
community development) that contribute to the long-term success of
the Zcash network. In the context of this proposal, the Zcash
Development Fund consists of 10% of newly issued ZEC from block
rewards between the first and second halvings of the Zcash network.
Applicant
Any individual, group, or entity that seeks funding from the Zcash
Development Fund.
Recipient
Any individual, group, or entity that receives funding from the Zcash
Development Fund.
Abstract
========
This proposal puts forward the financing mechanism and fundamental rules
of governance for the creation of a Zcash Development Fund.
Specification
=============
Funding mechanism of the Zcash Development Fund
-----------------------------------------------
- This funding mechanism MUST be hard-coded so that 10% of newly issued
ZEC from block rewards are automatically directed to the transparent
address(es) of the Zcash Development Fund.
- The above requirement MUST be met between the first halving and
second halving. Upon the second halving, future governance decisions
MAY result in a further decrease of the Zcash Development Fund to 5%
of newly issued ZEC from block rewards, or alternatively MAY result
in another percent allocation which includes the possibility of a
system whereby 100% of block rewards go to miners.
- The two aforementioned requirements above MUST remain regardless of
any additional Network Upgrades or changes to mining or mining
software prior to the second halving.
- The Zcash Development Fund MAY outlive the period of its initial
funding mechanism, either through the appreciation in the price of
ZEC, or from alternative funding sources upon the second halving in
2024.
- The hard-coded transparent address(es) of the Zcash Development Fund
MAY be periodically rotated for operational security purposes to
decrease the risk of any potential loss of funds associated with the
address(es). The ECC, ZF, and/or “Third Entity” described below
SHOULD take any possible precautions within the confines of this
Specification section to avoid loss of funds.
Governance of the Zcash Development Fund
----------------------------------------
Funds allocated to the Zcash Development Fund MUST be used only for
their intended purpose as defined in the following Rationale section of
this proposal.
The transparent address(es) of the Zcash Development Fund MUST be
jointly controlled by the ECC, ZF, and Third Entity, and all funds
transferred from the Zcash Development Fund MUST be publicly confirmed
in an official manner by a majority decision among the ECC, ZF, and
Third Entitycommonly referred to as “2-of-3 multisig”. That is, funding
decisions MUST be put to an officially documented vote which MUST NOT
pass unless at least 2 of the 3 entities above vote approvingly.
Prior to any movement of funds from the Zcash Development Fund, the ZF
and ECC MUST coordinate with each other and the community to establish
the Third Entity that will be involved in governance of the Zcash
Development Fund. The process of determining the exact initial
composition and rules of governance of the Third Entity MUST involve the
Zcash community at large in a process similar to that outlined in the
section "How the Foundation will select a particular proposal" in the ZFs
August 6, 2019 statement [3].
The governance rules of the Third Entity MUST include the following:
- All decision-making and other governing processes of the Third Entity
MUST be independent of the ECC and ZF, and MUST include measures that
are necessary to avoid conflicts of interest in relation to the ECC
and ZF.
- At creation, the Third Entity MUST include an uneven number of at
least 5 individuals with independent previous affiliations, each
having a single vote. All such decisions MUST have majority support
within the Third Entity to result in an overall approving vote by the
Third Entity.
- Once the Third Entity is established, it MAY decide to change its
rules of governance (e.g. simple majority versus supermajority
rules), but any such change MUST be preceded by the involvement of
the Zcash community at large, similar to the process outlined in the
ZFs August 6, 2019 statement [3].
- Once the Third Entity is established as a self-governing body, it
SHOULD evolve toward a system whereby ZEC holders have a direct role
in determining votes and internal governance of the Third Entity.
- The Third Entity MAY apply for funding from the Zcash Development
Fund, if deemed appropriate by its governing body. This would be
subject to a majority vote by the ECC, ZF and Third Entity.
Prior to any transfer of funds from the Zcash Development Fund, the ECC,
ZF, and Third Entity MUST specify, approve, and make public the final
rules on applying for and receiving funding from the Zcash Development
Fund, including the details of the decision-making process for approving
or rejecting funding requests. These rules MUST apply equally to all
Applicants, including the ECC, ZF, and Third Entity, and MUST include
the following:
- Funding from the Zcash Development Fund MUST be available to not only
the ECC, ZF, and Third Entity but also to other individuals, groups,
or entities that could make technical and/or non-technical
contributions to Zcash as described in the Rationale section of this
proposal.
- To receive funding from the Zcash Development Fund, all Applicants
MUST follow the rules described in the Specification section of this
proposal and in final detail by the ECC, ZF, and Third Entity.
- As part of an application, each Applicant MUST produce a public
overview of the activities and projected costs for which they are
seeking funds.
- Each funding decision MUST be preceded by a community review period
of reasonable length to be determined by the ECC, ZF and Third Entity
in which Zcash stakeholders and community members can familiarize
themselves with the Applicants request and make suggestions, or
raise objections.
- In situations of overwhelming opposition from Zcash stakeholders and
community members to requests from Applicants, the ECC, ZF, and Third
Entity SHOULD NOT approve the request before striving to address
stakeholders and community concerns, and modifying the request, if
appropriate, to assuage concerns.
- Each funding decision MUST be accompanied by an easily referenced
joint public statement by the ECC, ZF, and Third Entity, which MUST
include the final tally of the relevant vote, as well as the votes of
the three involved entities. As part of this statement, each of the
three entities MUST provide explicit justification for its respective
vote.
- The ZF MUST ensure that all Zcash Development Fund votes and the
accompanying justifications described previously remain archived and
easily accessible online by Zcash community members, stakeholders and
the general public.
- The ECC, ZF, and Third Entity MAY approve funding requests on a
rolling basis, but all funding requests MUST be revisited and voted
on at a minimum of every 6 months to receive renewed approval.
- Recipients MUST publicize at minimum quarterly progress updates on
their activities funded from the Zcash Development Fund. In the case
of short-term assignments (less than 6 months), a single report upon
completion of the project is sufficient. Standard reporting
requirements MUST be specified by the ECC, ZF, and Third Entity prior
to any approved requests from the Zcash Development Fund and
additional requirements MAY be introduced as needed.
- Depending on the nature of each request, funds MAY be disbursed in a
single payment or incrementally, subject to objective milestones
and/or other performance metrics.
Any decision to alter the governance of the Zcash Development Fund as
described in this proposal and in final detail by the ECC, ZF, and Third
Entity MUST involve the Zcash community at large, similar to the process
outlined in the ZFs August 6, 2019 statement [3].
All transfers from the Zcash Development Fund MUST be in full accordance
with the requirements described in this proposal.
Issues not addressed in this proposal/Out-of-Scope
==================================================
- Details of the decision-making process for supporting or rejecting
this or other relevant proposals by the ECC, ZF, and/or other Zcash
stakeholders. We do maintain, however, that any decision by the ECC
and/or the ZF on the issue described in the Motivation section below
SHOULD be preceded by the procedures for measuring community
sentiment as outlined in the ZFs August 6, 2019 statement [3].
- Additional methods for measuring community sentiment MAY include a
way for ZEC holders to signal their support of specific proposals.
- Matter of whether the ECC should reorganize itself into a non-profit
or remain for-profit, as addressed by the ZF in their August 6, 2019
statement [3]. The current proposal is neutral on this matter, and
funding from the Development Fund would be available for non-profit
and/or for-profit entities. We consider the governance rules of the
Development Fund outlined in this Specificationsection adequate for
transparency and accountability.
Motivation
==========
The Zcash network is scheduled to undergo its first halving in October
2020, per current protocol specifications. At the time of the first
halving, the codebase dictates that the Founders Reward, which consists
of 20% of the ZEC from every block reward, will be terminated. Without
codebase modification in the upcoming fourth network upgrade (NU4), 100%
of block rewards would be claimed by miners thereon.
The two organizations presently leading development and maintenance of
the Zcash network receive funds from the Founders Reward. These
organizations, the ECC and ZF, have recently requested a source of
funding after the first halving in order to continue operations for the
foreseeable future. The source of funds could theoretically be from
either a modification to the codebase dictating a Zcash Development Fund
from block rewards or, alternatively, from external sources. The ECC has
indicated though that it would “wind down or pivot” rather than accept
funding from any sources that would give “special interests” control
over the ECC [4].
Based on the ECCs demands, the block reward appears to be the most
agreeable source of resources for a Zcash Development Fund.
This proposal, originally published in the Zcash Community Forum on
August 14, 2019 [5 1] and formalized further in a blog post on August
23, 2019 [6 1], outlines the funding mechanism and governance of such a
Zcash Development Fund. Herein, we propose a feature of NU4 whereby 10%
of the ZEC from every new block reward between the first halving and
second halving would be directly deposited in a Zcash Development Fund.
For the period between the launch of the Zcash network in 2016 and the
first halving, there has been a centralized 20% fee known as the
Founders Reward taken from the block reward. Other active ZIP drafts
advocate a Zcash Development Fund of 20% allocation from the block
reward after the first halving. We believe that a cumulative eight years
of centralized fees from the block reward at the identical rate of 20%
would ultimately result in a narrow community that accepts the
likelihood of a perpetual 20% fee on the Zcash network.
With a Zcash Development Fund that is only 10% of the block reward, a
precedent will be set that a large centralized fund is not indefinite
and will decrease faster than simply the rate of block reward halvings.
Although this proposal specifically addresses the period between the
first and second halving, this proposed feature may set a precedent
whereby the percent fee from block rewards allocated to a Zcash
Development Fund continually decreases every halving, e.g. 20% (FR) from
2016-2020, 10% from 2020-2024, 5% from 2024-2028, 2.5% from 2028-2032
(effectively quartering the ZEC allocated to a development fund every
four years). We believe that this social contract could restore the
communitys faith in the decentralization of Zcash as the network
incentives align more closely with that of bitcoins over time.
Alternatively, it is not unreasonable for the Zcash governance system to
elect a 0% allocation for the Zcash Development Fund upon the second
halving. For a more detailed exploration regarding the selection of 10%,
please review the blog post Proposal for the Zcash 2020 Network Upgrade
by Blocktown Capital [7].
Of note, we are not suggesting or implying that the funding from the
Founders Reward and a Zcash Development Fund would be managed in a
similar way or have similar directives. The Zcash Development Fund
feature that we propose for NU4 does not allocate any funds to former
angel investors, VCs or vested employees. Furthermore, the Zcash
Development Fund would be subject to more explicit and transparent rules
of governance, as outlined in the Specification section of this
proposal.
Rationale
=========
The rationale behind this proposal is as follows:
- To provide financial resources for research, development, and any
other technical work connected to software upgrades/maintenance of
the Zcash protocol, as well as non-technical initiatives including
marketing, design, events, regulatory outreach, education,
governance, and any other form of business that contribute to the
success of the Zcash network.
- To increase decentralization and network security of the Zcash
network.
- To increase decentralization through greater community involvement in
Zcash governance and resource allocation.
- To establish basic rules of governance and accountability regarding
the deployment of funds in the Zcash Development Fund.
- To encourage transparency and cooperation among Zcash stakeholders
and strengthen the communitys governance capabilities moving
forward.
Discussion
==========
Recognized objections to this proposal include:
- This proposal is not in accordance with the current Zcash protocol,
which is programmed to allocate 100% of the coinbase to miners upon
the first halving in 2020. However, at least during the next few
years of Zcashs infancy, we believe it is advantageous to have a
funded and dedicated development team.
- The funding mechanism in this proposal is a Zcash Development Fund
consisting of 10% of newly issued ZEC from block rewards after the
first halving. This is in contrast to other proposals that allocate
20% of the mining rewards to the Zcash Development Fundpresumably a
popular selection because the original Founders Reward was also set
at 20%. For reasons we have explored in depth [7] and summarized [8],
we believe 10% instead of 20% is superior for network security,
decentralization, uniting the Zcash community and renewing interest
in ZEC.
- Various parameters of governance in approving Applicant requests for
funding from the Zcash Development Fund.
- The inclusion of a third entity in governance. One notable objection
is the possibility of collusion between Third Entity and either the
ECC or ZF that would result in a “usurped” Zcash Development Fund. We
believe that the process for a community elected Third Entity,
however, will mature over timegiving the community and Zcash
stakeholders that important third opinion in deciding the proper
allocation of funds. As demonstrated by the resilience of the bitcoin
network and community, well-formed communities tend to resist any
collusion with corporations and controlling entities that do not
promote the direct success of the network. Moreover, the inclusion of
a Third Entity has the advantage of offering a “tie-breaker” in the
event of a deadlock vote between the ECC and ZF and/or a situation
where one entity holds the other hostage, which is a possible
scenario in a 2-of-2 multisig agreement.
- This proposal does not have a clause dictating that a Recipient must
abstain from voting. If a Recipient must abstain from voting in a
2-of-3 multisig governance system, then this couldas in the case of
2-of-2 multisigresult in an entity holding another hostage. For
example, if the ECC refuses to fund the ZF until the ZF complies with
the ECCs demands, then the ECC has the power to deadlock any vote to
fund the ZF, which requires the ECC and Third Entity to both vote
approvingly.
Aspects of this proposal, particularly the Terminology and Specification
sections, were adapted and expanded definitions and concepts put forth
in Placeholders dev fund proposal from August 22, 2019 [9].
References
==========
[1] Key words for use in RFCs to Indicate Requirement Levels `Key
Words <https://tools.ietf.org/html/rfc2119>`__
[2] The Zcash Network Upgrade Pipeline `NU
Pipeline <https://electriccoin.co/blog/the-zcash-network-upgrade-pipeline/>`__
[3] Zcash Foundation Guidance on Dev Fund Proposals `ZIP
Guide <https://www.zfnd.org/blog/dev-fund-guidance-and-timeline/>`__
[4] ECC Initial Assessment of Community Proposals `ECC Initial
Assessment of
Proposals <https://electriccoin.co/blog/ecc-initial-assessment-of-community-proposals/>`__
[5] Proposal for the Zcash 2020 Network Upgrade (topic on the Zcash
community forum) `Zcash Forum Blocktown
Proposal <https://forum.zcashcommunity.com/t/proposal-for-the-zcash-2020-network-upgrade/34503>`__
[6] Blocktown Proposal for Zcash 2020 Network Upgrade `Blocktown
Proposal for
NU4 <https://medium.com/blocktown/blocktown-proposal-for-zcash-2020-network-upgrade-fdec1e9d507c>`__
[7] Proposal for the Zcash 2020 Network Upgrade `Initial Blocktown
Proposal <https://medium.com/blocktown/proposal-for-the-zcash-2020-network-upgrade-fcd320a5d6f5>`__
[8] Executive Summary: Blocktown Proposal for Zcash 2020 Network Upgrade
`Blocktown Proposal Executive
Summary <https://medium.com/blocktown/executive-summary-blocktown-proposal-for-zcash-2020-network-upgrade-84ff20997502>`__
[9] Dev Fund Proposal: 20% to a 2-of-3 multisig with community-involved
governance `Placeholder ZIP
Draft <https://forum.zcashcommunity.com/t/dev-fund-proposal-20-to-a-2-of-3-multisig-with-community-involved-governance/34646>`__