跳到主要內容

臺灣博碩士論文加值系統

(44.201.94.236) 您好!臺灣時間:2023/03/24 11:35
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:黃庭瑋
論文名稱:整合MVC網頁架構與IBM Hyperledger之BAAS框架
論文名稱(外文):Integrating MVC web architecture with IBM hyperledger based BAAS framework
指導教授:柯博昌柯博昌引用關係
指導教授(外文):KO, PO-CHANG
口試委員:柯博昌黃瑞展林萍珍
口試委員(外文):KO, PO-CHANGHUANG, JUI-CHANLIN, PING-CHEN
口試日期:2018-07-09
學位類別:碩士
校院名稱:國立高雄應用科技大學
系所名稱:資訊管理研究所碩士班
學門:電算機學門
學類:電算機一般學類
論文種類:學術論文
論文出版年:2018
畢業學年度:106
語文別:中文
論文頁數:81
中文關鍵詞:區塊鏈
外文關鍵詞:Blockchain
相關次數:
  • 被引用被引用:2
  • 點閱點閱:506
  • 評分評分:
  • 下載下載:90
  • 收藏至我的研究室書目清單書目收藏:0
隨著網頁的發展,在網路上進行貿易的平台也開始增加,並且往往會有一個可信任的第三方中央機構來協助交易的進行,以防堵詐騙及減少消費紛爭,而區塊鏈的特性在商業應用上有著信任的價值,因此可以去除第三方中央機溝的存在,以簡化交易流程,並且在未來將會出現透過區塊鏈特性的創新的商業模式出現。

本研究架設了Hyperledger Fabric的私有區塊鏈平台,並結合Web服務以建立區塊鏈即服務(Blockchain as a Service, BAAS)架構,接著導入網頁MVC設計框架,進而提出一個B-MVC架構,該架構將整合AMET[2]架構,並將Model區分為兩個部分,分別為Model與BModel,其中Model的主要負責與資料庫進行溝通,以管理資料庫內的數據,而BModel則是負責與區塊鏈進行溝通,以管理區塊鏈內的數據。而BModel要與區塊鏈進行溝通時,必須透過Node Server來作為溝通的橋樑。接著透過該架構,建立出一個簡單的轉帳系統做為範例。而其中本研究相較於其他研究中的重要性如下:

 解決常見的Web設計程式語言(如:PHP、ASP.NET等等...)來與Hyperledger Fabric溝通困難的問題。
 導入MVC設計模式,並將Model的資料儲存方式區分為資料庫與區塊鏈兩部分,以簡化系統開發的複雜度,並且提升系統開發的可維護性、獨立性與可擴展性。

綜合上述觀點所說,本研究提出B-MVC的架構,以支援各種Web程式語言,透過Web服務來與區塊鏈進行溝通。由於B-MVC架構是以MVC設計模式作為基礎,因此也具有重用性、獨立性、維護性、可擴充性等以上優點,為此該架構上的各個組件,其中包含View、Controller、Model、BModel、Node Application和Chaincode等,皆是具有獨立性的,因此在系統的開發上,可以使開發人員各司其職的進行分工,進而增加系統開發的效率。

With the development of web pages, the platform for trading on the Internet is also gradually increasing. Moreover, there is always a trusted third-party central institution to assist in the conduct of trade, for the purpose of preventing fraud and reducing commercial dispute. The characteristic of the Blockchain has a trusted value in business applications. Therefore, it could remove the existence of the third-party central institution to simplify the transaction process. Furthermore, there will be an innovative business model that emerges through the characteristic of the Blockchain in the future.

This study erects the private Blockchain platform of Hyperledger Fabric, combines web services to build a framework of the Blockchain as a Service(BAAS), and imports a framework of the MVC web design, and then proposes the B-MVC framework which intergrates with the AMET[2] framework, and divides Model into two parts: Model and BModel. Model primarily communicates with the database to manage data in the database, and BModel mainly communicates with the Blockchain to manage data in the Blockchain. When BModel wants to interact with the Blockchain, it must use Node Server as a bridge of communication. Then a simple transfer system is established as an example through the framework. The importance of this study compared to other studies are as follows:

 Solve the difficult communication problems between common web design programming languages (e.g. PHP, ASP.NET etc.) and Hyperledger Fabric.
 Import the MVC design pattern, and separate the data storage method of Model into two parts: the database and the Blockchain to simplify the complexity of system development, and promote the maintainability, the independence and the scalability of system development.

