What is Tezos? ICO Analytics
Tezos is a new blockchain (not Bitcoin/Ethereum fork, but similar to Ethereum), which has governance rules for stakeholders to approve of protocol upgrades that are then automatically deployed on the network. Also, its smart contracts are specially designed to be more secure. Tezos starts from version created by devs, but in the future can develop anywhere accordingly to stakeholders’ needs.
Key problems it addresses:
- The “hard fork” problem, or the inability for Bitcoin or other coin to dynamically innovate due to coordination issues. Forks are successful only when critical mass of users agree about them. Arthur (one of cofounders) says: “As these systems grow, users tend to become more passive members of their community.” 
- Problem that decisions about Bitcoin, for example, are made by miners, whose incentives can be different from stakeholders. Tweet from Ethereum researcher: «I have a dream that the Ethereum community will stop paying >> $1M per day to create a class of rich miners with badly aligned incentives…» 
- Sometimes the decision that is chosen by mass isn’t optimal for stakeholders, as people generally choose the one, that is expected to be supported by others.
- Core devs generally decide what to do next and where to head and users can either follow it or not. Not only it is some sort of centralization, but also new coins (forks) are created to add some positive features (Litecoin, for example)
- Current smart contracts issues: problems with security including bugs, hacks and so on. More information below in smart contract section
Tezos started as a small project in 2014, as Arthur was concerned about Bitcoin problems, especially the consensus part. Basically, it got most attention when the DAO hack happened, although Tezos governance system is useless for such hacks. Before the DAO people considered, for example, code as the law and nobody really paid attention to governance problems. After getting some attention Tezos founders decided to make a release.
1. Self-amending cryptoledger
We can divide any blockchain into three parts:
- – Network protocol, which discovers blocks and broadcasts transactions
- – Transaction protocol, which specifies, what makes a transaction valid
- – Consensus protocol, which chooses one unique chain
In Tezos network protocol will be general, not related to transaction or consensus protocol. To protect against certain denial of service attacks, the protocol provides the shell with context dependent bounds on the size of blocks and transactions. Transaction protocol and Consensus protocol are isolated modules plugged into Network protocol. In Network shell there is Context, which contains current information about blockchain (accounts balances, block number etc), and blocks are operators that transfrom Context.
To replace the protocol itself there are two special functions. First implements new features to the testnet. Second replaces the current blockchain with the new one.
2. Proof of Stake
Because of its splitted three protocols, any mechanism can be implemented (PoS, PoW or whatever will be created in the future).
In addition to what has been said in key problems, what are possible shortcomings of PoW algorithm?
- – Concentration of hash power in few large pools
- – Fees can be higher, because mining should remain profitable and miners can
prioritize transactions with higher fees
- – Additional resources are used for mining
Tezos Proof of Stake design:
Those, who want to mine and sign blocks make safe deposits for one cycle to prevent double mining and double signing. The miner and signers are chosen randomly, and all of them are provided with a small reward. However, for each block there is a random minimum delay for each stakeholder – everybody gets a priority (1st priority means 1 min delay, 2nd – 2min and so on). That prevents small group of stakeholders for creating a very long chain, started somewhere in the past, which can trick nodes. Such chain will have very low rate of block creation.
Every block mined contains hashed commitment to a random number, which will be used in the next cycle. If it doesn’t, there is penalty (to fight with malicious miners).
To find random stakeholder tezos will be grouped into rolls of 10000 tezos. A database maps each roll to its owner. Broken rolls numbers (when wallet makes a 5000 transaction, for example) go to “Limbo” and then are attached to new rolls created. It works “as-if” every created roll has unique number. Rolls are ordered by creation time and then one random is drawn and searched through blockchain. Grouping of 10000 tezos adds a lot of speed to the process.
Each block is also signed by 16 random stakeholders. Signing rewards are only paid if the block is included in the blockchain, so they should agree on which block they will sign. So, the weight of the chain is the number of signatures.
51% attack is possible, but it isn’t rational. Firstly, as attacker will try to gain 51% he will rise dramatically the price of tokens for himself. Secondly, if he has 51% of tokens it is a huge loss for him to implement “bad decisions”
3. Smart contracts and formal verification
In some industries, like aerospace, where stakes are high there is formal verification for the code. Formal verification is a powerful technique that mathematically proves the correctness of computer programs. It is great for smart contracts, as they are generally small pieces of code operating with a lot of value.
Ryan Shea, Blockstack co-founder says: «Smart Contracts are problematic in that they have a large attack surface and require extensive analysis. In theory, a smart contract could be considered secure after it has been battle tested and been modified and redesigned after an array of failures. But even then there may be critical bugs lying in wait. Further, it’s important to note that once a smart contract is implemented, it takes on a life of its own and the code cannot be changed unless it is created with a “master” or set of masters who can change the code. That means you have to be 99.99% confident that your smart contract code is bug-free, or you have to give it a master and forego the property of the code being the final authority on the behavior. » 
the cryptocurrency ether, because of smart contract. 
So what is actually formal verification and how there are different to tests? In unit tests you have a piece of code and you send a lot of different cases and you check that your program behaves correctly. Proof is like a “superversion” of test. You can proof mathematically that, for example, people can’t use any procedures to get more tokens
As an example, a Canadian digital currency exchange is out as much as $14m worth of
that they actually control, you proof some high-level properties. Basically, you can’t prove everything, but it is way more secure than unit tests.
4. OCaml programming language
Formally verifying is a difficult task, so the development team tried to simplify it as much as possible. They implemented Tezos in OCaml, a functional programming language. More importantly, OCaml is strongly typed and offers an impressive type inference system. With using strongly typed language, you will never sum, for example, number of people and number of tokens. It is possible in average languages, as both are integer, but it makes no sense.
Its expressive syntax and semantics make it easy to concisely and correctly describe the type of logic underpinning blockchain-based protocols. In addition, Coq, one of the most advanced proof-checking software tools, is able to extract OCaml code from proofs.
5. Michelson programming language
As to smart contracts themselves, development team designed special smart contract language with correctness and formal verification in mind, which is called Michelson. This design largely eliminates large classes of bugs such as the DAO reentrancy bug or the Solidity vulnerability discovered by the Golem project  . The Tezos development team says they have successfully proven the correctness of Michelson contracts in Coq, including the multisig contract.
There is also a cap for the maximum number of steps that a program is allowed to run for in a single transaction. This rate limitation foils CPU-usage denial-of-service attacks (when somebody creates a contract which is really long to run). Legitimate users can issue multiple transactions to compute more steps than allowed in a single transaction at a limited rate. Arthur (co-founder) points out: «Smart contracts don’t usually require large computations, most business contracts are simple. » Cap can be changed/removed later, if voted for it.
In Michelson there is no problem breaking a smart contract, while in Ethereum it will run forever with bugs etc.
6. Governance model – main feature
Changes are adopted through election cycles, the governance model can be changed itself. Within the first year they will be more frequent, then they are planned to be one in three months. As a security measure, the Tezos foundation will have a veto power expiring after twelve months, until they rule out any issues in the voting procedure (more about Tezos foundation in Team section).
Tezos can enforce a form of constitutionality. While this is more advanced, it is possible to integrate a proof checker within the protocol so that only amendments carrying a formal proof that they respect particular properties can be adopted.
Generally there will be 3 phase vote:
Firstly, people will implement changes for the current protocol, hash it and submit it to the blockchain, making it a proposal. After that, people are voting for the proposal they like. Then the best proposal goes to the second round. Secondly, 60% of votes is required to get the proposal to the testnet. After testing new voting will occur to finally replace current protocol.
It is not a mechanism for emergency bugs and so on. For fast reactions patches will be issued, as bugs fixes are not controversial at all.
When a developer proposes a protocol upgrade, they can attach an invoice to be paid out to their address upon approval and implementing their upgrade. This approach provides a strong incentive to contribute efforts towards core development of the Tezos blockchain. Also it compensates any developers with tokens that have immediate value rather than forcing them to seek corporate sponsorships, foundation salaries, or work for Internet fame. To pay developer his bounty, new tokens are issued. It can be bad for
current stakeholders as their share will be diluted, but upgrades can bring a lot more value then they “consume”.
If somebody suggests a hard-fork, people probably won’t follow it, as there is an in-built mechanism for changes. But emergency hard-forks probably will occur, as some issues can’t wait till next proposals round. Tezos wasn’t designed to exclude them, it was designed mainly to upgrade over time.
Voting will be proportional, based on number of tokens you have. Accounts, that are inactive for one year can’t vote before activation. If you don’t want to vote, you can delegate your vote. There is a point, that it will lead to vote concentration in arms of several delegates, which can be considered bad. But Kathleen (co-founder) says: “when it is explicitly costly to be wrong, actors have a tendency to give more thought to their decisions” [5.1]. Also, voting is a repeated game, so one “bad” decision from delegate will kill his reputation for other periods.
Technical features, possible in the future (only underlined part will be developed soon after ICO):
Zerocash is a really powerful privacy feature which can be adopted in Tezos. Originally it was an add-on for Bitcoin, but Bitcoin couldn’t implement it. So, later Zcash was created, which is now in top market cap with one outstanding feature – Zerocash protocol. Still there is no perfect solution yet (Zcash has risk of hidden inflation ) so the initial plan is only to add Zcash’s proof circuit in the protocol, but restrict its operations to a special 1 to 1 with Tezos token issued on the Tezos blockchain. Inflation in the privacy preserving token cannot spill over onto the main token. Users who trust the security of the privacy preserving token will have full use of its functionality.
Also, anonymous transactions will provide some censorship resistance. As all transactions look-a-like, nobody can censer specific ones.
Moreover, Arthur says in one of podcasts: probably in one or two years zero knowledge proofs (used in Zcash) can help with scalability. A lot of transactions can be aggregated into single zero knowledge proof, so to validate a chain you can only validate this proof, not all transactions. Also, instead of using “gas” system, where miners execute through smart contracts, they can be run in personal machines and just proofs are submitted to blockchain. This will be a big focus in their work once they release Tezos. 
The development team also needs to make it an attractive platform. Team will develop light client libraries in most popular programming languages to help other devs integrate with the Tezos network. Also an IDE will be created to facilitate development and formal verification in Michelson. Moreover, Arthur (one of founders) wants to create a description language, where you can type specifications you need (for example, this contract pays this much when certain properties are true) and it compiles into minimal smart contract which satisfies those.
Futarchy can be another voting method. Robin Hanson in his research paper has proposed that we vote on values and bet on beliefs.  This means prediction market as a vote mechanism has potential to choose the most valuable upgrade.
The preferred way for Tezos to gain features is by protocol amendments. Tezos is dedicated to improve Tezos in the first order. For instance, native support of prediction markets, micro insurance, micro transactions can be done at the protocol level. While Tezos does support the creation of appcoins (like Ethereum), they do not put any emphasis on them. Arthur says they are for quality, not quantity.
Speaking about businesses, Arthur (co-founder) says: “Businesses will switch if they value certified programming for smart contracts, and this move will be further promoted when and if more DAO style hacks happen. Tezos team and investors will be betting on this happening (i.e. businesses will migrate to a Tezos because of programming security concerns), and your decision to buy Tezos token will depend upon how much value you put in this claim.”
Kathleen (also co-founder) says: We’ve been approached by a lot of businesses that want to use our blockchain: everything from data visualization to medical records, mostly because of guarantees offered by smart contract language and overall design. Also: We’ve been approached by a lot of traditional VCs to finance projects around Tezos (primarily because they cannot purchase the token directly). I don’t think you’ll have trouble getting capital for a project that has a Tezos application.
State of development
The project was developed from 2014, now they have 10 devs. Nowadays there is alpha on GitHub  (one of the reasons is ICO). They didn’t want to put it on GitHub too early, because technologies could be easily stolen and Tezos didn’t have enough weight in community, which is rather wise.
Almost everything stated in “Key features” is almost ready to launch, there are minor issues to be solved.  Most important part left – testing network on a large scale and performing external security audits. Transactions, proof-of-stake protocol, governance voting are working as intendent, also well covered with unit tests. The Michelson smart contract language is operational, and users have successfully used and deployed Michelson contracts on the testnet. Team has also formally verified a few Michelson contracts in Coq, including a multisig contract.
Arthur (co-founder) thinks his team can accomplish these goals in a three to four
months period to successfully launch Tezos. Nevertheless, that it is not deadline. For
example, some major problems can be observed after security audit or somebody will be
ill. Not likely, but not impossible it will take about 6 months.
There are 4 main groups of people involved in
- Dynamic Ledger Solutions – a company, which primarily develops Tezos. It owns all the Tezos related intellectual property. Company co-founders are Arthur and Kathleen Breitman, they are married couple (ironically, they met at crypto- anarchist meetup in 2010)
Arthur is a talented developer. Has education in math, computer science, physics. Was architect in IT company, Quantative analyst (to be one you need to be really smart and good at math), also worked at Goldman Sachs, Morgan Stanley. In addition to his developer skills, he got some network to promote Tezos, which can result in some financial implementations of Tezos.
Kathleen is also a “nerd”, she worked in Accenture (IT-consulting), R3 (blockchain for financial industry). She can also use her network.
- Tezos developers – there are 10 of them, including Arthur here also. You can look at them on Tezos website. Most of development team can be found on Linkedin and most of them have OCaml experience, some have Ph.D in computer science (Tezos main programming language). Surprisingly they don’t say they are working for Tezos, they are “OCaml engineers”.
- Tezos Foundation – non-profit organization, which at least will manage crowdsale money. Three directors are: Johann Gevers, one of the founders of the Cryptovalley ecosystem in Zug and CEO of the Zug-based digital payments company Monetas; Diego Ponz, a computer scientist and entrepreneur; Guido Schmitz-Krummacher, a businessman from the Zug area
- Advisors – currently 3 advisors, all are mainly technological advisors.
Zooko Wilcox is a computer scientist and the leader of the ZCash project. Additionally, Zooko is the designer of multiple network protocols and a member of the development team of ZRTP and the BLAKE2 cryptographic hash function.
Emin Gün Sirer is an Associate Professor at Cornell University. Gün’s research spans operating systems, networking, and distributed systems. He is a Co- Director of the Initiative for Cryptocurrencies and Contracts (IC3) at Cornell. Emin has made enormous contributions to the Bitcoin community
Andrew Miller is also an Associate Director of the Initiative for Cryptocurrencies and Contracts (IC3) at Cornell and an advisor to the ZCash project. His research interests are broadly in computer security, and focused on the design of secure decentralized systems and cryptocurrencies.
As to communication, they don’t actually have telegram channel, active discussion thread on bitcointalk, didn’t design their page on the forum. There are several reddit threads, where Arthur answers a lot of questions, several videos/podcasts with him, active slack channel. But still communication with masses is rather weak.
Other potential problems (or not?) were raised by reddit user . Arthur has to answer most of technological questions, while he is a co-founder and developer at the same time and he hasn’t got the best personality nor marketing experience. He doesn’t hide from questions/negative thoughts, but in slack especially he can show maximalism, arrogance, passive aggression. He won’t be in control of Tezos, but he will probably remain informal leader.
ICO will be uncapped, following the example of Ethereum Foundation. There are arguments, that ICO should have a cap, because uncapped ones suck all the value from the ICO and expose early investors to additional risks. Also, investors say, that a cap is beneficial to limit founders’ greed.
Speaking about greed, founders will get only 10% of tokens (usually 20%) and only after 4 years. Tezos development team believes that an un-capped fundraiser will promote a widespread distribution of the tokens, a necessary prerequisite to launching a robust network, while sacrifying short-term benefits for investors/speculators. Status co-
founder says: “In order for token-based communities to be the most-effective, we believe a wide distribution of tokens is desirable. In recent events, however, we’ve seen one Token Launch finalized within just a few blocks, and total contributions limited to just a handful of addresses.” 
Also, Tezos is different from most ICO’s on the market. They have been building rather complex product for two years before ICO, using some small funding and now they want as much money as they can collect to launch/promote/improve real product.
The fundraiser is expected to last 2000 bitcoin blocks or, approximately, two weeks. ETH and BTC can be submitted, but the Foundation won’t hold cryptocurrencies – it will gradually sell them for fiat money. For one Bitcoin you will receive 5000 XTZ + time bonus. All the money goes to non-profit Tezos Foundation.