Technology and protocol, the key elements to become the next Ethereum
The channels of blockchain platforms are becoming more and more crowded. Although the technology is advancing rapidly, and there are many interesting experiments going on in areas such as scalability, usability, and governance, no platform has yet built a usable, scalable platform that ordinary people care about very much. Blockchain technology, networks and communities today are what social networks were in the heyday of Myspace and Friendster (i.e. before Facebook).
Of course, where we stand today depends on your criteria, and success criteria are highly subjective. Simple metrics like age, trading volume or market capitalization are not enough: on the one hand, they can be manipulated, and they don’t even know the criteria by which these projects are considered important and have great potential.
In order to evaluate various projects, I have found from a subjective perspective that it is very helpful to have a clear set of criteria to measure current and potential successful projects. My criteria are not based on any particular platform, but on a set of values, principles, goals and ideals. The framework of the following article is to clarify these criteria to myself and the community, and compare the services of Bitcoin, Ethereum and other blockchain platforms based on these criteria.
Another question is what are the criteria for designing, launching and running a successful blockchain platform. Bitcoin and Ethereum have gotten a lot of things right, but like all platforms, they have a lot of shortcomings. I think their development so far has been limited because they didn't meet the other criteria. Future platforms can learn from these mistakes, heed these standards, and avoid risks.
Three important caveats. First, as with all complex technologies, there are many trade-offs in blockchain. Therefore, the main promotion of a standard may sacrifice other standards, adopting the "Goldilocks principle", and the best project will choose the most reasonable solution among all solutions. I'll focus on this compromise.
The second caveat is that while I have chosen relatively objective, non-controversial criteria where possible, many of them are subjective. These standards are also incomplete. What points do you agree or disagree with? Which standards were ignored? Which criteria are being overemphasized? Feel free to share your thoughts with me.
The third is what I call "blockchain": I hope to describe the term in the most colloquial way possible. I don't like the term, but it's the most appropriate term right now. I mean all distributed ledger technologies (DLT), including technologies that are not strictly chains, such as DAG-based technologies and technologies with multiple chains. (I refuse to use the term "DLT" because the acronym is bad and the extended version is too long and obscure.) I don't just mean the underlying software and technology, but the broader ecosystem platform and community. My thoughts apply mostly to public blockchains, especially around topics like community and governance, but some of them may also be relevant to consortium chains.
secondary title
Part 1: Technology and Protocol
Technology is at the heart of any blockchain platform. How well does the technology function, what can you do on-chain, and how well is the protocol designed?
Are protocol incentives reasonable?Incentive rationality is always important! This is because network participants can maximize their own interests by following the rules of the protocol, rather than gaining profits through manipulation. Even relatively well-known systems such as Bitcoin mining rewards have proven not to be entirely justified.
Is the protocol simple and understandable?With the innovation and differentiation of the protocol and technical route of the blockchain platform, the entire protocol system is becoming more and more complex. All other things being equal, the protocol should be as simple as possible. More complex protocols require more time and resources to design and deliver. In addition, designing and building a more complex protocol faces difficulties such as team communication, prompting developers to work on its platform, and gaining user trust. There is coordination here, as implementing many other standards may require some level of complex protocol. Whether the protocol is easy to understand is closely related to the protocol description education document and its design.
Is unauthorized participation allowed?If you believe, as I do, that the raison d'être of blockchains is to enable people everywhere to join more open and fair value-creating networks, then permissionless is necessary. This refers to both the supply side and the demand side: mining or performing validators, and transactions (sending funds, deploying applications, using applications, etc.). Ideally, any user should be able to do a small amount of valuable work for the network, such as running a CPU for a few hours, and be rewarded with tokens that they can use to use the network's services. Although the mining of POW in the early days of Bitcoin and Ethereum did not require authorization, this is no longer the case, because the mining rewards in the network have been completely monopolized by professional miners. A POS based network is not really permissionless as someone has to sell you tokens and give you a validator position before you can become a validator, which means >50% of the network could theoretically be controlled by one person monopoly, and most likely will not be detected.
Will virtual machines make development easy, cheap, and secure for developers?There are many trade-offs here, and experts disagree on what is optimal. Bitcoin Script severely limits the kinds of applications that can be built on Bitcoin in exchange for security. In contrast, the Ethereum Virtual Machine is Turing-complete, which means it can theoretically run applications of arbitrary complexity, but in practice even relatively basic computations, such as cryptographic functions, can run. very expensive. A VM standard like WebAssembly may be needed because it can be embedded into existing compiler toolchains (LLVM, e.g. Wasm), which can leverage a more mature tool ecosystem (compilers, analyzers, debuggers, etc.), subject to wider application.
Does it require you to do too much on-chain?Aside from the security aspect, a powerful, fast VM has other drawbacks to consider, such as global consensus being slow, expensive and not suitable for the vast majority of use cases. The limited functionality and high cost of a VM like Bitcoin may be seen as a feature rather than a bug, as long as good tools exist to move application logic to the second layer, but still consensus critical code paths, such as code Coin transmission, placed on the first layer. Platforms like Holochain and SSB (which are not blockchains because they have no notion of global consensus) are lightweight architectures, while Ethereum, a Turing-complete VMS, is the exact opposite. In contrast, Blockstack has stuck to a reasonable central line.
Are consensus engine confirmations fast and accurate?The main function of the blockchain is to reach a consensus on a set of standardized transactions or state transitions, so the success of the agreement can be measured by whether the consensus is fast and reliable. Proof-of-work consensus-based mechanisms such as Bitcoin and Ethereum will never provide 100% certainty (guaranteed that transactions will not be reversed), but they do provide extremely high-probability certainty: guarantee that after a certain number of confirmations , making the possibility of a transaction being invalidated and rolled back rapidly approaching zero. Waiting an hour for a block height on Bitcoin is sure to be a pain. Ethereum provides similar certainty on the order of minutes, which is much easier to use. In the next generation, POS-based consensus mechanisms such as Ethereum Serenity and Polkadot may go one step further, providing certainty within minutes (in the case of low latency and no network attacks), Eth2.0 is a new era, can do 6.4 Minutes are even lower at 6.4 seconds.
Can users pay more for more secure or faster consensus?Since a transaction may be of greater or lesser value to its sender, not every transaction type requires the same priority or level of security. On platforms like Bitcoin and Ethereum, higher fees may be required to ensure faster transactions, but there are only two cases of consensus: the transaction will eventually be confirmed by the entire chain, or it will not. It would be nice to have a form of hierarchical consensus where transactions can achieve greater security, e.g. being confirmed by more validators if transactors pay more to reach a higher consensus level. In theory, it is possible to use layer 2 technology today (actually the difference between sending funds through a state channel such as the Lightning Network and sending transactions directly on the mainnet), but in the future on layer 1 protocols Also possible.
Is the platform throughput high?Both Bitcoin and Ethereum are currently on the order of 10 tx/sec, which may not be enough, as evidenced by network congestion on both networks in late 2017. I think ~1000 tx/sec is a reasonable target for now, since consensus is supposed to be layered (see previous bullet point), not every transaction needs to be confirmed on layer 1, although layer 1 would be nice if cheap The extra throughput can be quickly consumed. Higher-value, higher-priority transactions can pay higher fees and be confirmed on layer 1, while other transactions can be confirmed at higher layers, or in batches that are slow to confirm on layer 1.
Can the platform easily interoperate?Platforms such as Cosmos and Polkadot enable varying degrees of cross-chain interoperability. Theoretically, any Turing-complete VM platform (such as Ethereum) can perfectly cross-chain with any other platform, but in practice verifying transactions from other chains can be very expensive. Interoperability may also require temporary bridging, which is costly to operate and maintain. For example, Ethereum's BTCRelay service is unmaintained and unusable. Platforms for less scalable VMs such as Bitcoin require relatively clumsy, inefficient solutions built on top of more scalable platforms such as Ethereum.
Does the platform provide essential elements other than consensus?Part III: Community


