2.1.2 区块链的特点与分类
区块链技术是具有普适性的底层技术框架,可以为金融、经济、科技甚至政治等各领域带来深刻变革。按照目前区块链技术的发展脉络,区块链技术将经历以可编程数字加密货币体系为主要特征的区块链1.0模式、以可编程金融系统为主要特征的区块链2.0模式和以可编程社会为主要特征的区块链3.0模式。按照区块链的定义,区块链具有去中心化、时序数据、集体维护、可编程和匿名性等特点。
(1)去中心化。区块链数据的验证、记账、存储、维护和传输等过程均基于分布式系统结构,采用纯数学方法而不是中心机构来建立分布式节点间的信任关系,从而形成去中心化的可信任的分布式系统,与传统集中记账方式的不同之处在于整个网络不依赖一个中心化的硬件或管理机构。区块链的账本不存储于某个数据库中心,也不需要第三方权威机构来负责记录和管理,而是分散在网络中的每个节点上,每个节点都有一个该账本的副本,全部节点的账本同步更新。作为区块链的一种部署模式,公有链中所有参与节点的权利和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护,任意一个节点停止工作都不会影响系统整体的运作。
(2)时序数据。区块链采用带有时间戳的链式区块结构存储数据,从而为数据增加了时间维度,具有极强的可验证性和可追溯性;同时,又通过密码学算法和共识机制保证了区块链的不可篡改性,进一步提高了区块链的数据稳定性和可靠性。
(3)集体维护。区块链系统的数据库采用分布式存储,任意一个参与节点都可以拥有一份完整的数据库备份,任意一个节点的损坏或失去都不会影响整个系统的运作,整个数据库由所有具有记账功能的节点来共同维护。一旦信息经过验证并添加至区块链,就会永久地存储起来,除非能够同时控制系统中超过51%的节点,否则单个节点对数据的修改是无效的。参与系统的节点越多,数据库的安全性就越高。此外,区块链系统采用特定的经济激励机制来保证分布式系统中所有节点均可参与数据区块的验证过程,并通过共识算法来选择特定的节点将新区块添加到区块链中,确保集体维护的透明性。
(4)可编程。区块链系统通常是开源的,代码高度透明,公共链的数据和程序对所有人公开,任何人都可以通过接口查询系统中的数据。区块链平台还提供灵活的脚本代码系统,支持用户创建高级的智能合约、货币或其他去中心化应用。例如,以太坊平台提供了图灵完备的脚本语言,以供用户构建任何可以精确定义的智能合约或交易类型。
(5)匿名性。由于节点之间的交换遵循固定的算法,其数据交互是无须信任的(区块链中的程序规则会自行判断活动是否有效),因此,交易对手无须通过公开身份的方式让对方对自己产生信任,这对信用的累积非常有帮助。区块链系统以用户公钥产生的地址做用户标识,不需要传统的基于公钥基础设施(Public Key Infrastructure,PKI)的第三方认证中心(Certificate Authority,CA)颁发数字证书来确认身份。通过在全网节点运行共识算法,建立网络中城市节点对全网状态的共识,间接地建立了节点间的信任。用户只需要公开地址,不需要公开真实身份,而且同一个用户可以不断变换地址。因此,在区块链上的交易不与用户真实身份挂钩,只是与用户的地址挂钩,具有交易的准匿名性。
(6)安全可信。区块链技术采用非对称密码学原理对交易进行签名,使交易不能被伪造;同时,利用哈希算法保证交易数据不能被轻易篡改,借助分布式系统各节点的工作量证明等共识算法来抵御和惩罚破坏者的攻击,保证区块链中的区块及区块内的交易数据不可被篡改和伪造,具有极高的安全性。此外,通过数学原理和程序算法,确保系统运作规则公开透明,实现交易双方在不需要借助第三方权威机构信用背书的情况下达成共识,能够在去信任的环境下自由安全地交换数据,使对人的信任变为对机器的信任,任何人为的干预都不起作用。
一般认为,区块链技术正处于区块链2.0模式的初期,股权众筹、DeFi、DAO和P2P借贷等各类基于区块链技术的互联网金融应用相继涌现。然而,上述模式实际上是平行而非演进式发展的,区块链1.0模式的数字加密货币体系远未成熟,距离其全球货币一体化的愿景实际上还很远。区块链可分为四类:公有链(Public Blockchain)、联盟链(Consortium Blockchain)、私有链(Private Blockchain)和混合链(Hybrid Blockchain)。区块链的类别如表2-1 所示。
表2-1 区块链的类别
