A Survey about Consensus Algorithms Used in Blockchain
0
조회
0
다운로드
12
인용
0
참고문헌
키워드
초록
Thanks to its potential in many applications, Blockchain has recently been nominated as one of thetechnologies exciting intense attention. Blockchain has solved the problem of changing the original low-trustcentralized ledger held by a single third-party, to a high-trust decentralized form held by different entities, orin other words, verifying nodes. The key contribution of the work of Blockchain is the consensus algorithm,which decides how agreement is made to append a new block between all nodes in the verifying network. Blockchain algorithms can be categorized into two main groups. The first group is proof-based consensus,which requires the nodes joining the verifying network to show that they are more qualified than the others todo the appending work. The second group is voting-based consensus, which requires nodes in the network toexchange their results of verifying a new block or transaction, before making the final decision. In this paper,we present a review of the Blockchain consensus algorithms that have been researched and that are beingapplied in some well-known applications at this time.
Abstract
Thanks to its potential in many applications, Blockchain has recently been nominated as one of thetechnologies exciting intense attention. Blockchain has solved the problem of changing the original low-trustcentralized ledger held by a single third-party, to a high-trust decentralized form held by different entities, orin other words, verifying nodes. The key contribution of the work of Blockchain is the consensus algorithm,which decides how agreement is made to append a new block between all nodes in the verifying network. Blockchain algorithms can be categorized into two main groups. The first group is proof-based consensus,which requires the nodes joining the verifying network to show that they are more qualified than the others todo the appending work. The second group is voting-based consensus, which requires nodes in the network toexchange their results of verifying a new block or transaction, before making the final decision. In this paper,we present a review of the Blockchain consensus algorithms that have been researched and that are beingapplied in some well-known applications at this time.
참고문헌 (82)
- S. Haber, "How to time-stamp a digital document", Journal of Cryptology, 3(2), pp.99~111 (1991)
- "Bitcoin: a peer-to-peer electronic cash system" (2008)[URL]
- "The great chain of being sure about things" (2015)[URL]
- "Genesis block" (2017)[URL]
- "Digital signatures" (2017)[URL]
- "Ethereum"[URL]
- S. Popov, "A probabilistic analysis of the Nxt forging algorithm", Ledger, 1, pp.69~83 (2016)[DOI]
- "Whitepaper: Nxt" (2016)[URL]
- "A short guide to consensus building"[URL]
- "Proof of Stake" (2014)[URL]
- "Sawtooth v1.0.1" (2017)[URL]
- M. Milutinovic, "Proof of luck: an efficient Blockchain consensus protocol", Proceedings of the 1st Workshop on System Software for Trusted Execution (2016)
- "Spacecoin: a cryptocurrency based on proofs of space" (2017)[URL]
- C. Cachin, "Architecture of the hyperledger blockchain fabric", Proceedings of ACM Workshop on Distributed Cryptocurrencies and Consensus Ledgers (2016)
- "QuorumChain Consensus"[URL]
- L. Lamport, "Paxos made simple", ACM Sigact News, 32(4), pp.51~58 (2001)
- M. Castro, "Practical Byzantine fault tolerance", Proceedings of the Third Symposium on Operating Systems Design and Implementation, pp.173~186 (1999)
- M. Castro, "Byzantine fault tolerance, U.S. Patent 6671821 B1", ~ (2003)
- "How the private and public key pair works" (2017)[URL]
- "Elliptic curve digital signature algorithm" (2017)[URL]
- "Can someone explain how the Bitcoin Blockchain works?" (2017)[URL]
- "Block hashing algorithm" (2015)[URL]
- R. C. Merkle, "A digital signature based on a conventional encryption function", Advances in Cryptology- CRYPTO'87, pp.369~378 (1987)
- "SHA-256" (2016)[URL]
- "Cuckoo cycle: a memory-hard proof-of-work system" (2015)[URL]
- "Cuckoo Hashing"[URL]
- "Primecoin: cryptocurrency with prime number proof-of-work" (2013)[URL]
- "Cunningham chain" (2017)[URL]
- M. Liskov, "Encyclopedia of Cryptography and Security", pp.221~221 (2005), Springer
- "Irreversible transactions" (2017)[URL]
- "Weaknesses" (2017)[URL]
- "Two new models for double spending attacks on Bitcoin's Blockchain" (2016)[URL]
- "What are bitcoin mining pools?" (2014)[URL]
- "How to disincentivize large bitcoin mining pools" (2014)[URL]
- "Preventing the 51%-attack: a stochastic analysis of two phase proof of work in bitcoin" (2015)[URL]
- A. Miller, "Nonoutsourceable scratch-off puzzles to discourage bitcoin mining coalitions", Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, pp.680~691 (2015)
- I. Eyal, "Bitcoin-NG: a scalable blockchain protocol", Proceedings of the 13th Usenix Conference on Networked Systems Design and Implementation, pp.45~59 (2016)
- "Accelerating Bitcoin's transaction processing: fast money grows on trees, not chains" (2013)[URL]
- Y. Sompolinsky, "Financial Cryptography and Data Security", pp.507~527 (2015), Springer
- "Forking-free hybrid consensus with generalized proofof- activity" (2017)[URL]
- "Topic: Proof of stake instead of proof of work" (2011)[URL]
- I. Bentov, "Financial Cryptography and Data Security", pp.142~157 (2016), Springer
- A. Russell, "Perfect information leader election in log* n+O(1) rounds", Proceedings 39th Annual Symposium on Foundations of Computer Science, pp.576~583 (1998)
- M. Ben-Or, "Collective coin flipping" (1990), Institute of Mathematics and Computer Science, The Hebrew University
- "Ouroboros: a provably secure proof-of-stake blockchain protocol" (2016)[URL]
- A. Kiayias, "Ouroboros: a provably secure proof-of-stake blockchain protocol", Advances in Cryptology-CRYPTO 2017, pp.357~388 (2017)
- "Delegated Proof-of-Stake (DPOS)" (2014)[URL]
- "PPcoin: peer-to-peer crypto-currency with proof-of-stake" (2012)[URL]
- "Blackcoin's proof-of-stake protocol v2" (2014)[URL]
- "Proof of stake velocity: building the social currency of the digital age" (2014)[URL]
- "2-hop Blockchain: combining proof-of-work and proof-of-stake securely" (2016)[URL]
- "TwinsCoin: a cryptocurrency via proof-of-work and proof-of-stake" (2017)[URL]
- I. Bentov, "Proof of activity: extending bitcoin's proof of work via proof of stake", ACM SIGMETRICS Performance Evaluation Review, 42(3), pp.34~37 (2014)[DOI]
- J. Blocki, "Theory of Cryptography", pp.517~546 (2016), Springer
- "Slimcoin: a peer-to-peer crypto-currency with proof-of-burn" (2014)[URL]
- S. Dziembowski, "Proofs of space", Advances in Cryptology- CRYPTO 2015, pp.585~605 (2015)
- "The second coming of blockchain" (2017)[URL]
- "Hyperledger Sawtooth"[URL]
- M. Sabt, "Trusted execution environment: what it is, and what it is not", Proceedings of 2015 IEEE Trustcom, ISPA, pp.2015[DOI]
- "Intel Software Guard Extensions (Intel SGX)"[URL]
- "Multichain"[URL]
- "MultiChain Private Blockchain" (2015)[URL]
- A conceptual framework for system fault tolerance, "W. L. Heimerdinger", Defense Technical Information Center, ~, pp.Technical Report CMU (1992), SEI-92-TR-033
- L. Lamport, "Paxos made simple", ACM SIGACT News, 32(4), pp.18~25 (2014)
- L. Lamport, "The Byzantine generals problem", ACM Transactions on Programming Languages and Systems, 4(3), pp.382~401 (1982)[DOI]
- "Hyperledger"[URL]
- "Hyperledger fabric"[URL]
- H. Sukhwani, "Performance modeling of PBFT consensus process for permissioned blockchain network (Hyperledger Fabric)", Proceedings of the IEEE 36th Symposium on Reliable Distributed Systems, pp.253~255 (2017)
- "Symbiont"[URL]
- "Corda"[URL]
- A. Bessani, "State machine replication for the masses with BFT-SMART", Proceedings of 2014 44th Annual IEEE, 2014, 355~362
- "Hyperledger iroha"[URL]
- "Sumeragi"[URL]
- S. Duan, "Principles of Distributed Systems", pp.91~106 (2014), Springer
- "The Ripple protocol consensus algorithm" (2014)[URL]
- F. Armknecht, "Trust and Trustworthy Computing", pp.163~180 (2015), Springer
- "Ripple"[URL]
- "The Stellar Consensus Protocol: a federated model for internet-level consensus" (2015)[URL]
- D. Ongaro, "In search of an understandable consensus algorithm", Proceedings of 2014 USENIX Annual Technical Conference, pp.305~319 (2014)
- "Raft-based consensus for Ethereum/Quorum"[URL]
- "Federated Consensus"[URL]
