和區塊鏈行業的許多想法一樣,普遍的困惑也被稱為“智能合同”。
一項由公共區塊鏈所制造的新技術,智能合同難以理解,因為這一術語在一定程度上混淆了所描述的核心交互。
一份標準合同概述了一段關系的條款(通常是由法律強制執行的),而一份聰明的合同則會強制與密碼代碼的關系。
換句話說,聰明的合同就是那些由他們的創造者設置的程序。
最初構想于1993年,最初由計算機科學家和密碼學家Nick Szabo描述為一種數字自動販賣機。在他著名的例子中,他描述了用戶如何輸入數據或價值,并從機器接收一個有限的項目,在這種情況下是現實世界的小吃或飲料。
在一個簡單的例子中,ethereum用戶可以使用智能契約在某個日期向一個朋友發送10個以太(見我們的指南“什么是以太?”)。
在這種情況下,用戶將創建一個契約,并將數據推到該契約中,這樣它就可以執行所需的命令。
Ethereum是專門為創建智能合同而建立的平臺。
但這些新工具并不打算單獨使用。人們相信,它們也可以構成“分散應用”的構建模塊(參見:“什么是Dapp?”),甚至是整個分散的自治公司(參見:“什么是DAO?”)
智能合約如何工作?
值得注意的是,比特幣是第一個支持基本智能合同的人,因為網絡可以將價值從一個人轉移到另一個人身上。節點網絡只有在滿足某些條件時才會驗證事務。
但是,比特幣僅限于貨幣用例。
相比之下,ethereum取代了比特幣更為嚴格的語言(一種大約100個腳本的腳本語言),并用一種允許開發者編寫自己程序的語言取而代之。
Ethereum允許開發人員為他們自己的智能合同編程,或者“自動代理”,就像Ethereum白皮書所稱的那樣。該語言是“Turing-complete”,意思是它支持更廣泛的計算指令集。
聰明的合同可以:
功能是“多簽名”賬戶,因此只有當需要的百分比的人同意時才使用資金。
管理用戶之間的協議,比方說,如果一個人從另一個購買保險。
為其他契約提供實用程序(類似于軟件庫的工作方式)
存儲有關應用程序的信息,如域注冊信息或成員記錄。
人多力量大
從最后一點推斷,智能合同很可能需要其他智能合同的幫助。
當一個人在炎熱的夏天把一個簡單的賭注壓在溫度上時,它可能會引發一系列的合同。
一份合同將使用外部數據來確定天氣情況,另一份合同可以根據在滿足條件時從第一份合同中獲得的信息來結算。
運行每個合同需要以太交易費用,這取決于所需的計算能力。
正如我們的指南“Ethereum如何工作”中所解釋的,當一個用戶或另一個合同以足夠的交易費用發送消息時,Ethereum會運行智能契約代碼。
然后,Ethereum虛擬機在“字節碼”中執行智能契約,或由網絡讀取和解釋的一系列1和0。
評論
查看更多