智能合约是如何運作的?|幣扶社區BeFull

BEFULL_ClASS 幣扶社區
BEFULL_BLOG
Published in
4 min readFeb 20, 2020

區塊鏈的智慧合約,從某種意義上來說,其工作原理類似於其他計算程式的if-then語句 —包含發送資料的事務及涵蓋資料描述資訊的事件存入智慧合約後,合約的資源狀態被更新,進而觸發狀態機進行判斷。

簡單來說,智慧合約是區塊鏈中一種制訂合約時所使用的特殊協議,主要用於提供驗證及執行智能合約內所訂定的條件。智能合約中內含了程式碼函式,亦能與其他合約進行互動、做決策、儲存資料及傳送加密貨幣等功能。

一份智能合約有哪些構成要素:合約主體(Subject of Contract)、數位簽名、合約條款、去中心化平台(decentralized platform)

而基於區塊鏈的智慧合約構建及執行可分為如下步驟:

1、多方用戶共同參與制定一份智慧合約:
兩個或兩個以上的區塊鏈註冊使用者根據需要共同商定包括各方權利和義務的承諾。該承諾以電子化形式呈現,且需要參與者利用其私密金鑰簽名來確保有效性。

2、合約通過P2P網路擴散並存入區塊鏈:
合約通過P2P方式在區塊鏈網路中擴散,接收到合約的驗證節點將其保存在記憶體中,並於下一個共識時間把最近一段時間保存的所有合約打包為集合擴散至網路。

其他節點收到資訊後將其與自己保存的合約集合進行比較,並把自己認可的合約集合發送給其他節點。在多輪發送和比較後,所有驗證節點最終在規定時間內對最新合約集合達成一致。

3、在區塊鏈上構建的智慧合約自動執行:
智慧合約定期檢查合約狀態,其中未滿足觸發條件的事務繼續存放在區塊鏈上;而滿足條件的事務則被推送至待驗證佇列,等大多數驗證節點達成共識,事務成功執行並通知使用者。

而當合約包括所有事務都順利執行後,狀態機會將合約標記為完成並于最新區塊將其移除,反之繼續保存在區塊鏈上等待下一輪共識直至處理完畢。

具有可追蹤、難以竄改與不可逆轉的智能合約,能在沒有第三方的情況下,仍能進行安全的交易。

優點

  1. 安全性高:
    智能合約經過加密並儲存於區塊鏈節點上,因此能夠確定在未經許可的情況下不會有更改、遺失的狀況。
  2. 交易效率高:
    智能合約的流程幾乎為自動化,讓交易效率提高,許多中介都可能會被淘汰。
  3. 可客制化:
    現在存有的智能合約種類多樣,並能依照客戶需求進行修改。

缺點

  1. 人為因素:
    代碼是工程師所寫,因此有誤寫的可能;一旦智能合約放到區塊鏈上則無法更改。
  2. 法律因素:
    智能合約在目前不受任何任何政府監管,倘若政府機構介入立法則可能出現潛在問題。
  3. 實施成本:智能合約必須經過編碼過後才能執行,因此,擁有豐富經驗編碼、能夠寫出沒有執行問題之智能合約工程師變得非常重要;相對地,因為技術緣故,公司成本也會相對提高。
想知道更多關於區塊鏈應用、趨勢,記得追蹤幣扶社區BeFull
想要定期收到區塊鏈新知?沒有夥伴與您一起討論區塊鏈時事?歡迎加入我們!
👉🏻BEFULL臺灣官方Line@
👉🏻BEFULL交流群
📣不定期舉辦區塊鏈課程🔎查看課程資訊
-
✨幣扶社區重磅推出-BEFULL HUB
幣扶聯合社區城市合夥人,以各個城市實體店為基地,結合線上線下,打造新產業價值。
讓您在1天黃金8小時內,創造商務、休閒共併的生活新模式!

本文章部分節錄自:哈希派(hashpie)、區塊客

如果覺得文章有幫助到您,請不吝嗇給予掌聲鼓勵👏👏👏

--

--

BEFULL_ClASS 幣扶社區
BEFULL_BLOG

區塊鏈世界的流量入口,全球華語EOS最大社區。扮演一個區塊鏈基地的角色,提供資源讓社區成員學習更多區塊鏈知識。不斷提升自我辯知的能力,減低投資風險。