Combine the above viewpoints, this study proposes the framework of B-MVC to support various web programming languages, and communicate with the Blockchain through web services. Because the B-MVC framework is based on the MVC design pattern, it also has the advantages of the reusability, the independence, the maintainability, and the scalability. For this purpose, the various independent components of this framework, including View, Controller, Model, BModel, Node Application and Chaincode etc. Therefore, it allows developers to carry out their own duties in the division of labor in the development of the system and thereby increases the efficiency of system development.

目 錄
摘要-------------------------------------------------i
ABSTRACT--------------------------------------------iii
致謝-------------------------------------------------v
目錄------------------------------------------------vii
圖目錄-----------------------------------------------ix
第一章 緒論-----------------------------------------1
1.1 研究背景-------------------------------------1
1.2 研究動機-------------------------------------7
1.3 研究目的-------------------------------------8
第二章 文件探討-------------------------------------10
2.1 區塊鏈--------------------------------------10
2.1.1 區塊鏈的共識機制-----------------------10
2.1.2 區塊鏈的特性---------------------------12
2.1.3 區塊鏈的應用---------------------------13
2.2 Hyperledger Fabric--------------------------16
2.2.1 Hyperledger Fabric特性---------------17
2.3 MVC-----------------------------------------21
2.3.1 MVC設計架構---------------------------21
2.3.2 MVC的系統流程-------------------------22
2.3.3 MVC的優點-----------------------------23
2.3.4 MVC的缺點-----------------------------24
2.4 本章小節------------------------------------25
第三章 系統架構與設計-------------------------------27
3.1 B-MVC架構-------------------------------28
3.2 Browser端-------------------------------28
3.3 WebServer端-----------------------------29
3.4 Node Server端---------------------------30
3.5 Hyperledger Fabric----------------------31
3.6 本章小節---------------------------------36
第四章 系統實作--------------------------------------37
4.1 環境安裝-------------------------------------37
4.1.1 Web Server環境安裝---------------------37
4.1.2 Node Server環境安裝--------------------38
4.1.3 Docker環境安裝-------------------------38
4.1.4 Hyperledger Fabric環境安裝-------------41
4.2 系統展示-------------------------------------43
4.3 程式碼說明-----------------------------------45
4.3.1 View----------------------------------45
4.3.2 Controller----------------------------50
4.3.3 Model---------------------------------52
4.3.4 BModel--------------------------------52
4.3.5 RESTful API---------------------------54
4.3.6 Node Application----------------------55
4.3.7 Chaincode-----------------------------60
4.4 本章小節-------------------------------------62
第五章 結論-----------------------------------------63
5.1 結論-----------------------------------------63
5.2 研究貢獻-------------------------------------64
5.2 研究建議-------------------------------------64
參考文獻---------------------------------------------65

