banner
leaf

leaf

It is better to manage the army than to manage the people. And the enemy.
follow
substack
tg_channel

Meaning and Characteristics of DAC

From the development of Bitcoin, we can see that DACs have far more inherent advantages in a free competitive market than any traditional enterprise, institution, or individual. People will find that trading and cooperating with a DAC armed with three laws feels much safer than dealing with humans driven solely by greed. Moreover, DACs composed of blockchain structures seem to possess an incredibly high moral and ethical standard. You will find that:

They are autonomous — once launched, they no longer need (or listen to) their creators.

They are distributed — there is no central control point or vulnerable weakness.

They are transparent — ledgers and business rules can be audited by everyone.

They are confidential — customer information is securely protected (and cannot be breached).

They are trustworthy — because cooperation with them does not rely on trust.

They are fiduciaries — solely loyal to the interests of customers and shareholders.

They are self-regulating — like robots, they adhere to their own rules.

They are incorruptible — no one can coerce or bribe them.

They are independent — in their digital environment, they do not need to be regulated.

Overall, this indicates that:

DACs do not need regulation, should not be attempted to be regulated, and reassuringly, cannot be regulated.

A DAC can be introduced into the world and spread to any place that allows it to provide services. If it adapts well to its environment, it will survive; otherwise, it will be ended by the world. Its creators may enhance its chances of survival to some extent through good maintenance and protection. However, the creators will ultimately sever ties with it, leaving it continuously exposed to the dangers of the real world.

DACs cannot override market laws. If a DAC does not provide reliable value to the market, it will be discarded and die from neglect. If the social contracts it issues and the services it provides do not make it a satisfactory business partner in the market environment, it will inevitably wither.

Ultimately, the survival of a DAC depends on the willingness of other DACs to voluntarily cooperate with it. Like humans, DACs will develop reputations. The core laws ensure that once a reputation is gained, it can be expected to persist. History is filled with stories of human organizations that began under noble moral banners like "We are the people" and "Not evil," only to succumb to corruption and decline due to irresistible coercion and bribery. An incorruptible DAC ethic may also start out flawed, but it will not be corrupted.

Like the previous industrial and internet revolutions, the DAC revolution will bring tremendous benefits to jurisdictions that impose the least restrictions. Potential regulators will be unable to stop a truly free market from using and developing it.

Why do we need DACs?

Because "centralization leads to corruption, and absolute centralization leads to absolute corruption." Ultimately, to achieve complete incorruptibility, developers must be willing to let DACs self-regulate. Retaining any form of human centralized control will ultimately be exploited to the detriment of DAC shareholders; DACs need to be trusted freely.

Bitcoin is currently the first proven successful DAC globally. Never before has any DAC attracted so much human and material participation worldwide as Bitcoin, which not only has had a huge impact but also provided significant returns to all participants.

The unprecedented impact of Bitcoin proves that a global DAC is a completely viable path. DACs will never be limited to currency or currency-related aspects; they can be applied in many fields within our virtual and real societies. We can foresee that in the near future, DACification may have a profound impact on the entire internet and even human society. Over a decade ago, we were busy digitizing many business models; perhaps in the coming years, we will DACify many business models.

Almost all business models on the internet can be DACified, and here are a few simple examples.

From Namecoin to BitShares and other "secret entities," many of these characteristics have been acquired, even though some of them may not yet fully realize it. Only when software can do something useful is the technology of completely honest and emotionally unaffected software valuable. If we implement it in the form of currency, we will invent better currency. If we implement it in the form of a company, we can invent almost anything. A DAC is a company that can operate in many ways, as real as those made of bricks and people.

It can raise funds by selling shares and paying dividends.

It can borrow against shares and pay interest.

It can profit by providing valuable services to customers.

It can gain resources or services by giving shares to "people" (natural or artificial).

It can automate access to its products and services by opening internet APIs.

It can adjust business processes based on market feedback.

It can reward or punish the performance of other "people" (fairly) through share transfers.

Because a DAC provides loyal and valuable services, it generates real wealth that can be preserved and transferred in the form of its shares. However, it must also be understood that a self-sufficient DAC cannot accept, hold, or transfer physical goods or fiat currency without relying on external forces. An open-source DAC cannot keep secrets. It can securely hold encrypted data for others but cannot store a private key for itself. Therefore, a DAC cannot own its own encrypted wallet filled with blockchain assets.

Below are some imagined DACs that may emerge in the next decade. Naturally, in the realm of DACs, company names will end with DAC instead of LTD (Limited), as people will want to know if they are doing business with a company of absolute integrity. Their commonality is that they all leverage the enormous competitive advantage of DAC integrity.

Reputable Monikers, DAC — managing name rights.

Robo Courier, DAC — secure electronic express delivery.

TradeBitShares, DAC — automatically provided banking and brokerage services.

Unmanned Escrow, DAC — intermediary services that transfer ownership based on conditions.

Virtual Ventures, DAC — a "crowdsourced" venture capital company.

Autonomous Arbitrators, DAC — incorruptible arbitration services.

DAC Installers R Us, DAC — trusted automated updates for consensus-based DACs.

Currently, the blockchain industry is roughly divided into three camps: Camp A is non-coin blockchains, Camp B is coin blockchains without ICOs, and Camp C is coin blockchains with ICOs, with differing viewpoints and beliefs in each camp. Camp A believes in "distributed ledger technology," represented by companies like BAT, insisting on applying this technology in industry; Camp B believes in "token economics," believing that the incentive systems created by blockchain should be mined rather than used for financing, with Bitcoin being the largest representative; Camp C believes in "future ecological value," obtaining benefits through layers of token sales, profiting from future ecological gains.

Facts have truths and falsehoods, and viewpoints have no right or wrong. In today's blockchain, which has not reached its conclusion, each viewpoint has its rationality and possibility. Personally, I currently lean towards Camp A, believing that non-coin blockchains may be the core of the future, using distributed ledger technology to solve more public affairs and industry problems; issuing coins is not necessarily a prerequisite.

