APP下载

智能合约:通过合同的自治框架

2022-09-27

河南财经政法大学学报 2022年5期
关键词:信赖代码共识

吴 烨

(兰州大学 法学院,甘肃 兰州 730000)

一、问题的提出

科技与法律遵循各自不同的发展轨迹,一个是信马由缰,一个是遵循历史。伴随着区块链智能合约不断发展,技术崇拜者们不断宣扬着“代码即法律(Codeas Law)”的论调,鼓吹着“技术自治”等言论,试图渲染现有法律对智能合约的规制失灵,这实乃是对智慧社会公平与正义的藐视,极易令新技术沦为规避实定法的工具。但是,在法律与科技这两种不同力量的相互约束中,有关智能合约的法学研究却呈现出了实践与理论相互脱离的“两张皮”现象——一边是市场实践的迅速发展与结构演变,而另一边是法学研究的技术盲点及思维固化。

目前,法学界多认为,智能合约是一种合同(或准合同)。譬如,认为智能合约是智能化合同,电子合同的升级版;或认为智能合约是交叉合同;又或干脆认为智能合约与传统合同无异……无论百家如何争鸣,似乎都无法逃脱一个思维惯性:我们总是在合同法理论中寻找智能合约的存在意义,不断地在“要约”与“承诺”中寻找着我们可以理解的“智能合约”。但是,一个首先需要予以澄清的问题是,智能合约虽然名为“合约”,但它真的是传统合同法上的合同吗?为回答此问题,不仅需要认清智能合约与传统合同之间的本质差异,还要厘清技术进步与法律规范之间的“猫鼠”追逐关系,更要明确立法应当从私法视角诠释科技进步,还是从公法角度规制科技进步,抑或是紧跟科技脚步不断更迭法律规则?未来已来,我们无疑不得不做出选择。对此,本文通过以下三个层面的分析以回应上述问题。

第一,对智能合约进行系统化解释,防止盲人摸象问题。每一个智能合约,均是相对独立的“生态系统”。其与合同有关,但不等同于合同本身。智能合约拥有自己的目标及使命,成员分工被细化与深化,不同参与者扮演着不同的角色,这些角色相互依存与促进,从共同目标中获利。智能合约具有组织的雏形,却不同于一般组织形态,且不具备法律人格。智能合约以“组织”的外壳运作,在法律面前却是透明的。它们就像“隐形人”,无法成为司法程序的当事人,这必然造成了一系列的法律困境。

第二,穿透技术表层,剖析内部构造,对智能合约进行类型化分析。智能合约并非单一模式,而是通过合同与代码的不同组合方式,从而产生了不同的自治构造。有必要对智能合约进行类型划分,明确不同自治构造的功能差异,从而厘清智能合约成员的权利义务关系,在此基础上,进一步明确纠纷解决路径及当事人的法律责任。当团体自治开始日益依赖科技时,如何在个人利益、社会公共利益之间做出利益权衡与价值判断,绝非易事。我们鼓励科技进步,但不会允许科技进步过程中出现的不寻常风险被扩充到“实验室”之外,因而需要采取必要措施控制风险。

第三,引入团体法逻辑,厘清智能合约当事人的信赖基础,并在私法语境下论证智能合约的团体表决机制,证成智能合约对自由价值的遵从。私法是建立在个人自由主义基础上的,侧重强调个人自由的价值。智能合约的法律构造、交易机制及自治规则,均具有浓厚的团体自治色彩,特别强调团体法意义上的自由价值。当新技术改变着法律秩序,改变着我们的生活方式,改变着我们的权利,这必将会产生很多不确定性,这种不确定性就是所谓的风险。对于这种风险,法律该何去何从,这同样是非常重要的问题。唯有厘清上述问题,才可以有效协调个人自由与团体自由之间的关系,促进科技进步与法治进步的共同发展,有效保障私人关系与私权利,以夯实智慧社会的公平与正义之法治根基。

二、智能合约是合同吗?

比较智能合约与传统合同的差异,可以发现智能合约对传统私法带来了挑战。尽管我国多数学者认为智能合约是一种合同,但实际上,其与传统合同在意思表示、条款解释、订立及履行等方面,均具有重大差异。笔者认为,智能合约并非传统合同法上的某种合同,而是集合同文本、合同履行与组织治理为一体的一种自治框架,它更多彰显的是当事人之间的动态关系及自治规则。

(一)运行机理

尼克·萨博(Nick Szabo)最早提出了“智能合约(smart contract)”概念,他将其定义为“自行执行的数字化合同”,即当合同中预先设置的情形发生时,便会立即执行智能合约中的某项合同条款。不过尼克·萨博所谓的智能合约,仅停留在想象阶段。而这一畅想,却误导了当今人们对智能合约的理解,将智能合约视为一种数字化合同。然而,智能合约虽然名为“合约”,却远非合同概念可以完全涵盖的。对此,著名的智能合约平台——以太坊(Ethereum)的创始人Vitalik Buterin曾指出,智能合约这个词本身具有误导性,更准确地描述应当是“持久性脚本(persistent scripts)”[1]。

