通過谷歌的關(guān)鍵詞搜索趨勢(shì)圖可以看出,智能合約正在受到越來越多的關(guān)注,從而我們需要一個(gè)更加清晰的定義。目前,與人們對(duì)智能合約的興奮相伴的還有對(duì)這一術(shù)語含義的困惑。Peter Todd–比特幣核心(Bitcoin Core)的開發(fā)者之一–非常準(zhǔn)確地總結(jié)了智能合約的現(xiàn)狀:

“從智能合約討論中得到的結(jié)論:沒有人理解智能合約究竟是什么,如果我們要實(shí)施智能合約,應(yīng)該需要預(yù)言機(jī)(oracles)。”
在本文中,我盡力進(jìn)一步闡明智能合約的本質(zhì)。我的首要目標(biāo)是,使得隱藏在智能合約背后的假設(shè)明確化,并澄清人們對(duì)與法律系統(tǒng)相關(guān)的神秘現(xiàn)象的誤解。然而,這只是我我第一次嘗試找到一種方式,將智能合約的理念系統(tǒng)化。我希望得到社區(qū)的反饋,從而我們能夠得到比現(xiàn)在更加清晰的理解。
聲明
說到法律術(shù)語,我要指出,雖然我是一名律師,但是我并不熟悉英語世界的法律術(shù)語,也不熟悉英美普通法(common law)系統(tǒng)。我是一名德國法律系統(tǒng)的學(xué)者,我學(xué)習(xí)德國法律和在法律領(lǐng)域工作將近十年了(譯者注:英語世界法律大部分屬于英美普通法,德國屬于大陸法系,故作者特別強(qiáng)調(diào))。雖然,我借助谷歌搜索的能力,選擇我所知的最好詞匯,但是不精確是在所難免的。如果你有能力,請(qǐng)指出我對(duì)術(shù)語的誤用。從積極的角度看,德語對(duì)法律術(shù)語的嚴(yán)苛,在這里也許有些幫助。
另外,我不是一名計(jì)算機(jī)科學(xué)家,雖然我個(gè)人寫代碼的時(shí)間長達(dá)12年了。如果你發(fā)現(xiàn)計(jì)算機(jī)領(lǐng)域的錯(cuò)誤,請(qǐng)指出來。謝謝!
溯源
“智能合約”(smart contract)這個(gè)術(shù)語至少可以追溯到1995年,是由多產(chǎn)的跨領(lǐng)域法律學(xué)者尼克·薩博(Nick Szabo)提出來的。他在發(fā)表在自己的網(wǎng)站的幾篇文章中提到了智能合約的理念。他的定義如下:
“一個(gè)智能合約是一套以數(shù)字形式定義的承諾(promises)?,包括合約參與方可以在上面執(zhí)行這些承諾的協(xié)議。”
讓我們更加詳細(xì)地探討他的定義的意思。
承諾
一套承諾指的是合約參與方同意的(經(jīng)常是相互的)權(quán)利和義務(wù)。這些承諾定義了合約的本質(zhì)和目的。以一個(gè)銷售合約為典型例子。賣家承諾發(fā)送貨物,買家承諾支付合理的貨款。
數(shù)字形式
數(shù)字形式意味著合約不得不寫入計(jì)算機(jī)可讀的代碼中。這是必須的,因?yàn)橹灰獏⑴c方達(dá)成協(xié)定,智能合約建立的權(quán)利和義務(wù),是由一臺(tái)計(jì)算機(jī)或者計(jì)算機(jī)網(wǎng)絡(luò)執(zhí)行的。
更進(jìn)一步地說明:
(1)達(dá)成協(xié)定
智能合約的參與方什么時(shí)候達(dá)成協(xié)定呢?答案取決于特定的智能合約實(shí)施。一般而言,當(dāng)參與方通過在合約宿主平臺(tái)上安裝合約,致力于合約的執(zhí)行時(shí),合約就被發(fā)現(xiàn)了。
(2)合約執(zhí)行
“執(zhí)行”的真正意思也依賴于實(shí)施。一般而言,執(zhí)行意味著通過技術(shù)手段積極實(shí)施。
(3)計(jì)算機(jī)可讀的代碼
另外,合約需要的特定“數(shù)字形式”非常依賴于參與方同意使用的協(xié)議。
協(xié)議
協(xié)議是技術(shù)實(shí)現(xiàn)(technical implementation),在這個(gè)基礎(chǔ)上,合約承諾被實(shí)現(xiàn),或者合約承諾實(shí)現(xiàn)被記錄下來。選擇哪個(gè)協(xié)議取決于許多因素,最重要的因素是在合約履行期間,被交易資產(chǎn)的本質(zhì)。
再次以銷售合約為例。假設(shè),參與方同意貨款以比特幣支付。選擇的協(xié)議很明顯將會(huì)是比特幣協(xié)議,在此協(xié)議上,智能合約被實(shí)施。因此,合約必須要用到的“數(shù)字形式”就是比特幣腳本語言。比特幣腳本語言是一種非圖靈完備的、命令式的、基于棧的編程語言,類似于Forth。
從理論到實(shí)踐
劇透:如果你了解比特幣協(xié)議、比特幣貨幣和智能財(cái)產(chǎn)的概念,你可以跳過這一章節(jié)。
當(dāng)薩博在近二十年以前,在網(wǎng)絡(luò)提出了智能合約理論時(shí),實(shí)踐一直嚴(yán)重地落后于理論。一直沒有如何將這個(gè)理念轉(zhuǎn)變現(xiàn)實(shí)的清晰路徑。
現(xiàn)在,技術(shù)已經(jīng)趕上薩博富有遠(yuǎn)見的頭腦,智能合約開始變得可行。在這二十年中發(fā)生了什么事情呢?
簡(jiǎn)而言之,薩博在他的智能合約定義中建立的協(xié)議,已經(jīng)被進(jìn)一步開發(fā)。它們已經(jīng)以比特幣協(xié)議的形式出現(xiàn),或者更加一般地說,這些協(xié)議能夠?qū)崿F(xiàn)中本聰共識(shí)(Nakamoto consensus)。
在這些協(xié)議被開發(fā)的同時(shí),我們獲得了另一個(gè)必需的構(gòu)件:第一種真正的、原生的數(shù)字資產(chǎn),即作為貨幣的比特幣。沒有這種資產(chǎn),智能合約也將不可行,因?yàn)榻鹑诓块T在過去的幾十年中,一直對(duì)任何創(chuàng)新抱有極端的敵意。
最后,另一個(gè)還沒有結(jié)出果實(shí)的概念是智能財(cái)產(chǎn)。我們正在進(jìn)入一個(gè)計(jì)算和連接無所不在的時(shí)代,通俗地講,就是物聯(lián)網(wǎng)。物理實(shí)體能夠從互聯(lián)網(wǎng)中檢索信息和向互聯(lián)網(wǎng)發(fā)送信息,它們也能夠通過軟件控制它們自身的使用(想想數(shù)字版權(quán)管理吧),這使得我們能夠建立薩博所指的嵌入式合約(embedded contracts)。
“智能合約的基本理念是,許多合約條款能夠嵌入到硬件和軟件中。”
薩博認(rèn)為嵌入式合約最初的應(yīng)用實(shí)例是自動(dòng)販賣機(jī)、銷售點(diǎn)終端、大公司間的電子數(shù)據(jù)交換和銀行間用于轉(zhuǎn)移和清算的支付網(wǎng)絡(luò)SWIFT、ACH、FedWire。另一個(gè)嵌入式合約的例子是數(shù)字內(nèi)容消費(fèi)–例如音樂、電影和電子書–領(lǐng)域的數(shù)字版權(quán)管理機(jī)制。
從這個(gè)意義上理解,智能合約是賽博空間(虛擬空間)和物理空間(實(shí)體空間)之間的橋梁。
智能VS法律
人們對(duì)智能合約概念的最多的困惑,源于它的名字和用于描述它的語言。人們似乎從“合約”這一術(shù)語中,推斷出智能合約一定與法律概念中的合約有某種聯(lián)系。那么,根據(jù)這個(gè)邏輯,智能合約是有法律約束力的協(xié)定加上其它因素(X),X使得協(xié)定變得“智能”。
從法律的角度,這一推測(cè)是錯(cuò)誤的。根據(jù)參與方選擇的智能合約實(shí)施,參與雙方或者多方完全可能進(jìn)入一個(gè)不滿足合法的合約所必需條件的“智能合約”。
然而,不可否認(rèn)的是,智能合約必須被歸類為與法律相關(guān)的行為。我們生活在一個(gè)被法律管理和控制的世界,所有可能的經(jīng)濟(jì)交易也被法律管理和控制。合約法只是組織經(jīng)濟(jì)交易的一種可能的工具。原理圖如下:

