在區(qū)塊鏈的相關(guān)討論中,“智能合約”是一個(gè)出現(xiàn)頻率極高的詞匯。“智能合約”是區(qū)塊鏈技術(shù)的重要組成部分,也是區(qū)塊鏈技術(shù)實(shí)現(xiàn)核心價(jià)值“信用”的重要環(huán)節(jié)之一。然而人們往往通過(guò)“智能合約”的字面意思對(duì)其做出簡(jiǎn)單的解讀,將之描繪為一種能夠在未來(lái)取代“合約”和“公證”的技術(shù)。在各類媒體報(bào)道文章中,“智能合約”被大量的曲解和誤讀著。筆者特在此圍繞“智能合約”概念對(duì)以下問(wèn)題逐一展開解讀:“智能合約”到底是什么?“智能合約”和傳統(tǒng)意義上的合約有什么區(qū)別?“智能合約”到底能否取代法律概念上的“合約”和“公證”?
?
“智能合約”到底是什么?
對(duì)于“智能合約”的定義是各種各樣的。有的文件將“智能合約”定義為“一種用計(jì)算機(jī)語(yǔ)言取代法律語(yǔ)言去記錄條款的合約”。作為法律從業(yè)人員而言,這種定義方法是完全錯(cuò)誤的。
還有文件將“智能合約”定義為“基于區(qū)塊鏈的圖靈完備的編程腳本語(yǔ)言,適合各種區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)和共識(shí)協(xié)議”。這種定義方法也不準(zhǔn)確。比特幣所采用的語(yǔ)言是“圖靈不完備”的,但是比特幣語(yǔ)言中同樣植入了“智能合約”。
中國(guó)電子技術(shù)標(biāo)準(zhǔn)化研究院聯(lián)合數(shù)十家單位于2017年5月16日發(fā)布的《中國(guó)區(qū)塊鏈技術(shù)和產(chǎn)業(yè)發(fā)展論壇標(biāo)準(zhǔn) CBD-Forum-001-2017》中,將智能合約(smart contract)定義為“以數(shù)字形式定義的能夠自動(dòng)執(zhí)行條款的合約 ”,“注:在區(qū)塊鏈技術(shù)領(lǐng)域,智能合約是指基于預(yù)定事件觸發(fā)、不可篡改、自動(dòng)執(zhí)行的計(jì)算機(jī)程序。”
備注里的這句話揭示了“智能合約”的本質(zhì)。“智能合約”本質(zhì)上是一種“計(jì)算機(jī)程序”,而不是“合約”。不要通過(guò)“合約”的基本特征去理解“智能合約”,而要通過(guò)“計(jì)算機(jī)程序”的基本特征去理解“智能合約”。
不過(guò)這種定義仍然沒(méi)有清楚的解釋“智能合約”到底是什么。
要理解“智能合約”,得從中本聰設(shè)計(jì)比特幣的轉(zhuǎn)賬功能說(shuō)起。
假如你是2009年的中本聰,你已經(jīng)找到了解決雙重支付的方法,現(xiàn)在要設(shè)計(jì)比特幣的轉(zhuǎn)賬功能了。你會(huì)怎么做呢?通常的設(shè)計(jì)方案會(huì)是這樣:
發(fā)送方向比特幣網(wǎng)絡(luò)發(fā)一份廣播,其內(nèi)容是這樣的:“從A地址轉(zhuǎn)賬1 BTC給B地址。同時(shí)附上A地址私鑰的簽名”。網(wǎng)絡(luò)各節(jié)點(diǎn)收到廣播,校驗(yàn)簽名合法。于是從A地址扣掉1 BTC,給B地址加上1 BTC。
簡(jiǎn)潔明了對(duì)不對(duì)?但是如果是這樣的設(shè)計(jì),我們就無(wú)法看到今天區(qū)塊鏈技術(shù)在各領(lǐng)域的落地扎根、欣欣向榮。中本聰?shù)脑O(shè)計(jì)方案是這樣的:
發(fā)送方向比特幣網(wǎng)絡(luò)發(fā)一份廣播,其內(nèi)容是這樣的:“我要轉(zhuǎn)賬1 BTC,并且我提供了一段腳本,這段腳本作為鑰匙可以打開這1 BTC上的鎖;同時(shí),我根據(jù)接收方的要求為這1 BTC加個(gè)新的鎖”。
網(wǎng)絡(luò)各節(jié)點(diǎn)收到廣播,運(yùn)行腳本,發(fā)現(xiàn)確實(shí)能“開鎖”,于是根據(jù)發(fā)送方的指令給這筆比特幣換上一把“新鎖”,這筆比特幣也就有了新的主人。當(dāng)接收方想使用這1 BTC時(shí),只要能提供一段新的腳本作為鑰匙打得開這把新鎖就行。
乍一看,中本聰?shù)脑O(shè)計(jì)似乎非常繁瑣和反直覺(jué),然而這樣的設(shè)計(jì)卻另辟蹊徑,打開了一個(gè)全新的天地。腳本是一種簡(jiǎn)單的計(jì)算機(jī)語(yǔ)言,比如Java就是一種腳本。比特幣的腳本可以表述的內(nèi)容非常靈活,遠(yuǎn)遠(yuǎn)超出了一對(duì)一轉(zhuǎn)賬的范疇。例如:A可以按照約定加鎖,設(shè)置必須由收款人B和擔(dān)保人C同時(shí)簽名才能支配某筆比特幣(擔(dān)保交易),也可以設(shè)置B、C、D中任意兩人簽名就能支配(聯(lián)名賬戶);也可以設(shè)置B必須在一年后才能動(dòng)用某筆比特幣(延時(shí)支付),也可以設(shè)置任何人都能支配(撒錢)或者都不能支配(燒錢)。通過(guò)這套內(nèi)置的腳本編程語(yǔ)言,你可以靈活地編寫出各種各樣的約定——而這其實(shí)就是“智能合約”的來(lái)源。用比特幣腳本編寫的合約系統(tǒng),使得比特幣成為了人類歷史上第一種可編程的貨幣。
注意,中本聰這種設(shè)計(jì)思路和傳統(tǒng)方式最大的變化就是,貨幣移交的重心不在于從一方轉(zhuǎn)移到另一方,而是在權(quán)屬變化的同時(shí)預(yù)設(shè)了“開啟條件”。這個(gè)“開啟條件”的預(yù)設(shè)思路是根植于區(qū)塊鏈技術(shù)的本身設(shè)計(jì)思想的。因?yàn)閰^(qū)塊鏈去中心化,分布式存儲(chǔ),所有數(shù)據(jù)每個(gè)參與節(jié)點(diǎn)都有相同的一份,那么大家擁有同樣的數(shù)據(jù),怎么才能分清各自的權(quán)益呢?方法就是給所有的數(shù)據(jù)都加上對(duì)應(yīng)的“鎖”,某個(gè)人或某組人用自己的專屬鑰匙才能開啟對(duì)應(yīng)的“鎖”,從而獲得對(duì)自己權(quán)益的處分權(quán)。傳統(tǒng)貨幣動(dòng)用前也會(huì)驗(yàn)證簽名和密碼,但是驗(yàn)證的目的僅僅在于校驗(yàn)身份。比特幣則不僅僅是校驗(yàn)身份,而且還校驗(yàn)是否符合“開啟條件”。這個(gè)預(yù)設(shè)的“開啟條件”就是區(qū)塊鏈所說(shuō)的“智能合約”。
對(duì)于區(qū)塊鏈技術(shù)應(yīng)用的其他領(lǐng)域,此處的比特幣轉(zhuǎn)賬替換成價(jià)值的傳遞、轉(zhuǎn)移、交換即可。
“智能合約”和傳統(tǒng)意義上的合約有什么區(qū)別?
了解了“智能合約”的來(lái)源,我們就可以比較一下“智能合約”和傳統(tǒng)意義上的“合約”有什么不同了。
合約,即合同。《中華人民共和國(guó)合同法》對(duì)合同的定義為“本法所稱合同是平等主體的自然人、法人、其他組織之間設(shè)立、變更、終止民事權(quán)利義務(wù)關(guān)系的協(xié)議。”
在中華人民共和國(guó)合同法中規(guī)定了十五種典型合同,買賣合同,供用電、水、氣、熱力合同,贈(zèng)與合同,借款合同,租賃合同,融資租賃合同,承攬合同,建設(shè)工程合同,運(yùn)輸合同,技術(shù)合同,保管合同,倉(cāng)儲(chǔ)合同,委托合同,行紀(jì)合同,居間合同。其他常見的合同如抵押合同、質(zhì)押合同、留置合同、探礦權(quán)合同、土地使用權(quán)出讓合同、承包合同等物權(quán)性質(zhì)的合同在沒(méi)有特別法規(guī)范的情況下適用合同法總則或類推適用合同法相關(guān)分則。
合同的內(nèi)容由當(dāng)事人約定,一般包括以下條款:當(dāng)事人的身份信息,標(biāo)的,數(shù)量,質(zhì)量,金額,履行期限、地點(diǎn)和方式,違約責(zé)任,解決爭(zhēng)議的方法以及參與各方的權(quán)利、義務(wù),中止、終止、解除條件等。
合同的訂立步驟可以分解為:
1,一方發(fā)出要約。
2,受要約人同意要約內(nèi)容,做出承諾。
3,承諾生效時(shí)合同成立。
“智能合約”完整的訂立步驟為:
1,參與方經(jīng)過(guò)商議,約定合約的具體內(nèi)容。這一步是人與人的談判、討論、商議的結(jié)果,是人的活動(dòng)。
2,用編程腳本語(yǔ)言編寫腳本,將約定好的內(nèi)容通過(guò)程序的形式表現(xiàn)出來(lái)。這一步是將特定的“鎖”制造出來(lái)。
3,原權(quán)益方開啟自己的權(quán)屬,并將區(qū)塊鏈貨幣或價(jià)值按照約定加上上一步制作的“鎖”,從而實(shí)現(xiàn)權(quán)屬的轉(zhuǎn)移。但是權(quán)益并不直接進(jìn)入新的權(quán)益方,而是等待新權(quán)益方用“鑰匙”開啟。
4,在預(yù)設(shè)的開啟條件達(dá)成時(shí),新權(quán)益方相當(dāng)于通過(guò)特定的“鑰匙”打開了“鎖”,編程腳本自動(dòng)運(yùn)行,新權(quán)益方獲得區(qū)塊鏈貨幣或價(jià)值的處分權(quán)并進(jìn)行處分,也許是加一把新的“鎖”。
對(duì)于“合約”而言,是由參與各方簽署成效后,再由參與各方各自按照約定執(zhí)行;而“智能合約”存在本身就意味著其已經(jīng)在執(zhí)行過(guò)程中了,約定內(nèi)容在“智能合約”誕生之前已經(jīng)商定好了。“智能合約”更像以程序“if-then”的基本邏輯中的一個(gè)觸發(fā)條件,一旦條件觸發(fā)就自行執(zhí)行程序的下一步。所以“智能合約”本質(zhì)上是一個(gè)腳本程序,以程序“if-then”的基本邏輯為基礎(chǔ)來(lái)運(yùn)行。這種腳本程序之所以叫“智能合約”,是因?yàn)槠渚帉懩康氖菫榱藢?shí)現(xiàn)事先商定好的合約內(nèi)容的。反過(guò)來(lái)看,只有能夠通過(guò)編程實(shí)現(xiàn)的合約內(nèi)容才能成為“智能合約”的實(shí)現(xiàn)對(duì)象,這就注定了“智能合約”的實(shí)現(xiàn)對(duì)象是非常有限的,因?yàn)椴皇撬械娜祟惢顒?dòng)都能夠通過(guò)編程實(shí)現(xiàn)的。
對(duì)于“合約”而言,在執(zhí)行過(guò)程中,參與各方都有違反合約的可能,“智能合約”則沒(méi)有這種“人性風(fēng)險(xiǎn)”,“智能合約”一旦設(shè)定好,只有作為“鑰匙”的腳本滿足“鎖”的“開啟條件”時(shí),才會(huì)執(zhí)行。
“合約”的執(zhí)行是參與各方進(jìn)行的人類活動(dòng),而“智能合約”的執(zhí)行其實(shí)是執(zhí)行一段程序,對(duì)虛擬價(jià)值進(jìn)行處分。
對(duì)于“合約”而言,環(huán)境條件的改變可能會(huì)導(dǎo)致合約需要用補(bǔ)充協(xié)議、變更協(xié)議的形式加以調(diào)整。“智能合約”則不具備這種靈活性。“智能合約”更適合在穩(wěn)定的環(huán)境中進(jìn)行大量重復(fù)性運(yùn)作的應(yīng)用場(chǎng)景。
“智能合約”到底能否取代法律概念上的“合約”和“公證”?
很多對(duì)“智能合約”的介紹文字都宣稱“智能合約”將能夠替代法律概念上的“合約”和“公證”,通過(guò)以上對(duì)比和分析,顯然我們能得出否定的結(jié)論。
“合約”的使用廣泛滲透在人類活動(dòng)的層層面面,其雙方只要合意達(dá)成一致即可成立的特性,使得“合約”具備最大限度的靈活性,從而方便的應(yīng)用在各個(gè)場(chǎng)景。
“智能合約”是以程序?yàn)榛A(chǔ)的虛擬世界當(dāng)中的特有產(chǎn)物,是在特定應(yīng)用環(huán)境內(nèi)反映了某種合約關(guān)系的程序,按照“if-then”的基本邏輯運(yùn)行,適用于特定的場(chǎng)景,其功能較為單一,執(zhí)行較為簡(jiǎn)單,適用于在穩(wěn)定的環(huán)境中進(jìn)行大量重復(fù)性運(yùn)作的應(yīng)用場(chǎng)景。
“智能合約”相對(duì)于“合約”,就跟“機(jī)器人”相對(duì)于“人類”類似,前者缺乏靈活性,但在穩(wěn)定環(huán)境、單一功能、大量重復(fù)性運(yùn)作的應(yīng)用場(chǎng)景能發(fā)揮替代后者的威力。
“智能合約”會(huì)隨著區(qū)塊鏈應(yīng)用的普及使用而逐步滲透到人類生活中。由于區(qū)塊鏈應(yīng)用還是發(fā)展的初級(jí)階段,“智能合約”對(duì)人類社會(huì)的影響還微乎其微。
即使將來(lái)區(qū)塊鏈應(yīng)用普及了,“智能合約”仍然只能局部替代“合約”,因?yàn)椋僖淮螐?qiáng)調(diào),不是所有的人類活動(dòng)都能夠通過(guò)編程實(shí)現(xiàn)的。
要注意的是,“智能合約”所要調(diào)節(jié)的未必是人與人之間的關(guān)系,也可能是物與物之間的關(guān)系,機(jī)器與機(jī)器之間的關(guān)系。“智能合約”在虛擬世界中,以及“合約”在人類世界中,會(huì)發(fā)揮各自專屬領(lǐng)域的作用。
“公證”是一個(gè)很好的比較例子。
確實(shí)有區(qū)塊鏈應(yīng)用在嘗試在做線上“公證”應(yīng)用。2015年9月,初創(chuàng)公司Stampery嘗試用比特幣區(qū)塊鏈技術(shù)解決數(shù)據(jù)的認(rèn)證問(wèn)題。“你可以為任何文件生成不可改變的、準(zhǔn)確的證明,證明其存在和完整性。世界上的任何人都可以自動(dòng)證明某個(gè)文件是在何時(shí)創(chuàng)建的,且之后再未改動(dòng)過(guò),”“使用 Stampery 的理由與為文件做公證的理由一樣。它能很好地保護(hù)知識(shí)產(chǎn)權(quán),證明遺囑、宣誓、合同、家庭糾紛中的通訊等等的有效性。”2017年4月,微軟將Stampery技術(shù)整合到了Microsoft Office Outlook。
盡管Stampery有其優(yōu)勢(shì)和價(jià)值所在,但在宣傳上和一些新生事物一樣,總是拼命的夸大其詞。
根據(jù)中華人民共和國(guó)司法部令第103號(hào)《公證程序規(guī)則》,公證機(jī)構(gòu)受理公證申請(qǐng)后,應(yīng)當(dāng)根據(jù)不同公證事項(xiàng)的辦證規(guī)則,分別審查下列事項(xiàng):
1,當(dāng)事人的人數(shù)、身份、申請(qǐng)辦理該項(xiàng)公證的資格及相應(yīng)的權(quán)利;
2,當(dāng)事人的意思表示是否真實(shí);
3,申請(qǐng)公證的文書的內(nèi)容是否完備,含義是否清晰,簽名、印鑒是否齊全;
4,提供的證明材料是否真實(shí)、合法、充分;
5,申請(qǐng)公證的事項(xiàng)是否真實(shí)、合法。
公證機(jī)構(gòu)可以采用下列方式,核實(shí)公證事項(xiàng)的有關(guān)情況以及證明材料:
1,通過(guò)詢問(wèn)當(dāng)事人、公證事項(xiàng)的利害關(guān)系人核實(shí);
2,通過(guò)詢問(wèn)證人核實(shí);
3,向有關(guān)單位或者個(gè)人了解相關(guān)情況或者核實(shí)、收集相關(guān)書證、物證、視聽資料等證明材料;
4,通過(guò)現(xiàn)場(chǎng)勘驗(yàn)核實(shí);
5,委托專業(yè)機(jī)構(gòu)或者專業(yè)人員鑒定、檢驗(yàn)檢測(cè)、翻譯。
公證機(jī)構(gòu)經(jīng)審查,認(rèn)為申請(qǐng)公證的事項(xiàng)符合《公證法》、本規(guī)則及有關(guān)辦證規(guī)則規(guī)定的,應(yīng)當(dāng)自受理之日起十五個(gè)工作日內(nèi)向當(dāng)事人出具公證書。
通過(guò)以上分析和比較,我們可以看出兩者的重要區(qū)別是,一份公證書在出具之間會(huì)經(jīng)過(guò)詳盡的實(shí)質(zhì)性審核;而Stampery所謂“公證”的前提是假定文件的實(shí)質(zhì)性審核已經(jīng)完成,文件是真實(shí)有效的,即沒(méi)有虛假材料的可能,也沒(méi)有當(dāng)事人惡意欺詐的可能,其對(duì)文件的證明作用僅限于表面性、格式性審核。
要說(shuō)Stampery所謂的“公證”能夠取代法律概念上“公證”的作用,顯然是低估了人性的復(fù)雜程度。
結(jié)語(yǔ)
“智能合約”本質(zhì)上是一種“計(jì)算機(jī)程序”,是以程序?yàn)榛A(chǔ)的虛擬世界當(dāng)中的特有產(chǎn)物,是在特定應(yīng)用環(huán)境內(nèi)反映了某種合約關(guān)系的程序。
“智能合約”所要調(diào)節(jié)的未必是人與人之間的關(guān)系,也可以是物與物之間的關(guān)系,機(jī)器與機(jī)器之間的關(guān)系。
“智能合約”在虛擬世界中,發(fā)揮其專屬領(lǐng)域的作用,就像“合約”在人類世界中,發(fā)揮其專屬領(lǐng)域的作用。兩者未來(lái)會(huì)并存,誰(shuí)也不會(huì)完全取代另一方。
一份公證書在出具之間會(huì)經(jīng)過(guò)詳盡的實(shí)質(zhì)性審核,而區(qū)塊鏈技術(shù)的“公證”僅對(duì)文件進(jìn)行表面性、格式性審核,所以它不可能取代法律概念上的“公證”。
評(píng)論