DAG's past and present (1)
Soteria
2020-03-10 09:27
本文约4019字,阅读全文需要约16分钟
Bitcoin has brought us into the era of decentralization, but it faces the bottleneck of performance expansion.

Bitcoin has brought us into the era of decentralization, but it faces the bottleneck of performance expansion. Many blockchain projects fall into the trap of pursuing performance by sacrificing decentralization, the most important feature of blockchain. Soteria DAG extends the blockchain to the block graph blockDAG, making Bitcoin-style mining more inclusive and breaking through performance scalability bottlenecks. Our goal is to continue to enhance innovation and applications in the blockchain field while defending the decentralized nature that Bitcoin has brought us.

Soteria is a pow high-performance public chain that inherits the Nakamoto consensus. Based on BlockDAG, it is characterized by high throughput, huge data privacy protection and secure smart contracts.

【brief introduction】

1. Comparison between Soteria DAG and IOTA

2. How Soteria DAG expands the blockchain (blockchain) into a block graph (blockDAG)

Claire:

Just now [Magic Piper Community] a senior research and development expert suggested that I set up a forum to discuss why the blockchain industry is difficult to implement. I also had an in-depth discussion on this issue with investors yesterday.

In fact, there are many different teams in the world who have made a lot of innovations in the research and development of blockchain infrastructure. For example, the Libra we have seen before is considered neither a chain nor a block. However, it does introduce the idea of ​​partial decentralization.

Today, we invite Mr. Ming Guo, the founder of Soteria, to analyze the past and present of DAG for us. DAG was once all the rage, but because of its lack of consensus, the heat quickly passed. So, how to improve on the basis of DAG to realize the concept of consensus and decentralization? Let's take these questions and discuss the latest development of DAG with our guest Mr. Ming Guo. Please Mr. Ming Guo... 👏👏👏

Ming Guo:

Hello everyone, I am Ming Guo, the founder of the Soteria public chain project.

First of all, let me introduce the origin of Soteria. Soteria is the goddess of safety, protection and salvation in Greek mythology — Σωτηρία, Soteria, Sutiya

Soteria is a next-generation blockchain project that is expected to become the infrastructure technology of the "Self Sustainable Decentralized Economy" (SSDE - Self Sustainable Decentralized Economy). The blockchain revolution started by Bitcoin has left an indelible mark on our lives - but has yet to realize its full potential until today.

Soteria's vision is to take the blockchain revolution to a new level - to create a fully self-sustainable decentralized economy based on personal digital sovereignty - the lack of such an economy is the development of the blockchain field and the application market landing The culprit for encountering bottlenecks and extreme volatility and chaotic hype.

Soteria is developing a holistic solution to solve some of the pressing problems of the current generation of blockchains, while providing an adequate feature set for the decentralized economy it envisions - such as scalable throughput based on block graphs (BlockDAG) Quantity and chain data storage, equal mining through memory, privacy computing that protects the security of huge data, and expressive non-Turing-complete, non-GAS light chain heavy application smart contracts.

The Soteria team is located in Silicon Valley, and its team members are senior engineers with backgrounds from Cisco, EMC, Yahoo, Stanford University, Carnegie Mellon University, and Massachusetts Institute of Technology.

Today's live sharing mainly uses Soteria DAG, the first feature set of the Soteria public chain, to sort out various DAG implementation methods in the blockchain field.

Soteria DAG is an extension to the Bitcoin blockchain.

Bitcoin has brought us into the era of decentralization, but it faces the bottleneck of performance expansion. Many blockchain projects fall into the trap of pursuing performance by sacrificing decentralization, the most important feature of blockchain. Soteria DAG extends the blockchain to the block graph blockDAG, making Bitcoin-style mining more inclusive and breaking through performance scalability bottlenecks. Our goal is to continue to enhance innovation and applications in the blockchain field while defending the decentralized nature that Bitcoin has brought us.

So, what is a DAG?

image description

The above is a DAG — Directed Acyclic Graph

Let's go back to the Bitcoin blockchain

In the blockchain, each block is linked to the previous block, all the way to the Genesis (genesis block). Often small branches (side-chains) appear, but are eventually pruned. In blockchain technology, a directed acyclic graph means that the links between blocks will be more free. A block can have more than one parent block, and the parents can also be at different block heights.

In the Soteria project, we call BlockDAG a block graph

That is to say, in the directed acyclic graph of Soteria DAG, the nodes of the graph are blocks. This is a very important setting, because we will talk about it later. Not blocks, but transactions.

What does a block graph look like?

The following is a very active block diagram, Genesis Block is the bottom block without color, tips is the top block (no other blocks link "to" this block). In this example, the blocks produced by different miners are colored in different colors to visually see the contribution of each miner to the network.