传统合同往往要经过要约邀请、要约、承诺、订立、履行等环节。如有违约情形,当事人可以将合同作为一种证据,提交至法院以获得相应的救济。然而,智能合约的流程与传统合同不同,大致可以归纳为“协商—转化为代码—双方提供符合合同约定的足额资金—确定合同的触发条件—私钥签名—发送到区块链—通过共识机制表决—去中心化账本做记录—条件达成后强制履行”。由此可见,与传统合同相比,智能合约的一大特点是“强制履行”。预设于智能合约中的要件一旦被触发,合同的订立与履行同时进行。实际上,即便是电子合同,在条件达成后虽然也可能会被自动执行,但是合同的订立与履行并非同时进行,完全可以进行中断操作。

智能合约是一串代码,它通过共识机制自动执行,基本逻辑可以归纳为“若发生某种情况,则执行某项结果(if…then…)”。在以太坊平台中,智能合约被存储在每个“矿工”的计算机内。智能合约的“交易”,是通过各方主体向智能合约地址发送数字签名的方式予以开展的。这里所谓的“交易”,是一种数据记录,其中包括智能合约代码运行所必需的变量以及发送方的数字签名等内容。交易记录存储在以太坊的区块链上,一旦被存储,保存的记录便会触发智能合约的执行,智能合约代码由支持该区块链网络的所有矿工共同运行。一旦智能合约被触发,智能合约就不再受到人为的干预,将会自动协助当事人进行交易安排。

与人类语言不同的是,智能合约以预期设置的固定方式自动运行。以保险合同为例。在传统的保险交易中,当事人经过协商签署合同,如遇违约情形,一方当事人可以将合同作为证据提交法院,由法院作出裁判并强制执行。而在智能合约中,当事人经协商后将合意转化为代码,确定智能合约的执行条件,双方提供符合合同约定的足额资金并冻结在区块链上。之后,当事人使用私钥对智能合约进行签名,并发送到区块链中,等待共识机制的投票,验证成功后,该智能合约将被记载于区块链上并全网广播。智能合约生效后,由预言机(oracle machine)进行虚拟世界与外部世界的信息传输,如该保险合同的赔偿条件为“气温达到37摄氏度以上,保险公司将对被保险人进行理赔”。预言机可以和天气预报网站相互关联,一旦气温达到设置的触发要件,智能合约将会自动完成对保险公司的扣款与对被保险人的转账支付[2]。

智能合约并不是一种合同,却又与合同密切相关。确切而言,智能合约是一种集合同文本、合同履行与组织治理为一体的动态机制。以通证类智能合约(smart contract token)为例,此类智能合约的作用是创建、追踪和分配所有权。该系统由不同合约相互组合而成,每个合约均具有不同功能,譬如按持股权重投票(治理型通证)、分配公司股权(证券型通证)或数字资产(非同质化通证)所有权移转等,不同当事人通过该系统参与整个智能合约的运作。智能合约离不开区块链的技术支持。区块链网络具有三大要素:分布式记账、去中心化与共识机制。其中,“分布式记账”保证系统内的当事人无法更改已经被记载的事项;“去中心化”的本质在于“去中央监管化”,防止任一中心化机构干涉系统运作,每个当事人均承担着维护系统的职责,只不过分工有所不同;“共识机制”则是智能合约的重点,它是智能合约的决策机制,决定了合同是否履行、团体投票决议等重要事项,用以治理整个智能合约系统。共识机制的作用是,保障各方当事人遵守共识,确保区块链中的信息真实有效且各方诚实不欺。

(二)学说梳评

对于智能合约的法律性质,多数我国学者认为智能合约是一种合同,该观点还可进一步分为传统合同说与新型合同说。

传统合同说认为,智能合约旨在划分当事人的权利义务关系,与传统合同基本无异,均具有“合意”,是一种格式合同,就合同主体、意思表示及纠纷解决等方面,智能合约并未改变传统合同法的基本规则[3]。智能合约中的内容以代码形式出现,应认定为属于合同法中的数据电文[4]。有学者根据智能合约的不同触发条件,又将智能合约进一步分为“附条件格式合同”和“附期限格式合同”[5]。前者由特定行为或事件触发,后者则由特定时间触发。该观点具有一定道理,不过,由于智能合约的架构灵活且多变,因不同的组织目的会有不同的触发条件,甚至是多种触发条件的混合,不止“附条件”和“附期限”这两类触发条件。若将智能合约机械地理解为某一种民事合同,可能会忽视智能合约的交易风险及法律风险。

新型合同说则认为,智能合约虽然是合同,但无法归至合同法的规范框架,是一种超越现有法律的“合同”存在,需要专门立法予以规范。此类观点认为,我国合同法规则不能适应智能合约的发展要求,智能合约对要约、承诺的撤回、合同效力判定、合同变更解除等方面产生了重大冲击[6]。甚至认为,智能合约的救济途径不再是法律救济,而是“代码之治”[7]。也有学者指出,智能合约虽然可以大幅度降低签订和执行合同的成本,但是对于复杂的条款内容,它尚无法完全取代传统合同。

不过,国外学者对智能合约的探讨并不仅局限于合同说,典型的代表观点是自助行为说和第三方托管说。自助行为说认为,智能合约不是法律意义上的合同,而是一种自助(self-help)行为,智能合约的自动履行是一种先发制人的自助形式[8]。对此,也有学者质疑,认为传统自助行为必须在司法监管下进行,但智能合约并非如此,智能合约更类似于一种以代码为表彰的第三方托管安排(escrow arrangement)[9]。需要注意,无论是自助行为说抑或第三方托管说,均与合同说具有本质差异,即不拘泥于合同法领域解释与规范智能合约,而是转向关注智能合约的团体法属性,特别强调智能合约当事人之间的自治规则。