What is a pseudo-demand? Problems that can be solved without blockchain but are addressed with blockchain are pseudo-demands. For example, traceability technology. Traceability projects have three key points: 1) physical forgery; 2) physical to label; 3) label to data.

Blockchain technology only addresses issues in the information world; the shortcomings of the physical world have not been compensated for, so traceability technology still cannot be implemented.

The entrepreneurial direction of blockchain is to help existing industries provide technical tools. Blockchain acts as an external contractor, such as helping banks solve international remittance issues, helping real estate transaction centers resolve mutual distrust issues, etc., helping them improve efficiency rather than revolutionizing and eliminating them.

Blockchain entrepreneurs should at least understand these three things:

First, understanding technology, knowing the underlying principles of blockchain technology.

Second, understanding finance, knowing the dialectical relationship between risk and convenience.

Third, understanding business, knowing the essence of business and application scenarios.

The same goes for blockchain. When this new underlying technology emerges, people look forward to it eagerly. Media promotion, public opinion embellishment, and the advocacy of technocrats, combined with the cries of the masses, push it far beyond the value it can actually bear. Everyone collectively sends blockchain onto a frenzied fast track, pushing it to the excitement point of a bubble.

There are many valuable technologies in the world; the era is not only about blockchain but also artificial intelligence, cloud computing, big data, new energy, and many other new technologies, all of which hold billions and trillions of opportunities. We must always believe that we can keep pace with the rhythm of the times.

The past decade has simultaneously illustrated two things:

First, blockchain is a tremendous opportunity of this era; a small tree planted by those with vision will bloom into a cluster of beautiful flowers in the future.

Second, the era is fair; in the wave of technology, there are many surging waves, and blockchain is one of them, but blockchain is not the only one.

The Role of Blockchain Participants

In the article "How Does Blockchain Operate," we constructed a model of centralized accounting that corresponds to the current central bank - commercial bank model; the operation of digital currency is usually based on community autonomy. Community autonomy refers to the joint decision-making of users, maintainers, and developers regarding the development of digital currency, which corresponds to the "consensus" we discussed in the previous article.

Let's first look at digital currencies, which typically have the following characteristics.

  1. Total transparency and openness. The issuance of digital currency is predetermined at the project's inception, as specified in the white paper, which is a declarative document publicly released by a blockchain project, briefly outlining the project's purpose, vision, and design blueprint. In the white paper, the total amount of digital currency issued by the project and how much investors, users, and miners can obtain are all pre-allocated. The total amount of digital currency can be divided into two types: one with a capped total and another without a cap.

  2. Digital currency is released slowly. After allocating different roles' quotas, digital currency is often not issued all at once; typically, the portion for miners needs to be "mined," which is the mining process we mentioned earlier, providing a method for the slow release of digital currency.

  3. Code execution rules. Since we have predetermined the total amount and the mechanism for releasing digital currency in the white paper, the content of the white paper becomes the foundational consensus of the entire community. Therefore, after the project's mainnet goes live, the release of digital currency is no longer under human control but is reflected at the code level, where the code will control the release of digital currency, eliminating human operational factors. Essentially, all public blockchain projects will possess the above characteristics, indicating that digital currency and blockchain are closely related. Additionally, in the blockchain field, the start of a project's operation is accompanied by the generation of a new digital currency, which will become the project's base token and may also give rise to other currencies.

Unlike other types of blockchain applications, digital currency assets naturally possess better liquidity, making ownership more sensitive. For example, the comparison between "your credit card being stolen" and the "immutable" characteristics of digital currency is particularly significant.

Virtual assets generally include financial assets, game tokens, digital copyrights, domain names, and user traffic. Since virtual assets do not need to be tied to physical assets, they are more conveniently mapped onto the blockchain. Their specific application forms are reflected in supply chain finance and the bill market.

  1. Electronic currency. In recent years, the frequency of cash usage has decreased, with many people opting for electronic payments. Electronic currency, like digital currency, is intangible; however, electronic currency is essentially the digitization of fiat currency, such as third-party payment platforms, electronic cash from bank cards, and large and small payment systems from banks. It merely records the accounts of the original fiat currency in an electronic manner; fundamentally, they still need to be audited and reconciled across multiple centralized systems, and "electronic" itself has not become part of finance.

  2. Virtual currency. During the blockchain speculation frenzy in 2017, the term "virtual currency" was primarily used to refer to the base tokens of blockchain projects, a term mostly originating from outside speculators. However, this is not the case; the concept of virtual currency is much broader than electronic currency and digital currency. Virtual currency typically refers to non-physical currency issued by non-financial institutions, roughly divided into three categories. The first category includes game tokens, which usually do not connect with the real economy. For example, in the game "Honor of Kings," if you want to obtain new items, you must have enough game tokens (diamonds and vouchers). This virtual currency also has a characteristic of being closed, meaning it can only be used within that game.

The second category is loyalty points, which can connect with the real economy, such as frequent flyer points and supermarket gift cards. This type of virtual currency also has a characteristic called unidirectionality, meaning it can only flow in and not out. The third category is the digital currency (cryptocurrency) we mainly discuss, with Bitcoin being a typical example. Overall, in contrast to the "tangible" nature of fiat currency, virtual currency is more reflected in its "virtual intangibility." With the development of the internet, virtual currency itself is also gradually evolving, giving rise to more new models and opportunities.

  1. Digital currency generally refers to the base tokens under public blockchain platforms, which are recorded on a publicly available ledger secured by cryptography. Unlike traditional currencies, due to decentralization and programmability, this type of currency has customizable behavior attributes. In Bitcoin, we can define multi-signature transactions to achieve a truly "jointly managed institutional account." For instance, in the metaverse, users can customize transaction behaviors, such as specifying a lock-up period for tokens during transfers and defining unlocking conditions; in BitShares, this behavior is further reinforced to have derivative characteristics, which is not the case in traditional currency domains. The concept of digital assets corresponds to digital currencies.

