dc.contributor.advisor | 陳恭 | zh_TW |
dc.contributor.advisor | Chen, Kung | en_US |
dc.contributor.author (Authors) | 許翌君 | zh_TW |
dc.contributor.author (Authors) | Shiu, Yi-Jiun | en_US |
dc.creator (作者) | 許翌君 | zh_TW |
dc.creator (作者) | Shiu, Yi-Jiun | en_US |
dc.date (日期) | 2017 | en_US |
dc.date.accessioned | 13-Sep-2017 14:49:11 (UTC+8) | - |
dc.date.available | 13-Sep-2017 14:49:11 (UTC+8) | - |
dc.date.issued (上傳時間) | 13-Sep-2017 14:49:11 (UTC+8) | - |
dc.identifier (Other Identifiers) | G0104753008 | en_US |
dc.identifier.uri (URI) | http://nccur.lib.nccu.edu.tw/handle/140.119/112679 | - |
dc.description (描述) | 碩士 | zh_TW |
dc.description (描述) | 國立政治大學 | zh_TW |
dc.description (描述) | 資訊科學學系 | zh_TW |
dc.description (描述) | 104753008 | zh_TW |
dc.description.abstract (摘要) | 區塊鏈是一種基於點對點網路架構的分散式網路技術,近年來已經有 許多快速蓬勃的發展。區塊鏈從一開始在比特幣上的數位貨幣應用到以太 坊上能夠運行準圖靈完備 (Turing complete) 的智能合約,已經多了許多不 同面貌與應用。區塊鏈運作的主要核心技術在於共識機制,即如何讓所有網路上的節 點對所發生的交易都有同樣的共識。比特幣與以太坊這兩個最著名的區塊 鏈的共識機制皆是工作量證明 (Proof of Work)。工作量證明機制在公開鏈 上非常適合,但是對於非公開鏈就會變成負擔。本篇論文針對以太坊,實 作出一個具有模組性的共識機制,讓以太坊除了工作量證明,也能夠實現 拜占庭容錯 (Byzantine Fault Tolerance) 的共識演算法,並且保留以太坊智 能合約功能,以利的以以太坊發展聯盟區塊鏈平台。 | zh_TW |
dc.description.abstract (摘要) | Blockchain is a kind of distributed ledger technology, which is based on P2P network protocol and a distributed consensus mechanism. It has developed rapidly in recent years. There are many kinds of blockchains, such as the most noted ones, Bitcoin and Ethereum, the latter of which contains a Turing complete language for developing programs running on top of it.A core technical component of a blockchain is its consensus mechanism, which implements the method of reaching consensus about what transactions have been done among all peer nodes in the network. The consensus mechanism of Bitcoin and Etheruem are Proof of Work (PoW), which is often referred to as mining. Although Proof of Work is suitable for public blockchains, it may become a burden for private or consortium blockchains. The objective of this thesis is to extend the consensus module of Ethereum with Byzantine Fault Tolerance (BFT) consensus algorithm, which can speed up the consensus process significantly when the number of network peers is not large. This can be a key step for making Ethereum suitable for suporting consortium blockchains. | en_US |
dc.description.tableofcontents | 第一章 緒論 11.1 研究背景與動機 11.2 研究目標 21.3 研究貢獻 31.4 各章節說明 3第二章 相關研究 42.1 比特幣與區塊鏈 42.2 以太坊與智能合約 72.4 Practical Byzaantine Fault Tolerance 112.5 Tendermint 142.6 Hydrachain 15第三章 共識演算法 203.1 共識假設與定義 203.2 共識流程 223.2.1 Propose 233.2.2 Prevote 233.2.3 Precommit 243.2.4 Commit 253.3 Timeout 253.4 安全性(Safety) 253.5 活性(Liveness) 26第四章 系統架構 274.1 以太坊基本架構 274.2 以太坊共識引擎 294.3 共識模組架構 31第五章 實驗結果 355.1環境建置 355.2 吞吐量與共識時間 355.3 拜占庭容錯測試 37第六章 結論與未來規劃 406.1 結論 406.2 未來規劃 40參考文獻 42 | zh_TW |
dc.format.extent | 2417076 bytes | - |
dc.format.mimetype | application/pdf | - |
dc.source.uri (資料來源) | http://thesis.lib.nccu.edu.tw/record/#G0104753008 | en_US |
dc.subject (關鍵詞) | 區塊鏈 | zh_TW |
dc.subject (關鍵詞) | Blockchain | en_US |
dc.title (題名) | 實作拜占庭容錯共識於以太坊 | zh_TW |
dc.title (題名) | An Implementation of BFT Consensus for Ethereum | en_US |
dc.type (資料類型) | thesis | en_US |
dc.relation.reference (參考文獻) | [1] Satoshi Nakamoto. (Nakamoto, 2008)Bitcoin: A peer-to-peer electronic cash system. 2008.[2] Vitalik Buterin, (Buterin 2015), Ethereum White Paper: A Next-Generation Smart Contract and Decentralized Application Platform. https://github.com/ethereum/wiki/wiki/White-Paper[3] Jae Kwon (Kwon, 2014), Tendermint: Consensus without Mining, Draft available at https://pdfs.semanticscholar.org/fd8b/536f5859753da9a63f30bcddcd55a5b8473e.pdf[4] Hydrachain (brainbot technologies AG 2015) Retrieved January 11, 2017, from http://www.brainbot.com/hydra[5] Quorum (J.P.Morgan 2016) Ethereum-based distributed ledger protocol with transaction/contract privacy and a new consensus mechanism. Retrieved January 11, 2017 from https://www.jpmorgan.com/country/US/EN/Quorum[6] Miguel Castro, Barbara Liskov, et al. (Castro et al, 1999) “Practical Byzantine fault tolerance”. In: Proceedings of the Third Symposium on Operating Systems Design and Implementation. 1999.[7] Leslie Lamport, Robert Shostak, and Marshall Pease. (Lamport et al, 1982), “The Byzantine generals problem”. In: ACM Transactions on Programming Languages and Systems (TOPLAS) 4.3 (1982), pp. 382–401.[8] Leslie Lamport. (Lamport, 1998) “The part-time parliament”. In: ACM Transactions on Computer Systems (TOCS) 16.2 (1998), pp. 133–169.[9] Marko Vukolić (Vukolić, 2015), The Quest for Scalable Blockchain Fabric: Proof-of-Work vs. BFT Replication. In Proceedings of the IFIP WG 11.4 Workshop , iNetSec 2015, December 2015.[10] Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. (Dwork et al, 1988) “Consensus in the presence of partial synchrony”. In: Journal of the ACM (JACM) 35.2 (1988), pp. 288–323.[11] Gavin Wood. (Wood, 2014) “Ethereum: A secure decentralised generalised transaction ledger”. In: Ethereum Project Yellow Paper (2014).[12] C. Dwork (Dwork, 1988), Consensus in the Presence of Partial Synchrony , In: Journal of the ACM, Volume 35 Issue 2, April 1988 Pages 288-323. | zh_TW |