網路城邦
上一篇 回創作列表 下一篇  字體:
[區塊鏈] 泛用型區塊鏈應用開發步驟與建模範例
2018/10/21 08:11:46瀏覽181|回應0|推薦1

泛用型區塊鏈應用開發步驟與建模範例

作者: 夏肇毅


在區塊鏈發展的過程中,一般稱區塊鏈1.0是加密貨幣應用,區塊鏈2.0是智能合約在金融及產權上的應用。而到了區塊鏈3.0,就是將區塊鏈應用到各行各業上。本文的泛用型區塊鏈網路,指的就是在區塊鏈3.0上的應用。它的設計目標,就是把一般應用的資料庫層轉換成一個DLT區塊鏈網路層。所以開發的方法還是承襲傳統的方式,只是把資料庫建模過程改成區塊鏈智能合約建模。所以針對一個泛用型的區塊鏈網路開發,應該有以下步驟:


-必要性與可行性分析:

篩選目標專案群,挑出值得使用DLTs保存重要資料的專案。之後按規模大小,必要性與急迫性排出優先次序。


-架構規劃

了解 HyperLedger Fabric 架構與性能

根據專案規模,容量,速度,需求來規劃適合的架構

利用 HyperLedger Composer 練習區塊鏈建模概念


-系統分析(SA)

篩選能交易所有權且值得轉換到區塊鏈保存的資產項目

挑選可完全轉換到區塊鏈的原有的應用網頁

確認所篩選的資產資料完備,能滿足功能需求

利用智能合約當資產資料載體


-系統設計(SD)

訂定智能合約規格

將原有SQL資料表對應定義到智能合約內

設計滿足應用需求的操作API規格

將此區塊鏈 API 視為資料介面層與 DB2, Oracle, MSSQL, MySQL, NoSQL 對等相對應

上層的Web應用可選擇任何一種資料介面層

開發時再一步步的將原有SQL API 轉到區塊鏈API利用原有的應用網頁做功能測試


-開發(Implemantation)

Hyperledger Composer來產生解決方案的步驟為:

建立業務網路結構: 定義資料模型,業務邏輯以及存取控制規則。

定義業務網路: 一個業務網路包括資產,交易,參與者,存取控制規則,事件與查詢。

產生業務網路檔

部署業務網路

產生業務網路服務器

產生應用程式


-測試(Test)


-部署(Deployment)


應用Hyperledger Composer建模範例

利用Hyperledger Composer所提供的Playground ,我們可以隨手驗證一下區塊鏈網路的業務模型。


進入Hyperledger Composer 所提供的Playground。修改 Model File,在SampleAsset內新增AddressType

asset SampleAsset identified by assetId {

 o String assetId

 --> SampleParticipant owner

 o String value

 o String Address

 o String Type

}


SampleTransaction 內新增buyerseller

transaction SampleTransaction {

 --> SampleAsset asset

 o String newValue

 --> SampleParticipant buyer

 --> SampleParticipant seller  

}


其中符號"o"表示資料欄位,而"-->"表示物件連結指標,與資料庫中的外鍵類似。

點選Test tab後,再點Create New Participant

點選Create New Asset 後輸入資料,可見完成資產輸入後的畫面。

點選Submit Transaction 來做交易。

之後便可見所有交易。



這這過程中,我們可以看到如同資料庫欄位的定義,也能看到像資料庫正規化後的外鍵連結。多練習一下,應該很快就能得到如何將資料庫轉到智能合約的概念了。

( 知識學習隨堂筆記 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=markhsia&aid=118276017