The issuance of digital currency can easily turn into illegal fundraising. How can we effectively distinguish between these two behaviors?

  1. Look at the team background.

  2. Look at the project white paper and long-term planning.

  3. Internal periodic information disclosure content.

What is a digital currency wallet? A digital currency wallet is the blockchain program closest to users. It helps manage digital currency private keys, send transactions, and display your transaction history. From the user's functional perspective, a digital currency wallet is quite similar to the wallets we use daily, helping you manage cash, coins, credit cards, and debit cards.

From a technical perspective, digital currency wallets can be divided into three types.

  1. Full node wallet. A full node wallet is an official version of a digital currency wallet that includes complete functional requirements, such as mining, sending transactions, querying transaction records, and managing private keys.

  2. SPV light wallet (Simplified Payment Verification). Light wallets sacrifice some functions of full nodes for user experience, serving as a simplified version of full node wallets, lacking mining and transaction query functions.

  3. Centralized asset custody wallet. This type of wallet is actually a third-party service provider that helps you manage your digital currency, finding an intermediary to hold your digital currency, with blockchain.info being a typical example.

Appendix:

OK International Station: www.okex.com

Huobi International Station: www.huobi.pro

Binance: www.binance.com

ZB International Station: www.zb.com

EXX Overseas Version: www.exx.com

Gate.io: www.gate.io

AEX: www.aex.com

BCE: www.bcex.ca

Coinegg: www.coinegg.com

Big.one: www.big.one

CEX: www.cex.com

Coinw: www.coinw.com

Kex: www.kex.com

Foreign Trading Platform Bitfnex: www.bitfnex.com

Bittrex: www.bittrex.com

RightBTC: www.rightbtc.com

Poloniex: www.poloniex.com

Liqui: liqui.io

Hashtoken: hashtoken.co

CEO: www.bite.ceo

BTBT: www.btbt.top

HitBTC: hitbtc.com

Bithumb: www.bithumb.com

Coincheck: coincheck.com/cn/

Bit-Z: www.bit-z.com

Decentralized Trading Platform EtherDelta: etherdelta.com

BitShares: bitshares.org/wallet/#

Over-the-Counter Trading Platform Local: localbitcoins.com/zh-cn

CoinCola: www.coincola.com/

Bitcoin World: www.bitcoinworld.com/

OTC789: www.otc789.com/

Desktop Market Watching Website Feixiaohao: www.feixiaohao.com

Mobile Market Watching Software: MyToken, AiCoin

Bitcoin and Blockchain News Websites Jinse Finance: www.jinse.com

8BTC: www.8btc.com

Bitcoin86: www.bitcoin86.com

What are the most mainstream blockchain projects?#

The Bitcoin project is already well-known, so here I will briefly introduce its parameters without going into too much detail. Overall, Bitcoin's market value and trading volume far exceed those of other blockchain projects. Bitcoin was released on January 9, 2009, and it is expected that its mining can continue until 2140, with a total issuance capped at 21 million. The block time for Bitcoin is 10 minutes, which refers to the average time interval for the entire network to generate a block. Bitcoin is the ancestor of all digital assets, resulting in a very high public recognition of Bitcoin. Despite facing issues of mining pool centralization (which will be discussed in the later section "In-depth Blockchain Technology"), the public still trusts Bitcoin as an asset.

Bitcoin once faced the problem of insufficient block capacity, but with the implementation of Segregated Witness (which will also be discussed in the later section "In-depth Blockchain Technology"), the issue of network congestion has been alleviated significantly. We will provide detailed explanations of specific details in the "Bitcoin Special" section.

  1. Ethereum. Ethereum is a blockchain application platform, and its significant innovation lies in providing smart contracts as a tool for customizing business logic. Smart contracts are programmable contracts written by users and deployed on the blockchain. Ethereum's advantage is that it provides a development tool for developers worldwide, allowing everyone to unleash tremendous creativity. Thus, it can be seen that as long as developers have a certain technical foundation, they can contribute content to Ethereum through smart contracts. This creates a virtuous cycle where developers submit issues discovered while using smart contracts to the Ethereum developer community, which improves the defects of smart contracts, and new developers develop diverse toolkits based on smart contracts. This core developer-community interaction is the most crucial part of the Ethereum ecosystem. Ethereum's slogan is "World Computer," indicating its grand ambition. In 2016, Ethereum's market value was about one-tenth of Bitcoin's; by 2017, this number had reached one-quarter.

Ethereum began crowdfunding in 2014 and officially launched in March 2015. Its consensus mechanism is PoW, but according to the core team's announced plan, it will gradually migrate to the PoS consensus algorithm in the future. Ethereum's total issuance is: 60 million + 18.72 million/year, and the current block time is 12 seconds. Additionally, we can see that most of Ethereum's development processes and smart contracts have already formed industry standards, such as the common ERC20 token standard and ERC725 identity standard. The ERC20 token standard indicates the primary business direction for smart contracts: digital assets, sometimes referred to as smart assets, which have similar meanings. Ethereum's price surged significantly in 2017, primarily due to the fact that ERC20 tokens became the de facto standard asset of blockchain.

  1. Ripple. Ripple is a relatively alternative blockchain project because, in essence, it is more like a payment settlement protocol. Ripple does not require mining; it achieves accounting purposes through an algorithm called "Open Coin," providing consensus for the Ripple protocol.

Ripple aims to provide a highly efficient payment process for global cross-border institutions, offering a better global payment experience. Since it involves asset transfers between institutions, Ripple is designed to require permission to enter the Ripple payment network, somewhat resembling what we call a consortium chain.