在美国统一法律委员会(Uniform Law Commission,UCL)发布的《关于统一电子交易法、联邦电子签名法、区块链和“智能合约”之的关系指引(Guidance Note Regarding the Relation Between the Uniform Electronic Transactions Act and Federal Esign Act,Blockchain Technology and “Smart Contracts”)》中也指出,智能合约不同于任何法律意义上的合同[10]。这是因为,智能合约的表彰形式是计算机代码,即可能创设一项合同,也可能用于证明合同,还可能用于履行合同义务,甚至可能用于证明义务是否被履行。英国司法专责小组(UK Jurisdictional Taskforce,UKJT)也表达了类似观点,认为无法将智能合约归类于任何一种合同类型,“智能合约”远比传统合同的概念范畴宽泛[11]。就此而言,若将智能合约拘泥于合同法范畴探讨,将其简单等同于“智能化的合同”,难免会出现盲人摸象的结局。

(三)对传统合同法的冲击及挑战

传统合同基于当事人之间的信赖关系,具有相对性及可撤销性。与传统合同的重大区别是,智能合约跨越合同订立与履行两个阶段,促成其难以逆转的自动执行特点,在事实上排除了当事人的合同撤销权[12]。当事人的合意,体现为其对智能合约共识机制的共同认可与信赖,这是技术驱动下的新型团体自治模式。然而,此类特点会引发智能合约在合同履行、身份识别、共识机制等方面的法律风险,对传统合同法也提出了新的挑战。

第一,合同履行的不可撤销性。在智能合约系统中,就某一项具体的合同文本而言,尚可用传统合同法予以分析:一方当事人将某一智能合约上传至区块链网络中,这一行为可以被视为要约;而后,当提前预设在智能合约中的要件被触发时,系统会自动将资产(以加密货币为主)由一方当事人转移至另一方当事人。这一过程中,“要件触发”可以被视为承诺,“自动执行”则是合同履行。但是,区别于传统合同,智能合约并非令合同履行变得更简便,而是让合同履行变得难以撤销,智能合约无法中断或终止,这必然会带来法律风险。

第二,共识机制的法律风险。智能合约未将合同如何履行载明于纸上,而是基于当事人之间的共识机制做出是否履行的决策。智能合约中的每一项合同达成,必须借由区块链的共识机制予以投票表决,共识机制是智能合约当事人共同遵守的技术“法则”。然而,“共识”是一种表决程序,虽然有当事人的参与,但大多情况下,仅针对合同形式,并不针对合同内容。就此而言,智能合约可以即时地回应自动化交易中的变化事项,它更强调当事人之间所形成的动态关系,而并非合同本身。区块链的分布式信任(distributed trust),通过全部当事人参与自治的方式,以规避合同履行的信赖风险。但是,这种“去中心化”模式,一方面将本属于人的权利让渡于“技术”,让智能合约成了一种团体自治模式,但另一方面,这并不意味着它可以因此脱离法律的调整范畴。由于共识机制的不可撤销性,智能合约当事人甚至可能更需要法律救济。然而,当技术出现瑕疵或问题时,却难以落实具体的责任主体。

第三,代码作为意思表示的表彰载体,不仅缺乏人的主观判断力,还会引发意思偏离。智能合约设计者需要将人类语言转化为机器语言,将人的意思表示转化为代码,这常常会偏离真实的意思。更何况,并非所有合同条款都能通过代码予以充分表达,部分合同条款必须依靠人的利益衡量与价值判断。譬如,计算机程序无法精准评估一方当事人是否“尽了最大努力”;再如,在效率违约中,若履行合同将会造成更大经济损失,当事人选择违约和支付损害赔偿金,此时,不履行合同或违约是可能被法律所允许的,但是代码程序无法做出上述价值判断;还如,违反公序良俗原则的合同无效,但是公序良俗概念具有高度不确定性,亦会随着社会变迁而发生改变,其难以通过代码予以确定,在智能合约中,即使某一项交易涉及违反公序良俗甚至违法犯罪,也依然会被强制履行。智能合约虽然可以大幅降低合同的订立和执行成本,但对于复杂的条款内容,它尚无法与传统合同媲美[13]。

第四,私人自治与司法救济之间的冲突及协调。传统合同法以财产归属作为分配价值标准,裁判者早已认识到该规则之下的局限性,在适用合同解释方法以外,司法裁判更重视事后调整,采取诚实信用、公平原则等进行利益平衡[14]。这种事后利益平衡处理合同纠纷的做法,在智能合约中并不奏效。机器的背后仍然是真实的人,智能合约的背后是人与人之间的真实关系。智能合约具有跨国界性,难以识别对方当事人的真实身份,容易成为当事人逃避监管的技术工具。“代码即法律”论调,在一定程度上表达了自力救济的意义,但若无公权力对于违约救济的介入,智能合约则会是法外之地。

