|
Delegated Proof-of-Stake (DPoS)Bog'liq Huaqun Xingjie - A Survey on blockchain Technology and its Security - 2022 MarchDelegated Proof-of-Stake (DPoS). In DPoS, all token
holders can vote a number of delegates and can also delegate
to other users with their voting power. The more number of
tokens that the token holder has, the more voting power the
token holder has. Then the delegates are responsible to
validate transactions and blocks to secure the network [34].
Unlike the most computing power in PoW or the most tokens
in PoS, token holders in DPoS allow to vote who to mine new
blocks, and reward only the best miners. EOS is one of the
Blockchain systems to use the DPoS algorithm [35].
Proof of Elapsed Time (PoET). Intel Corporation
developed PoET to enable a different way to determine a
winner to mine a block [36]. In PoET, each potential
validation node requests a random waiting time which is
generated in a trusted computing platform, e.g., Intel’s SGX.
After waiting for the assigned time, the first node finished
waiting time is the validation winner and is able to add the
new block. The trusted computing platform enables every
node to have a chance to be the winner. [37].
Practical Byzantine Fault Tolerant (PBFT). Byzantine
Fault Tolerance (BFT) is to solve a famous general problem
that some generals are dishonest, but needs to reach a correct
consensus. PBFT is a consensus algorithm that optimizes BFT
[16]. In PBFT, as long as the malicious or hostile nodes are
less than one third of all the nodes in the Blockchain system,
Blockchain system will come to agree on the blcokchain’s
current state. The more nodes in the Blockchain system, the
securer the Blockchain is. Hyperledger Fabric currently uses
PBFT.
Directed Acyclic Graph (DAG). DAGs [38] makes up of
vertices and the edges (the lines connecting them), which is
different from other consensus algorithms. The vertices and
the edges are directed because they head in one direction and
they are acyclic because the vertices do not loop back on
themselves. Each vertex in the structure represents a
transaction. There is no notion of blocks here, and mining is
not required to add transactions. Instead of gathering
transactions into blocks, each transaction is built on top of
another. Still, there is a small PoW operation that is done when
a node submits a transaction. This ensures that the network is
not being spammed and also validates previous transactions.
IOTA [39] adopts DAG consensus algorithm.
The comparisons of these six consensus algorithms are
listed in Table I. We compare them in as many details and as
much quantitative as possible.
B. Smart Contract
Smart contract makes another beautiful part of Blockchain
that Blockchain not only provides a distributed, unchangeable
record of all the different events that have occurred, but also
allows to write very non-subjective computer code, that
defines exactly how that process is going to be managed and
what steps are going to be taken when that event occurs. One
goal of smart contract proposed in Ethereum was to break the
limitation of Bitcoin. Smart contract is about computer code
that is written to respond to certain types of significant events.
Smart contract does not have to involve two or more parties
and do not have to be legally binding [40].
Smart Contract a.k.a. chaincode [40]:
• Program rules and decision points into Blockchain
transactions and processes.
• Automate transactions and ensure they are all
following the same rules.
• Run on the Blockchain.
Smart contract will revolutionize how we do business and
is the keystone for the enterprise Blockchain applications.
Anyone can develop the smart contracts without the needs of
intermediaries. Smart contract provides the autonomy,
efficiency, accuracy and cost saving.
C. Cryptography for Blockchain
Blockchain creates a layer of trust between untrusted
|
| |