2.2 技术的演化与分类
区块链技术自比特币网络设计中被大家发掘关注,从最初服务数字货币系统,到今天在分布式账本场景下发挥着越来越大的技术潜力。
1.?区块链的演化
比特币区块链已经支持了简单的脚本计算,但仅限于数字货币相关的处理。除了支持数字货币外,还可以将区块链上执行的处理过程进一步泛化,即提供智能合约(smart contract)。智能合约可以提供除了货币交易功能外更灵活的合约功能,执行更为复杂的操作。
这样,扩展之后的区块链已经超越了单纯数据记录的功能,实际上带有一点“智能计算”的意味;更进一步,还可以为区块链加入权限管理和高级编程语言支持等,实现更强大的、支持更多商用场景的分布式账本。
从计算特点上,可以看到现有区块链技术的三种典型演化场景,如表2-1所示。
2.?区块链与分布式记账
记账技术历史悠久,古老的账本见图2-2。
现代复式记账系统(double entry bookkeeping)由意大利数学家卢卡·帕西奥利于1494 年在《Summa de arithmetica, geometrica, proportioni et proportionalità》一书中最早制定。复式记账法对每一笔账目同时记录来源和去向,首次将对账验证功能引入记账过程,提升了记账过程的可靠性。
从这个角度来看,区块链是首个自带对账功能的数字记账技术实现。
更广泛地看,区块链属于一种去中心化的记录技术。参与到系统上的节点,可能不属于同一组织,彼此无需信任;区块链数据由所有节点共同维护,每个维护节点都能复制获得一份完整或部分记录的拷贝。
跟传统的记账技术相比,基于区块链的分布式账本应该包括如下特点:
维护一条不断增长的链,只可能添加记录,而发生过的记录都不可篡改;
去中心化,或者说多中心化,无需集中控制而能达成共识,实现上尽量采用分布式;
通过密码学的机制来确保交易无法被抵赖和破坏,并尽量保护用户信息和记录的隐私性。
3.?分类
根据参与者的不同,可以分为公开(public)链、联盟(consortium)链和私有(private)链。
公有链,顾名思义,任何人都可以参与使用和维护,如比特币区块链,信息是完全公开的;
如果进一步引入许可机制,可以实现私有链和联盟链两种类型:
私有链,由集中管理者进行管理限制,只有内部少数人可以使用,信息不公开;
联盟链则介于两者之间,由若干组织一起合作维护一条区块链,该区块链的使用必须是带有权限的限制访问,相关信息会得到保护,如供应链机构或银行联盟。
目前来看,公有链更容易吸引市场和媒体的眼球,但更多的商业价值会在联盟链和私有链上落地。
根据使用目的和场景的不同,又可以分为以数字货币为目的的货币链,以记录产权为目的的产权链,以众筹为目的的众筹链等,也有不局限特定应用场景的通用链。
现有大部分区块链实现都至少包括了网络层、共识层、智能合约和应用层等结构,联盟链实现往往还会引入一定的权限管理机制。