第五,区块链匿名性及数字身份识别问题。在智能合约中,“私钥”代表的是人,对于不拥有私钥的人来说,几乎不可能生成与给定公钥相匹配的有效数字签名。这使得私钥成了确认数字身份系统的重要基础。然而,身份识别十分复杂,既涉及法律问题,也涉及技术问题,并非仅靠“密钥”就可以轻松解决的。这是因为,即使某一钥匙唯一地属于某一特定的人,人和钥匙也难以完全等同。就此而言,如何识别智能合约当事人的身份,遂成为难点。

三、智能合约的信赖基础

合同是“当事人的相互承诺所引起的,乃对我的未来行为,而非仅对我当前诚意的信赖”[15]。与传统合同不同的是,智能合约当事人之间并无信赖,甚至互不相识,他们的信赖基础来源于两项:一是对共识机制的制度信赖,二是对智能合约的组织信赖。前者代表“少数服从多数”的多数决原则,后者则形成了组织内部的各项明示或默示条款[16]。智能合约的信赖基础具有团体主义色彩,反映了团体自治的特点,特别强调了团体法上的自由价值。

(一)迈入团体主义的信赖基础

在现代社会中,多数合同并非当事人之间的一次性互动,而是一种持续关系,还会涉及合同履行甚至司法介入。在事前,当事人需要对合同事项进行预判并磋商,在事后,必要时法院需决定怎样填补合同意思表示的空白,并保护当事人的信赖利益。“信赖”,顾名思义是“信任并依赖”,信赖的客体既可能是人,也可能是组织或其他。伴随科技创新的不断发展,人们信赖的对象开始发生微妙变化,不再是仅基于对人的信赖而进行交易,而是转为基于对技术及其提供者的信赖而产生交易意愿,这一点在智能合约中尤为明显。

智能合约的创设者及使用者秉持着“代码即法律”观点,认为代码可以成为一种替代法律规范的新型监管模式。该主张是对传统合同理论的一种挑战,而这并不意味着智能合约已经超越了现行法律框架。相反,“代码即法律”的基本逻辑是,当事人对智能合约技术的高度信赖,认为代码程序可以成为保障当事人利益的信赖基础。与建立在个人主义(individualism)之上的合同不同,智能合约显现出一种团体主义(corporatism)倾向。团体主义既是一种解释工具,也是一种制度安排的价值取向,更为解释智能合约中错综复杂的法律关系提供了一种崭新视角[17]。团体本位,是个人本位或权利本位的特殊存在形式:一方面,团体本位没有废除私法自治,另一方面,团体本位追求团体及其成员团体利益的最优解。团体是社会成员自由意志的产物,团体成员权利是个人权利的延伸[18]。

以一款名为“DAO stack”的智能合约为例,它构建了一种新型团体自治框架(governance scheme),俨然具有了团体组织的雏形。在该系统中,当事人被称为“代理(Agency)”,他们是智能合约治理结构的基本单位。该智能合约的治理框架如下:第一,加密资产分配,每个当事人都可以发行或分配加密资产,尤其是分配给智能合约中的突出贡献者;第二,加密货币分配,当事人可以通过智能合约系统移转或获取加密货币,此功能旨在补偿组织内的特别贡献者或服务提供者;第三,名誉分配,智能合约为其成员分配“名誉分值”,这类似于信用评估分数,“名誉”仅属于当事人且无法转让,是当事人的重要信用证明,会直接影响当事人在智能合约体系内的权限[19]。上述智能合约的治理功能通过两种治理规则实现:一是“可做的 (do’s)”,二是“不可做的(don’ts)”。对于该规则的判断,是基于共识机制的投票表决完成的。其中,“可做的”是指共识机制认为符合智能合约预设功能的事项或程序性规则。譬如,若多数当事人达成共识,同意发行某一种新代币,那么智能合约将会被自动触发并执行。而“不可做的”则是共识机制认为必须予以禁止的事项。

智能合约当事人信赖智能合约的共识机制及区块链组织,认为其可以为自身带来所期待的利益,所以才会在虽不能完全知晓执行结果的情形下,依旧选择信赖智能合约系统。就此而言,面对非经当事人充分协商的智能合约,须格外关注当事人的信赖基础,这不仅是技术驱动下的制度选择,亦符合发展至今的私法理念趋势[20]。

(二)对共识机制的制度信赖

合同既是一个关系又是一个交易,交易中的关系有别于一般的关系。智能合约将合同的“关系+交易”演绎得淋漓尽致。在智能合约中,当事人之间会达成某项共识,该共识将众多当事人相互联系并形成了一种无形的关系网。与传统合同不同的是,尽管智能合约当事人并未在事前就某一具体事项达成合意,但是,所有当事人都认可与遵守共识机制,这本质上是对智能合约系统的共同目标的认可。共识机制的主要功能如下:首先,从交易记录保存到财务审计,从监督到执行,均无需可信的中间人予以验证;其次,由于合约交割是自动履行的、远程且无时间延迟,复杂的交易流程被大幅简化;最后,因为无需政府审查,合同准备、起草、签署和后续管理的法律服务费用不复存在[21]。由于共识机制的建立,区块链的每一次输出都被认为是真实、有效且可信的。

