dc.contributor.advisor | 陳恭 | zh_TW |
dc.contributor.advisor | Chen, Kung | en_US |
dc.contributor.author (Authors) | 邱天 | zh_TW |
dc.contributor.author (Authors) | Chiu, Tien | en_US |
dc.creator (作者) | 邱天 | zh_TW |
dc.creator (作者) | Chiu, Tien | en_US |
dc.date (日期) | 2020 | en_US |
dc.date.accessioned | 3-Aug-2020 17:59:22 (UTC+8) | - |
dc.date.available | 3-Aug-2020 17:59:22 (UTC+8) | - |
dc.date.issued (上傳時間) | 3-Aug-2020 17:59:22 (UTC+8) | - |
dc.identifier (Other Identifiers) | G0107753009 | en_US |
dc.identifier.uri (URI) | http://nccur.lib.nccu.edu.tw/handle/140.119/131116 | - |
dc.description (描述) | 碩士 | zh_TW |
dc.description (描述) | 國立政治大學 | zh_TW |
dc.description (描述) | 資訊科學系 | zh_TW |
dc.description (描述) | 107753009 | zh_TW |
dc.description.abstract (摘要) | Quorum 是美國摩根大通銀行(JP Morgan Chase)所投資研發,基於以太坊所開發的聯盟鏈。Quorum跟以太坊最大的差異在於私有交易的功能,只有參與私有交易的節點能夠知道交易內容。Quorum提供較佳的交易執行效率以及隱私性,但其在容錯方面的表現並不是很完善,當有惡意節點或是故障節點出現時,Quorum在特定情況下將會出錯。本論文將從惡意節點和故障節點兩方面來討論如何加強Quorum的容錯功能。惡意節點方面,將在Quorum上實作2-Step-BFT,此共識能夠容忍小於總節點數五分之一的惡意節點,且保證安全性(safety)和活性(liveness)。而故障節點方面,將提出兩種方法來修改私有交易的架構。第一種是以資料庫備份來提高可用性。第二種是新增一個全知節點,全知節點將能夠知道所有私有交易參與方。最後將結合以上兩種方法,讓故障節點遺失的私有交易能夠順利被復原。實驗結果顯示,2-Step-BFT共識機制能夠在有惡意節點的情況下正常運作,且新的私有交易架構也能將故障節點遺失的私有交易復原。 | zh_TW |
dc.description.abstract (摘要) | Quorum is invested and developed by JP Morgan Chase and is the consortium blockchain based on Ethereum. The biggest difference between Quorum and Ethereum lies in the function of private transactions. Only nodes participating in private transactions can know the transaction content. Quorum provides better transaction execution efficiency and privacy, but its performance in fault tolerance is not perfect. When faulty nodes or crash nodes appear, Quorum will make mistakes under certain circumstances.This thesis discusses how to enhance Quorum`s fault tolerance capability from two aspects: faulty nodes and crash nodes. In terms of faulty nodes, 2-Step-BFT algorithm is implemented in Quorum. It can tolerate faulty nodes that are less than 1/5 of the total number of nodes, and guarantees safety and liveness. In terms of crash nodes, two methods will be proposed to modify the structure of the private transaction. The first way is to improve the availability by backing up the database. The second way is to add the all-knowing node. Finally, the above two methods will be combined to allow the private transactions lost by the crash node to be successfully restored.The experimental results show that the 2-Step-BFT consensus mechanism can operate normally in the presence of faulty nodes, and the new private transaction architecture can also recover the lost private transactions of the crash node. | en_US |
dc.description.tableofcontents | 第一章 緒論 1第一節 研究背景與動機 1第二節 研究問題與目的 3第三節 研究貢獻 4第二章 技術背景與相關研究 5第一節 區塊鏈 5第二節 以太坊 7第三節 公有鏈、私有鏈、聯盟鏈 8第四節 Quorum 9第五節 共識機制安全性與活性問題 19第六節 2-Step-BFT 20第三章 系統設計與實作 21第一節 共識機制 21第二節 修改私有交易架構 25第四章 實驗評估 31第一節 環境建置 31第二節 惡意節點容錯實驗 31第三節 故障節點容錯實驗 35第五章 結論與未來規劃 38第一節 結論 38第二節 未來規畫 38參考文獻 39 | zh_TW |
dc.source.uri (資料來源) | http://thesis.lib.nccu.edu.tw/record/#G0107753009 | en_US |
dc.subject (關鍵詞) | 企業區塊鏈 | zh_TW |
dc.subject (關鍵詞) | 共識機制 | zh_TW |
dc.subject (關鍵詞) | 私有交易 | zh_TW |
dc.subject (關鍵詞) | 容錯 | zh_TW |
dc.subject (關鍵詞) | Enterprise blockchain | en_US |
dc.subject (關鍵詞) | Consensus mechanism | en_US |
dc.subject (關鍵詞) | Private transaction | en_US |
dc.subject (關鍵詞) | Fault tolerance | en_US |
dc.title (題名) | 企業區塊鏈平台Quorum的共識機制與交易復原程序之研究 | zh_TW |
dc.title (題名) | A Study on Consensus Mechanism and Transaction Recovery Procedure of Enterprise Blockchain Platform Quorum | en_US |
dc.type (資料類型) | thesis | en_US |
dc.relation.reference (參考文獻) | [1] D. H.-W. Roberto Saltini, “Correctness Analysis of IBFT,” 2019.[2] “Istanbul BFT`s design cannot successfully tolerate fail-stop failures,” [線上]. Available: https://github.com/jpmorganchase/quorum/issues/305.[3] J.-W. Su, “私有區塊鏈上的兩步驟拜占庭共識演算法,” 2019.[4] S. Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System," 2008.[5] L. Lamport, R. Shostak and M. Pease, "The Byzantine Generals Problem," ACM Transactions on Programming Languages and Systems, vol. 4, no. 3, pp. 382-401, July 1982.[6] V. Buterin, “A Next-Generation Smart Contract and Decentralized Application Platform,” 2014.[7] Y. Sompolinsky and A. Zohar, "Secure High-Rate Transaction Processing in Bitcoin," 2013.[8] J.P. Morgan. [線上]. Available: https://github.com/jpmorganchase/quorum/blob/master/docs/Quorum%20Whitepaper%20v0.2.pdf.[9] M. Vukolic, "The quest for scalable blockchain fabric: Proof-of-work vs. BFT replication," in International Workshop on Open Problems in Network Security, Zurich, Switzerland, 2015.[10] L. Lamport, "The part-time parliament," ACM Transactions on Computer Systems (TOCS), vol. 16, no. 2, pp. 133-169, 1998.[11] L. Lamport, "Paxos made simple," ACM Sigact News, vol. 32, no. 4, pp. 18-25, 2001.[12] D. Ongaro and J. Ousterhout, "In search of an understandable consensus algorithm," in 2014 USENIX Annual Technical Conference, 2014. | zh_TW |
dc.identifier.doi (DOI) | 10.6814/NCCU202000861 | en_US |