Thank You for Hacking our Election
I went into this week thinking that I would wake up Saturday morning to see that the TED Plan had successfully completed its historic blockchain election. But it turns out that there was an attempted election hack at the very end. Who says blockchain elections are just like national elections?
There are some details below, but suffice to say, there was a bug we were aware of but hadn’t patched yet. Surely, we thought, no one would try to exploit it to crash our election. But, of course, someone did. Welcome to blockchain. Why didn’t we see that coming?
Given that this was an issue we knew about, the hack was not our finest hour. It looked like the TEDP would technically fail to reach its needed threshold for passage even though it previously had been passing with about 97% Yes votes to 3% No votes (plus a lot of Abstain votes by some BPs and large TFRP accounts). Fortunately, what happened afterward is something we can truly be proud of.
A large group of the Telos block producers — also representing many members of the Telos Core Developers — discussed the matter for several hours. It was an excellent discussion of Telos source code, governance documents, development and review process, and more. In the end, the group was able to land on a solution that addressed the attempted election hack by bringing the source code for Telos ratify/amend functions much closer to what is described in the text of our governance documents. This working group unanimously agreed that solution was entirely appropriate within both the spirit and letter of our operating agreement. We proposed source code updates for the eosio.amend and eosio.saving (WPS, which would suffer from the same exploit) and pushed it to our Github repository. Within a few hours, the code I wrote was reviewed by several reviewers, merged and was soon being tested on our testnet. Along the way, we updated the community with notice of the problem and the proposed solution and received overwhelming support.
I’m enormously proud of how the Telos BPs, devs, and community came together to address this attempted exploit. Blockchain governance is a wonky subject that can be hard to grasp. No one cares about it until it’s broken or you face a crisis. This incident is a standout demonstration of why blockchain governance absolutely matters. Team Telos was able to snatch victory from the jaws of a last-second defeat because we have a truly functioning governance system that is responsive to the needs of the chain and community and at the same time gives us a variety of tools to maintain consensus — not just about the transactions written to the blockchain, but the social and community construct of how the chain itself will be operated. Whoever hacked our election did us a huge favor by giving us an opportunity to demonstrate how effective, responsive, and rapidly consensus-building Telos governance actually is in the face of crisis.
To me, this is the second meaning of “third-generation blockchain”: we have outgrown the concept that the only consensus that a blockchain requires is what values are written to the chain. That is first-generation blockchain consensus-building and governance. Second-generation is forking off sub-communities in times of crisis based on differing core beliefs, like any blockchain with “Cash,” “Classic,” or the like in its name. The third generation of blockchain governance is what Telos is demonstrating: creating a variety of tools for keeping a blockchain and community cohesive and together even in the face of attack. Instead of tearing Telos appart, this attack pulled us together and the chain goes.
Congrats on a big week, Telos!
— Douglas Horn
Here’s what happened this week:
- Telos Mainnet Passes 40 Million Blocks
- Telos Community Votes to Approve the Telos Economic Development Plan
- Telos Podcast #4 and #5 Released
- Update to Ratify/Amend and WPS Contracts
Telos Mainnet Passes 40 Million Blocks
Today, August 2nd, 2019 at 16:28:29 UTC, the Telos mainnet produced it’s 40 millionth block. Congratulations to EOSBarcelona, who was the block producer. This block was also momentous because the Telos block producer rewards move from 3% annual inflation or about 820 TLOS per day ($1,230 per month BP income at current prices) ratchets down to 2% annual inflation or about 547 TLOS per day ($820 per month BP income). With BP income not matching expenses, this is an important concern for the resiliency of the network. Voting on the Telos Economic Development Plan was meant to address this, but other events from this week delayed this. Fortunately, when the TEDP is implemented in a few days, block producer pay will move to the equivalent of 6% inflation, but without any inflation, since the funds will be taken from the unclaimed tokens of the Exchange Token Reserve Fund.
Telos Community Votes to Approve the Telos Economic Development Plan
The Telos community has spoken and voted this week to approve the Telos Economic Development Plan. This means that the Telos Foundation and Worker Proposal systems will get more money, REX is going live, and Telos is going to become a 0% inflation chain.
This was not without a cliffhanger at the end, of course. An account attempted to exploit a flaw in the code for counting the final election results. Fortunately, between the Telos BPs and core devs, we found a great solution that should keep the TED Plan moving forward. The code to address the exploit has been reviewed and tested on the Telos testnet. The multi-sig transactions necessary to push the code to our mainnet should be proposed by today. Once it is signed by 15 active block producers and executed, I (as the proposer of the ballot) will close the TEDP ballot and calculate the votes. Jesse Schulman from CalEOS has been leading the creation of code to execute the TEDP, and this will go into effect as soon as possible. It’s currently still in testing.
Where do the funds come from for the TEDP?
There is a large account with tokens that were reserved for exchanges at the EOS genesis snapshot. Ideally, these exchanges would claim their tokens for their users, but since they have yet to do so, we are gradually applying these funds to other network needs, as mentioned above. 1,000,000 additional TLOS will be put into circulation by the REX rewards pool each month. This translates into around 30% rewards (at 0% inflation) and it could last for a few years if we dial down other expenses as the TLOS price rises.
Telos Podcast #4 and #5 Released
Two episodes of the Worker Proposal funded Telos Podcast were released this week. Podcast #4 was with SEEDS facilitator Reiki Cordon. In this episode, Brandon and Reiki discuss why Telos governance is unique and the SEEDS governance approach, as well as their tokenomics, origins, and market strategy. SEEDS is sewing economically and ecologically decentralized societies, hoping to create minimal viable societies. They’re building financial, governance, and organizational tools to help people to spin up these minimal viable societies with a goal of helping to build regenerative cultures.
On episode 5, Brandon interviewed Infinitybloc’s Justin Giudici and had more of a Telos focus. Brandon and Justin examined multiple areas of Telos, including the Worker Proposal System, the TED Plan, the Telos Foundation, marketplaces and more. Justin is the CEO of Infinitybloc, and on the Telos Foundation Board as leader of the Telos dapp outreach group.
And stay tuned on Monday because Telos Podcast #6 should be coming out then, where I finally get my turn to talk to Brandon. We talk about the TED Plan, Telos economics, some really big developments on Telos like TIPFS and the new Trail 2.0 voting, how Telos governance got a big win by addressing the attempted election hack, and how all of these topics roll together into a really bright future for Telos.
Update to Ratify/Amend and WPS Contracts
On Saturday, July 27th, Telos block producers and core developers were prompted to take a closer look at the voting code for the Ratify/Amend and Worker Proposal Systems due to an exploit utilized by a Telos account. There was a potential exploit that we hadn’t patched soon enough. It was based on the fact that the original code was not really adhering closely to the Telos governance and fortunately, fixing that problem could also eliminate the hack. Fortunately, we noticed this before the ballot was closed, and the fix for both the WPS and the Ratify/Amend voting systems have been pushed to the Telos Foundation Github repository, and we’re running tests on this code, hoping to move it to testnet soon. Once it’s successfully tested, there will be a multisig transaction for block producers to bring the code to the Telos mainnet, and close the ballot, and execute the TEDP.
View GoodBlock’s press release at http://bit.ly/2YsXJzz
View Telos Miami’s press release at http://bit.ly/2KdMYgB
Worker Proposals of Note
Telos Core Development: Sqrl Wallet (#22) (cycle 3 of 4)
Voting closes: Sat Aug 10th 15:27 UTC
125,000.0000 TLOS in 1 cycle to ‘marlon.tf’ for work performed to date on ongoing development and support of Sqrl wallet.
Yes: 5,878,110 | No: 120,014 | Abstain: 756,430
Catering for FREE 1-day EOSIO Blockchain Developer Workshop in London (#21)
Voting closes: Friday Aug 9th 10:31 UTC
20,000.0000 TLOS in 12 cycles to ‘dacblockstalk’ for sponsoring meals at an EOSIO developer workshop in London for blockchain developers, software engineers and computer scientists. https://ipfs.telos.miami/ipfs/QmRAnasG2tzt4JfAkBuFCwR8N1Q32CKgeykYWFzGNwrnV7
Yes: 5,497,111 | No: 447,690 | Abstain: 772,671
Telos Promotional Animated Videos (#19) (Cycle 1 of 3)
Voting closes: Tuesday August 6th 19:23 UTC
30,000.0000 TLOS in 1 cycle to ‘marketing101’ to fund a series of one minute promotional videos about the Telos Blockchain.
Yes: 5,780,001 | No: 1,967,994 | Abstain: 426,777
Telos YouTube and Website Promotion (#18)
Voting closes: Tuesday August 8th 19:33 UTC
20,000.0000 TLOS in 12 cycles to ‘promotetelos’ to promote Telos on the HodlEOS Youtube channel, Eosio.support, and Eosnewswire.one.
Yes: 5,639,554 | No: 684,982 | Abstain: 0
Ended and Passed!
Telos Marketing Proposal (#13) (cycle 3 of 4)
Voting closes: Wed July 31st 14:34 UTC
85,000.0000 TLOS in 4 cycles to ‘marketing1o1’ for marketing to increase Telos awareness among developers, crypto and non-crypto users, and apps already on EOS.
Don’t forget to re-cast your vote for WPs that last multiple cycles. This feature helps to keep longer-term WPs accountable for deliverables, and let voters decide whether they think the WP is still of value to the network.
This week’s active multi-cycle WPs include:
Aggressive Telos Enterprise Solutions contacting for Cities and Towns in the United States! (#23) (Cycle 1 of 12)
Telos Promotional Animated Videos (#19) (Cycle 1 of 3)
Telos YouTube and Website Promotion (#18) (Cycle 2 of 12)
The Telos Podcast — Professional YouTube Show & Podcast (#16) (Cycle 2 of 6)
Telos Marketing Proposal (#13) (Cycle 3 of 4)
Telos Promotion and Outreach (#10) (Cycle 4 of 12)
SteemChurch Telos Expansion(#4) (Cycle 5 of 6)
If you haven’t downloaded the newest version of Sqrl (1.0.12), you can find it here.
We believe the worker proposal system is a big part of what makes Telos great, and highly encourage you to make your voice heard by voting responsibly on the governance of this blockchain.
About the author: Douglas Horn is the Telos architect and whitepaper author, and the founder of GoodBlock, a block producer and app developer for the Telos Blockchain Network.
More about GoodBlock can be found at: www.goodblock.io
Join us on Twitter @GoodBlockio
Vote for GoodBlock on the Telos Blockchain Network @goodblocktls