Tezos’ technical innovations analyzed

Tezos brings multiple technical innovations: On-chain Protocol Governance, Liquid Proof of Stake, and their own smart contract language called Michelson. As the Tezos network has now been live for a few months and in order to understand the potential of the network we interviewed Samuel Harrison from Tezos Commons Foundation.

As Samuel explains, it is best to think of Tezos Commons as one “marketing” arm, among others, of the Tezos ecosystem. And, in particular, Tezos Commons is the arm that is based in Silicon Valley.

We are of course interested in understanding Tezos especially as it compares to Ethereum, EOS, Cardano and other smart contract blockchain platforms.

Ethereum has had the first mover advantage and has by far the largest community of developers. However, in many industries, there is always a trade-off between the first mover and fast follower, where the second entity learns from the mistakes of the first mover. While Ethereum 2.0 is not that far off, it is usually much harder to update an existing live large ecosystem than to build a new one from scratch. Some people compare it to changing a car’s engine while it is going 65 miles per hour on the highway.

On-chain Protocol Governance

The facts

In other blockchain ecosystems like Bitcoin or Ethereum, the protocol is controlled by the source code which is usually on Github. There are two main ways to make modifications: to either convince the developer community to accept code edits anybody can make and include them in the source code. Or to make a copy of the Bitcoin or Ethereum code. To name it something else, like Bitcoin2 for example. And to convince a community of users to start using Bitcoin2, in addition, or instead of Bitcoin. In all cases, this involves discussions with other humans, via email, chat, in person, phone and in fact politics. There is no formal modification process that is written as a software code that one can follow. This is, in general, referred to as “off-chain governance”. In practice, a few influential people, politics, share their opinions and the majority of people just follow these leaders’ opinions.

Tezos brings a well-defined method to modifying the protocol that is written in the Tezos software code. More precisely, anybody can submit a source code modification and asked to be paid for it. This is very much like in Bitcoin or Ethereum except in open-source software, you cannot ask your code to be merged conditionally to getting paid. However, once this modification is submitted, anyone can vote, by using their Tezos coins, for or against a modification. 1 Tezzie, the Tezos coin, equals one vote. In order for a proposal to pass, at least 80% of the votes have to be YES. And there is also a need to have a minimum number of absolute votes to prevent a single person with 1 Tezzie to make the modification to the source code unilaterally.

Once a proposal passes the preliminary vote, the modified protocol is then run in a test ecosystem, for three months. This is in order to test for unexpected consequences of the modification that wasn’t obvious at the start. After the test period, a new vote is taken, in the same way, before the modifications are included in the main Tezos protocol.

It is to be noted that everybody is equal in this vote, there are no vetoes and anybody’s Tezzies weight the same.

And even more important, while the Tezos platform is now live, no code modifications have gone through this process yet. The first one is expected to be in January 2019 according to our knowledge.

Our analysis

In my eyes, this formal method for protocol updates brings organization and clarity. However, this doesn’t replace at all the politics of the modifications. Influential people will still tell users how to vote for each modification. There will still be arguments on how to vote. And if a minority of people don’t agree with a modification or vote, they can still make a copy of the source code before the modification and start their own Tezos-Two blockchain network and fight over the community.

In my eyes, this is similar to moving from a mob discussing laws on the main town square versus elected officials in a house of representatives. Perhaps an even better comparison is between a court of law versus, again, a mob in the town square.

I, therefore, think it is an improvement over the previous protocol update methods. However, experience shows that as a platform is more successful modification become much harder, slower and complicated. Human history is full of such examples.

Liquid Proof of Stake

In Bitcoin and Ethereum the next block is created when one computer solves a mathematical problem. (Approximately a computer finds a hash of the previous block that is smaller than a given number). This is how the blockchain is built without a central authority. We refer to this as proof of work.

Tezos uses liquid-proof-of-stake. Any computer can become a Tezos node as long as a few basic conditions are met. The network randomly chooses one computer node among a list of nodes meeting basic conditions. The chosen computer-node then decides what the next chain block is going to be. For example, that computer decides that I transferred 100 Tezzies to you the reader. That computer is supposed to check that I did indeed have 100 Tezzies and that I indeed signed this transfer with my private key and communicated that transfer. However, we can not be sure that we can trust this random computer.

The first step is that in order for a computer to be eligible to be a node is to put a warranty of at least 10,000 Tezzies. This is about $13,000 at the time of this article.

The second step is that each new block is then verified by 32 other randomly chosen computers from the list of nodes. Of course, as they are nodes they have deposited their own warranties as well. And if the computer who created the block is found to have made a mistake, it will lose its warranty of at least 10,000 Tezzies.

