華中師范大學(xué)法學(xué)院 袁笑雨,沈思琴
理解智能合約的概念,最早由尼克·薩博于1996年提出,但是當(dāng)時并未引起廣泛關(guān)注,也未被廣泛投入實(shí)際應(yīng)用。今天理解智能合約,首先應(yīng)當(dāng)先理解智能,智能即是指在計算機(jī)輔助幫助下,通過既定設(shè)置的程序,自動化實(shí)施某一行動;其次理解合約,按照《民法典》理論,合約是指民事主體,包括自然人、法人和非法人之間,通過意思表示一致達(dá)成的合意,包括意思的形成、意思的傳遞、意思的受領(lǐng)等幾個要素。因此,對智能合約的通俗理解為,在計算機(jī)輔助幫助下,自然人、法人和非法人之間,通過既定設(shè)置的程序,自動地達(dá)成某種合意。但是,本篇所稱智能合約的概念不僅止于此,本篇所稱智能合約,上述概念之外,還包括:在自動達(dá)成某種合意的情況下,在區(qū)塊鏈技術(shù)支持下自動地履行合約。因此,本篇所稱智能合約,除了要自動達(dá)成合意外,還要自動進(jìn)入履約階段。
正如前言所述,智能合約與傳統(tǒng)民法通則規(guī)定的合同有很顯著的區(qū)別,智能合約絕不僅僅是傳統(tǒng)合同的數(shù)字化、代碼化,也不僅僅是單一靜態(tài)展示的可視化文本或代碼,而是在區(qū)塊鏈技術(shù)支撐下,能夠?qū)崿F(xiàn)智能達(dá)成靜態(tài)合意,又能自動進(jìn)入實(shí)質(zhì)履行階段的一系列動態(tài)法律行為。綜上所述,智能合約與傳統(tǒng)合約相比,具有自動性、執(zhí)行性和匿名性三個特點(diǎn)。
第一,自動性特點(diǎn)十分鮮明。正如前文所述,智能合約與傳統(tǒng)合約相比,最大的特點(diǎn),也是最鮮明的特點(diǎn),就是自動性。通過計算機(jī)網(wǎng)絡(luò),把原本需要自然人、法人和非法人通過一定的意思自治,傳達(dá)至對方,并形成合意的一系列動作,變成了以模塊化代碼方式的自動化組合,最終形成了合約。
第二,執(zhí)行性特點(diǎn)十分獨(dú)特。與傳統(tǒng)合約相比,智能合約的另一獨(dú)有特點(diǎn)是執(zhí)行性。傳統(tǒng)合約是單一的將要履約的意思合意,但將來履約還是不履約,或者怎樣履約都是存在變化的,這些變化都需要簽署合約的雙方共同行為,這些行為已經(jīng)超出了合約本身的范疇。但是,智能合約,卻可以不用通過合同相對方的參與,在一定授權(quán)范圍內(nèi),自動進(jìn)入履約階段,如前文對智能合約概念的辨析,這個執(zhí)行行為本身就屬于合同范疇,單從這個角度來講,智能合同與傳統(tǒng)合約相比,它的執(zhí)行性特點(diǎn)十分獨(dú)特。
第三,匿名性特點(diǎn)十分必要。區(qū)塊鏈技術(shù)構(gòu)建起一套強(qiáng)大的信用體系,在這套體系下,合同的簽署雙方可以無需刻意展現(xiàn)其真實(shí)信息,而是在區(qū)塊鏈技術(shù)主導(dǎo)下,依靠智能合約自動地進(jìn)入合作履行階段,這使得合同的簽署和履行,不必受到商行背景的影響,構(gòu)建起一種可以被雙方都認(rèn)可的可視化平等條件,實(shí)現(xiàn)合同簽署雙方的實(shí)質(zhì)平等,從而減小人為因素導(dǎo)致合同履行風(fēng)險,最終實(shí)現(xiàn)合同最初簽署目的,極大程度地保護(hù)了交易安全。
第一,智能合約對意思自治的限制。不管是現(xiàn)在的《民法典》還是以前的《民法通則》對意思自治原則的表示大體相同,即是民事主體在從事民事活動期間,就當(dāng)嚴(yán)格按照民事主體自己的意思設(shè)立、變更或者終止民事法律關(guān)系,任何人任何組織都不能強(qiáng)迫或者威逼其他民事主體為或者不為一定民事行為。對照《民法典》意思自治原則,以區(qū)塊鏈作為底層技術(shù)支撐的智能合約受到三個方面的限制:一是模式限制,智能合約只能采取編程計算機(jī)程序模式進(jìn)行,這就要求合約擬定的當(dāng)事人必須具備計算機(jī)編程能力或通過相關(guān)專業(yè)人員進(jìn)行合約擬定;二是平臺限制,目前只能合約的擬定大多只能在公司提供的相應(yīng)區(qū)塊鏈技術(shù)平臺上操作(目前主要是“以太坊”);三是方式限制,智能合約只能以代碼形式作出意思表示,這不同于我們常用的書面形式、口頭形式,也不同于電文、電子數(shù)據(jù)形式。第二,智能合約意思表示可能存在偏差。智能合約的過程分為協(xié)商、開發(fā)和部署三個階段,在協(xié)商時它的運(yùn)行方式和傳統(tǒng)合約類似,當(dāng)事人就合約內(nèi)容進(jìn)行協(xié)商,而后轉(zhuǎn)換成計算機(jī)代碼。而計算機(jī)語言與日常交流不同,不能直接透徹地表達(dá)當(dāng)事人的意思,因此意思表示可能出現(xiàn)偏差。
第一,智能合約生效時間的認(rèn)定?!睹穹ǖ洹返?02條規(guī)定:依法成立的合同,自合同成立時生效。智能合約從擬定到完成,需要經(jīng)歷諸多程序,比如履行前的協(xié)商,寫代碼編程,本地驗證、打包、發(fā)塊等。經(jīng)過這些程序后,合約直接進(jìn)入了不可逆階段。因此這些過程中哪一步程序完成后我們就可以認(rèn)定智能合約生效,目前尚無定論。筆者觀點(diǎn):合約各方達(dá)成一致,編寫程序,程序設(shè)定完成合同成立,成立時生效。附條件,附期限按照法律規(guī)定。第二,智能合約對認(rèn)定合同效力難度的影響。匿名性無法識別身份,在目前的技術(shù)下,沒有技術(shù)手段可以回溯查詢確定賬戶實(shí)際控制者的年齡,無民事行為能力人和限制民事行為能力人、無權(quán)代理人等都可以利用他人賬戶訂立合約,無法認(rèn)定合同效力。
第一,合約的變更。根據(jù)《民法典》之相關(guān)規(guī)定,民事主體可以協(xié)議變更合同。但是,對傳統(tǒng)合同來說,極其簡單普通的民事行為,在智能合約中實(shí)現(xiàn)起來無論是難度,還是成本都非常大。究其原因主要是智能合約有自動性和執(zhí)行性的顯著特點(diǎn),這兩個特點(diǎn)早已在一定程度上突破了合同的相對性,已經(jīng)按照先前設(shè)定好的規(guī)則生成的合約基本上不可逆轉(zhuǎn),即使是雙方當(dāng)事人協(xié)商一致也不能對已經(jīng)生效的合約進(jìn)行變更或者解除。針對這一情況,目前比較通常的解決辦法是將合約的變更,同樣以程序的方式一同制定,但這其中仍然存在的問題是,未來的不確定性因素太多,不可能窮舉所有的可能。第二,合約的解除。根據(jù)《民法典》第562條和第563條,民事主體可以協(xié)議解除合同。同樣,對傳統(tǒng)合同來說,極其簡單普通的民事行為,在智能合約中實(shí)現(xiàn)起來無論是難度,還是成本都非常大。究其原因主要是智能合約本身具有很強(qiáng)的執(zhí)行性,這種執(zhí)行性基本上不可逆轉(zhuǎn)。在區(qū)塊鏈智能合約運(yùn)用過程中,一旦需求進(jìn)行了正式發(fā)布,合約就會自動生成,并且自動進(jìn)入到執(zhí)行階段,這就導(dǎo)致智能合約的解除受到很多限制。這里還帶來另外一個隱患就是,如果智能合約出現(xiàn)極其危險的缺陷時,需要將存在的合約進(jìn)行解除,針對這一情況,目前運(yùn)用最多的方式是強(qiáng)制自毀,這無疑是降低效益浪費(fèi)資源。第三,合約的救濟(jì)。以區(qū)塊鏈技術(shù)作支撐的智能合約,由于其技術(shù)的新穎性和復(fù)雜性,目前智能合約的應(yīng)用還不夠廣泛,甚至有一點(diǎn)小從,其發(fā)展也不夠迅速,主要依賴于諸如“以太坊”這類的平臺。但是依賴于這些平臺有天然的劣勢,一是這些平臺根本不是法人,它沒有員工,更沒有管理,它只是一個十分類似于應(yīng)用平臺的一個東西;二是監(jiān)管技術(shù)缺失的問題比較突出,由于這類平臺基本上是以系統(tǒng)程序的方式運(yùn)行在網(wǎng)絡(luò)之中,因此也需要像其他網(wǎng)絡(luò)產(chǎn)品一樣時刻處于監(jiān)督之下,但目前沒有類似的專門監(jiān)督機(jī)構(gòu)。并且,像普通合約一樣,智能合約同樣存在惡意、欺詐、重大誤解等影響合約效力的情況,但是智能合約對這類現(xiàn)象很難進(jìn)行救濟(jì)。
眾所周知,計算機(jī)語言是二進(jìn)制語言,用二進(jìn)制語言編寫的智能合約技術(shù)規(guī)則,必然與傳統(tǒng)法律條文的語言表達(dá)方式存在較大的區(qū)別或者差距,這種區(qū)別和差距本身具有很強(qiáng)的難以彌補(bǔ)性,即使在進(jìn)行語言轉(zhuǎn)換時,編譯者的技術(shù)水平和法律知識水平都屬于頂尖水平,卻仍然難以確保通過二進(jìn)制編譯的智能合約與立法的條文表達(dá)一致,從而影響了智能合約的合法性。因此,本篇認(rèn)為應(yīng)當(dāng)對《民法典》中的意思表示一致作擴(kuò)大解釋,在判斷智能合約所表述的意思是否滿足意思自治且一致時,應(yīng)當(dāng)根據(jù)具體情況進(jìn)行認(rèn)定,只要程序代碼客觀真實(shí)地反映了當(dāng)事人的意思表示,即可以認(rèn)定為《民法典》中的意思表示一致,此種情況下應(yīng)當(dāng)允許普通法律文本到計算機(jī)語言轉(zhuǎn)換的一定量誤差。
智能合約相比傳統(tǒng)合約,其顯著特點(diǎn)是其從協(xié)商擬定合約到實(shí)際進(jìn)行履行,期間要經(jīng)過多重程序的控制。傳統(tǒng)合同對合同生效時間的認(rèn)定,一般情況是意思表示一致時合同成立,對于智能合約而言,由于期間涉及的程序較多,容易出現(xiàn)合約生效時間認(rèn)定方面的糾紛。本篇認(rèn)為,應(yīng)當(dāng)在《民法典》合同編中對智能合約的生效時間作出規(guī)定,具體來講就是以當(dāng)事人雙方協(xié)商一致完全合約程序為生效時間最為合適。對于其他普遍性規(guī)定,如附條件合同、附期限合同,也可以在《民法典》中進(jìn)行適當(dāng)明確。
前文論述智能合約特點(diǎn)時指出,不可逆性是智能合約與傳統(tǒng)合約最大的差距。智能合約需要得到廣泛運(yùn)用,就是要解決普通合同可以逆向操作的問題,也就是說要在《民法典》中,作出一些規(guī)范性的規(guī)定。比如,可以嘗試規(guī)定在智能合約不可逆造成一定損害的情況下,當(dāng)事人責(zé)任認(rèn)定以及賠償?shù)葐栴};也可以規(guī)定,在當(dāng)事人一方行使撤銷權(quán)、解除權(quán)的情況下,怎么進(jìn)行賠償?shù)膯栴},以及賠償附件程序性問題如何解決等問題。
正如前文所述,由于智能合約本身的屬性,導(dǎo)致智能合約在履行過程中,必須出現(xiàn)一些民事糾紛問題,但是這種糾紛又很難在現(xiàn)有技術(shù)、規(guī)范條件下解決。因此,為了解決違約責(zé)任出現(xiàn)后,被損害人救濟(jì)的問題,需要在《民法典》中以特定條款的形式,對因智能合約違約造成的糾紛救濟(jì)進(jìn)行規(guī)定,以防止糾紛解決無法可依的局面出現(xiàn)。