智能合約在區(qū)塊鏈的背景下會是怎樣的
尼克·薩博是一位計(jì)算機(jī)科學(xué)家、加密大師,他在1994年寫成了《智能合約》(Smart contracts)論文,是智能合約的開山之作。
在智能合約中,“合約”即“合同”(也稱協(xié)議),但“智能”(smart)與人工智能用的是“intelligence”是兩個(gè)概念。
比特幣之后興起的以太幣,它所依賴的平臺(以太坊),即允許用戶自由布置智能合約。當(dāng)然,在以太坊上布署一個(gè)智能合約是需要花費(fèi)以太幣的,需要“礦工們”把智能合約的代碼記錄在區(qū)塊里,并且發(fā)送給每一個(gè)結(jié)點(diǎn),因此智能合約同樣是不可修改的。
現(xiàn)在我們用的“滴滴”或“Uber”,可以理解為“智能合約”的雛形。乘客發(fā)出請求,司機(jī)作出承諾。在智能合約下,幾乎不存在違約的情況,例如乘客打車后拒絕付款會被剝奪再次打車的權(quán)利。那么,在“滴滴打車”的樣態(tài)中,司機(jī)與乘客的權(quán)利義務(wù)不是寫在紙上,而是寫進(jìn)了計(jì)算機(jī)代碼,所有人的行為及后果均是由代碼決定的,這便是“智能合約”的雛形。
怎樣才能把傳統(tǒng)協(xié)議變成智能合約呢?以抵押協(xié)議為例,在抵押協(xié)議中客戶向銀行作出承諾,如果屆期不還錢,車輛就歸銀行所有。如果要把它變成智能合約,就需要把這個(gè)承諾寫進(jìn)計(jì)算機(jī)代碼,這在智能架駛時(shí)代是可以實(shí)現(xiàn),比如通過計(jì)算機(jī)代碼的設(shè)置,客戶屆期未按時(shí)還錢,車輛將會拒絕客戶使用,反倒是將架駛權(quán)限(如新的使用密碼)發(fā)送給銀行,銀行轉(zhuǎn)而擁有車輛的使用權(quán)。
因此,智能合約的本質(zhì)在于將合約的履行或者違反合約的后果都寫進(jìn)計(jì)算機(jī)代碼,由計(jì)算機(jī)程序自動執(zhí)行。在智能合約下,任何任性的行為,計(jì)算機(jī)代碼都會賦予其相應(yīng)的代價(jià)。
Lessig在他的《代碼:網(wǎng)絡(luò)空間的法律》中,為了解釋代碼在賽博空間(syberspace,可以理解為計(jì)算機(jī)程序所架構(gòu)的空間)中的作用,引入了“架構(gòu)”的概念。代碼便是虛擬空間的架構(gòu)。
法律和架構(gòu)在管理參與者方面是皆然不同的。法律依賴于個(gè)人將規(guī)則內(nèi)化為自覺進(jìn)而規(guī)范人的行為,個(gè)人行為一旦超越了法律的界線還需要法院強(qiáng)制執(zhí)行。然而,架構(gòu)通過塑造空間本身管理行為,它既不依靠個(gè)人對規(guī)則的信仰,更不依靠法院執(zhí)行。因此架構(gòu)在效率上明顯優(yōu)于法律。
依據(jù)架構(gòu)執(zhí)行合約時(shí),不需要任何個(gè)人或者組織來決定如何執(zhí)行合約,你可以稱架構(gòu)執(zhí)行為自我執(zhí)行(self-enforcing),在這種情況下,違約甚至不可能發(fā)生。
“區(qū)塊鏈”語境下的“智能合約”,還有一個(gè)重要的特點(diǎn):去中心化,或者說它是不可修改的?!皡^(qū)塊鏈”背景下的智能合約,則是分布在每一個(gè)結(jié)點(diǎn)(可以理解為一個(gè)服務(wù)器)上,它的內(nèi)容是不可調(diào)整的。以借錢的合約為例,合約一旦定立,它就發(fā)布給每一個(gè)結(jié)點(diǎn),合約內(nèi)容不可更改;而且一旦屆期,合約會自動從借款人帳戶中扣掉比特幣或以太幣給借款人。