以法律视角探究区块链下智能合约的发展前景与局限
2018-01-23周晓靖
周晓靖
华东政法大学经济法学院,上海 200042
近几年来,脱胎于比特币的区块链技术快速发展,引起了金融机构、资本市场、政府决策层的广泛关注。2016年1月中国人民银行在京召开数字货币研讨会,探讨了区块链技术以及发行数字货币的可能性,更加体现了区块链技术在经济发展中可能起到的变革性作用。智能合约作为区块链技术中的核心要素,不仅拥有去中心化、不可篡改和伪造等区块链一般性特征,同时能够实现合同的自动生效和自动履行。随着区块链技术的逐渐成熟和广泛应用,同时基于智能合约的自动化和智能化优势,有人提出,智能合约能够在未来使我们不再需要律师。然而,智能合约作为一种程序代码,真的能够替代传统合同并且替代律师吗?
现有的关于智能合约的中文研究大多都是在金融层面与技术层面上进行分析,这篇文章则试图从法律视角探究上面提出的问题。文章将分为四个方面,分别讨论智能合约的运行原理,智能合约的优势,智能合约的应用场景,以及以现有法律理论分析智能合约的局限性。
一、智能合约运行原理
智能合约最早在1994年由学者尼克·萨博(Nick Szabo)提出,其设计初衷是通过将智能合约内置到物理实体内,使得物理实体变为灵活可控的智能资产。但当时由于技术的落后和应用场景的缺失,智能合约并未受到广泛研究者的关注。而如今区块链技术的快速发展,使得智能合约的发展与应用成为可能。
一般情况下,签署合同的双方就合同内容达成一致,然后通过将智能合约附着在一个区块链交易上的方式来创造一个智能合约。智能合约将传统合同中的自然语言转换成程序编码,传统合同中的条款即转换成编码中预定义的规则,整个合约呈现“if-then”的状态,即如果达到特定时间或发生特定事件,则执行相应情境下的行动。
智能合约最鲜明的特征之一就是去中心化,因为区块链上交易的生效无需依赖于任何中央机构或者受信赖的三人,而是通过全网节点的一致认可,而认可的方式是一套加密算法的验证程序。区块链网络对于所有的参与者而言都是透明可见的,同时密码学的验证方法使得交易具有了安全保障。
智能合约经全网验证后被储存在区块链上,则可不依赖任何第三方地自动化代表合同双方执行合约。区块链可以实时监测智能合约的执行状态和相应的外部数据源,如果确认实现封装在区块中的条件已经满足,就会自动触发执行动作。
智能合约在被部署在区块链上的同时,也被盖上了“时间戳”。“时间戳”使得智能合约具有了不可篡改和不可伪造的特点,这也是区块链的一般性特点。区块链采用单项哈西算法,同时每个新产生的区块严格按照时间线顺序推行,由于时间的不可逆性,任何试图入侵区块链内部篡改信息的行为都很容易被追溯。在传统的中心化网络中,只需对中心节点进行攻击即可破坏整个网络(例如银行),但在一个去中心化的网络(区块链)中,仅攻击单个节点无法控制或破坏整个网络,掌握网内50%的节点只是一个开始①。
在区块链上建立的交易还具有匿名化的特点。卖方只需创建一个新的地址用于接受买方的付款。用户可以随意创建多个地址,若每一笔交易都用一个新的地址,那么就没有人会知道哪个地址是买家或者卖家的,用户的匿名性就得到了保障。然而交易的匿名化并不妨碍合同本身的履行,因为区块链非对称加密技术能够提供合同双方身份及所有权验证。
关于智能合约运作的一个典型例子是房屋租赁。租户通过支付加密货币的方式向房主租住一套公寓,两人约定在2017年11月1日交付房屋,即交付房屋的电子钥匙。智能合约成立后,租户支付的租金被暂时存放在区块链当中。若房主在11月1日前向租户交付了电子钥匙,区块链将会将电子钥匙和租金分别发放到租户和房主手中;若房主11月1日当天没有交付钥匙,区块链则会自动退还租金给租户。②
以上智能合约的成立、生效、执行等一系列环节,体现出智能合约天生的去中心化、自动化、不可变更的特点,这些特点所带来的优点和缺陷,笔者将会在下文的第二、第三节进行详细的讨论。
二、智能合约的优势
智能合约的去中心化,使得交易不再需要中介机构或权威的介入,能够降低交易成本,提高交易效率,同时提高交易的安全性。
降低成本,意味着交易中给第三人的费用支出得以减少,这不仅适用于金融领域,例如银行收取手续费的减少,也同时意味着法律相关费用的降低。合同设定合同双方的权利义务关系,在大多数情况下,合同以双方的义务履行为终止,仅当一方违约或对合同条款发生争议时,合同一方才会诉诸法院。合同当事人在诉诸司法救济希望得到公平的风险分配的同时,也常常承受了大量时间、金钱、精力的投入,特别是在英美法系国家,有时一个民事诉讼案件的诉讼费用甚至高于合同的实际价值。法院的介入是一种事后法律救济手段,那么智能合约则可作为一种保证合同履行的事前措施,能够大大提高合同履行的效率。当一个智能合约被放在区块链上时,它一定程度上已经脱离了合同双方的控制,成为一个公正无私的第三方,一旦预先设定的条件被满足,就会执行合同,一定程度上实现了强制履行的效果,且其内置的违约责任的执行,也很大程度上不再需要司法机关的介入。
另一方面,智能合约在本质上是一个计算机编码。相对于传统合同中自然语言具有的含糊不清的特性,计算机语言的准确性将会大大减少合同双方对于合同条款理解上的歧义,从而也就减少了双方为解决争议而要花费的法律费用,提高了合同履行的效率。
智能合约的安全性也是其优势之一。一方面,匿名化的特点给用户的信息安全提供了保障。顾客在通过加密货币购买商品时不需要提供自己的个人信息,也就意味着没有个人信息会被泄露。另一方面,如第一部分所提到的,智能合约的去中心化令黑客对单个节点进行攻击无法产生破坏效果,也保障了合约的安全性。这样一来,现在所常见的顾客信息泄露、垃圾短信、骚扰电话问题,可能会因为未来智能合约的应用而大大减少。
三、智能合约的应用场景
现如今的智能合约,使得尼克·萨博最初提出的智能资产成为可能。通过对房屋和汽车等资产进行非对称加密,即可实现对于资产的远程控制,实现租赁行业的资产回收率,这也将促进P2P租赁行业的长足发展。
非对称加密是通过秘钥验证的方法,实现交易方本人身份及所有权验证的技术。非对称加密体现为非对称秘钥对——私钥和公钥,私钥只有用户自己掌握,公钥可向他人公开。用其中一个密钥(公钥或私钥)加密信息后,只有另一个对应的密钥才能解开。③通过在智能合约上预设控制规则,满足特定条件后,使用者可获得资产使用权秘钥,完成资产的自动交接。同时,资产所有人还可以通过智能合约控制资产,实现资产回收。
如今,一种汽车防启动装置(starter interrupter)被许多国外汽车租赁公司所讨论和采用。如果在汽车上安装此装置,出现车辆使用者没有在合同规定的期限内交付租金等类似情况,汽车公司就可以通过汽车内装置阻止汽车的启动。这种通过特定权限远程控制汽车使用权的方法,可以大大提高汽车的回收率,解决租赁公司长久以来的商业模式痛点。然而,这种防启动装置的使用仍然需要严格的控制和谨慎使用,例如,公司具有告知使用者车辆内装有防启动装置的义务,汽车不能在行驶的途中被停止发动等。如今各国还没有出台专门针对这种装置合法性的法律法规,尽管美国《统一商法典》中担保权人的自助性重新占有权利(self-help repossession)可能会使得这种装置有合法性依据,但是其潜在的危险仍然不能忽视,因为能否对车辆使用这种防启动装置的决定权在租赁公司手中。丰田汽车公司计划将汽车防启动装置与区块链技术结合,如此便能够解决债务人对于债权人单方面控制汽车的忧虑。④同时,使用区块链技术代替人为管理,也能够进一步降低回收资产的成本,并且间接降低债务人借车的利率。⑤
智能合约同样可以应用在公司决策和股权众筹上。智能合约应用于公司决策场景被称为M-N多重签名,即在设定的N个潜在接受者中,至少提供M个同意签名(私钥)才可解锁,实现支付。⑥智能合约应用于股权众筹场景,使众筹不再需要众筹平台。区块链可记录每一笔融资,当成功达到特定融资额度时计算每个投资人的股权份额,或在一段时间内未达到融资额度时自动将资金退还给投资人。但运行在区块链上的股权众筹,同样具有非法集资和诈骗的风险。尽管众筹的发起者发布了貌似可信的白皮书,然而其在在开发智能合约时,可以将合约代码设定为:当众筹截止日期到达时,不论资金是否集满,资金都将流入开发者自己的账户。在这种情况下,看不懂智能合约代码的人就可能会进入发起者的骗局。⑦因此,众筹发起人发布的白皮书并非100%可信,被编程为代码语言的智能合约才是合同本身,因此只有这些由代码组成的条款才能够成为合同执行的依据,这不仅会成为合同一方欺诈另一方的手段,也为后续对合同条款进行解释造成了困难,从而进一步影响到对合同受害方的救济。而智能合约在法律层面上将面临的问题,将是我们接下来讨论的重点。
四、智能合约的局限性
智能合约是一种技术革新,相对于传统合同,它拥有着不可替代的优势,并且在各个领域有着广阔的发展前景,但是智能合约如何能够适应现行法律法规,或者说,现行的《合同法》的规定以及相应的法律概念能否适用到智能合约身上呢?如同电子书的出现掀起人们对于“电子书能否替代纸质书”的讨论一般,智能合约能够完全替代传统合同吗?智能合约作为一种可以保证合同履行的事前手段,可以完全替代法院等事后司法救济手段的介入吗?笔者认为,答案是否定的。由于智能合约自身的特性,有些类型的合同是其替代不了的,如人身性质的合同;并且智能合约的“智能”一定程度上仅限于自动执行原给付义务,对于以“瑕疵履行”为代表的次给付义务显得无能为力。除了以上提到的应用局限,由于智能合约本身所体现出的不同于传统合同的特点,我们会发现一些现有的法律规定和理论并不能很好的解决智能合约中出现的或可能出现的问题,下面,笔者将从几个现有的合同法理论角度,探究智能合约的在法律适用上的局限以及可能解决的方法。
(一)意思表示瑕疵
意思表示真实是合同成立的要件之一。当一方当事人出现对行为性质、对方当事人、标的物等发生错误认识,而使行为后果与自己的意思相悖时,法律将会依据该错误对于意思表示之决定的重要性、当事人所受的损失等因素来决定是否对意思表示错误的当事人进行救济,这在我国法律中规定为“重大误解”⑧。当意思表示错误出现在合同当中时,法律常常决定合同的哪一方承担责任。我国《合同法》规定,基于重大误解的合同为可撤销合同,并且《民法总则》第一百五十七条规定:“有过错的一方应当赔偿对方由此所受到的损失;各方都有过错的,应当各自承当相应的责任。法律另有规定的,依照其规定。”但如果在智能合约中出现了编码错误,并且导致了一方或多方的重大损失,谁应该来承担责任呢?智能合约的执行完全取决于其内部预置的编码,编码中一个小小的字母的改变能够导致最后输出的结果完全背离双方当事人的意图。并且在这种情景下,由于智能合约自动执行的特性,即使合同一方及时发现了编码错误也并不能阻止智能合约自身向着错误的结果迈进,因为一个已经储存在区块链上的智能合约几乎不可能在被任何人更改。
一个智能合约的编码错误问题,与常见的表示错误中的“当事人误写”相似,若是因为一方代码编写错误而导致损失,自然由错误方来承担责任,若双方在编码生成过程中都有错误,则各自承担相应责任,这一点是很好理解的。但若编码错误的出现不在任何一方的控制之中,风险该如何分配?有人提出运用“情势变更”等相关理论解除合同,免除当事人的不能履行合同的责任。⑨但是“情势变更”是否真的适用于编码错误的情形呢?在《合同法司法解释(二)》第二十六条规定中,只有当合同成立以后发生的客观情况是当事人在订立合同时无法预见的、非不可抗力造成的不属于商业风险的重大变化,才属于合同可变更或解除的范畴。但是在一个计算机网络中,编码错误其实处处可见,甚至我们平常使用的普通的网页程序都会出现代码错误、网页崩溃等问题。因此,当我们在开发或者使用一个电脑程序时,编码错误是完全可以预见的风险,并且时时伴随在网络世界之中。智能合约作为一个本质是运行在区块链上的计算机程序,其程序漏洞的可预见性使得其无法与“情势变更”等现有的法律理论相结合。
另外,若合同双方达成协议后,交由程序员来编写智能合约,程序员需要承担编码错误的风险吗?若该智能合约与一个外界数据库相连(如,股市、汇率),外界数据库出现了程序错误而导致了智能合约执行错误,该外界数据库需要承担责任吗?这些问题也许都需要在将来的实践中才能找到答案,但编码错误作为一个在传统合同中根本不存在的情形,却是以计算机语言为背景的智能合约的潜在风险,这成为了智能合约不可避免的缺陷之一。
(二)不能预见之情形的出现
试想,在文章开头举出的关于智能合约租房的例子中,租户租用的是用来储存后续交易货物的仓库,因此双方在原来条款的基础上增加一条违约责任,即“若房主没有在11月1日之前交付公寓钥匙,则赔偿租户因无法储放后续交易货物而造成的经济损失”。合同成立后,因不可归责于房主的原因,10月30号,仓库失火损毁,完全不能再被使用。对于这种合同双方在订立合同时不可预见到的情形,智能合约将如何应对呢?
类似诸如自然灾害、货币贬值等不能预见且不可避免的情形在现实生活中时有发生,现代合同法学中用于解决这种情况的理论有很多,例如情势变更、不可抗力。“情势变更”概念在上文已经有所提及:合同成立后,发生了当事人不能预见、不能防止的且并非当事人错误的重大变化,致使合同不能履行或如果履行将显失公平,根据诚实信用原则,允许变更或解除合同。英美法中的“合同受挫”(frustration)理论与其相似,并被视为“情势变更”的理论基础之一。“合同受挫”理论来源于17世纪,当时英美法院中的法官总是拘泥于合同条文,事后不能预见的重大变化不能成为免责事由。但是在当事人因该重大变化而无法履行义务或者履行不切实际时,仍将当事人约束在原有合同条款中,则会导致对合同一方当事人的不公,于是“合同受挫”理论由此萌芽。英美法一个典型的关于“合同受挫”的案例是Aluminum Co.of America v.Essex Group,Inc.⑩,本案中,原告负责将氧化铝转化为铝供被告在后续的加工过程中使用,然而在合同成立后,由于石油价格的大幅度上涨,使得原告的非劳动成本上涨远远超出合同双方根据一套复杂的价格公式所确定的价格,并且如果原告继续根据原来合同条款履行义务的话,将会损失超过六千万美元。法院最终判定,原告拥有修改合同中价格条款的权利。然而由于智能合约自身无法被更改的属性,这种救济方法在智能合约背景下是无法成立的。
在这种情况下,智能合约就需要法院的介入。由于智能合约自动执行的特性,尽管在合同执行中出现了对于合同一方显失公平的情形,合同也并不会终止,于是就需要法院在事后采取适当的补救手段,赔偿受害方当事人。不仅对于在合同成立后发生的不能预见之情形需要司法的干预,对于在合同成立之时的显失公平,也需要司法调整。但即使法院在合同执行后做出了尽量公正的审判,情势变更、显失公平等合同本身是可以在当事人承受损失之前更改或撤销的,也就是说,在传统合同背景下,双方是有可能阻止损失的发生或是扩大的,因此相对于传统合同,智能合约在救济手段上的局限是其缺陷之一。
由于智能合约自身的特性,智能合约在合同成立后,就成为了一个封闭的系统,它不再向合同中的当事人开放,也没有为将来合同的变更留有空间。用一句形象的话来总结,就是“合同自此走上了一条不归路。”⑪智能合约这种不可更改的特性,使得情势变更等相关理论很难适用。以情势变更为代表的相关理论,经过历史的发展,来源于法律实践,体现了法律的诚实信用原则与公平原则,但遗憾的是,智能合约在实现自动执行、不可篡改技术的过程中,也丧失了此类理论制度的适用价值,并同时削弱了法律根据此类理论发展出的一系列救济手段的所能达到的“救济”的效果。
(三)意思表示解释
如前文所述,智能合约并非完全排除了司法机关的干预,当智能合约的自动执行对合同一方或多方造成损害,合同当事人可能就要诉诸法院来解决纠纷。一般来说,法官优先根据当时双方当事人订立的合同内容,确定双方权利义务,进行责任分配。但是,智能合约作为一种计算机程序,其语言是代码而非自然语言,因此智能合约对于一般的律师和法官来说是很难理解的,这就为法官确定当事人真实意思表示造成了困难。⑫合同双方当事人协商所决定的合同条款必须要编程为计算机语言方能成为真正的智能合约,这使得双方所协商的“自然语言”版本只是真正的智能合约的前身,而非智能合约的一部分,更不是智能合约本身。智能合约中的条款是合同自动执行的依据,即合同双方权利义务履行的依据,因此,智能合约才是真正的合同。那么,法官在进行合同条款解释时,能否将以自然语言为形式、当事人为订立智能合约而产生的协议、白皮书等文件作为解释的参考,将成为一个问题。
在文章第三部分中提到的,利用股权众筹进行的诈骗问题,受害人能否以信赖发起人公布的白皮书为由,向法院控告发起人诈骗呢?很显然,在这个案件中,发起人发布的白皮书和智能合约中的条款内容不符,可是智能合约用代码语言写成,只要是懂智能合约代码的人一眼就能看出其中的问题,但看不懂代码语言的人却并不能分辨。如果只有理解代码语言的人才能安全的使用智能合约的话,代码语言的专业性将使智能合约永远的远离大众,并且严重的局限了其发展的空间。英美法中的“保证”(warranty)也许能够提供一种解决的思路,“保证”是指合同一方对合同标的的质量、状态、效用等作出的承诺,如果智能合约的执行结果严重违背了众筹发起人发布的白皮书中的内容,那么投资人可以以“违反担保”(breach of warranty)为由,要求众筹发起人承担责任。
但无论如何,我们将看到,对传统合同相比较,法院在对智能合约条款进行解释时将耗费更多的时间与精力,不论是需要聘请专家将智能合约的语言翻译为易为理解的自然语言,还是在解释智能合约的同时再引入其他相关的文件,等等一系列程序都似乎背离了智能合约所致力达到的“提高效率”的初衷。
(四)其他
当事人行为能力适格是合同生效的要件之一,但智能合约运行于网络世界中,合同一方并不能完全确定另一方的身份,也就无法确定对方的行为能力,因此一位行为能力适格的行为人就很有可能无意地与一位无行为能力或是限制行为能力的行为人缔结合同,而这会极大影响到合同的效力问题。设置一个用以检查行为人是否成年的程序也许可以解决这个问题,⑬但却并不能解决在合同成立后、履行完成前合同一方成为限制行为能力人或死亡的情况。
智能合约根据预设的条款自动执行合约,一方面,被认为是保证了合同履行、提高了交易效率,另一方面,合同条款的严格执行原则,也禁锢了合同双方,体现了其僵硬和不够灵活的缺点。美国经济分析法学派提出名为“效率违约”的违约理论,其含义是:如果合同一方发现违约所带来的收益超出其履约所能带来的收益,并且在赔偿合同相对方之后仍有盈余,那么违约则是合理的。⑭也许有人批评这种理论变相鼓励了背信和机会主义,但无论如何,法律并不会禁止“预期违约”,并且该种行为的存在在自由市场经济下有一定的合理性。但在智能合约情景下,合约生效后不论发生怎样的情形,也许是合约一方发现了更好的交易,也许是情况的变化使合约一方若继续履行合同则会蒙受巨大损失,合约双方都无法改变合同的进行,而只能任凭智能合约无可避免地通向一个令人失望的结果。
五、总结
回到文章开头的两个问题:智能合约能够代替传统合同吗?智能合约能否代替律师吗?
智能合约有其能够降低成本、提高效率等明显的优势,它可能面临的诸多法律问题以及缺陷也不容忽视,但我们不能因为它现阶段的不足而拒绝接受这一革新性的技术,也不能否认它对于金融、智能资产、P2P借贷等领域的巨大推动作用。虽然智能合约尚不足以作为替代传统合同的存在,但它可以作为一种可供人们选择的合同形式与传统合同互为补充,并且我们期待着更为健全的法律制度为智能合约以及区块链提供良好的发展环境。
另一方面,智能合约也并不能使律师“失业”。不论是在智能合约生成阶段对合同条款的设计,还是合同执行后可能诉诸法院的阶段,律师仍然是不可缺少的存在,但是在区块链技术快速发展和广泛应用的背景下,在未来,能够同时掌握法律语言与和了解智能合约代码运作的法律人才可能成为一种趋势。
[ 注 释 ]
①“基于PoW共识过程的区块链主要面临的是51%攻击问题,即节点通过掌握全网超过51%的算力就有能力成功篡改和伪造区块链数据.”袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494,10.
②See,Admir Tulic,What Are Smart Contracts in Blockchain Technology,Captainaltcoin[EB/OL].https://captainaltcoin.com/blockchain-smart-contracts/.
③袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494,5.
④See,Peter Coy & Olga Kharif,This Is Your Company on Blockchain,BLOOMBERG BUSINESSWEEK[EB/OL].https://www.bloomberg.com/news/articles/2016-08-25/this-is-your-company-on-blockchain.
⑤See,Max Raskin,The law and legality of smart contracts,1 GEO.L.TECH.REV[EB/OL].http://perma.cc/673G-3ANE,p.29.
⑥袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494,9.
⑦如何在以太坊上发布自己的智能合约[EB/OL].http://www.jianshu.com/p/3aa80732ed73.
⑧《民通意见》第七十一条行为人因对行为的性质、对方当事人、标的物的品种、质量、规格和数量等的错误认识,使行为的后果与自己的意思相悖,并造成较大损失的,可以认定为重大误解.
⑨See,Mark Giancaspro,Is a‘smart contract’really a smart idea?Insights from a legal perspective,Computer Law & Security Review:The International Journal of Technology Law and Practice,2017.5.
⑩See,Aluminum Co.of America v.Essex Group,Inc.,499F.Supp.53,72(W.D.Pa.1980).
⑪See,“there’s no way back from the contract”,Kieron O’Hara,Smart contracts——dumb idea,IEEE Internet Computing,Mar.-Apr.2017,Vol.21(2):97-101.
⑫See,Mark Giancaspro,Is a‘smart contract’really a smart idea?Insights from a legal perspective,Computer Law & Security Review:The International Journal of Technology Law and Practice(2017):8.
⑬See,Mark Giancaspro,Is a‘smart contract’really a smart idea?Insights from a legal perspective,Computer Law & Security Review:The International Journal of Technology Law and Practice(2017):4.
⑭See,Kieron O’Hara,Smart contracts——dumb idea,IEEE Internet Computing,Mar.-Apr.2017,Vol.21(2):97-101.
[ 参 考 文 献 ]
[1]Mark Giancaspro,Is a‘smart contract’really a smart idea?Insights from a legal perspective,Computer Law & Security Review:The International Journal of Technology Law and Practice(2017).
[2]Kieron O’Hara,Smart contracts——dumb idea,IEEE Internet Computing,Mar.-Apr.2017,Vol.21(2).
[3]Karen E.C.Levy,Book-Smart,Not Street-Smart:Blockchain-Based Smart Contracts and The Social Workings of Law,Engaging Science,Technology,and Society,3(2017):1-15.
[4]Max Raskin,The law and legality of smart contracts,1 GEO.L.TECH.REV[EB/OL].http://perma.cc/673G-3ANE.
[5]Peter Coy & Olga Kharif,This Is Your Company on Blockchain,BLOOMBERG BUSINESSWEEK[EB/OL].(Aug.25,2016),https://www.bloomberg.com/news/articles/2016-08-25/this-is-your-company-on-blockchain.
[6]Admir Tulic,What Are Smart Contracts in Blockchain Technology,Captainaltcoin[EB/OL].(July.5,2017),https://captainaltcoin.com/blockchain-smart-contracts/.
[7]袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494.
[8]陈婉秋.合同受挫原则在英美法中的形成与发展[J].法制与社会:旬刊,2011(18):94-95.