智能合约能否对法律界造成冲击

未央网 作者: 东十条

在过去的一年,『智能合约』的概念在法律界和金融界再次获得了关注。

区块链技术的发展使得不少人认为智能合约可以很快为传统的商业和金融合约带来一些改变,甚至可能颠覆法律和金融界。也许这股热情还不是正确的时机,毕竟法律界的专业人士鲜有对其感兴趣。

『智能合约』实际上指的是利用电脑代码在两方之间形成、确认和执行的一份合约。传统的合约的撰写是利用自然语言,而智能合约的条款是用代码来表达,类似于用javascript或HTML语言来编写程序。

智能合约是由电脑来执行——给予合同条件,设定定义输入值,其有自己的执行方式。

实际上,『智能合约』常常用来泛指任何在区块链上执行的脚本或程序。但是,关于智能合约的定义可以更狭窄一些:用算法取代在两方之间传统的契约协议设置方法。

智能合约的起源

智能合约是由计算机科学家Nick Szabo在其1997年的论文『The Idea of Smart Contracts』中提出来的。他认为自动售货机是最早的智能合约——这种机械类装置是用来转移一种物品(如一条糖果)的所有权,当用户提供一个确定的定义变量(1.5美元)时执行。因为这类机器『控制』了这类财产——通过物理的封闭在机器里——它可以执行这种合约的条款。

扩展此概念,Szabo认为电脑代码可以使用在在机械类装置中去执行更多复杂的数字资产的转移。不仅是转移一条糖果的所有权,一份智能合约可以转移房地产、股票或知识产权。这类程序可以定义『输入值』使程序执行——例如支付行为、董事会投票或者其他的任何可以利用算法表达的条件。

让我们来考虑一个基本的期权合约。一份看涨期权允许持有人在未来某时期以特定的价格购买特定的资产。假设Alice从Bob处购买了一份智能合约。这份合约允许Alice在未来某时期用50美元/份的价钱去购买100份X股票。在期权的到期日后Alice无权再向Bob以50美元的『执行价格』去购买该股票。

下面是一份简单的智能期权合约的伪代码:

智能合约能否对法律界造成冲击

在定义部分,智能合约定义了相关的条款——基础资产、执行价格、参与者的身份和到期日。执行部分则是扣动在到期日之前的任何时期交易执行的扳机。该函数首先检查执行人是函数中定义的买方,再检查执行时间是否在到期日之前。如果两条件都成立,该合约立即执行。

两个需要解决的问题

直到最近之前,智能合约还只是一个概念,因为一直有两个基本的问题没有解决:一、智能合约如何解决实物资产转移的过程?如现金、股票和房产等。二、什么样的电脑才可以被信任去执行这类合约?

区块链来了

区块链是一个好的解决智能合约难题的技术。区块链是一种有权威性分布式储存的数据库,优点在于其管理和更新的方式,具有十分高的可信任特性。区块链不是被一个单一的组织控制和管理,而是被共同参与的计算机网络来维护、更新和保护。

每一台的计算机存储了区块链的完整数据库,每份副本都与该网络内的其它副本保持同步更新,通过一种叫做一致性算法的加密实施规则来实现。重要的是,区块链是一种『仅可添加』的数据库,这意味着一旦信息被有效写入,将再也无法被修改。任何可数字化的资产都可以写入区块链内。事实上,往区块链里写入的信息是通过哈希算法加密后的哈希值,该算法为非对称加密,结果具有不可逆性,且原信息任何改动计算出的哈希值都不一样,这使得写入的信息一方面具有隐私性,另一方面,当原信息被修改也可被查知。

区块链就是这样构架了记录和转移数字资产的基础。由于区块链一直保持同步更新,有效的区块链只有一条——这就解决了一直困扰数字资产使用的『双花』问题:如何防止一份数字资产在同一时间复制转移给不同的人。由于伪造一条区块链取代现有的区块链是不可能的事,交易参与者能够被保证其对于资产的所有权是成立的。

因此区块链可以解决之前提出的两个问题。首先,通过将实体资产数字化,使利用代码控制资产成为可能。控制资产实际上是控制该资产对应的秘钥。其次,智能合约需要一个『被信任』的电脑来执行合约,而区块链就是这台『机器』。区块链的分布式储存机制很好的解决了信任问题。

逐步的影响

银行、交易所和其他金融机构已开始着手于利用区块链技术去储存以及交易资产。纳斯达克交易所和区块链企业Chain达成了合作关系,已经开发并正在测试私募股权市场。另一个开源的比特币项目Ethereum(以太坊)致力于成为非传统的、去中心化的担保和交易任何事物的基础应用。43家银行达成联盟,同R3公司一起尝试构建基于区块链的票据交易解决方案。

可见区块链对于传统行业的影响不仅限于法律和金融合约,只要未来有更多的类型的资产能够被数字化记录和交易在区块链上,智能合约将会被更广泛的运用。到那时,智能合约将会改变公司和商业交易运作的体系。这项技术的优势能够对许多行业产生革命性的作用——自动化、可预测并且运作更快——最终可能会撬动法律行业的齿轮,改变其运作的方式。

试想一下,当我们将合约写成代码,该合约将会更清晰且具有可预测性。智能合约可以通过输入任何变量来测试,或者可以说,输入任何事件来作为变量输入。这可以让律师知道在不同的条件下,合约执行的结果。像『debug』一样,律师通过测试合约,能够清楚的理解合约的风险。

破坏而并非取代

当然了,智能合约不会完全取代自然语言法。很多法律的合约很难用代码来表达并用电脑执行。例如,那些与当事人行为表现相关的合约而不是简单的非物质化财产的交换。

甚至完全自动执行的合同也需要最终人工审核,以保证法律条款和概念能够清晰的定义合同中每方的权利。不过,智能合约的出现会改变律师和客户工作的方式,他们需要发现哪种类型的合同和其中的条款能够被代码化,哪些需要用自然语言来表达,如何将这两部分的效用最大化。

当然了,现在智能合约还只是一个概念,但我们已经开始利用区块链技术在一些领域当中起到作用,也许在未来的几年里,法律专家能够开始考虑并接受这种技术创新。

参考资料:How Close Are Smart Contracts to Impacting Real-World Law?- Josh Stark