现如今我们是生活在“互联网+”、大数据、云计算、人工智能、数字经济、电子政务、新型智慧城市、数字乡村等内容信息社会中,而人类社会正在向数字社会迈进的革命过程中,数字社会是如何把实体社会人们生活的模式、信用、法律甚至文化等依存关系转移到虚拟世界上的新生活方式。
北京航空航天大学计算机学院区块链技术专家胡凯教授认为:“数字社会需要社会科学和自然科学的融合发展,是一个巨大挑战(Grand Chellenge)的发展问题,智能合约将是区块链浪潮中最重要的技术因素”。智能合约作为可以自动执行合约条款的计算机程序,与区块链(Blockchain)技术的结合,形成了诚信网络中价值转移的数字合约,被称为代码即合约(Code as a Contract),是数字社会中带有法律关系的重要基础协议,正成为未来数字社会的基础设施。北航计算机学院是国内最早开始进行数字社会和区块链研究的高校学术单位,胡教授的团队长期致力于分布式、形式化方法和智能合约的研究和应用,承担了一批国家基金、教育部基金和国家骨干企业的区块链和智能合约研发落地项目,取得了较好的应用效果。
智能合约(Smart Contract)的概念是密码学家尼克萨博(Nick Szabo)在1994年左右首次提出的。萨博创造性地提出“智能合约就是执行合约条款的可计算交易协议”, 机器通过物理的密封系统自行控制财产,可以编程自动执行合约条款。2015年以来区块链和智能合约的结合开创了区块链2.0时代,催生了当前区块链热潮和巨大应用前景。应该说,智能合约技术目前严重被低估,只是作为区块链上的业务开发模式,远没有达到萨博提出的契约性内涵,而互联网经济发展急需契约性代码,实现“代码即法律”的数字社会发展的重要目标,其对社会和网络数字经济的作用是巨大的和基础性的,尽管智能合约已经被广泛应用在区块链上,但其作用还远远没有被挖掘和发挥,智能合约的规模性、公信化产生机制和可信化软件生产流程是智能合约扩展和普及的关键。
胡凯教授结合互联网发展、计算法律的发展和软件工程的发展历史,深刻阐述了智能合约目前发展中存在的不满足法律规制、不可信和不智能三大基本问题,在对当前智能合约应用暴露出的问题进行具体分析基础上。胡教授在2017年5月首次提出了智能合约工程方法,用于解决目前智能合约规模化、工程化产生的方法问题,并进而基于计算法律学发展提出了法律代码科技的思想。
胡凯教授给出了“智能合约工程”(SCE:Smart Contract Engineering)的定义:“它是融合软件工程、形式化方法和法律代码化技术的智能合约系统化、规模化的开发过程”。并结合商业合约架构(Business contract architecture)和区块链的特点,设计出更具使用价值的智能合约运行模型。胡教授认为目前的智能合约应用大多是处理简单的业务关系,计算法律学的一些项目(如IBM Watson)试图从人工智能的角度去进行法律咨询或辅助律师服务。而智能合约的智能化包括合约内容的智能化和合约生产的智能化,应当充分挖掘法律通常的认识方式和思维方式,在对法律规则进行代码化处理时,采用自然语言识别、形式化方法、认知理论和机器学习方法尽可能使复杂法律规则能够准确地自动转换为智能合约代码。同时,智能合约生产过程必须更为智能,更容易为用户理解、编写、部署和执行监管。
一个基本的遵循智能合约的开发框架如图1所示:
图1智能合约工程框架
这个框架中,主要融合了三个方面技术,一是传统软件工程的理论方法;二是合约是交易双方或多方的约定,合约需要参与方的共同认定,和法律文本保持一致性,并需要保证其代码和执行的不可更改和可信性,形式化方法(Formal Method)是合约进行确定性验证的有效手段,通过形式化语言把合约中的概念、判断、推理转化成智能合约模型,可以消除自然语言的歧义性、不通用性,进而采用形式化工具对智能合约建模、分析和验证,进行一致性测试,最后自动生成验证过的合约代码。三是智能合约需要法律层面的规制,计算法律(Computational Law)研究如何使用计算机技术以电子媒介的方式来实现对法律、法规、合同、章程等法律文件的表达和自动执行,保障通过计算机代码所设定的规则与现实世界中的法定规则保持相一致。此外,描述合约交易实体间复杂耦合作用,体现价值的变化和转移也是很有意义的,可采用数学方法分析对系统稳定性和可达集进行计算分析,指导智能合约的自动代码生成。同时,提供系列化软件工具来支持智能合约的全生命周期的服务产生、组合应用、验证、部署和运维。
针对如何发展符合法律规制的算法合同和可执行合约代码这一社会学和信息技术结合问题,胡凯教授认为结合计算法律学的发展过程,进行法律代码化的工程化开发技术和过程的研究,将诞生一个新的交叉学科领域,即法律代码科技(Lawcodetech),它是计算法律学、人工智能、认知学、区块链和智能合约等技术的融合发展。通过区块链技术,解决合约代码的确权、不可更改的执行和可监管、可观察;通过自然语言识别、形式化方法、机器学习等来解决代码的智能产生、语言二义性和一致性等问题;通过智力共识和众智机制,使代码产生公信化和可服务化。可以简单理解为:法律代码科技解决法律代码化或代码合规性问题,而智能合约工程来解决符合法律规制代码的公信、可信和规模化生产问题,二个理论方法相互配合,相辅相成,构成完整理论体系和技术链。
计算法律学也被称为法律计算学,是法律的一个分支,可以认为是借助信息化技术来辅助法律的研究和实用,计算法律学关注定量模拟和分析技术,例如,使用计算法律学可以对法律问题进行计算和建模。很多使用了计算法律学的技术都是源于自然语言处理领域和大数据分析领域。
胡凯教授强调法律代码化科技是计算法律学的新发展,是一种新的科技融合,是一个全新的研究视角,重点是要解决智能合约代码化的法律效力问题。它可以将法律要素融入到自动执行的智能合约代码,使智能合约具有法律效力,具有电子证据和电子合同的职能,代码生命周期具有法律保障机制,这将是智能合约被大量接受运行的前提。同时,类似于金融科技(Fintech)的融合诞生带来的交叉产业兴起,法律代码科技也必将催生新的技术和商业模式,在数字社会更广阔的领域发展和兴起。目前,其团队已经和多个相关科研企业单位合作研发相关技术平台和软件产品,取得了一批创新型专利和自有知识产权。
我们可以预期区块链和智能合约的关系就好像互联网技术发展早期建网和网络应用的关系,发展智能合约规模化生产技术就像软件工程对发展软件起到的重要作用一样,必将成为区块链产业和驱动应用最为有价值的事业。