Hey folks, discussion about this topic is now spread over this thread and the github thread (https://github.com/zcash/zcash/issues/3672). Maybe it would help organize things if we tried to direct process questions and “how will this affect me?” discussion to here and technical discussion to there. Not sure that’ll work, but we can try.
Here’s the process for deciding what software the Zerocoin Electric Coin Company implements and supports: (Note: this is not the process for the Zcash community to decide what it will do. The Zerocoin Electric Coin Company is not the Zcash community, and cannot control what the Zcash community does.)
- First, we do reading, research, and informal interviews with a wide range of community members, advisors, scientists, members of the Zcash Foundation, users, potential users, investors, etc. I’ve proposed this idea to maybe hundred such people over the last year or so, including at Zcon0. I also have numerous discussions with a variety of people — like basically every single day — in places like twitter, the Zcash community chat, and Telegram chat rooms. The feedback I’ve gotten on the time-locked-mining-rewards has been mixed, with a lot of people against it, with slightly more people in favor of it, and with the people against being slightly less vigorous in their opposition (not counting the people in this conversation!) than the people in favor were in their support, and the people against having a variety of different concerns or issues, most of which seemed answerable. A substantial fraction of the people I’ve talked to about it have just been uninterested in mining. I think mining is important! But it is also interesting to note that a large fraction of people actively involved in Zcash don’t care about mining and instead want to talk about other aspects of Zcash. (Much larger than the percentage of people involved in Zcash who actively care about mining!) I also asked the members of the Zerocoin Electric Coin Company’s Technical Advisory Board to review all of the proposals for Blossom, including the time-locked-mining component of the Harmony Mining design.
- We discuss (in public) technical details, including how these things interact with each other and with other parts of the system. That’s what’s going on right now on github.
- The final decision about what software the Electric Coin Company will implement and support is up to Nathan Wilcox, the Zerocoin Electric Coin Company’s Chief Technology Officer, although he listens carefully to my opinion, and we generally agree between the two of us. He approved the time-locking of mining-rewards before he left for a long winter vacation. In his absence, I’m the one responsible for making the final call on this, which I’m going to do this coming Monday—the 7th—so that we can move on with the specification-writing step and get the Blossom train back on schedule (https://z.cash/blog/the-zcash-network-upgrade-pipeline/).
- The result of that decision determines what software the Zerocoin Electric Coin Company will write and support. The schedule for the Company to write and ship new software versions with accompanying testing and vetting is shown here: https://z.cash/blog/the-zcash-network-upgrade-pipeline/
Now about the “how does this affect me?” part, I think that a lot of people may not be appreciating the effects from the difficulty adjustment algorithm, and other such “second order” economic effects. I think some people might be imagining that if they choose to mine the new Zcash alg-B, it would be just like mining another coin, or like mining Zcash used to be, which for most people was “barely profitable over the long-term”, except that the time-locking would basically be taking that “barely profitable” and reducing the effective per-month reward drastically, i.e. basically getting 1/12th as much reward as per month as you would, therefore making it change from “barely profitable” to “loss-making”. But that’s not how mining works! Since each miner is sharing the total reward with all other miners (in proportion to their respective hashpower), and the difficulty adjustment algorithm changes the difficulty to reflect this, then the time-locking of rewards means that if you are more willing and able to commit to mining for an extended period than the most common type of miner, then you’ll probably make more revenue than if we didn’t have the time-locking of rewards.
Some people may also be failing to appreciate the additive effect of continuing to mine week after week. If you mine Zcash continuously, then after you’ve “ramped up” over the course of a year, your reward during any given week would end up being just as high (actually higher as described above) than if there were no time-locking of rewards, with the additional benefit that you are guaranteed a “trailing reward” no matter what happens after that point.
For example, imagine in the future, if you’ve been mining Zcash for a while, and the price of the coin is going up — yay! But then the difficulty factor skyrockets so that your mining reward drops. Well, with the time-locked-rewards, even if the difficulty skyrockets and makes your hashpower almost useless you’ll continue to reap the benefits of the trailing coin rewards for up to a year, which could be great for you if the coin price is going up over that time. This would reward early adopters who earned their mining rewards during the first year and got paid out during the second year at the expense of late-comers who started earning their mining rewards during the second year.
For Users and Holders
Finally, I’d like to emphasize the other side of this deal. Mining is an exchange between the users-and-holders of the coin and the miners. The fact that there is a mining reward at all is a vast transfer of wealth (currently $400,000 every day! https://messari.io/onchainfx/view/77B2EB1D) from holders to miners. When I talk to people about mining issues, I sometimes get the feeling that some of the people I’m talking to are thinking about one side of the deal (e.g. miners), and other people I talk to are thinking about the other side (e.g. users and holders), but few people are thinking about both sides. Zcash needs a mining system which is beneficial for all parties, especially users, because they are the ones whose economic choices are the basis of all the financial benefits of miners and of holders.
So, as I said above it isn’t really the case that the time-locking of rewards is actually reducing the reward transferred to miners. It’s actually shifting who chooses to mine. For people who are willing and able to commit to mining Zcash, it will actually make mining more profitable and more predictable. But the way it does this is by pushing out those miners who are not willing or not able to commit to long-term mining. And I think this is good for the users and holders. If somebody can’t afford the costs to commit to mining Zcash steadily over time, then it’s not that great for the Zcash users and holders to have that person as a miner, compared to if we can instead give that reward to a longer-term, more dedicated, more reliable miner. (And as for whether it is a good idea for the miner, well… on the github thread someone mentioned “how could someone pay their rent during the first year”. Well, it’s not my business to tell other people how to live their life, but people really shouldn’t be depending on cryptocurrency mining of any kind to pay their rent—with or without time-locking—because of price volatility. Time-locking can make it safer for someone to depend on cryptocurrency mining to pay their rent by smoothing out the volatility in difficulty factor, but it can’t smooth out the volatility in price, therefore you shouldn’t do it unless you will continue to be able to pay your rent even if your mining project completely fails you.)
Suppose there are two potential miners, and one has to—or chooses to—immediately sell all of the Zcash coins they make from mining, but the other is willing and able to retain some of the Zcash coins. Then the latter is a holder in addition to being a miner! They are a more dedicated and incentive-aligned member of the Zcash community. The one who is both a holder/user and a miner has the right incentives to protect the entire network and all other users from attacks, disruption, or bad service. The first kind of miner—the one who can’t or doesn’t care to hold on to any of his Zcash coins—would switch to mining a different coin if that became more profitable, or might even rent out their mining power to https://www.nicehash.com/, which is more or less making their mining power available to random people to rent for [https://www.crypto51.app/](http://rollback attacks). The second kind of miner won’t do any of those things, because they are—in addition to being miners—also long-term believers and supporters of the Zcash mission and the Zcash community. For the good of the community, I want to shift more of the reward in the direction of those kinds of miners.
Okay, so if you’re reading this and thinking primarily from the perspective of a (potential) miner instead of from the perspective of a (potential) user/holder, then please go back and read the section above about For Miners. I think this will turn out to be better for you, in addition to being better for users and holders! We need sincere, dedicated people to do Zcash mining, who aren’t doing it just for the money, and who are prepared to stay with us and continue supporting the network for the long haul!