The Ripple team controls more than half of the Ripple coins, so the issue of price manipulation is severe. If you are a technical geek, you can skip this project. If you want to create a blockchain project related to payment settlement, you must study Ripple.

  1. Litecoin. If we observe closely, we find that Bitcoin's logo is gold, while Litecoin's logo is silver. One gold and one silver; you should understand Litecoin's positioning. Technically, Litecoin merely modified Bitcoin's mining algorithm to the Scrypt algorithm, which is a parameterizable and configurable mining algorithm, but it still did not prevent the emergence of professional mining machines. Its other core code is almost identical to Bitcoin's. Litecoin's rise is attributed to good market operations; from the functions provided, Litecoin is indistinguishable from Bitcoin. So, why does Litecoin still exist? The core focus of the Bitcoin scaling debate is whether to use the "Segregated Witness" method. We know that although "Segregated Witness" was proposed in the Bitcoin community, the first application was in Litecoin. You can see the logic here: as a pioneer of Bitcoin, Litecoin will conduct experimental trials to replace Bitcoin.

  2. Bitcoin Cash. Currently, Bitcoin Cash ranks around the top 5 in market value. Compared to Bitcoin, Bitcoin Cash is only superior in block capacity; other technical differences are not significant.

image

The global node diagram of Bitcoin (image from the internet). The interaction mode between full nodes and SPV simplified payment verification clients is closer to a semi-centralized topology, meaning that SPV nodes can randomly select a full node to connect to, which will become the proxy for the SPV node to help broadcast transactions.

Node discovery is the first step for any blockchain node to connect to the blockchain P2P network. This is like traveling alone to an unfamiliar place; without a map and navigation, you can only ask nearby people for directions. The action of "asking nearby people for directions" can be understood as node discovery. Node discovery can be divided into initial node discovery and post-launch node discovery. Initial node discovery means your full node is newly downloaded and running for the first time, with no node data. Post-launch discovery indicates that a running wallet can dynamically maintain available nodes following the network.

  1. Initial node discovery. In the Bitcoin network, there are two ways for initial node discovery. The first is called DNS-seed, also known as DNS seed nodes. DNS is a centralized domain name query service, and Bitcoin community maintainers maintain some domain names. For example, the domain seed.bitcoin.sipa.be is maintained by Bitcoin core developer Sipa. If we use nslookup, we will find about twenty A records of IPv4 host addresses.