Legally relevant behaviour :與法律相關(guān)的行為; ?contract law:合約法; ?smart contracts:智能合約
讓我們看一下合約法和智能合約的交集部分。我們能否發(fā)現(xiàn)一個(gè)能夠描述這兩個(gè)系統(tǒng)的合約行為的概括呢?引用薩博的論文:
“合約–一套達(dá)成共識(shí)的協(xié)定–是形成關(guān)系的傳統(tǒng)方式?!?/p>
薩博告訴我們的是,“合約”的抽象概念是在個(gè)人、機(jī)構(gòu)和他們擁有的東西(財(cái)產(chǎn))之間形成關(guān)系的一種公認(rèn)的工具。然而,上面的引用并不清晰,參與方如何達(dá)成協(xié)定,如何形成協(xié)定,沒有講到。
我建議下面這個(gè)普遍的合約模型:

Agreement:協(xié)定; Formalization:形式化 ;Execution/Enforcement:執(zhí)行
如果這個(gè)模型應(yīng)用到智能合約和法律意義上的合約中,讓我們看看它怎么起作用。
協(xié)定
協(xié)定是一個(gè)完全的理想情況,從它在正式系統(tǒng)中的實(shí)施中抽象而來。當(dāng)然,事實(shí)上這是一個(gè)脆弱的抽象。在法律系統(tǒng)中,在許多情況下,具有法律約束力,不要求形成一個(gè)協(xié)議。與此相反,對(duì)智能合約來說,在許多情況下,在形式化以前,沒有事前協(xié)定。
形式化
形式化在這里的意思是,在一個(gè)正式系統(tǒng)實(shí)施理想的協(xié)定的行為。有兩個(gè)相關(guān)的正式系統(tǒng)。一個(gè)是合約法,另一個(gè)是你選擇的智能合約系統(tǒng)。這兩個(gè)系統(tǒng)都服務(wù)于相同的目的:當(dāng)違約行為發(fā)生時(shí),使得協(xié)定能夠執(zhí)行。
從一般角度理解,對(duì)于合約是怎么形式化的這一問題,有人認(rèn)為它只是實(shí)施細(xì)節(jié)。然而,事實(shí)證明,合約的實(shí)施的確事關(guān)重大。
現(xiàn)在有兩種本質(zhì)上不同的、形成一種合約關(guān)系的方式。這兩種方式是截然不同的,因?yàn)樗鼈冃枰煌膱?zhí)行方式。
執(zhí)行
因?yàn)橐粓D頂千言,所以來看下面這張我從Lawrence Lessig那里“剽竊”來的信息圖,出于本文的需要,我對(duì)圖片做了輕微的修改。