In exchange for doing all this work, both the block creator and the verifiers receive a small amount of Tezzies as a reward.

According to the Staking Rewards Calculator for Tezos the annual return from using your computer to create blocks on Tezos and staking your Tezzies should be about 12.19%. In other words, if you have $13,000 of Tezzies you will make about $1560 in returns. Of course, you will have some costs in maintaining the computer up and running and the creation or purchase of the software that will do the work.

At this time, Samuel estimates there are about 450 nodes participating in the Proof of Stake ecosystem in Tezos.

Our Analysis

This approach to creating new blocks is much faster than Bitcoin’s proof of work. It is limited by the speed of data communication on the internet and how fast reasonable computer can just write or verify a new block. These speeds will continue increasing as technology evolves as well.

In addition, unlike Bitcoin and other proof of work algorithms, this approach uses much less electricity, less hardware, less labor and less time.

Because this approach is less hardware intensive and less expensive to start and run, this approach should also lead to less concentration in the block creators or verifiers unlike in other networks.

On the other side, a bug in the software that creates the blocks or that verifies the blocks could lead to extremely costly consequences where you could lose all your Tezzies for a single small bug. As can be seen here a baker already lost more than 22,032 XTZ and counting.

Given no particular computing power and only a reliable internet connection are needed the cost of running a Tezos proof-of-stake operation is very low. For example, an Amazon Web Service cloud server is as little as $10 per month. Therefore the 12% annual return in Tezos coins, not taking into account the Tezzie price fluctuation, is very attractive. Compare this 12 % to a high-risk bond market yield which is in the 0–10% range.

Here is a table showing a reasonable comparison to Ethereum or Bitcoin:

Delegating Tezos vs. Mining Ethereum profitability from here.

This approach of creating new blocks is usually referred to as “baking” by the Tezos community. While “baking” is a nice short word, I think it is not descriptive enough for people outside the community.

The only main drawdown we see is that, to our knowledge, so far, nobody has created a GUI software and an easy to follow guide that will allow anybody to become a Tezos node. It is probably just a matter of time.

In conclusion, the liquid proof of stake approach seems very strong and doesn’t seem to have the centralized issues of EOS. We look forward to more people participating in the process.

Smart Contract Language Michelson

The facts

Our readers are probably familiar with how a bug can lead to the loss of hundreds of millions of dollars. On an airplane, a software bug will lead to much worse. For 20+ years languages like OCaml have been developed to make certain categories of bugs easier to catch.

Tezos is using the Michelson language, inspired and learning from languages like OCaml. As you can read on their website about Tezos: “ We think of our platform more as a way to implement pieces of business logic than as a generic “world computer”. Looking at Ethereum, most contracts implement things like multisig wallets, vesting and distribution rules, etc. Michelson is targeted to these applications, not the case of arbitrary programs. “

At article time we are aware of at least three Tezos smart contract are already live as far as we know: a betting game by OCamlPro, the foundation token vesting contract, and a contract that lists all the people that contributed to the platform.

At the time of writing TZScan.io claims, there are51 smart contract on Tezos. However, we were unable to independently verify this number.

In practice Michelson is a very low-level language comparable for example to the “Intel x86 instructions set” says Diego Pons, another member of the Tezos community. He added: “For the moment there are languages on top of Michelson done by community members most of whom are not finished yet. There are compilers for languages that look like JavaScript, Haskell, OCaml and a very simplified Python.”

We will not go in more detail about verifiable languages here as this article is not meant for software developers but to evaluate the potential of the Tezos network from a business point of view.

Our Analysis

The choice made here by the Tezos platform is intriguing. The first consequence we can think of is that it is complementary to the Ethereum platform. Very much like people use Java, C++, HTML, and other languages it appears that Tezos and Ethereum are likely to coexist for different needs and uses.

It is unclear at this time if the business application of Tezos is larger than Ethereum’s. While some of the bugs that led to hacks in Ethereum are impossible in Michelson, it is also unclear if using Michelson together with the languages that support it will in practice avoid significant hacks and mistakes. Tezos smart contract developers have to be trained and sometimes relying on a tool with perceived built-in safeties makes the user more careless. I believe only time will tell.

Conclusion

In our view, Tezos certainly has technology innovations that are intriguing. For us, the Liquid Proof of Stake seems to have a net advantage over the proof-of-work chains. The on-chain governance is probably not going to make a very large difference in governance. And the Michelson language still has to prove its advantages.

In all cases, I personally am supportive of new technology innovations and entrepreneurs and we will continue monitoring and participating in the Tezos community.