区块链原理、设计与应用(第2版)
上QQ阅读APP看书,第一时间看更新

2.2 技术的演化与分类

区块链技术在比特币网络中首次大规模应用,直到今天,越来越多的分布式记账场景中应用了区块链技术。

1.区块链的演化

比特币区块链面向转账场景,支持简单的脚本计算。我们很自然地想到,如果引入更多复杂的计算逻辑,区块链技术将能支持更多应用场景,这就是智能合约(Smart Contract)。智能合约可以提供除了货币交易功能外更灵活的功能,执行更为复杂的操作。

引入智能合约后的区块链,其功能已经超越了单纯的数据记录,带有一点“智能计算”的意味,更进一步地,还可以为区块链加入权限管理、高级编程语言支持等,实现更强大的、支持更多商用场景的分布式账本系统。

从计算特点上,可以看到现有区块链技术的三种典型演化场景,如表2-1所示。

表2-1 区块链技术的三种典型演化场景

2.区块链与分布式记账

现代复式记账方式最早出现在文艺复兴时期的意大利(见图2-2),直到今天仍是会计学科中的核心方法。复式记账法同时记录每一笔账目的来源和去向,首次将对账验证功能嵌入记账过程,提升了记账过程的可靠性和可追查性。

图2-2 复式记账的账本

区块链实现了对完整交易历史的记录和保护。从这个角度来看,区块链是首个自带对账功能的数字账本结构。

更广泛地,区块链实现了非中心化的记录。参与到系统中的节点并不属于同一组织,彼此可以信任或不信任;链上数据由所有节点共同维护,每个节点都存储一份完整或部分的记录拷贝。

跟传统的记账技术相比,基于区块链的分布式账本包括如下特点:

●维护一条不断增长的链,只可能添加记录,而且记录一旦确认则不可篡改。

●非中心化(或者说多中心化)的共识,无须集中控制,实现上尽量呈分布式。

●通过密码学的机制来确保交易无法被抵赖和破坏,并尽量保护用户信息和记录的隐私性。

3.技术分类

根据参与者的不同,区块链技术可以分为公有(Public或Permissionless)链、私有(Private)链和联盟(Consortium或Permissioned)链。

公有链,顾名思义,任何人都可以使用和维护,参与者多为匿名。典型的如比特币区块链和以太坊区块链,信息是完全公开的。

如果进一步引入许可机制,可以实现私有链和联盟链两种类型。

私有链,由集中管理者进行管理限制,只有内部少数人可以使用,信息不公开。一般认为与传统中心化记账系统的差异不明显。

联盟链,介于两者之间,由若干组织一起合作(如供应链机构或银行联盟等)维护一条区块链,必须具有一定权限才可以访问、使用该区块链,相关信息会得到保护,典型的有超级账本项目。在架构上,现有大部分区块链在实现上都至少包括了网络层、共识层、智能合约和应用层等分层结构,联盟链实现往往还会引入额外的权限管理机制。

目前来看,公有链信任度最高,也最容易引发探讨,但短期内更多的应用会首先在联盟链上落地。公有链由于要面向匿名公开的场景,因此面临着更多的安全挑战和风险;同时为了支持互联网大规模交易,需要更高的可扩展性。这些技术问题在短期内很难得到解决。

对于信任度与非中心化程度的关系,针对大部分场景都可以绘制如图2-3所示的曲线。一般情况下,非中心化程度越高,信任度会越好。但两者的关系并非线性那么简单。随着节点数增加,前期的信任度往往会增长得较快,到了一定程度后,信任度随节点数增多并不会得到明显改善。这是因为随着成员数的增加,要实现共谋作恶的成本会呈指数级上升。

图2-3 信任度与非中心化程度的关系

另外,根据使用目的和场景的不同,区块链又可以分为:以数字货币为目的的货币链,以记录产权为目的的产权链,以众筹为目的的众筹链等,还有不局限特定应用场景的所谓通用链。通用链要兼顾不同场景下的应用特点,在设计上需要考虑得更加全面。