共识机制的意义在于,确保每个节点的数据一致且正确,通过以共识之“协议”实现自律型监管[22]。在智能合约系统中,某一项合同只有经多数当事人达成共识后,方可在区块链上生效,交易也会随之立即执行,已上链的智能合约难以凭借个别当事人的意思表示予以撤销。人们选择信赖智能合约并按其给定的运作方式运行,这既是一种技术信赖,更是一种对制度的信赖(institutional-based trust)。制度是人们在相互交往过程中,用于规范人们的行为,防止机会主义套利的规则。有学者将制度分为外在制度和内在制度[23]。其中,国家立法属于外在制度,而团体组织的自治规则属于内在制度。共识机制,是一种基于区块链技术的新型团体自治规则,是一种有别于法律的内在制度。当事人之所以能够接受智能合约的自动执行与不撤销等强制性规则,原因在于他们对共识机制的制度信赖。

好的制度,可以降低交易成本(transaction cost),提升组织效率(organizational efficiency),这也是智能合约的重要功能。在传统合同中,人际信赖(interpersonal trust)十分重要且成本较低。但是,随着互联网技术的普及,基于区块链的智能合约交易量极大,无法继续传统的人际信赖模式,否则交易成本会过高。基于共识机制的制度信赖,可以有效降低交易成本。以制度为基础的信赖,必须对制度的有效性予以信任、认可和接受,该制度体现出了组织内的多数人共同追求的价值观和目标[24]。所以,共识机制的本质是一种团体自治的契约精神。并且,智能合约并非一种静态、简单的合同关系,而是通过合同而展开的动态团体自治框架。智能合约不仅摆脱了古典契约理论的静态视角,更开启了当事人之间利益平衡与合作互惠的新自治模式。

(三)对智能合约的组织信赖

智能合约是一种新型组织形态,表现为“一系列合同的联结(a corporation is a nexus of contracts)”[25]。“DAO”是智能合约的形式之一,有学者将它翻译为“去中心化自治组织”,这也一定程度反映了智能合约的团体法属性。在“DAO”智能合约中,会涉及多方主体,譬如:通证持有者(Token holders),他们拥有较大的权限,并可以从智能合约中获取利润;合约设计者(Coders),他们了解智能合约的构造,但并不真正参与合约运作;服务承包者(Contractors),他们为智能合约提供某些服务;还有平台(如以太坊)及其创造者、策划者(curators)等主体。正是这些不同角色的主体相互连接,才构成了一个组织化的智能合约系统。

如上所述,当事人对于智能合约的信赖基础,除了对共识机制的制度信赖外,还有对智能合约的组织信赖。“DAO”可以被视为一种“框架合作协议”,它制定了智能合约的共同目标,划分了当事人之间的权利与义务。“DAO”智能合约,可以执行类似于公司、基金会、协会或合作社等组织的业务,这一切取决于当初创建“DAO”时的目标为何。在该系统内,管理层和其他参与者的目标有时可能不尽相同,但是均在追求各自利益的同时推进智能合约的运作与经营。针对智能合约中的决策事项,位于节点上的当事人使用CPU算力进行投票(达成共识),通过算力维持区块链的正常运转,当事人可以随时离开和重新加入该区块链网络[26]。

智能合约基于区块链环境而产生。当事人对智能合约的组织信赖,来自“去中心化”的区块链运行环境,其避免了依赖中央机构或在相互不信赖个体之间建立起的信赖关系。智能合约的分布式记账技术,依赖于计算机的算力予以运作。该技术通过特定算法构建出区块链网络,位于计算机节点的当事人共同维护区块链账目(或曰副本),并使得该网络上的信息记录难以被篡改。在该区块链网络中,互相不信任的当事人之间可以达到稳定的共识,不用依靠任何中心化的权威机构,便可以共同维护该网络系统并对其高度信任。

四、智能合约的自治框架

智能合约拥有类似于公司的治理结构、股权规则、表决机制等,这些均通过区块链网络自动运行,无需人为干预。但是,智能合约的意思自治,不应脱离既有法律规则,不得有悖于社会的公平与公正。以团体法作为解释工具,证成智能合约的团体自治体系,有助于发现并衔接智能合约与传统私法理论间的空隙,构建智能合约的私法解释体系,形成符合其特性的私法规范方法,以实现技术与私法的共同进步。

(一)智能合约的团体决议:共识机制

剥离掉复杂的技术外壳之后,本质上,智能合约的共识机制是基于区块链网络的民主多数决机制。不过,由于技术因素的介入,使得共识机制具有不同于一般决议行为的特殊性及法律风险。对此,无论个人主义抑或团体主义都是两个极端,过分强调团体的自治地位,则会强化权威和垄断,以致破坏个人自由。因此,智能合约的自治秩序并非绝对的自治,而是在既有法律规范框架内的私法自治[27]。

1.多数决与程序正义。决议行为属于多方民事法律行为,因此具有团体性特点,决议结果对团体内部全体成员都具有法律约束。一般决议行为的多数决,通常分为资本多数决、成员多数决与混合多数决等。共识机制的“多数决”,大多系根据CPU算力进行,目前主流的两种方式分别为“POW(工作量证明)”和“POS(权益证明)”。其中,“工作量证明(POW)”,顾名思义是以“工作量”作为表决权的分配标准,这是目前最普遍的共识方式。不过,“工作量”并非人的劳动力,而是指计算机算力的工作量。若某攻击者想要修改过去的区块信息,他必须重做区块并推翻以往的“决议”,这几乎是不可能的。另外,“权益证明(POS)”则可以理解为,是一种以类似股权“份额”作为表决权的分配标准。典型的“份额”是通证(token),通过持有通证的数量和时间,决定当事人的表决权占比。