If we try to connect to a certain host under this domain on port 8333 using the nc command, we will find that the connection is successful, and the running structure is as follows. chenhao@chenhaodeMacBook-Pro ~ nc -nvv 149.202.179.35 8333 found 0 associations found 1 connections: 1: fags=82<CONNECTED,PREFERRED> outif en0 src 192.168.1.104 port 62125 ds 149.202.179.35 port 8333 rank info not available TCP aux info available Connection to 149.202.179.35 port 8333 [tcp/*] succeeded!

So far, we have manually completed the initial node discovery work, and these operations are accomplished by Bitcoin's code. The second method is that some addresses are hard-coded in the code, which we call seed nodes. When all seed nodes fail, the full node will attempt to connect to these seed nodes. The same approach is used in Ethereum, where some seed nodes are also hard-coded in the code to perform similar tasks.

  1. Post-launch node discovery. In the Bitcoin network, a node can send its maintained peer node list to nearby nodes. Therefore, after initial node discovery, the first thing your node needs to do is request the list from the other party: "Quickly copy your node list for me." So, every time it needs to send protocol messages, it will spend a fixed amount of time trying to establish a connection with nodes in the existing node list. If any node can connect before timing out, it will not need to obtain addresses from DNS seeds. Generally, this possibility is small, especially when the number of full nodes is very high. In the Ethereum network, a similar node list (NodeTable) is maintained, but this node list differs from Bitcoin's simple maintenance; it uses a mature algorithm in P2P network protocols called the Kademlia network, abbreviated as KAD network. It uses DHT to locate resources, which stands for Distributed Hash Table. The KAD network maintains a routing table for quickly locating target nodes. Since the KAD network is based on the UDP communication protocol, Ethereum node discovery is based on UDP, and once nodes are found, data interaction will switch to the TCP protocol.

  2. Blacklist and long connections. The public blockchain faces a very open network environment; anyone can download a wallet, open it, and enter this P2P network, which also brings the possibility of being attacked. Therefore, in Bitcoin's code, there is a segment to control logic, allowing you to manually remove suspicious nodes and add them to a blacklist while configuring trusted nodes. Of course, the above does not belong to the standard protocol of the client; anyone can implement their own P2P network layer. Ethereum has blacklist handling for accounts, but this belongs to the business layer. I have not found detailed information, so if you are interested, you can try it yourself. However, in general, we can also handle blacklists through the operating system's firewall, which is not a particularly tricky problem.

LAN penetration. Earlier, we mentioned that the blockchain's P2P network structure is a fully distributed topology. However, our current network environment consists of local area networks and the internet. This means that when you run a blockchain node on a local area network, it cannot be discovered on the public network; nodes on the public network can only passively accept connections and cannot actively initiate connections. If this local area network is one you can control, then it's easy; we just need to configure routing in the VPC network to map the public IP and port to your IP and port in the local area network. This condition is very stringent, so is there a solution to establish mapping by itself? The answer is yes: NAT technology and UPnP protocol. NAT technology is very common; here, we use source NAT, which simply replaces the source address in TCP packets and maps it to the internal network address.

UPnP stands for Universal Plug and Play, which is mainly used for the intelligent interconnection of devices. All devices on the network can immediately know when a new device joins. These devices can communicate with each other and can directly use or control each other without manual setup. There is a lot of information about UPnP, so I won't elaborate further; you can search for related information yourself. Both Bitcoin and Ethereum use the UPnP protocol as a LAN penetration tool; as long as the routing device in the local area network supports NAT gateway functionality and UPnP protocol, it can automatically map your blockchain node to the public network.

Node interaction protocol. Once nodes establish a connection, the interaction between nodes follows specific commands written in the message header, while the message body contains the message content. Commands are divided into two types: request commands and data interaction commands.

The first thing to do after completing the node connection is called the handshake operation. This process is quite similar in both Bitcoin and Ethereum, where they greet each other and provide some brief information. For example, they first exchange version numbers to check compatibility. However, Ethereum provides symmetric encryption for the handshake process, while Bitcoin does not. After the handshake, regardless of what information is exchanged, a long connection must be maintained. In Bitcoin, there are two types of messages, PING/PONG, which are clearly designed to maintain the heartbeat of long connections between nodes; in Ethereum's design, the PING/PONG protocol is moved to the node discovery process. Request commands are generally divided into initiator requests; for example, the getaddr command in Bitcoin is used to obtain the available node list from the other party, while the inv command provides data transmission, and the message body will contain a data vector.

We say that the most important function of blockchain is to synchronize the blockchain, and synchronizing blocks tests the capabilities of the P2P network. There are two methods of block synchronization: the first is called HeaderFirst, which provides for the synchronization of block headers first, and after synchronization is complete, the block body is obtained from other nodes. The second is called BlockFirst, which is a more straightforward method of block synchronization, where obtaining blocks from other nodes must be complete. The first solution provides a better interaction process, reducing network load. These two synchronization methods will be directly reflected in the node interaction protocol, as they use completely different command logic.

The P2P network structure of blockchain and the node interaction process generally require P2P network technology to solve two main problems: the first is resource location, and the second is resource acquisition. This article mainly revolves around these two points, where node discovery and LAN penetration belong to resource location issues, while the node interaction protocol pertains to resource acquisition issues. Taking Bitcoin and Ethereum as examples, although there are many blockchain projects, most of them do similar things; for instance, Ethereum is an improved implementation, while Bitcoin uses a simple version.

image

Mining pools, as central nodes, can be connected by miners. In the Bitcoin network, mining pool nodes are essentially just full nodes, and together with other full nodes, they form Bitcoin's peer-to-peer network. The only special aspect is that they can generate new blocks.

Visualizing CAP creates a triangular distribution, and we can obtain the following diagram:

image

PoW and PoS public chains prefer AP characteristics, thus having limited TPS. Consortium chains and DPoS consensus prefer a more uniform distribution, achieving considerable TPS. Traditional data centers often do not consider the P in the second-layer semantics, let alone the Byzantine fault tolerance issue, so they have better TPS; however, they perform poorly during network partitioning and when Byzantine errors occur. These consensus mechanisms can have different choices in different scenarios, and there is no consensus mechanism suitable for all scenarios. One of the optional solutions in the industry is Sharding.

Now that we have discussed the impact of the CAP theorem on blockchain, the industry is still trying its best to improve TPS. Currently, there are two solutions being discussed: Sharding technology and the Lightning Network. The Lightning Network aims to solve the real-time issue of small payments in Bitcoin, and the algorithm is a solution for expanding Bitcoin's TPS. We will discuss the details of this part in the Bitcoin special section. These two solutions do not involve modifying the consensus mechanism. If we modify it to a DPoS consensus mechanism or DAG consensus algorithm, TPS can also be improved, but this is not within the scope of this discussion. We will delve into DAG consensus mechanisms in subsequent articles. Sharding technology is an extension of traditional database sharding, with the main idea being to divide the database into multiple partitions (fragments) and place those partitions on different servers.

In the blockchain scenario, the nodes across the network are equivalent to different servers in a distributed database. At this point, we can divide transactions into different parts, and each accounting node only needs to verify a portion of the transaction instead of validating the entire transaction. The benefit of this is parallel processing; accounting nodes are in a cooperative relationship rather than a purely independent one. As the network grows, this cooperative relationship can also expand, a process known as horizontal scaling. Sharding technology has the following advantages: first, TPS can increase from a few dozen to at least two orders of magnitude, meaning thousands of transactions per second, which is not only user-friendly but also enhances user experience; second, the increase in TPS can lead to more applications, which, under the incentives of consensus, can horizontally scale the performance of the blockchain, creating a virtuous cycle.

Sasson proposed the concept of smart contracts, and the examples we provided are all in the broad sense of smart contracts. Smart contracts have various practical forms, and in the blockchain field, the smart contract concept we refer to is specifically Blockchain-based. In Sasson's smart contract concept, he mentioned open networks, and we know that the basic requirement of open networks is Byzantine fault tolerance. Through the previous articles, we understand that blockchain inherently possesses Byzantine fault tolerance characteristics. Therefore, if we practice the concept of smart contracts on the blockchain, the two will fit together perfectly.

The first to practice the concept of smart contracts was Bitcoin. Bitcoin scripts (bitcoin script) contain five standard transaction scripts, and these scripts not only provide for ordinary single-party payments but also offer multi-signature payment scripts, known as multi-signature payments, which can be seen as smart contracts under Sasson's semantics. Besides Bitcoin, the blockchain project that has popularized the concept of smart contracts is Ethereum, which I will now focus on introducing.

Ethereum and Its Development History#

The goal of the Ethereum project is to create a decentralized next-generation internet application platform, referred to as the Dapp platform. These Dapps are developed, compiled, and deployed based on the Ethereum smart contract virtual machine and can customize business logic. Once deployed, they are visible across the network and executed automatically, ideally without downtime, censorship, fraud, or third-party interference.

At the end of 2013, Ethereum's founder Vitalik proposed the idea of running Turing-complete applications in the Bitcoin developer community, but this idea did not receive support from the Bitcoin community. In 2014, Vitalik announced the official establishment of the Ethereum project, and in the first half of 2014, he began fundraising and gathering some early developers. In July of the same year, a 42-day ICO was conducted, raising over $18 million in Bitcoin.

In July 2015, the first version of Ethereum was released, and the mainnet officially went live. During this phase, there were many bugs and design flaws, primarily due to developers using it.

In 2016, Ethereum released its second major version, Homestead, and the user base gradually increased, attracting many Dapp developers.

In June 2016, the famous black swan event occurred on Ethereum — TheDAO incident, which opened up the ICO market and also caused a fork in the Ethereum community, resulting in the creation of two tokens: Ethereum and Ethereum Classic.

In April 2017, ICOs became popular in China, and ERC20 provided a low-cost, convenient, and efficient fundraising method, greatly facilitating ICOs. Riding the wave of the digital currency bull market, Ethereum's price surged more than tenfold, surpassing $1,000 in January 2018.

Core Concepts of Ethereum#

The core concepts of Ethereum include: the smart contract virtual machine (EVM) and the Solidity programming language, account model, Ether, and Gas, as well as transactions and messages.

  1. Smart Contract Virtual Machine (EVM) and Solidity Programming Language. The core concept of Ethereum is smart contracts. Smart contracts consist of two parts: one part is the development language, primarily Solidity, which is very similar to JavaScript in usage, greatly reducing the learning curve for Dapp developers. After Dapp developers write the code, they use Solidity to compile it into hexadecimal bytecode, which is then deployed to the EVM, broadcasting the contract across the network. Once miners package it, it forms a Dapp that runs continuously. The other part is the EVM. The EVM is the Ethereum smart contract virtual machine, which we can equivalently understand as the execution engine for scripting languages like JavaScript and Python. It is a lightweight virtual machine isolated environment that does not provide access to local networks, processes, or file systems; it is more like a closed container that runs a Dapp, which can be seen as a Docker Container that cannot interact with the outside world. During the Dapp's operation, it can be triggered by requests or other events, executing corresponding logic. These requests and events are generated by transactions on Ethereum, not from local operating system events. Each time the state changes during the Dapp's operation, it means that the entire network synchronizes updates, and everyone's computational results are consistent. This has two characteristics:

  2. The computational results of all Dapps are confirmed through network consensus, making them nearly impossible to forge or tamper with.

  3. Since consensus must be reached across the network, this limits the overall capacity of the network.

  4. Account Model. Ethereum does not adopt the UTXO model and is different from bank accounts; it has its own account model designed by Ethereum developers. There are two types of accounts on Ethereum: the first type is called Contract Accounts (CA), and the second type is called Externally Owned Accounts (EOA).

Simply put: CA is the account used for smart contract code, while EOA is the account used by people; thus, CA can store and execute smart contract code, activated by EOA. It does not save or store private keys, and contract accounts can call other contracts. EOA is directly controlled by people, can store Ether, and can send transactions to contract accounts to trigger predetermined logic. EOA accounts are identified by public keys and controlled by corresponding private keys. When a contract account is called, the smart contract stored within can be automatically executed in the miner's virtual machine and consume Gas; if there is insufficient Gas, it will trigger an "Out of Gas" exception and terminate execution. Whether CA or EOA, both are considered state objects within Ethereum, meaning these accounts have their own states; EOA has a state of Ether balance, while CA has a balance and contract storage state.

  1. Ether and Gas. Gas is the fuel for executing smart contract operations. Each step of a smart contract consumes Gas, which is derived from Ethereum's platform token, Ether, with the smallest unit being wei, where 1 ETH equals 10 to the power of 18 wei. Ether can be generated through PoW mining, and currently, Ethereum primarily uses GPU mining. Mining one block can yield 5 Ether, along with certain transaction fees and rewards for uncle blocks. On April 6 of this year, it was revealed that the famous mining chip manufacturer Bitmain has developed ASIC miners specifically for Ethereum, improving efficiency by 2.5 times compared to GPUs.

  2. Transactions and Messages. Transactions on Ethereum differ from UTXO transactions in Bitcoin; they refer to the process of an EOA account sending a signed data packet to another account, resulting in changes in account states that will be stored on the Ethereum blockchain. In addition to transactions, Ethereum also has the concept of messages, which refers to the process of a contract account calling other contract accounts, akin to a function call process. Therefore, if a Dapp on Ethereum is triggered, there are two possibilities: the first is a transaction trigger, and the second is a message trigger. The difference between the two is that the former is initiated by an EOA, while the latter can only be initiated by other contract accounts. The state changes of state objects are recorded by Ethereum's consensus mechanism, and transactions and messages drive state changes.

Thus, constructing a globally shared Dapp in an open network becomes very convenient. Smart contracts on Ethereum have characteristics such as near real-time synchronization across the network, accurate execution, decentralized operation, and lower risks of human intervention, while EVM and Solidity provide a lower entry barrier for developers worldwide.

Main Differences from Bitcoin#

The Ethereum project is also referred to as a blockchain 2.0 project, where 2.0 refers to smart contracts. So, what exactly is smart about Ethereum compared to Bitcoin? Let's take a closer look.

Compared to Bitcoin, Ethereum is not merely a digital currency project; it provides a universal blockchain smart contract application platform for the world, based on the four core technological elements of blockchain we introduced earlier: P2P network, consensus mechanism, account model, and cryptographic module. In addition to these four technological elements, Ethereum also introduced the EVM — Ethereum Smart Contract Virtual Machine, and it launched its own smart contract language, Solidity. As a result, blockchain developers have begun to divide into two categories due to the emergence of smart contracts.

The first category is public chain core developers, primarily full node developers using C++ and Go languages, who need to have a deep understanding of various technical modules of blockchain. The second category is smart contract developers, or application developers, who do not need to understand the operating principles of blockchain deeply; they only need to know how to write Solidity and understand the specifications.

In addition to the concept of Ethereum smart contracts, it has also designed the following content.

  1. It has researched and implemented its own PoW mining algorithm — ETHASH, which is a memory-hard mining algorithm.

  2. It has an uncle block incentive mechanism that reduces the trend of mining centralization. It has eliminated the UTXO model, adopting an account model and world state, providing flexibility in data structures.

  3. It has designed a Gas mechanism to prevent programs from entering infinite loops and consuming network resources. It has researched and implemented its own PoS consensus algorithm — Casper, which can prevent Noth.

Reference Links:

  1. EOS.IO Technical White Paper

  2. https://github.com/EOSIO/eos/wiki

  3. https://steemit.com/cn/@niking/iota

  4. https://docs.iota.org/introduction

  5. https://whycardano.com/cn/

  6. https://iohk.io/blog/ouroboros-at-crypto-2017/

NEO

  1. Introduction. We have previously mentioned that NEO's predecessor was Antshares, which was initiated in 2015 and officially renamed NEO in 2017. The NEO project has gone through two ICOs; the first ICO was at the project's inception, and the second ICO was after the rebranding. The rise and fall of the NEO project have witnessed the entire development of domestic blockchain projects. After redoing market value management and community building, NEO has become one of the top 10 blockchain projects by market value.

Digital Assets: Digital assets are programmable assets that exist in the form of electronic data. NEO directly supports a token mechanism similar to ERC20 at the underlying level, allowing users to register, trade, and circulate assets on NEO. It also solves the mapping relationship between digital identity and physical assets, with assets registered through formal digital identities being legally protected.

Digital Identity: Digital identity refers to identity information of individuals, organizations, or things that exist in electronic data form. NEO will implement a digital identity standard compatible with X.509 and support a peer-to-peer certificate issuance model based on the Web of Trust. Smart Contracts: Smart contracts on NEO differ from those on Ethereum and are called NeoContracts. The biggest feature of this smart contract system is that it supports mainstream programming languages like C# and Java, allowing developers to develop, debug, and compile smart contracts in familiar IDE environments (such as Visual Studio, Eclipse, etc.).

  1. Technical Features. NEO adopts a PBFT-like consensus algorithm. The modified version of NEO is the dBFT consensus algorithm, where d stands for Delegated. All PBFT-like algorithms have a characteristic where the communication complexity is quadratic in the number of nodes; for example, with 7 nodes, at least 72 communications are required to produce a block, which places high demands on network bandwidth. Therefore, the number of accounting nodes is generally not large, which brings the advantage of high TPS and avoids forks. It has a self-contained smart contract system, reducing the limitations for smart contract developers, who do not need to use Solidity for development.

C# Technology Ecosystem. Most of NEO's implementations are written in C#, benefiting from the open-source .Net Core, and NEO's technology ecosystem continues to expand. Token System. It provides a NEP-5 token system equivalent to Ethereum's ERC20.

Metaverse

  1. Introduction. The Metaverse is an open-source blockchain project I lead, initiated in August 2016, and after five months of development and testing, it went live in February 2017. The Metaverse is a blockchain project focused on social and business needs, aiming to build a new blockchain ecosystem based on digital assets (Metaverse Smart Token) and digital identities (Avatar), which will bring profound changes to human society. In addition to the concepts of digital assets and digital identities, we also propose the concept of built-in smart contracts (BISC) and Blockchain as a Service (BaaS), extending digital identities and introducing Oracle value intermediaries (this Oracle is different from that Oracle). The overall idea is to summarize the relationships between people and assets, abstracting the generalized needs into models, and then providing convenient usage at the blockchain's underlying level. This approach is called BISC (Built-in Smart Contract), which can reduce technical risks in the development and usage processes of commercial applications. Through BISC, the Metaverse provides functionalities for digital assets MST, digital identities Avatar, Oracle, and asset trading, all revolving around assets and people. The digital asset MST allows people to gain the advantages of peer-to-peer asset operations brought by blockchain, while the digital identity Avatar reflects the relationships between people and assets. It can connect to MST, allowing anyone to become an Oracle; Oracles can help build an immutable decentralized reputation system, and asset trading can meet the basic liquidity needs of MST. The process of embedding blockchain as a foundational service into IT systems is called BaaS (Blockchain As A Service), which is a fast and convenient way to build blockchain applications.

  2. Technical Features. It continues and expands the UTXO model, where everything is UTXO, providing good security for assets and identities. Built-in BISC does not provide users with the ability to write their own smart contracts, enhancing security while reducing diversity. PoW mining, compatible with Ethereum's PoW mining algorithm. It has built-in digital identities, providing a domain name system based on digital identities that can connect to digital assets.

The default provides an HD-type main private key account system. The block size limit is 1MB, but the block generation speed is 33 seconds, resulting in a TPS approximately 18 times that of Bitcoin. It provides a token system equivalent to ERC20.

Bytom

  1. Introduction. Bytom is a multi-dimensional asset interaction protocol. Simply put, it also deals with digital assets but with a different phrasing and slightly different concepts. Bytom believes that there are two different forms of assets on the blockchain.
  • Bit Assets: Refers to native digital currencies and digital assets on the blockchain, such as Bitcoin and Ether.

  • Atomic Assets: Correspond to real-world assets, such as warrants, equity, dividends, bonds, intelligence information, and prediction information. People can register, exchange, bet, or even conduct more complex interactions based on contracts for these two types of assets through Bytom. The goal is to connect the atomic world with the bit world, facilitating the interaction and flow of assets between the two worlds.

  • Bytom adopts a three-layer architecture.

  1. The application layer is friendly to mobile terminals and other multi-terminals, making it easy for developers to conveniently develop asset management applications.

  2. The contract layer uses genesis contracts and control contracts for asset issuance and management, supporting an extensible UTXO model (BUTXO) at the underlying level, optimizing the virtual machine, and employing a self-reflective mechanism to prevent dead states in Turing completeness.

  3. The data layer uses distributed ledger technology to implement operations such as asset issuance, spending, and exchange.

  4. Technical Features. The consensus algorithm is PoW, belonging to the loyal Bitcoin PoW faction. The mining algorithm is friendly to AI ASIC chips, introducing matrix and convolution calculations in the hashing process, allowing mining machines to be used for AI hardware acceleration services after being idle or eliminated, thus generating additional social benefits. It is compatible with Bitcoin's UTXO model. It defaults to providing an HD-based main private key account system. The encryption module provides algorithms based on national standards SM2 and SM3. It incorporates the design of Segregated Witness.

Ontology Network

Ontology Network is a blockchain project focused on building a distributed trust system, supporting a protocol network that integrates multiple chains and systems. Different chains and systems can collaborate through Ontology's trust protocol. Ontology includes independent distributed ledgers, P2P network protocols, modular consensus protocol groups, and modular smart contract mechanisms as its main modules.

The product form of Ontology is ONTO, which is a comprehensive client product based on Ontology, a blockchain search engine, and an entry point for the blockchain system.

ONTO will help users achieve comprehensive functions, including digital identity management, digital asset management, and distributed data exchange. ONTO can map digital identities to real identities, allowing users to establish their digital identities and multidimensional identity profiles through cryptographic algorithms for privacy protection.

Ontology primarily provides the following three protocols.

  1. Provides a distributed identity management framework (ONT ID), a decentralized identity identification protocol built on the W3C's DID standard.

  2. Provides a distributed data trading protocol (ONT DATA) for constructing a decentralized data trading application framework.

  3. Provides a credit scoring protocol (ONT Scores), supporting the establishment of different reputation evaluation logics, providing rating authorization and auditing functions. Supporting these protocols is the ONT public chain and the high-performance customizable framework of the ONT blockchain.

  4. Technical Features. Based on the account model while retaining the UTXO model. The consensus algorithm adopts VBFT, a new consensus algorithm that combines PoS, VRF (Verifiable Random Function), and BFT. Modular smart contracts provide both WASM and NEO VM options.

The three main components of public chains are digital identity, digital assets, and smart contracts, which actually reflect the means of production, value, and production relationships. By restructuring and pairing production relationships, value is created.

Hyperledger is hosted by the Linux Foundation, aiming to build an open-source distributed ledger technology platform for enterprise application scenarios. Due to the diversity of enterprise application scenarios, Hyperledger includes more than one project; it consists of multiple projects. There are a total of nine projects, five of which are major technical frameworks, while the other four are auxiliary tools.

The main technical frameworks are as follows:

  1. Hyperledger Fabric: No Chinese name, temporarily translated as "Fabric," is provided by IBM and is the first project of Hyperledger. Fabric aims to use a modular architecture as the foundation for developing blockchain programs or solutions, allowing some components—such as consensus algorithms and member management—to become plug-and-play services.

  2. Hyperledger Sawtooth: Chinese name is "Sawtooth," provided by Intel, and is the second project of Hyperledger. Sawtooth is a modular platform for creating, deploying, and running distributed ledgers, based on hardware-dependent PoET consensus, suitable for large distributed validator groups while being relatively low power consumption.

  3. Hyperledger Iroha: No Chinese name, temporarily translated as "Iroha," provided by Soramitsu. Iroha is designed to integrate distributed ledger technology easily with infrastructure projects.

  4. Hyperledger Burrow: No Chinese name, temporarily translated as "Burrow," provided by Monax. Burrow provides a modular blockchain client with a permissioned smart contract virtual machine, partially based on Ethereum Virtual Machine (EVM) specifications.

  5. Hyperledger Indy: No Chinese name, temporarily translated as "Indy." Indy is a distributed ledger specifically built for decentralized identities. It provides tools, code libraries, and reusable components for creating and using independent digital identities based on blockchain or other distributed ledger interoperability.

The Dilemma of Consortium Chains

The Hyperledger series of technical frameworks well illustrates what it looks like when distributed ledger technology reaches its peak. Here, it can also be seen that almost all Hyperledger projects are technology-driven, and the power of technology has led them to overlook the real market demands. Consortium chains involve activities between a few nodes, often degenerating into games in microeconomics. Therefore, constructing a collaborative system among a few nodes using consortium chain technology is not a technical issue; it becomes how to construct a stable microeconomic model that allows collaborators to achieve Pareto improvements, where technology becomes secondary.

No matter how good a technical tool is, if it is not combined with effective incentives and feedback mechanisms, the application landing process of consortium chains seems exceptionally difficult. It is likely to end up as an ordinary distributed system, which is still centralized. Why do we not use already mature technical frameworks and insist on using consortium chain technology frameworks? This is what I believe to be the biggest dilemma of consortium chains; it is a cannon, but no one comes to tell us what problems it can solve.

Reference Citations:

  1. https://www.slideshare.net/ormium/architecture-of-the-hyperledger-blockchain-fabricchristian-cachin-ibm-research-zurich

  2. http://thesecretlivesofdata.com/raft/

  3. https://intelledger.github.io/introduction.html#proof-of-elapsed-time-poet

  4. https://wiki.hyperledger.org/display/burrow

  5. Iroha: A cutting-edge, enterprise-grade decentralized ledger

  6. https://github.com/hyperledger/indy-plenum/blob/master/docs/main.md

  7. https://wiki.hyperledger.org/projects/indy

  8. The server portion of a distributed ledger purpose-built for decentralized identity.

  9. https://www.hyperledger.org/wp-content/uploads/2018/01/Hyperledger_Sawtooth_FAQ.pdf

  10. https://medium.com/kokster/understanding-hyperledger-sawtooth-proof-of-elapsed-timee0c303577ec1

  11. https://www.hyperledger.org/wpcontent/uploads/2017/08/Hyperledger_Arch_WG_Paper_1_Consensus.pdf

  12. http://blockchaindev.org/archives/08-on-limitation-of-private-chain.html

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.