We don't need to Hardfork: a questionable story about Tezos. - [ICO July 1st]
With the classic "fundraiser" (ICO...) scheduled for June 1st, I feel it is time to give my feedback for what might be an interesting project. Can it live up to its claims in this chaotic crypto industry?
Tezos is an interesting project that describes itself as "the self-amending cryptographic ledger". Bold claims for a blockchain that "governs itself"; even bolder are the claims of formal verification. Tezos allows for smart contracts and all modern blockchain jazz. Tezos is doing work to incorporate governance into the core layer of the blockchain to mitigate the risks of chain-splits (hardforks) and ensure humans do a better job at clarifying the governance structure of the blockchain. Tezos uses DPoS consensus for the moment.
You can read much more about what Tezos' claimed ambitions are in this overview. Details on the funding and crowdfunding are also included. More details of the crowdfunding campaign on July 1st can be found here.
Tezos is written in the niche programming language Ocaml. This language provides functional and object-oriented concepts together with static type systems. Basically, this unique language offers lots of protections at runtime at the tradeoff of more "sophistication" and attention to detail required by the programmer. This language allows for the Tezos team to make their bold claims regarding formal verification. A formally verified program has been examined using formal methods of mathematics and proven to adhere to certain specifications. Plainly, you can prove mathematically that your program will operate in a specific way - an interesting concept when it comes to consensus protocols and blockchain indeed.
What all the technical stuff boils down to is: it is harder to write code for Tezos. This is not like writing in Java, it will require time to become comfortable. Whether or not the extra security and the ability for formal verification are actually worth the extra effort is yet to be seen. I envision many systems could run in parallel, with only the most vital services operating on the most secure and formally verified networks.
Okay so no hardforks? Is that even possible?
No. It isn't. Humans can always disregard rules. Even if there are "rules" for breaking rules, those can be broken.
Tezos has their claim to existence founded on the ledger's ability to self-govern and deploy upgrades without hardforking. Why do hardforks happen in the first place? - there are rules and when some users break those rules and start following new rules, you have a hardfork. Hardforks can be messy because of the difficulties associated with coordinating such a change in the rules. Still, this process is very important for the sake of governance in the first place. See Hardfork: the tale of the full node referendum for some more reading.
Sure, so the Tezos system provides another set of rules for how to amend its own rules. Okay, what happens if the community doesn't like those?
Yes, there is no need to hardfork Tezos in a potentially controversial way to incorporate innovation and new features. This has the potential to eliminate the "stalemate" type of situation happening right now regarding Bitcoin scaling. Don't let this post be a complete criticism of the idea. I think systems like this are the future. Although, systems like this do not need to be exclusive to Tezos, this style of consensus could be implemented inside of Ethereum for example.
Tezos hopes to mitigate the pressure points that lead to hardforks. If there is a detrimental bug somewhere in the consensus code, maybe something like the 2010 overflow bug and fork will need to happen to Tezos, let's just hope it is not controversial. - sometimes there won't be time to vote.
Hardforks can happen.
Some potential worries.
Inspired by this Reddit post and this telegra.ph post by ibanker, I think it is important to point out some potential issues. If you are planning on investing in this project, it might be worth digging deeper.
The author of the Tezos white paper is L.M. Goodman. Goodman later handed the project over to Arthur and his wife according to his pinned tweet.
Apparently there is evidence to believe that L.M. Goodman was Arthur Breitman and his wife Kathleen all along. Goodman apparently a pen name poking fun at the reporter Leah McGrath Goodman who falsely claimed to have found the real Satoshi Nakamoto.
Why would Arthur use a pseudonym to release Tezos? The concern is it was used to create unique intellectual property without having to disclose anything to Morgan Stanley, Arthur's employer. Take a look at this quote from ibanker, previously an employee of MS.:
but bank contracts are usually written such that employees and contractors like Arthur need to disclose projects that are related to their day job. And Arthur apparently worked on financial algorithms for trading systems. And Tezos, through its affiliate company, Dynamic Ledger Solutions (DLS), was originally pitched as trading system.
What is that?
DLS, my sources at other banks and companies who have seen the pitch, tried to raise money as one of those banker blockchains like Digital Asset or Paxos, but for OTC markets of some kind a year ago. Maybe Morgan Stanley probably could make the case that they have a claim to the DLS intellectual property assuming Arthur worked on it while employed at Morgan Stanley.
Not very formal
Another problem is they haven't actually formally verified any of their code. This is a problem as they are essentially marketing their platform as being formally verified. When asked, "why would someone formally verify the amendments if NONE of the other code is formally verified?", Arthur responded that "OCaml is easier to verify down the line".
Okay so yeah duh. OCaml is easier to verify; great nobody was questioning that. The problem comes with the actual verification in programs like Coq - not a simple task for logic as complex as blockchain consensus.
I sure hope the Tezos team makes more progress on the formal verification front. It might turn out to be a very important technology for blockchain ledgers.
Should you invest? I don't know. Maybe because of the hype?