以Aragon智能合约的资金转移决议为例,这是依据“权益证明”作为表决权分配标准的共识机制。首先,当事人提出一项转移资金的提案,其他当事人如果认为该提案违反了自治规则,可以选择提出异议;其次,共识机制将会根据预设规则,选择对该提案是否“创建投票”“暂停投票”或“取消投票”,这涉及多个不同的意思表示,由智能合约成员通过投票程序表决;再次,智能合约成员对该提案进行投票表决,根据所持通证进行多数决,由投票程序确定是否支付,并将该指令发送给财务程序;最后,财务程序进行核准,确定支付金额,并将转移资金的指令发送给钱包程序并进行转账[28]。

多数决原则的本质是实现决议的“程序正义”。除上述多数决方式外,还有根据“委托权益(Delegated Proof of Stake)”“参与度证明(proof of Participation)”“重要性证明(proof of importance)”等多样化的多数决方式。但是,无论哪种共识机制,均只对智能合约做形式审查。该种审查方式也带来了法律风险,如在以太坊上运行的暗网组织“丝绸之路(Silk Road)”。智能合约的执行即为智能合约在区块链上成功构建后,等待条件达成并自动执行合约的内容。就此而言,智能合约的共识机制,更关心程序正义,并不关心实质正义。

2.决议事项及决议效力。智能合约是一个通过合同的自治框架,该系统被细分与深化为不同的共识机制,不同功能的共识机制用于决策不同事项。共识机制的决议事项可细分为劳动力分配(division of labour)、激励管理(management of incentives)和资源分配(allocation of resources)等[29]。其中,“劳动力分配”指的是,为促进系统内的分工,对智能合约成员的权利义务进行划分;“激励管理”指的是,对智能合约成员进行激励,如通过“挖矿”获得加密货币;“资源分配”指的是,对智能合约内部的资源进行分配(如增减加密货币等),这主要是指对特定当事人的奖惩机制。当然,除上述事项外,共识机制还可以被用于其他的决议事项。

《中华人民共和国民法典》第一百三十四条第二款规定:“法人、非法人组织依照法律或者章程规定的议事方式和表决程序作出决议的,该决议行为成立。”智能合约的决议行为是否适用此条,必须首先澄清以下两个问题。第一个问题是,智能合约是不是非法人组织?一般而言,智能合约有特定的经营目标、可以独立支配的数字资产(通证或加密货币),而平台提供者或“委员会”的身份,类似于非法人组织的“代表人或管理人”。就此而言,目前绝大多数智能合约都具有非法人组织的雏形。第二个问题是,以代码为表彰的智能合约自治规则,是否属于“章程”?对此,有必要做目的性扩张解释。决议行为的成立要件为“根据法定或章程规定”,这说明,法律对决议行为采取的是法定主义和团体自治相结合的调整方法。不同于公司章程载于纸面,共识机制是蕴藏于代码程序中,但这并不影响其团体自治的本质,共识机制属于民法上的决议行为。

决议行为的法律效力,具有程序性和团体性的突出特点[30]。智能合约在区块链环境下通过合同的团体自治机制,它通过建立、管理和维护合同关系,以达到特定的团体目标。与一般组织不同的是,智能合约是非实体存在,一切均通过代码予以表彰。位于节点的当事人通过共识机制,将分散的意思表示汇集成团体意思。就此而言,并非“代码即法律”,而是以代码形式所表彰的团体意志,才是智能合约的团体之“法”。共识机制的本质是团体意志的表达,应当属于民事法律行为。

对共识机制的认可,绝不是对自由主义或个人主义之价值观念的颠覆,亦没有否认私法自治原则。而恰恰相反的是,这正是私法自治在新技术领域的一种延伸。团体内部意思与外部交易行为之间,存在关联互动和效力区分,后者也主要对应决议行为与合同行为的效力区分,对此需要妥当兼顾实现团体内部自治和维护外部交易安全。因此,共识机制的最终决议仅对内部有效,并不必然产生对外的强制执行力。

(二)通过合同的自治构造:三种基本类型

技术无法解决人与人之间的所有问题,最终仍然要回归至人的范畴予以探讨。若将技术与人割裂看待的话,则会形成一种曲解——区块链里的一切都与人无关。但是,在智能合约的世界里,除了机器与代码以外,更重要且根本的是,这是一个为人服务的世界,我们需要探究代码背后人的意思表示。智能合约可以是线下协议的代码表现,在此种情况下,在区块链上发布合约往往用于保证线下合同的执行。智能合约也可以是区块链上直接以代码呈现的意思表示,此意思表示通常尚需对方当事人的相应行为才能进一步达成并履行合约内容。对此,应当对智能合约的自治构造进行类型化分析,区分以下三种情形分别探讨。

