區塊鏈智能合約是什么?它的優勢在哪里?如何運用區塊鏈技術實現數據共享?又該如何解決這些問題?本期我們邀請到北京大學信息科學技術學院教授、博士生導導師、中國工程院院士李曉明,為大家講解區塊鏈技術在金融領域的應用。以下為演講實錄:主持人:李曉明教授,首先歡迎大家來到北京大學學經濟學院,我是北京大學經濟學院的副院長李曉明。
一、區塊鏈的智能合約是什么意思?
優質答案1:
智能合約這一概念是由Nick Szabo于1994年提出,該合約被定義為“一套以數字形式定義的承諾,包括合約參與方可以在上面執行這些承諾的協議”。不同于傳統合約,該合約基于區塊鏈技術而發展、以數字為表現形式并主要通過計算機網絡技術而自動執行。人們對其最為常見的認識就是將其視為是一段自動運行的代碼,一段由計算機自動執行的程序,當預設的觸發條件成就時合約即自動執行,相較于一般的電子合約來說更進一步。
但是,只有結合了區塊鏈技術、分布式記賬技術的代碼合約才可以被視為真正的智能合約,而該合約的核心則是區塊鏈技術。區塊鏈技術具體表現為一種“開放的分布式數據庫”,該技術使得該合約可以在一種完全公開、透明和不可被篡改的環境中運行。在這種環境的理想運作下,合約雙方不再需要特定的企業來擔任中間商或擔保機構,所有交易都是公開透明的,即實現了“去中心化”、“去信任化”的目標。
區塊鏈的提出使智能合約的執行獲得了可信的環境,比特幣交易中的輸出條件是用腳本描述的,這也是智能合約的雛形。以太坊首先實現了區塊鏈和智能合約的完美契合。
在智能合約的概念模式如圖,一般而言,智能合約封裝預定義的若干狀態、轉換規則、觸發條件以及應對操作等,經各方簽署后以程序代碼的形式附著在區塊鏈數據上,經對等計算機網絡傳播和節點驗證后記入各個節點的分布式賬本中,區塊鏈可以實時監控整個智能合約的狀態,在核查外部數據源確認滿足特定的觸發條件后激活并執行合約。
以太坊是目前開發智能合約最常用的平臺,特定的基于堆棧的二進制字節碼(即以太坊虛擬機字節碼)組成了以太坊的智能合約。這個合約可以利用Solidity、Serpent、LLL等高級語言編寫,然后編譯為EVM字節碼存儲執行。
以太坊中智能合約是存儲在以太坊區塊鏈中特定地址的代碼(功能)和數據(狀態)的集合。智能合約以消息的形式在網絡中傳播,以太坊中合約則是存儲于交易之中。EVM判斷一個交易是否為合約類的依據是該交易中是否存在代碼,若交易信息是代碼則該合約得以執行。若在執行過程中發現某合約賬戶不存在則會自動創建合約地址,并將合約存入該賬戶。
雖然以太坊中智能合約可用于實現與比特幣類似的賬戶余額認證方案,但其與比特幣腳本程序存在顯著差別:合約是圖靈完備的;合約非無狀態的,它們可以存儲計算數據;任意合約杰克從其他合約處獲取部分數據。
優質答案2:
智能合約的歷史,還有正式的解釋等等這些答案,我看到大家都回答得挺不錯。
我只希望給出通俗但是稍微不太嚴謹的回答,用意是讓我們真正理解這個東西。
將智能合約多換個名字,我們可能會更有感覺。比如換成:自動合同、智能合同。因為合約的認知門檻相對比合同高。用自動替換智能,我們很快就能抓到核心點:就是一旦達到條件,這個電子合同就自動執行。

那么,這合同一般執行一些什么東西呢?
舉個智能合約的例子:一個智能合約,爸爸用自己的區塊鏈賬戶簽名,然后部署在區塊鏈上。內容為爸爸100歲的時候,將1億的XX token作為遺產轉給兒子。合約一旦部署,就不可修改。爸爸到100歲這個時間是固定的,比如是2099年1月1日。到了那天,這個合約就自動執行轉賬給兒子,不需要律師等各種第三方公證。
對于懂軟件的人來說,可以將區塊鏈理解為數據庫,智能合約就是存儲過程;也可以將區塊鏈理解為手機操作系統,而智能合約就是APP。
二、區塊鏈和智能合約的關系?
優質答案1:
如果說以比特幣為代表的區塊鏈是1.0時代,那么以太坊把以太幣和智能合約相結合開啟的就是區塊鏈的2.0時代。
區塊鏈主要解決的是信息傳遞的一致性,可信性和安全性問題。
而智能合約是在區塊鏈的保證信息傳遞的一致性、可信性和安全性基礎上,把交易雙方的合約寫成程序,通過發布到以太坊網絡上,通過編程語言來實現需要履行的合約,避免了因不履行合約而造成的人為沖突,簡單有效的解決了違約的強制執行問題。
智能合約在執行過程中,沒有一個中心化權威的第三方機構為其雙方做擔保,而是由一個寫在整個網絡上、所有人都能查看的公開的智能合約進行監督。而合約條款寫在編程語言中,不存在歧義,雙方不存在因為合同歧義而產生的毀約問題。但智能合約條款只能接受簡單的因果標準判斷,不適于應用在復雜的有多重衡量標準的事件判斷中。
優質答案2:
簡單來說,“智能合約”是將具體條款以計算機語言而非法律語言記錄的智能化合同。“智能合約”屬于區塊鏈技術的進化,但其概念要早于區塊鏈,可以說區塊鏈技術為“智能合約”提供了一個可能。
三、什么是智能合約?有什么作用?
合約是指雙方或者多方就某件事達成共識的協議,它有一個潛在的前提就是要么有第三方中介機構加入以確保執行,要么雙方絕對信任保證一定執行,它建立在信任共識的基礎上。
智能合約無需解決潛在共識問題,也無需依賴律師和法律體系解決違約問題,因為其是由代碼定義的,也是由代碼強制執行的,完全自動且無法干預。確保合約的執行是智能合約的強大之處。
智能合約的出現意味著我們能用最小的代價在去中心化平臺上獲得最大的利益,讓所有的事情變得簡單。即使你在一項任務中貢獻微乎其微,但有了智能合約也不能否認你的價值,系統程序會自動運算并識別明確用戶貢獻,這有利于建立更有道德的DAS(去中心化自治社會)。我們也可以利用智能合約去解決現在一些經濟之外的問題,如知識產權保護等。
評論前必須登錄!
立即登錄 注冊