
Could it be that the current direction of blockchain that most people are working on is wrong?
For example, cross-chain, such as the blockchain 3.0 that everyone is talking about.
secondary title
For benchmarking databases, blockchains also need to have universal access tools
Before starting to talk about this topic, let's update the latest progress of ArcBlock. This will involve the first two topics we discussed: Does the blockchain need a general query tool for benchmarking blockchain? Is interledger-level cross-chain required?
Odaily reported on ArcBlock in January this year, the main goal of ArcBlock is to lower the development threshold of blockchain applications and accelerate the implementation of blockchain applications. ArcBlock is similar to a PaaS platform, building a development framework for decentralized blockchain applications,June 30, the ArcBlock block cornerstone platform launched its first application: the Open Chain Access Protocol Experimental Platform (OCAP Playground).
According to ArcBlock, this is a development tool that is directly oriented to developers and built on the Open Chain Access Protocol (OCAP). It builds a blockchain application development environment. Developers do not need to download and install anything. You can start blockchain testing and application development with a browser. The current public beta version of OCAP supports underlying blockchains such as Bitcoin and Ethereum.
The role of this tool for developers is that they can deploy their applications on different chains while only knowing one language. This lowers the learning threshold for developers, and there is no need to bind the public chain because of the language. The Facebook-led and open-source GraphQL language adopted by OCAP, Mao Zhihong believes that this is also conducive to attracting the original GraphQ developer community to support OCAP.
Developer friendliness goes beyond language.
Mao Zhihong also gave examples of node deployment costs. "The full node of Ethereum is used for mining. Developers still need to deploy a node to run applications. Just like you use electricity yourself, the grid has electricity everywhere, and you also need a distribution box. Ethereum Foundation I also realized this problem, so I incubated a cloud node service called Future, and sold it to developers after deployment, and developers still need to pay for cloud nodes. OCAP also helps developers deploy full nodes.”
"Now everyone realizes one thing: developers win the world. The blockchain is very similar to a database. It is very low-level and must be supported by developers."
On the other hand, for some industry or application public chains, if they support OCAP, they can quickly access the community and developers without reinventing tools.
Let’s take a look at the development of Ethereum. The public chain and smart contracts alone are not enough for developers to develop applications. Many tools are needed. Therefore, the Ethereum Foundation itself has incubated many projects to help developers access the chain and Develop applications. Mao Zhihong said that as a general-purpose public chain, Ethereum may be able to do this, but for application chains such as CyberMiles (e-commerce public chain) and Eloncity (microgrid power settlement), it is not desirable to focus on Here, they can choose to make a chain adapter to adapt the OCAP protocol.
Mao Zhihong believes that similar general-purpose tools will be standard for public chains in the future.He again compared the database, querying the SQL database requires a query tool, "All manufacturers used to have their own query tools, but now they are universal, because all databases use the SQL language, and all use ODBC and JDBC Drivers."
ODBC (Open Database Connectivity, Open Database Interconnection) is an integral part of the database in Microsoft Open Service Architecture (WOSA, Windows Open Services Architecture), which establishes a set of specifications and provides a set of standard APIs for database access (Application Programming Interface). JDBC (Java DataBase Connectivity standard), similar to ODBC, is also an object-oriented application programming interface (API), through which all Java programs can access various relational databases, and is part of the java core class library.
secondary title
Interledger-level cross-chain is a pseudo-requirement?
What ArcBlock does is to some extent related to cross-chain, because its development platform hopes to support developers to deploy their own applications on different blockchains, which involves the interaction of assets on different chains. However, today's cross-chain mechanism is still very immature. Most of the teams who mentioned the "cross-chain" of assets actually did the "blockchain version of Visa and MasterCard", and worked as a middleman to exchange the exchange rate between the two currencies - not today Coin exchange wallet.
When Odaily directly asked Mao Zhihong how the cross-chain of ArcBlock can achieve data fidelity on the chain, Mao Zhihong also said very directly that it is actually very difficult to realize this technology. The current cross-chains, including their own, have not realized the fidelity of the data on the chain. They are essentially like exchanges. According to the exchange rate, accounts are opened on the two chains, one increase and one decrease.He called this application-level cross-chain, and each chain does not know that it is "cross-chain".
Another way of thinking that "the chain itself knows" is called the interledger way of thinking, which tries to anchor the assets between the two chains in two directions.For example, public chain projectsCosmos;Lightning network does not count as cross-chain in his view (there are main and side chains). He explained that an extremely simplified chain is an application. "The purpose is to achieve two-way anchoring. The transaction sent from A is from the perspective of Transaction, and it is received on the B chain. Once there is a problem, it will be rolled back. This is more secure."
If you compare this technology with the "blockchain version of cross-border remittance" above, you can directly connect to the inter-chain value transfer at this time. "If there is a problem on one side, such as a fork, in the application-level cross-chain, the other side does not know; in the interledger situation, they know each other."
Therefore, he believes that there is indeed a "big difference" between the two. However, he believes that this plan is likely to be "more harm than good":
On the one hand, the difficulty of interledger is very high, "interledger is to build a bridge, the things of the two chains must be the same, but the two chains are indeed different"; on the other hand, there are few practical application requirements, "99% are only Application-level cross-chains are required, and only interledger-level cross-chains are rarely required. Bitcoin and Ethereum may require this for security.”
This judgment is also based on the "database history" as a guide. He introduced that in the 1980s and 1990s, there used to be a concept called federated distributed database. The vision was: the database suppliers used by the two enterprises were different. The technology hoped that the database would ensure the atomicity of transactions, which was extremely difficult. But it turned out that it is not needed at all in reality. "Since consistency can be guaranteed through the application layer, why must it be done at the bottom layer? Therefore, we are actually more pragmatic in the overall design."
secondary title
It is very likely that Ethereum has led everyone astray
After talking about cross-chain, I asked about the changes in the public chain field, as well as the smart contract vulnerabilities of Ethereum and EOS. The background is that there are frequent loopholes in smart contracts. In order to avoid these problems, some public chains even choose to make smart contracts Turing incomplete, so as to ensure the security of the public chain.
As an entrepreneur who is committed to integrating the development framework of the public chain, Mao Zhihong's view is simply to negate the rhythm of the general direction of Ethereum.
He believes that the market has not changed much in the past six months, and most public chains want to build a better Ethereum. "Anyone who wants to build a virtual machine on the new public chain is a follower of Ethereum. I have a bold judgment:It is very likely that Ethereum has led everyone astray. Ethereum wants to be a general-purpose computer for the whole world. The society needs a blockchain, but it doesn't necessarily need a computer. "
There have been many loopholes in Ethereum’s smart contracts. The industry generally believes that the smart contracts are too flexible, that is, Ethereum wants to make smart contracts Turing complete. Mao Zhihong concluded that the vulnerability of the Ethereum smart contract is due to the fact that it is too flexible; the second is that the virtual machine and language are new and immature. "The problem of overflow issued some time ago (the problem of Meitu currency is caused by integer overflow), should have been solved at the language level."
"These are all because Ethereum wants to do general-purpose computing, and its vision is too big."
As for EOS, in Mao Zhihong's view, "going even more crooked": the goal is a better Ethereum, but in fact it just makes Ethereum more centralized, and there seems to be a problem with the choice of virtual machine language.
"The reason why Ethereum chose to write a new language Solidity is to achieve the consistency of smart contract code. Why not use the existing language, but use a VM to implement it? It depends on whether the third party can audit it. "he thinks,The virtual machine language WebAssembly (WASM) chosen by EOS, the bottom layer is JavaScript in essence, whether it can be consistent is a huge problem.
Diss has two "phenomenal level" general-purpose public chains. His idea is that public chains should carry more value transfer things. "Maybe the public chain should focus more on tokens. In the future, we want to make programmable tokens."
He called this the third direction of the public chain besides Bitcoin and Ethereum. Everything in this chain is implemented around tokenise, which is dedicated to token services and is not Turing complete.
ERC20 has not received enough attention. Ethereum only implements the interface in this language. In fact, as a Token, it is incredibly simple. "It can only be represented by tokens. For example, the smart contract of tokens is now when a certain condition occurs, the token will be transferred from a certain address to a certain address, and how will it be divided."
"Now it is a blank sheet of paper. The token only defines the interface, which is just an interface. I think it should be used as a service."
He hopes to build a very complete token public account system. "This is returning to the essence, just like a database server, some people also provide a web interface, but the database should do a good job of querying and searching.I am Lu Xiaoming, editor of Odaily. I am exploring the real blockchain. Please add WeChat lohiuming for breaking news and communication. Please note your name, unit, position and reason.”
I am Lu Xiaoming, editor of Odaily. I am exploring the real blockchain. Please add WeChat lohiuming for breaking news and communication. Please note your name, unit, position and reason.