[1] 江碩軒,2017,“探討基於區塊鏈原理之分散式帳本技術改造銀行授信審查流程提高授信品質”,靜宜大學,碩士論文。
[2] 蔡秉軒,2018,“基於AJAX的模組化EMV框架“,國立高雄科技大學(建工/燕巢),碩士論文
[3] Androulaki E., Barger A., Bortnikov V., Cachin C., Christidis K., De Caro A., Muralidharan S., et.al., 2018, "Hyperledger fabric: a distributed operating system for permissioned blockchains", Proceedings of the Thirteenth EuroSys Conference, No.30, April.
[4] Bahga A. and Madisetti V.K., 2016, “Blockchain platform for industrial internet of things”, Journal of Software Engineering and Applications, Vol.9, pp.533-546, October.
[5] Beck R., Müller-Bloch C., 2017, "Blockchain as Radical Innovation: A Framework for Engaging with Distributed Ledgers as Incumbent Organization", Hawaii International Conference on System Sciences, January.
[6] Blackwell Jr, William C., Robin Alston, Kevin M. Farrington., 1999, "Web application server with secure common gateway interface", U.S. Patent No.5,857,191, U.S. Patent and Trademark Office, July.
[7] Brakeville S and Perepa B, 2016, "Blockchain basics: Introduction to business ledgers", IBM DeveloperWorks, July.
[8] Cachin C., 2016, "Architecture of the hyperledger blockchain fabric", Workshop on Distributed Cryptocurrencies and Consensus Ledgers, July.
[9] Castro M. and Liskov B., 2002, "Practical Byzantine fault tolerance and proactive recovery", Transactions on Computer Systems (TOCS), Vol. 20, Issue4, pp.398-461, November.
[10] Cui W., Huang L., Liang L., Li J., 2009, "The research of PHP development framework based on MVC pattern", International Conference on Computer Sciences and Convergence Information Technology, pp.947-949, November.
[11] Dubovitskaya A., Xu Z., Ryu S., Schumacher M., Wang F., 2017, "Secure and trustable electronic medical records sharing using blockchain", AMIA Annual Symposium Proceedings, Vol.2017, pp.650., August.
[12] Garrett and J.J., 2005, "Ajax: A new approach to web Applications", Adaptive path, February.
[13] Guo Y. and Liang C., 2016, "Blockchain Application and outlook in the banking industry", Guo and Liang Financial Innovation, Vol.2, Issuue.24, December.
[14] Huckle S., Bhattacharya R., White M., Beloff N., 2016, "Internet of things, blockchain and shared economy Applications", Procedia Computer Science, Vol.98, pp.461-466, September.
[15] Hyperledger-Fabricdocs Documentation, Retrieved March 5, 2018, From the World Wide Web:https://hyperledger-fabric.readthedocs.io/en/latest/
[16] Lai R., Chuen D.L.K., 2017, Blockchain – From Public to Private, Academic Press, New York.
[17] Lamport L., Shostak R., Pease M., 1982, "The Byzantine generals problem", ACM Transactions on Programming Languages and Systems (TOPLAS), Vol.4, Issue.3, pp.382-401, July.
[18] Leff A. and Rayfield J.T., 2001, "Web-Application development using the model/view/controller design pattern", Proceedings Fifth IEEE International Enterprise Distributed Object Computing Conference, September.
[19] Mesbah A., 2007, "Ajaxifying classic web Applications", International Conference on Software Engineering (ICSE'07 Companion), May.
[20] Prybila C., Schulte S., Hochreiner C., Weber I., 2017, "Runtime verification for business processes utilizing the bitcoin blockchain", Future Generation Computer Systems, doi:10.1016/j.future.2017.08.024., August.
[21] Reyna A., Martín C., Chen J., Soler E, Díaz M., 2018, "On blockchain and its integration with IoT. Challenges and opportunities", Future Generation Computer Systems, Vol.88, pp.173-190, November.
[22] Swan M., 2018, "Blockchain for Business: NextGeneration Enterprise Artificial Intelligence Systems", Advances in Computers, doi: 10.1016/bs.adcom.2018.03.013., January.
[23] Viriyasitavat W. and Hoonsopon D., 2018, "Blockchain Characteristics and Consensus in Modern Business Processes", Journal of Industrial Information Integration(2018), doi:10.1016/j.jii.2018.07.004., July.
[24] Xu X., Pautasso C., Zhu L., Gramoli V., Ponomarev A., Tran A.B., Chen S., 2016, "The blockchain as a software connector", Working IEEE/IFIP Conference on Software Architecture (WICSA), pp.182-191, April.
[25] Xu X., Weber I., Staples M., Zhu L., Bosch J., Bass L., Rimba P., et.al., 2017, "A taxonomy of blockchain-based systems for architecture design", IEEE International Conference on Software Architecture (ICSA), pp.243-252, April.
[26] Yang J., Lu Z., Wu J., 2018, "Smart-toy-edge-computing-oriented data exchange based on blockchain", Journal of Systems Architecture, Vol.87, pp.36-48, June.
[27] Zheng Z., Xie S., Dai H., Chen X., Wang H., 2017, "An overview of blockchain technology: Architecture, consensus, and future trends", International Congress on Big Data, pp.557-564, June.

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top