兩學一做,基於區塊鏈的智能合約技術
書接上文,上回書說到如何快速上手大數據處理框架SMACK,由於其強大的處理性能和複雜的技術架構,洋洋灑灑複製粘貼了近三千字依然難表其貌,更多詳情移步原文地址。本節雲框架將用“兩學一做”思想,幫助大家清晰明了理解「基於區塊鏈的智能合約技術」。
- 學習區塊鏈的核心思想;
- 學習區塊鏈應用場景-智能合約;
- 快速上手實踐。
先給大家講一個發生在象牙山這塊小區故事,帶大家認識認識我們屯裏的人....
特點1 去中心化:
傳統謝大腳在記賬的時候,劉能經常來搗亂說“謝謝謝大腳,你別亂給我加錢,我我我昨天壓根就沒來買雞爪子”。
大腳仔細一想發現事情並不簡單,之前也遇到過屯裏人對記賬本的真實性有疑問。所以有必要找出一種每筆交易都能被鄉親知悉,交易信息可追溯,產生民主信任的記賬辦法。
特點2 去信任:
大腳跟劉能說“你先別謝謝我,我還得謝謝你。以後這賬啊我不記了,省的大家說記賬有問題,大腳成臭腳。我讓大家一塊記賬,記賬又快又好的那個人,我還有特殊獎勵(比特幣)!”。
新的記賬辦法一出,村民都覺得這辦法利大於弊,反正閑著也是閑著,每個人都有機會有義務有責任審核交易,喚起了每一個村民心中的“主人翁精神”。於是村民都說:“我覺得ok”。
特點3 集體維護:
從這之後象牙山這塊小區有了一個公共賬本,熱心農民企業家王大拿親自命名為《象牙山區塊鏈賬本》。
這個記賬本的交易模式為:劉能向大腳購買了某種商品,由大腳和劉能雙方都用大喇叭向村民發送交易信息。(交易廣播)
這時候手快的趙四聽到消息,就把這個交易信息記錄下來,完成計算之後,用大喇叭廣播通知說“都憋算了,最近5分鍾的交易信息我都記完了,交易最終狀態你們都看看,放心吧肯定不會有錯的,你們以後就從我這個賬本上開始記賬”。然後趙四興高采烈地去找大腳拿獎勵。(挖礦)
其他村民雖然沒得到記錄信息的獎勵,但這個賬本所有交易信息都是公開透明,並且經過大家確認,所以大家都表示“我覺得ok”。(賬本鏈+1)
同樣這種記賬辦法不限於商品買賣,也同樣適用於村民之間的借貸等問題。
特點4 賬本可靠:
這種記賬方式一出現,就解決了村民之間的交易信任的共識問題,獲得了象牙山村民的一致擁護。雖然記賬流程稍微麻煩點,但是大家都樂於參與其中,共同維護《象牙山區塊鏈賬本》。
在《象牙山區塊鏈賬本1.0》期間,解決了村民之間的貨幣和支付手段的去中心化問題。但是像劉英和趙玉田結婚時候房子所有權,一畝三分地,以及村民隨禮記賬等資產認證的問題依舊沒得到解決。於是機智農民企業家王大拿將賬本升級為《象牙山區塊鏈賬本2.0》,利用區塊鏈核心思想衍生出“智能合約”技術,用來注冊、確認、轉移不同類型的資產及合約。
這裏我們趙玉田劉英結婚,村民隨禮為例。於是有了一個隨禮鏈,村民可通過隨禮鏈完成:
1.注冊隨禮鏈賬戶,完成初始禮金充值
2.增加禮金金額
3.查詢賬戶禮金信息
4.隨禮(隨機隨禮/指定隨禮)
5.查詢隨禮記錄
6.查詢禮金賬戶餘額信息
7. …
step 1. 安裝運行雲幫PaaS平台(智能合約框架最佳運行平台)
雲幫PaaS【免費版、自助安裝】
雲幫PaaS【企業版】
(平台運行最小環境要求:4CPUs & 8GB Memory,框架運行最小環境要求:8CPUs & 32GB Memory)step 2.下載智能合約docker compose文件
git clone
step 3.通過雲幫PaaS平台運行智能合約框架
step 4.變成自己的項目
1.根據具體業務編寫鏈碼文件,結構參考示例代碼格式:
2.將鏈碼放置於容器中,下載go環境鏡像,編譯鏈碼,推薦本例中使用的name為chaincode的鏡像進行。
docker exec -it chaincode bash
cd $yourProj
go build
3.修改docker-charity.yml文件
修改script.sh中的channel注冊與chaincode實例化;
將cli的entrypoint指令指定為你個人的chaincode;
peer中的entrypoint指令,指定安裝以及實例化你個人的chaincode。
4.重複step 3.通過雲幫PaaS平台運行智能合約docker compose。
《基於區塊鏈的智能合約》就到這,更多教程請 移步github。
下期預告《智能門衛老大爺,KONG API Gateway》,十一之後,十九大前。
最後更新:2017-09-13 17:02:27