Market:市場(chǎng) ; contract:合約 ?;Norms:慣例、常規(guī) ; Architecture :架構(gòu) ; law:法律; ex ante:事前; ?ex post:事后
在Lessig的最初版本中,是一個(gè)人位于信息圖的中間,不是一個(gè)合約。這位了不起的思考者用他的信息圖,努力教給我們這些凡人的是,有四種最基本的約束影響著一個(gè)人的一生。這四個(gè)約束本質(zhì)上截然不同的,但是以復(fù)雜的方式交織在一起。
我對(duì)原版的信息圖做出了修改,用合約取代了人,這里的合約是指雙方或者多方之間達(dá)成的協(xié)定。有趣的是,做出修改以后,這個(gè)信息圖仍然有效。這四個(gè)約束就像管理著人一樣,管理著合約關(guān)系。
另外,我著重強(qiáng)調(diào)這四個(gè)約束中的兩個(gè)約束,即架構(gòu)和法律。這兩個(gè)約束是合約能夠被執(zhí)行的兩個(gè)最基本的動(dòng)力。根據(jù)參與方選擇的協(xié)定實(shí)施的系統(tǒng),合約將通過法律系統(tǒng)執(zhí)行,或者通過架構(gòu)執(zhí)行。這兩種合約執(zhí)行模式顯著不同。
Lessig認(rèn)識(shí)到合約執(zhí)行的兩個(gè)特征,可以幫助我們談?wù)搩煞N合約執(zhí)行模式的不同。一個(gè)是代理(agency),另一個(gè)是時(shí)間性(temporality)。在法律意義上,合約的執(zhí)行,只有當(dāng)一些人選擇這樣做時(shí),才會(huì)發(fā)生。此外,執(zhí)行只發(fā)生在違約以后,例如事后。
智能合約的執(zhí)行在這兩個(gè)方面,本質(zhì)上不同于傳統(tǒng)合約。為了理解是如何不同的,我們需要首先理解Lessig所指的架構(gòu)是什么意思。
Lessig在他的《代碼:網(wǎng)絡(luò)空間的法律》一書中,為了解釋代碼在賽博空間中的作用,引入了架構(gòu)的概念。物理空間的形狀,就是你的身體穿梭其中的空間,是由它的架構(gòu)決定的,例如建筑環(huán)境(建筑物、街道等)。如此類似,賽博空間的形狀是由代碼決定的,人們使用的應(yīng)用和協(xié)議就是建立在這些代碼上面的。因此,代碼是賽博空間的架構(gòu)。
法律和架構(gòu)都有方法管理參與方的行為。法律依賴于個(gè)人將規(guī)則內(nèi)化,個(gè)人據(jù)此調(diào)整自己的行為,或者該系統(tǒng)允許法律追索權(quán)(例如法庭)。然而,架構(gòu)通過塑造空間本身管理行為。架構(gòu)不是關(guān)于允許什么,而是什么是可能的。架構(gòu)既不依靠個(gè)人將規(guī)則內(nèi)化,也不依靠起訴系統(tǒng)。
根據(jù)我們衡量合約執(zhí)行的質(zhì)量的標(biāo)準(zhǔn),例如代理和時(shí)間性,因此架構(gòu)明顯地不同于法律。架構(gòu)執(zhí)行合約時(shí),不需要任何個(gè)人或者組織(代理,agency)決定如何執(zhí)行合約,你可以稱架構(gòu)執(zhí)行為自我執(zhí)行(self-enforcing),雖然我不喜歡這種叫法。另外,架構(gòu)事前執(zhí)行,違約甚至不可能發(fā)生。
未來展望
有一件事確定無疑:智能合約已經(jīng)扎下根了。它們是真正的全球經(jīng)濟(jì)的基本構(gòu)件,任何人都可以接入到這一全球經(jīng)濟(jì),不需要事前審查和高昂的預(yù)付成本。它們從許多經(jīng)濟(jì)交易中,移除了對(duì)第三方的信任必要,在其它情況下,將信任轉(zhuǎn)移到可以信任的人和機(jī)構(gòu)。
我在這篇博客中盡力想說明的理念是,智能合約怎樣與合約法共存。本質(zhì)上,它們是解決相同問題–以一種方式形成一種關(guān)系,使得承諾可以執(zhí)行–的兩種不同方法。就這一點(diǎn)而言,智能合約似乎是更好的解決方案:智能合約事前執(zhí)行,不像法律系統(tǒng)一樣,事后執(zhí)行。然而,這是一種謬誤。最后一次引用全能的薩博:
“合約法的成功和取代合約法所需的高額成本,使得保存和利用合適的原則,仍然很有價(jià)值。但是,數(shù)字革命正在劇烈地改變我們能夠擁有的各種關(guān)系。在這個(gè)賽博時(shí)代,我們來之不易的法律傳統(tǒng)中的哪一部分,將仍然具有價(jià)值?將這些法律原則應(yīng)用到我們的線上關(guān)系設(shè)計(jì),最好的方式是什么?”
在合約法中,有許多已建立的原則,仍值得保存。其中包括法律默認(rèn)規(guī)則,我將在另一篇博客中寫這個(gè)問題。
因此,為了實(shí)現(xiàn)最優(yōu)的結(jié)果,同時(shí)利用合約法和智能合約,好像是有利的行為。我將在另一篇博客中,告訴你怎么實(shí)現(xiàn)這一點(diǎn)。
如果你覺得這篇文章給你帶來啟迪,歡迎給作者(1HT7q3HtDYLSeMTkMcsjsRcExBAjsnKHws?)和譯者(1JtgQcqAoU65VY2NZy25FT9dAcuXrUKhfG)打賞。
----
原文:https://medium.com/@heckerhut/whats-a-smart-contract-in-search-of-a-consensus-c268c830a8ad
作者:Florian Glatz
譯者:少平
譯者BTC地址:1JtgQcqAoU65VY2NZy25FT9dAcuXrUKhfG
稿源(譯):巴比特資訊(?http://www.8btc.com/what-are-smart-contracts-in-search-of-a-consensus)