image descriptionhttp://134.209.56.88:5072/

The picture above is the real-time block diagram of the testnet

So what are the advantages of Soteria DAG using block graphs? that is:

Why do we need a block graph (blockDAG)?

The block graph (blockDAG) is a continuation of the Nakamoto Consensus. Based on the original features, it provides stronger inclusiveness + security + scalability.

tolerance:

In the design concept of the block graph, all valid blocks are accepted and connected to the blockDAG. Compared with the blockchain, the block graph will accept all valid blocks, while the blockchain only keeps the longest chain, and all blocks on the side chain will be discarded.

By accepting more blocks to the entire network, more people will participate in network construction, such as mining. Smaller miners can also gain benefits from the network. The block diagram can also use a POW algorithm that is fairer than the existing SHA256 (bitcoin use it). The specific algorithm will be explained in a later chapter.

Since we will accept all valid blocks, the validity of a block becomes very important, especially from the perspective of the entire network, to prevent malicious attacks (such as double spending).

Scalability

Scalability

safety

safety

Soteria DAG optimizes the Phantom-based "coloring" algorithm, provides deterministic sorting for the block graph blockDAG, and effectively avoids the common "double spending" problem in the network. Soteria DAG also introduces a series of behavioral analysis mechanisms to detect anomalies in the time series of blocks and transactions to prevent other unknown attacks.

Summary: Soteria DAG is actually an extension of the Bitcoin Nakamoto consensus algorithm, making it inclusive and providing flexible and scalable features on the basis of ensuring security.

The key is that Soteria DAG strictly follows the Nakamoto consensus while ensuring scalability.

Now let's compare other DAG implementations

There are currently 3 categories of DAG projects

Two of them are "transaction DAG", that is, the nodes of DAG are transaction transactions, not block blocks.

The first type of transaction DAG includes IOTA, xDAG, Raiblock (NANO), etc. They can be considered as "transaction DAG" with "no" strict consensus, characterized by no definite "finality" — Finality, that is, no consensus.

The second type of transaction DAG is Hashgraph | Avalanche, they implement the "classic consensus" of distributed systems, that is, "Byzantine Fault Tolerant Consensus".

What the above two types of "transaction DAGs" have in common is that they are not blockchains.

Another category is the block diagram "Block DAG" (blockDAG) of our Soteria DAG, which implements the strict "Satoshi Nakamoto Consensus" and is an extension of the Bitcoin protocol. of a blockchain.

So I want to emphasize again that Soteria DAG is a blockchain, and it is a "Nakamoto Consensus" blockchain with roots.

In the first type of transaction DAG, everyone is more familiar with IOTA, so let me analyze IOTA.

IOTA is not a blockchain. Its network transactions form a DAG, and each new transaction must be connected to this DAG of the network by confirming two previous transactions.

This connection requires a POW calculation.

However, the difficulty of IOTA's POW calculation is fixed. The reason for this is to adapt to the relatively low-level hardware of the so-called Internet of Things. However, the fixed POW calculation difficulty makes IOTA's DAG not scalable and prone to flood attacks—spamming.

The consequence of the flood attack is that the entire network cannot ensure the finality of the consensus, which is manifested in the fact that often a transaction cannot be determined for several days.

So basically IOTA's network does not have consensus finality, and a "ledger" that cannot even be determined by consensus cannot be compared with blockchain ledgers.

Therefore, IOTA adopts the centralized "coordinating node" - Coordinator and "snapshot" - Snapshot to force consensus to be reached, but in the case of flood attacks, often even the Coordinator cannot achieve convergent consensus finality, so we will Seeing the IOTA network go "down" for days.

In this way, IOTA can't even meet the basic "sustainability" of the distributed system - the entire basic requirement of Liveness.

IOTA has some other problems, and since they have nothing to do with DAG, I won't talk about them.

Now let’s talk about the second type of transaction DAG, Hashgraph and Avalanche. They are not blockchains, but they try to achieve the "classic consensus" of distributed network systems, such as "Byzantine Fault Tolerant Consensus".

They also have a class of features of "Byzantine Fault Tolerant Consensus", which improves scalability by optimizing the communication cost of nodes (transactions).

However, if it is used as a decentralized digital currency ledger, its practicability is problematic, because nodes in the decentralized network can join and leave at any time; then it is difficult to optimize the traffic required to synchronize these nodes Guaranteed performance and scalability.

This is also a major advantage of "Satoshi Nakamoto Consensus" over "Byzantine Fault Tolerance Consensus", that is, the communication cost for nodes to reach consensus is controllable.

At this point, both Bitcoin and our Soteria DAG are strictly "Satoshi Consensus" — that is, decentralized, censorship-resistant, and "trustless" trust.

Soteria
作者文库