區塊鏈關鍵技術架構分析
區塊鏈關鍵技術--智能合約(Smart Contract)
智能合約層負責將
區塊鏈系統的業務邏輯以代碼的形式實現、編 譯并部署,完成既定規則的條件觸發和自動執行,最大限度的減少人 工干預。智能合約的操作對象大多為數字資產,數據上鏈后難以修改、 觸發條件強等特性決定了智能合約的使用具有高價值和高風險,如何 規避風險并發揮價值是當前智能合約大范圍應用的難點。
智能合約根據圖靈完備6與否可以分為兩類,即圖靈完備和非圖 靈完備。影響實現圖靈完備的常見原因包括:循環或遞歸受限、無法 實現數組或更復雜的數據結構等。圖靈完備的智能合約有較強適應性, 可以對邏輯較復雜的業務操作進行編程,但有陷入死循環的可能。對 比而言,圖靈不完備的智能合約雖然不能進行復雜邏輯操作,但更加簡單、高效和安全。
表 4:部分區塊鏈系統的智能合約特性
當前智能合約的應用仍處于比較初級的階段,智能合約成為區塊鏈安全的“重災區”。從歷次智能合約漏洞引發的安全事件看,合約編 寫存在較多安全漏洞,對其安全性帶來了巨大挑戰。目前,提升智能 合約安全性一般有幾個思路:一是形式化驗證(Formal Verification)。 通過嚴密的數學證明來確保合約代碼所表達的邏輯符合意圖。此法邏 輯嚴密,但難度較大,一般需要委托第三方專業機構進行審計。二是 智能合約加密。智能合約不能被第三方明文讀取,以此減少智能合約 因邏輯上的安全漏洞而被攻擊。此法成本較低,但無法用于開源應用。 三是嚴格規范合約語言的語法格式。總結智能合約優秀模式,開發標 準智能合約模板,以一定標準規范智能合約的編寫可以提高智能合約 質量,提高智能合約安全性。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。