区块链能做什么、不能做什么?--人行论文解读上篇

2018年11月6日,中国人民银行发布了《区块链能做什么、不能做什么?》这一论文,全文近两万字,可读性非常高,论文质量也非常高。论文从经济学角度研究了区块链的功能,并对区块链内Token 的使用情况、特征、区块链共识与信任、智能合约、应用方向、安全性等话题进行了讨论。

从2009年比特币诞生到现在已经10年了,对很多行业、很多人产生了很大影响。比特币背后的区块链技术也是被人们熟知,成为了当下的热点。那么问题来了:

区块链能做什么、不能做什么?

相信这也是很多人想问,想了解的!下面带着这个问题,笔者来对这篇论文进行解读,希望对大家有用。

一、引言

区块链最早作为比特币的底层技术由中本聪在2008年提出,比特币是我们常说的第一代区块链技术,但比特币的脚本语言缺乏图灵完备性,使用的UTXO模型难以支持复杂的状态操作。为此,V神2013提出了以太坊(Ethereum),以太坊是一个基于账户模型的区块链系统,脚本语言具有图灵完备性,首次提出智能合约(smart contract)并支持分布式应用(decentralized application简称是DApp)。

2009 年1 月,比特币网络上线标志着区块链应用落地。从那时至今近10年时间里,除了加密货币发行和交易之外,区块链没有得到大规模应用。一个重要原因是物理性能不高,提高区块链物理性能的另一个重要方向是改进共识算法(consensus algorithm)。

解读:区块链发展了10年,区块链除了加密货币和交易之外,因为TPS的原因还没有得到大规模应用。

二、对区块链技术的经济学解释

1 (一)区块链的Token 范式

目前主流区块链系统,不管采取以比特币为代表的UTXO 模型,还是以以太坊为代表的账户模型,也不管脚本语言是否具有图灵完备性或是否支持智能合约,都具有3 个关键特征,可以归纳为“Token 范式”

1.1 第一,共识算法针对区块链内的Token。

Token 本质上是区块链内定义的状态变量,Token 可以在区块链内不同地址之间转移。转让过程中Token 总量不变。
Token 在区块链内不同地址之间转让时,Token 的状态(指区块链内各地址内有多少Token)更新和交易确认同步发生。因此,Token 被交易时,不会形成传统意义上的结算在途资金或结算风险。

1.2 Token 与智能合约之间有密不可分的联系。

Token 本身是智能合约的体现。比如,以以太坊ERC20 为代表的Token 合约规定Token 的总量、发行规则、转让规则和销毁规则等一系列逻辑。在Token 合约的基础上,可以构建对Token 执行复杂操作的智能合约。

1.3 区块链内的信息与Token 的状态和交易的关系。

按照是否与Token 的状态和交易有关,区块链内的信息分成两类——有关系的和没有关系的,这两类信息在共识算法下有完全不一样的地位。
节点在运行共识算法时,重点检验第一类信息是否符合预先定义的算法规则,第二类信 息作为Token 交易的附加信息写入区块链,节点不会检验这类信息的真实准确性。
特别是,区块链外信息写入区块链内的机制,一般被称为预言机(oracle mechanism)。如果区块链外信息在源头和写入环节不能保证真实准确,写入区块链内只意味着信息不可篡改,没有提升信息的真实准确性。

2(二)区块链内的共识和信任

2.1 共识的界定

目前对区块链共识的讨论,涉及三种不同语境下的共识概念——机器共识、治理共识和市场共识,其中治理共识和市场共识可以称为“人的共识”。很多误解就源于混淆了这三类共识,或者泛化了共识的范围和性质。

第一,机器共识。机器共识属于分布式计算领域的问题,目标是在存在各种差错、恶意攻击以及可能不同步的P2P网络中,并且在没有中央协调的情况下,确保分布式账本在不同网络节点上的信息备份是一致的。

第二,治理共识,指在群体治理中,群体成员发展并同意某一个对群体最有利的决策。比如,比特币社区关于“扩容”和分叉的讨论可以在治理共识框架下理解。

第三,市场共识。Token 参与交易时(不管是不同Token 之间交易,还是Token与区块链外资产或权利交易),就涉及市场共识。市场共识体现在市场交易形成的均衡价格中。

2.2 去信任含义的辨析

去信任源于Token 被交易时,Token 的状态变更和交易确认同步发生这一安排。设想Alice 以比特币向Bob 买入某一货物。Alice 向Bob 支付比特币这一过程无需两人之间有任何了解,也无需受信任的第三方机构,就可以在区块链内有保障地进行。这是去信任的真正含义。但在交易之后,Alice 如何确保Bob会按时向她交付合格的货物?这是很难保证的。

因此,区块链内的去信任环境,不能简单外推到区块链外。一旦脱离Token交易等原生场景,区块链要解决现实中的信任问题,往往需要引入区块链外的可信中心机制予以辅助。

3 (三)智能合约的功能

智能合约是运行在区块链内、主要对Token 进行复杂操作的计算机代码。目前区块链内有限的运行环境,使得这类代码远没达到智能阶段。甚至可以说,目前的智能合约,既不智能,也不是合约。

3.1 产权层面的功能。

A 地址和B 地址可以属于账户或智能合约。地址中的Token 具有产权含义。两个地址之间的Token 转移,就对应着产权变更。

3.2 流程层面的功能

一笔Token 转让要有效,转让发起者必须拥有对A地址中X 数量的Token 的操作权限,并且智能合约的触发条件被满足。智能合约的执行只有“成功”、“失败”两种情形,不存在中间情形。特别是,如果转让发起者不能确保A 地址中的Token数量超过X,智能合约的执行就会失败。

3.3 经济社会层面的功能

  • 投票,往某一地址转Token 可以理解为投票;
  • 抵押,先将一定数量的Token 转给某一智能合约,约定在未来时点并满足一定条件时,Token 可被返还;
  • 冻结和解冻,冻结是将一定数量的Token 用时间锁(time lock)锁定,从而暂时放弃Token 的流动性,到期才解冻。

3.4 智能合约的功能短板不容忽视

  • 没有普遍适用的去中心化预言机方案
  • 智能合约难以保证区块链内债务履约
  • 智能合约难以处理不完全契约


    Token 范式概括

解读:区块链涉及计算机技术和经济学。由于区块链是个新事物,人们对区块链的理解存在很多误解,论文对区块链技术给出经济学解释,并对区块链的共识、信任和智能合约等方面的常见误解进行全面的更正说明,让我们对区块链的相关知识有系统型的认识和了解。

推荐阅读更多精彩内容