1.构造一:双方当事人事前磋商的情形。此类构造与我们通常理解的合同最相似,因为它具有事前磋商、合同订立与履行等基本环节。此类智能合约,将以口头或书面形式进行的意思表示,转化为一系列代码脚本并交由共识机制自动执行[31]。当A和B签订合同时,双方当事人已经达成了合意,合同义务已经事前由人类语言予以确定。此后,双方使用私钥签名将转化为代码的当事人合意发送到区块链上,等待区块链的共识机制表决验证。验证成功后,智能合约即生效并记录在区块链上。所以,除了合同文本是事先预定好的,合同的履行方式、履行义务及共识规则等均由代码予以控制。

代码作为编程语言,优点是可以跨越不同语言之间的障碍,摆脱了不同语种翻译过程中带来的误解,使合同内容更加明确且可验证。然而,代码的缺点是它毕竟不是人类语言,容易出现意思表示的偏离。更何况,代码程序本身也可能存在瑕疵。计算机程序中存在强制“翻译”,即使编码人员不存在主观欺诈故意,也可能出现编程错误或创建有瑕疵的代码,例如,代码程序可能使用含糊不清的基础架构,不同的代码运行顺序也可能出现意思表示的偏离。对此,以代码为表彰的合同文本,应当以合同当事人的真实意思表示为判断依据,而非简单粗暴地认为代码的一切都是正确的。因此,法官在解释智能合约时,需要区分对待划分权利义务的代码与发挥执行功能的代码,结合可予采信的证据(admissible evidence),确定当事人之间的权利义务关系。这意味着,法官要探寻双方当事人是否具有接受代码约束的真实意愿。

需要注意,智能合约当事人拒绝依赖一般合同对其权利义务进行分配,而选择通过共识机制进行团体决议,以维持他们之间的合同关系。相应地,双方当事人将部分权利让渡给了共识机制,体现出对共识机制的高度信赖,当事人均需要遵守共识机制的决议。他们之间的合同是否有效履行,取决于共识机制的多数决。所以,在智能合约交易中,需要尤其强调信赖保护,以平衡多方当事人基于信赖关系而发生的各种利益冲突[32]。

智能合约的自治构造一:双方事前磋商的情形

2.构造二:单方允诺的情形。此类构造是指单方上传合同文本的情形,即通过智能合约系统中预设的触发要件自动“配对”。这一构造与构造一在结果上似乎类似。但是,在构造一中,双方当事人知道彼此,具有一定程度的人际信赖基础。而在构造二中,上传合同本文的行为是一种单方行为,不存在任何磋商过程,合同上传方不知晓将要与谁“配对”,自然也不存在人际信赖基础。最常见的情形是,当事人A以“交换某加密资产”为合同文本,将此转化为代码后,上传至智能合约系统中,以等待不特定对象中的某一当事人的自动回应。

在智能合约的自治框架中,义务内容通常被记录在严格且正式的代码中,并由区块链成员通过共识机制予以表决与执行。此构造常用于为特定当事人设置一项或多项义务,上传的合同文本用于记录当事人协议的义务内容。就此而言,当事人单方上传合同文本的行为,可以被理解为一种“单方允诺”。该上传行为是表意人单方的意思表示,允诺内容是为自己设定某种义务,使相对人取得某种权利。不过,“单方允诺”仅针对某一项义务内容。例如,通过智能合约的数字资产拍卖,拍卖方可以通过智能合约公开竞拍物品,并通过智能合约系统自动匹配另一方当事人。由于智能合约的灵活性,在实践中,某一目标往往会被拆解为几项合同文本,通过不同的构造予以表达。

智能合约自治构造二:单方允诺的情形

以以太坊为例,平台会提供两种账户类型:外部账户(externally owned accounts)(由“私钥”控制)和合约账户(contract accounts)(由合约代码控制)。“外部账户”无需代码,人们可以从外部账户创建交易。当合约账户收到交易消息时,合约内部的代码程序会被激活,允许它对内部数据进行读取和编写[33]。在此构造下,成员将“私钥”提交后,会在区块链上冻结智能合约的标的资产,待条件成就后会自动发生转移。提交“私钥”的行为,可以视为当事人的一种意思表示,但难以仅因此证明其与对方当事人就合同条款达成了合意。这是因为,合同文本并非经过双方磋商之后形成的合同,其中可能存在条款模糊甚至有歧义的情形。当双方当事人对某一项基本事实存在误解时,可能构成合同法中的重大误解,属于可撤销情形。但在智能合约中若发生重大误解时,由于“订立即履行”特点,合同无法被撤销。因此,合同法中对当事人的诸多救济措施,在智能合约中均难以应用。

3.构造三:仅设立框架合同的情形。相较于前两种构造,此类情形最复杂且多变。此构造下,智能合约会涉及多方主体的权利义务如何分配,合约设计者需要将这些权利和义务以代码形式进行编程(例如以太坊平台使用的Solidity编程语言),并预先设置自动执行的触发事项[34]。通常而言,代码主要有两项功能:一是触发合约自动执行的条件,二是明确当事人具体的权利和义务。当A和B订立合同时,并非基于人类语言,而是所有意思表示均通过代码予以表彰。但是,对于A与B的真实意思表示为何、是否就某一事项达成一致,代码本身无法对此进行确认,因此需要格外依赖于人的判断及外力介入。

