今日实时汇率
1 美元(USD)=
7.3043 人民币(CNY)
反向汇率:1 CNY = 0.1369 USD 更新时间:2025-04-19 08:02:31
前言
智能合约的重要性已经得到世界许多国家的认同,例如德国银行协会(Association of German Banks)在 2019 年认为脸书 Libra 最厉害的机制是“可编程经济”(Programmable economy),而这就是智能合约带来的革命。由于可编程经济带来的是一个新的金融生态, 和传统金融生态不同。如果普林斯顿大学提出的“数字货币区”(Digital Currency Areas) 理论正确,世界正在走向一个基于平台的可编程经济体系,这也会是世界各国科技发展的重要依据和竞争广场。因此,智能合约技术是极其重要的。2020 年 8 月世界银行(World Bank)的报告再次提醒我们智能合约新科技的重要性,特别是在供应链金融和保险上的应用。
编写《智能合约:重构社会契约》目的在于研究开发合规智能合约的理论基础。在2013 年世界开始的是链上代码的工作,2016 年开始重视合规智能合约。由于“The Dao 事件”,许多单位包括法学院、律师事务所、金融研究机构、区块链研究院等立刻开始研究合规智能合约技术和法规。这些单位包括美国商品期货交易委员会(Commodity Futures Trading Commission, CFTC) 、 英国央行、 欧洲央行、 国际货币基金组织(International Monetary Fund, IMF)、德国银行协会、世界银行(World Bank)等。经过 4 年的研究,上述单位对智能合约的技术和相关法律问题有了初步的了解,例如 2020 年 8 月世界银行发布白皮书认为智能合约有助于普惠金融。我们在《智能合约:重构社会契约》[1]书中介绍了相关重要研究结果。
过去 4 年国外在智能合约上的研究发展还是非常快速[2],大量律师事务所都发布白皮书,讨论相关的法律问题。而“币圈”在过去几年也邀请大量律师加入其团队,甚至邀请前监管人员加入,以保障其业务合规,以至于不论是合规市场或是“地下币圈”市场都走向合规的道路。
另外,由于《智能合约:重构社会契约》一书需要对这领域发展进行系统性的介绍, 笔者重读了一些经典论文,同时间也研读了近几年的学术研究报告。研究过程中,笔者总结了智能合约近期五大科技突破。这五大突破不但指出研究方向,提出产业发展方向,而且可以评估和预测现在项目的发展将来会遇到的瓶颈和可能采取的解决方案。例如 ISDA的工作就可以预测Defi 和脸书Libra 将来的发展,这两个是现在区块链界热门课题。
五大突破简介:
正确的需求分析:国际掉期和衍生品协会 (International Swaps and Derivatives Association,ISDA)是这方面最大贡献者 [10]。他们最近非常活跃,他们的报告改变了现在智能合约的定义和流程,也改革了平台的设计和基础设施,以及相关法律。另外他们的智能合约标准居然没有一行智能合约代码,令人惊讶。如果我们细读他们制定的标准,这将对智能化科技和产业有重大影响,而且可以预测现在许多系统会遇到的问题,这是近期智能合约工作中最大的突破。
正确的研究路线:当我们重新读李嘉图合约(Ricardian Contract)的时候,竟然发现合规智能合约发展路线居然走的是李嘉图合约路线,而不是原来萨博(Nick Szabo) 的路线,因为几乎所有合规智能合约的工作都是从李嘉图合约出发的。因此,对合规智能合约发展路线的研究需要更新、迭代历史观点,突出实际贡献者的作用。以李嘉图合约出发,智能合约工作走在正确路线上。
正确的定位:美国 CFTC 报告[9]在这方面是最精彩的,虽然只有 PPT,但是思路清晰、观点犀利,对于这领域提出正确的路线。如果有人想了解智能合约技术、应用、相关法律以及方向,这份报告是首选。但是如果细读该报告,就会发现其不只是介绍智能合约,还有重大方向性突破,他们提出的概念将彻底改变未来智能合约的发展,例如智能合约以后会以碎片化、标准化、服务化和共享化的方式发展,而不是以往传统的整体式、孤岛式发展,这已经与传统智能合约的概念有很大的不同。而其中的碎片化则是现在社会信息化的一个重要指标。
创新的架构:英国央行在 2020 年 3 月提出的将来三个可能的智能合约设计,打破了传统智能合约的架构,例如以太坊的架构[11]。由此,智能合约的架构不再是传统区块链和智能合约系统 1 对 1 的架构。这在系统架构方面的重大突破,对学术界和产业界具有巨大的影响。
创新的合约语言和实验:雅阁项目(Accord Project)也是我们遇到的另外一大惊喜, 由于该项目提出的形式化合规语言和模版,和计算机界智能合约工作大不相同。在计算机界,形式化语言和验证方法未考虑到合规问题,以至于不论如何严谨的开发智能合约代码,仍然无法确保所开发的产品具有法律效力。而雅阁项目提出的合同模版和模型语言(这些从合规端点出发),落地在计算机语言和验证方法上,这是巨大创新,是法律和计算机结合的一个案例。虽然这工作还有许多地方可以继续进步,但这表示这方向是可行的,不是不可能的任务,这是重大科技突破。
上述五大突破改变了学者对智能合约的认知,也改变了学术研究方向,有的甚至改变了未来产业的发展。本文将围绕这五大突破来讨论。
这五大突破都是国外的贡献。在讨论这些亮点后,我们也提出中国的皋陶模型,该模型是融合上面五大突破的优势的模型。
突破 1.标准化:ISDA 让我们明白什么才应该是智能合约的流程
ISDA 协会在 2018 年开始这方面的工作。而这个工作一个特别让人惊讶的地方,就是智能合约标准里面没有代码。从 1994 年智能合约起源,智能合约的工作都有代码,例如从李嘉图合约,到近代的以太坊智能合约,到斯坦福大学“CodeX 项目”,可计算的合同(Computable Contracts),都有代码。可是 ISDA 智能合约标准里面没有一行代码,这使得我们对智能合约的认知产生了巨大的改变。这表示部分智能合约的工作和代码没有直接的关系,而这部分的工作重要,且需要标准化。
智能合约分为两种: 1)一种是有法律效力的,也是实际的智能合约; 2)链上代码(Chaincode),就只是运行在区块链上的代码,没有法律效力。在国外第一种也称为“法律智能合约”(Legal smart contracts),以此来区别没有法律效力的链上代码。我们一向使用“智能合约”和“链上代码”来区分这两种机制。
我们专注于智能合约,而不在链上代码。但是这两者的差异在哪里?一些计算机学者也提出需要法律考量,但是法律考量是做什么却不清楚。ISDA 的工作解答了该问题。ISDA 认为智能合约代码与智能法律合同(由软件表示法律合约或法律合约的要素)是有区别的,由此ISDA 提出了智能衍生合同的概念。
(1)认知上的改变
ISDA 的工作就是研究在现在法规下,智能合约如果需要自动执行,应该如何进行? 这流程应该是如何?ISDA 在其发布的白皮书中提到智能法律合同的两种不同模型:外部模型和内部模型。在外部模型中,编码条款保留在法律合同的外部,仅代表自动执行合同的机制。在内部模型中,自动执行的条款已包含在法律合同中,但用比自然语言更严谨的表示形式进行了重写。计算机可以采用这种更为形式化的表示并自动执行这些条款。智能衍生合约基于内部模型,某些条款可以自动执行,这些条款以一种能够实现高效自动化的形式表示,而其他不能自动执行的条款用自然语言表示。
ISDA 认为直接将现有的金融交易流程转成代码是不明智的。因为现有流程有部分是人工作业的,以保持流程的灵活度。但是如果这些人工流程也自动化,这流程就需要非常严谨的分析。因为一旦自动化,以前“灵活度”必须嵌入智能合约代码内,不然可能会出问题。
ISDA 在其白皮书中提到了其主协议的 5 个主题,分别是:事件、付款和交付、出清轧差、争议和合同订立与法律关系。例如事件这一主题,ISDA 举例说明了事件的种类和概念。虽然ISDA 没有提供系统设计,但该概念却提供了很大启发。
事件的种类:“事件” 是指除了针对特定交易的合同条款外,还会发生大量外在事件,这些事件可能会影响合同当事人继续履行一项或多项交易下的义务的能力。即要对进 行正常交易的合同,要针对其可能发生的不确定性事件采取对应措施,并定义在合同条款 内。注册事件有各网点提交完成,即为合同参与方,其中要考虑的事件又分为正常交易事 件和非正常交易事件,而非正常交易事件处理起来更为复杂,又分为违约事件和终止事件。
外在和内部事件互相启动:一个外在事件可以启动一个智能合约的自动执行,执行中有可能产生内部事件,可是这些内部事件对于其他机构或是同一机构内其他账户,可能就是外在事件,自动启动其他相关智能合约的执行。于是,一个复杂事件启动的动态网络就出现了, 并且同时间可能会发生大量的事件产生以及许多智能合约自动执行的情况。
事件处理的复杂性:ISDA 一直在提醒读者,这样的系统会非常复杂,并且该模型建立的系统应该将整体视为金融交易基础设施,与许多机构,金融或是非金融机构进行交互。在此基础设施上,例如一个金融机构出现新事件,该事件要经过该基础设施传送到其他单 位,包括在这些单位运行的区块链和智能合约系统。其他单位可以是监管单位,而且同一件事件在这些区块链系统或是智能合约系统都代表同样信息,不能被更改。该模型的参与单位可以是银行、保险公司、交易所、金融机构、公证处、监管单位,CSD(中央证券托管系统)、市场监管局和国税局等,这些金融机构、监管单位等共同参与合约条款的制定, 涉及不同的现实交易活动。
事件和智能合约的交互:事件模型的主要功能是由合同参与方注册事件,将自然语言合同以事件标准化,即在合同的内部处理逻辑下(以软件代码形式表述,主要是条件语 句),对合约进行预处理,将包含事件属性、合同属性的数据分别打包存储,并通知公证 处、第三方电子存证机构等介入进行公证、电子存证。事件启动后根据事件身份证找到对 应事件数据包和合约数据包提交智能合约系统进行交易自动化处理,同时涉及账户资产的 信息提前提交到核心账本系统进行资产核对或资产证明,并查找相应账户的征信(或信用) 记录。若存在资产造假、或参与方在失信名单之列等情形,可通知合约参与方或监管机构, 启动终止事件,终止合约履行。
图 1 事件模型图
事件处理系统是智能合约系统的根本:上图可以清楚看出,合规智能合约系统需要一个基础设施,而这基础设施就是“事件处理系统”(event-processing system),不是传统智能合约系统。传统智能合约系统是需要接受事件处理系统传送过来的数据才开始执行。表1 智能合约标准化认知的改变
从前的认知 | 现在的认知 |
智能合约是将现在金融流程自动化 | 现在流程是半自动化,部分步骤是由人工处理,具有灵活度,同时这种灵活度需要代码化,而更新后的流程将可能与传统流程不同 |
智能合约大部分的工作在创建合约代码 | 智能合约的很大部分工作是开发合规并且是可以自动执行的流程,另外的很多工作则是在建立智能合约的基础设施 |
智能合约平台只是需要预言机和区块链系统 | 由于金融流程会复杂,而且大量交互,需要事件处理(event-processing)系统,这系统可能与物链网(或是物联网)融合 |
表 2 智能合约可实现的工作
现在金融流程 | 智能合约的工作 |
人工处理部分 | 建立事件模型,建立基础设施,连接单位,标准化处理这些工作 |
自动化处理部分 | 碎片化和标准化现在可以自动化的流程 |
我们认为ISDA 的研究是最近几年来智能合约最大的突破,这研究使智能合约的工作产生本质的改变,不但改变了我们对智能合约的基本认知(上表),也改变了系统架构
(事件处理系统和预言机的加入),还改变了开发流程(从更新现在金融流程开始,而不是编译现在流程到智能合约代码)。在我们书中(《智能合约:重构社会契约》)也表达了该观点,后面的学术工作现在才开始。
ISDA 的研究工作,开启了对智能合约的一个更为广大知识领域的研究,也是一个新型交叉研究课题,这课题包含 3 个领域,法律、金融、计算机。这工作以法律为出发点, 但是却需要(最终)落实到计算机建模语言、系统、基础设施上。在建模的时候,金融知识和法律知识为主导,但是后来却由计算机来实现。从合规流程开始,逐步向法律智能合约靠拢,最终实现智能合约法律化。