(網(wǎng)經(jīng)社訊)不夸張地說,智能合約是會(huì)顛覆現(xiàn)有合同立法和實(shí)踐的區(qū)塊鏈新應(yīng)用,但區(qū)塊鏈智能合約到底是怎么一回事,很多法律人云里霧里的,筆者從應(yīng)用場(chǎng)景、部署執(zhí)行和代碼示例三個(gè)方面,層層深入做個(gè)介紹,研究這些的目的在于分析智能合約對(duì)合同法律實(shí)務(wù)的影響,對(duì)此我的個(gè)人觀點(diǎn)附在最后。
一、應(yīng)用場(chǎng)景
智能合約可以簡(jiǎn)單理解為能夠自動(dòng)履行的合約,日常生活中最普及的智能合約當(dāng)屬自動(dòng)販?zhǔn)蹤C(jī),就像郭德綱在相聲里說的:“一放錢就出東西,一放錢就出東西,太神奇了”。
基于區(qū)塊鏈的智能合約又有什么與眾不同之處呢?接下來就是重點(diǎn)了:區(qū)塊鏈去中心化的記賬方式使得合約的自動(dòng)履行變的成本更低、更容易實(shí)施。價(jià)值區(qū)塊鏈本身就被廣泛用于各種電子貨幣,可以將合約履行中的支付環(huán)節(jié)無縫嵌入,在確保安全的前提下,進(jìn)一步降低交易成本,妥妥的按照經(jīng)濟(jì)規(guī)律辦事。
如果不是很理解,我們舉幾個(gè)例子。生活中最令人頭疼的交易之一就是買房,下面是一手房買賣的流程圖,買過房子的人都知道,這個(gè)流程也不過是簡(jiǎn)化版,實(shí)際需要辦的手續(xù)和環(huán)節(jié)比這還要繁瑣。
為什么會(huì)出現(xiàn)這種情況?因?yàn)榻灰纂p方誰也信不過誰,因此需要引入房產(chǎn)中介、銀行、征信中心、房管局、公證處等若干個(gè)中心化的機(jī)構(gòu)來相互印證和背書。
那么如果把房產(chǎn)放到區(qū)塊鏈上交易呢,理論上講,就可以跳過這些中間環(huán)節(jié),直接買賣,因?yàn)榉慨a(chǎn)的權(quán)利信息和付款信息以及過戶信息全部留存在區(qū)塊鏈上,所有節(jié)點(diǎn)都記錄了這筆交易的備份。
然后合約程序會(huì)不斷核查買家是否已經(jīng)把購房款存放到約定的錢包里(如果需要貸款,那么就是買家和銀行達(dá)成另個(gè)區(qū)塊鏈智能合約)。當(dāng)錢包里的金額滿足合約中約定的數(shù)量,合約程序會(huì)自動(dòng)將錢轉(zhuǎn)給開發(fā)商,同時(shí)自動(dòng)將產(chǎn)權(quán)信息變更到買家名下并向所有節(jié)點(diǎn)廣播,交易完成。
當(dāng)然,這種復(fù)雜的交易場(chǎng)景目前還無法實(shí)現(xiàn),舉這個(gè)例子就是想讓大家看到未來的合約形態(tài),就好像之前使用金屬貨幣的時(shí)代也無法想象可以用紙幣支付,直到各類基礎(chǔ)設(shè)施完善之后便習(xí)以為常了。
再說個(gè)簡(jiǎn)單點(diǎn)的應(yīng)用場(chǎng)景,是筆者從釋了雯所寫的《智能合約是什么》一文中看到的,講的是買飛機(jī)延誤險(xiǎn)的例子,投保乘客信息、航班延誤險(xiǎn)和航班實(shí)時(shí)動(dòng)態(tài)均以智能合約的形式存儲(chǔ)在區(qū)塊鏈上,一旦航班延符合賠付標(biāo)準(zhǔn),賠償款將自動(dòng)劃賬到投保乘客賬戶,理賠過程沒有人工參與,避免爭(zhēng)論和糾紛。
兩個(gè)例子涉及到的場(chǎng)景一個(gè)復(fù)雜一個(gè)簡(jiǎn)單一些,但是可以推而廣之到幾乎所有的交易場(chǎng)景中去。而且,不難發(fā)現(xiàn),區(qū)塊鏈智能合約應(yīng)用能否落地的關(guān)鍵,在于人們把多少資產(chǎn)數(shù)據(jù)和行為數(shù)據(jù)放到鏈上去,就像前面的例子,投保乘客信息、航班延誤險(xiǎn)和航班實(shí)時(shí)動(dòng)態(tài)這些數(shù)據(jù)必須放到區(qū)塊鏈上,智能合約才有自動(dòng)執(zhí)行的可能。
二、部署執(zhí)行
基于區(qū)塊鏈的智能合約的構(gòu)建及執(zhí)行分為如下步驟:
1、智能合約制定:由區(qū)塊鏈內(nèi)的兩個(gè)以上用戶共同制定一份智能合約,為此需要如下動(dòng)作:
起草并同意一份代碼版的智能合約;
對(duì)“合約使用到的外部數(shù)據(jù)源、糾紛解決途徑”等問題達(dá)成共識(shí);
代碼審計(jì)和測(cè)試,確信不存在后門或者惡意漏洞。測(cè)試運(yùn)行結(jié)果是否正確;
同意并部署到區(qū)塊鏈上。
2、智能合約上鏈:智能合約通過P2P網(wǎng)絡(luò)擴(kuò)散到每個(gè)節(jié)點(diǎn),并存入?yún)^(qū)塊鏈。部署智能合約同樣要交付費(fèi)用,以便礦工有動(dòng)力為合約提供記賬區(qū)塊。以太坊是目前公認(rèn)對(duì)智能合約提供最完善支持的區(qū)塊鏈,部署運(yùn)行一段智能合約時(shí),以太坊會(huì)收取費(fèi)用,直到你的智能合約運(yùn)行完畢。
3、智能合約執(zhí)行:智能合約定期進(jìn)行自動(dòng)機(jī)狀態(tài)檢查,將滿足條件的事務(wù)進(jìn)行驗(yàn)證,達(dá)成共識(shí)后自動(dòng)執(zhí)行并通知用戶。
三、代碼示例
下面是太坊官方的一個(gè)示例合約,實(shí)現(xiàn)的功能就是在區(qū)塊鏈上存儲(chǔ)一個(gè)數(shù)字,并能夠讀取出來,存儲(chǔ)的數(shù)字在實(shí)際應(yīng)用場(chǎng)景中可以代表“錢”、“房門密鑰”、“軟件安裝許可碼”、“門票二維碼”等等,因此這段代碼類似一個(gè)將虛擬財(cái)產(chǎn)寄存和交付的合約雛形。代碼如下:
contract SimpleStorage {//存取合約程序開始
uint storedData; //定義一個(gè)存儲(chǔ)的數(shù)據(jù)
function set(uint x) {
storedData = x; // 通過set函數(shù)存儲(chǔ)一個(gè)數(shù)字在X變量中(例如手工輸入)
}
function get() constant returns (uint retVal) {
return storedData; //通過 get函數(shù)從X變量中讀取這個(gè)數(shù)字出來
}
}//存取合約程序結(jié)束
啟動(dòng)以太坊私有鏈Geth和Ethereum-Wallet圖形界面,將代碼復(fù)制到合約界面中,按照流程支付部署費(fèi)用(gas價(jià)格,以太幣計(jì))即可發(fā)布,運(yùn)行結(jié)果正如在下圖所示,執(zhí)行界面中輸入選擇set函數(shù),并輸入一個(gè)數(shù)值(1234),最終的結(jié)果就是在get函數(shù)的retVal一欄看到對(duì)應(yīng)的值(1234)。
本程序代碼和界面示例均選取自中國人民保險(xiǎn)集團(tuán)李赫撰寫的《區(qū)塊鏈開發(fā)(二)部署并運(yùn)行第一個(gè)以太坊智能合約》一文,了解更多可以查看全文。
四、智能合約對(duì)合同法律實(shí)務(wù)的影響
1、盡管本文只是初步的在三個(gè)層面對(duì)區(qū)塊鏈智能合約做了介紹,但可以看出接下來合同律師要做的是結(jié)合代碼和區(qū)塊鏈的工作原理出發(fā)去設(shè)計(jì)合同(程序),而不僅僅是從條款本身去設(shè)計(jì);
2、大量的合同都會(huì)有第三方做成標(biāo)準(zhǔn)的模版發(fā)布到鏈上供調(diào)用,但是會(huì)有諸多復(fù)雜、針對(duì)性的、個(gè)性化的智能需要單獨(dú)去制作,這部分工作為律師提供了發(fā)揮的空間,屆時(shí)律師有點(diǎn)像是產(chǎn)品經(jīng)理的角色,給程序員提需求并設(shè)計(jì)合約框架;
3、合同審查將被合同審計(jì)所取代,這個(gè)環(huán)節(jié)會(huì)有律師參與的空間,說不定重要的合同還需要律師出具法律意見,但律師要看懂這些合同的前提,是技術(shù)人員把這些代碼翻譯成律師能看明白的表述,因此,未來法律人對(duì)技術(shù)人員的依賴度會(huì)非常高;
4、區(qū)塊鏈智能合約雖然是自動(dòng)執(zhí)行,但履行完畢的合同不意味著一定沒有糾紛,仍然存在外部數(shù)據(jù)源錯(cuò)誤等原因?qū)е碌暮贤m紛,但顯然糾紛出現(xiàn)頻率會(huì)大大降低(設(shè)計(jì)不成熟或者審計(jì)不通過的合同很難通過區(qū)塊鏈大規(guī)模部署應(yīng)用),未來不會(huì)與那么多合同糾紛訴訟了,就算有,解決的渠道也不一定在法院(去中心化)。
張延來律師介紹:
網(wǎng)經(jīng)社電子商務(wù)研究中心高級(jí)特約研究員、浙江墾丁律師事務(wù)所主任律師、專利代理人資格、中國政法大學(xué)實(shí)踐導(dǎo)師、杭州仲裁委員會(huì)仲裁員、墾丁網(wǎng)絡(luò)法學(xué)院創(chuàng)始人
工作經(jīng)歷:
浙江大學(xué)法律碩士,具有法律和計(jì)算機(jī)雙專業(yè)學(xué)科背景,執(zhí)業(yè)以來完全專注于互聯(lián)網(wǎng)法律實(shí)務(wù)工作,擔(dān)任數(shù)十家知名一線互聯(lián)網(wǎng)公司常年法律顧問,并代理多個(gè)代表性互聯(lián)網(wǎng)訴訟案件。
立法與學(xué)術(shù)
曾多次參加網(wǎng)絡(luò)相關(guān)立法工作,是國家工商總局《網(wǎng)絡(luò)交易管理辦法》、杭州市《網(wǎng)絡(luò)交易管理辦法》立法小組成員,曾多次參與中國《電子商務(wù)法》的立法研討工作。
個(gè)人專著《法眼電商》《網(wǎng)絡(luò)法戰(zhàn)記筆記》已由法律出版社出版。