引入框架合同理论,有助于识别与解释此类智能合约构造。框架合同,也称为架构合同,是指商事关系中确定当事人之间的基本交易关系,并为未来签订的具体交易的个别合同提供基本框架和条件的一种合同类型。在框架合同中,当事人仅就未来关系的框架内容达成合意,而对于具体的合同履行方式等问题,均由未来实施的个别合同予以明确规定。此类智能合约,是一种新型的框架合同,其事前达成合意的内容主要是程序性规则,而实质性规则有待于后续的个别交易予以明确。其中,基于共识机制的程序性规则也属于框架合同的构成部分。

由于代码程序不具有灵活性,所以代码化的合同内容、履行方式及自治规则均面临着过度形式化的局限性。譬如,针对不可抗力、诚实信用、公序良俗等问题,难以通过代码予以调整与控制,这必然会对交易的公平公正带来负面影响。一旦产生纠纷时,当事人又无法通过代码程序讨回公道,此时唯有借助司法手段,才能获得应有的救济。

智能合约自治构造三:仅设立框架合同的情形

(三)团体自治与司法救济之间的冲突与协调

智能合约具有跨国界性,难以识别对方当事人的真实身份,甚至影响到反洗钱、反避税等管制规则的有效适用[35]。“代码即法律”论调,在一定程度上表达了自力救济的意义,但若无公权力对违约救济的介入,智能合约则会是法外之地。智能合约虽然是团体自治的一种新形态,但仍需要实定法的救济与保护。这是因为,智能合约存在诸多不确定性,使得其更容易引发纠纷与诉讼。但这并非易事,智能合约具有自动执行特点,在资产发生移转之前,当事人可能根本无法通过司法程序中断交易。对此,司法救济会面临诸多挑战,如何协调团体自治与司法救济之间的矛盾与冲突,划分两者之间的边界,显得尤为重要。

一方面,司法救济面临着技术上的挑战。如前所述,智能合约纠纷难以提前预防,似乎也无法通过事中措施予以干涉,因此强调事后救济的传统司法手段显得格外重要。不过,当依靠传统司法救济时,需要克服如下法律障碍。智能合约基于区块链环境,这是一个具有整体性的生态系统,区块链的开发者无法控制交易当事人。如果法院试图改变共识机制的决议,成员既可能选择接受,但也可能选择不接受,法院难以通过司法手段强制多数成员必须接受。对此,可以考虑司法程序的技术介入,将司法纠纷解决程序、在线纠纷调解程序及一键仲裁程序等嵌入智能合约系统中。

另一方面,司法救济还面临着法律解释上的挑战。裁判者需要透过代码探究当事人的真实意思表示。事先的合同约定中,总是会有不公平的成分存在。在适用合同解释方法以外,司法裁判更重视事后调整,采取诚实信用、公平原则等进行利益平衡。司法裁判努力挖掘未被合同所明文表示出的潜在意思,而该种潜在的合同约定通常总是与合同关系密切。有学者将其称为是“一种合作关系的增量价值分配”,认为“合同法经历了从传统以财产权属为依据,向现代依据公平原则进行利益衡量调整的一种转变”。这种事后利益平衡的解释方法,对智能合约纠纷解决具有重要意义。

智能合约不应脱离现行法律框架。智能合约不仅涉及民法一般规则、合同法、侵权责任法等民事法律规则,亦涉及电子商务法、电子签名法等部门法律,甚至涉及仲裁法、民事诉讼法中的证据规则,需要在实定法范畴内夯实智能合约的法律依据及法律适用。代码程序和法律制度都既可能促进信任,也可能摧毁信任,两者之间并非此消彼长,而是相互促进与互补的关系[36]。智能合约可以发挥团体自治功能,甚至可能填补法律上的空白。对此,在夯实智能合约及其交易的法律依据之基础上,有必要通过改善民事诉讼和仲裁等证据规则,以协调有关法律适用的冲突与适用。另外,还须厘清智能合约的信赖基础与团体自治属性,通过技术手段搭建“自力救济+公力救济”双轨救济机制,迈向基于公平原则进行利益衡量的司法逻辑转变。

五、结论

智能合约,如水般变幻莫测。科技的发展、社会的进步、法治的完善,这些始终处在一个绵延不断的进步过程中,当我们讨论新技术与法治进步时,必须要受到现有法治环境的约束。在既有的法律秩序里,也总会不断衍生出新事物、新现象,在新旧事物、新旧现象之间往往存在一种传承关系,此时恰是一种新秩序的形成期。这些新事物并非全新或没有历史根基,而是与传统私法体系相一致。研究此类新事物的关键,不在于不断创设新概念,更不应渲染既有法律的规制失灵,而是要将新事物与传统法律框架相互衔接。这意味着,唯有在充分剖析与理解技术的前提下,方才有探讨法律应当如何规范的空间。否则,试图运用从上而下的行政干预手段,都可能沦为形式主义。对于智能合约的法律规制,既不能施以简单粗暴的行政干预,也无法通过一刀切的立法予以解决。法律不能任由技术如脱缰的野马,我们必须在技术进步与法律规制之间寻找平衡,在社会公共利益、个人利益和商业利益之间进行平衡,这些会是十分重要的课题。

猜你喜欢

信赖代码共识
信赖相伴唱响新生 北京现代20周年再攀新高峰
共识 共进 共情 共学:让“沟通之花”绽放
论思想共识凝聚的文化向度
商量出共识
创世代码
创世代码
创世代码
创世代码
在云水谣收笼一个雨季
“慢养孩子”应成社会普遍共识