第一节 区块链的并发性
所谓并发性,是指在一个系统中拥有多个计算,这些计算有同时执行的特性,而且它们之间有着潜在的交互。并发计算可能会在具备多核心的同一个芯片中复合运行,以优先分时线程在同一个处理器中运行,或在不同的处理器执行。
区块链技术尚未完全成熟,在区块链的去中心化特性下,所有交易都点对点进行,追求极致的可靠性,受限于共识算法和现实硬件网络资源,目前交易的效率并不高,具体体现在交易处理的并发量较低、并发能力弱,这使得支持每秒上万笔甚至十几万二十万笔的高频交易比较困难,这将制约着区块链技术的发展和普及。因此,要真正发挥区块链技术的魅力,必须具备高并发交易处理能力。
为提高效率支持高并发需求,现在出现了很多的研究成果和技术,例如比特币区块链中的闪电网络、将大量小额支付搬移到链下处理的雷电网络、记账流和信息流分开的技术等。
一、闪电网络
比特币自诞生起一直存在若干技术问题:论处理能力,目前全网只有7笔每秒;论时延,大致10分钟出一个块;论交易最终性,一般建议将等待6个块的确认视作交易最终化,大额交易则建议等待更多。
在闪电网络出现前,虽然比特币社区也试图通过区块扩容、隔离见证等技术在一定程度上增加交易处理能力,但这些方式并不能导致交易处理能力出现数量级的改善。与此同时,现存的PoW机制不能改变,交易处理能力和区块链数据容量似乎是一对无可调和的矛盾,由此可见,在比特币区块链中优化性能非常艰难。
为解决性能问题,区块链研究者提出将交易放到链外执行。以比特币区块链为后盾,在链下实现真正的点对点微支付交易,区块链处理能力的瓶颈被彻底打破,时延、最终性、容量甚至隐私问题也迎刃而解,这就是比特币“闪电网络”(Lightning Network)的思路。
闪电网络是一个去中心化的系统,其卓越之处在于无须信任对方以及第三方即可实现实时、海量的交易。闪电网络是基于微支付通道演进而来的,创造性设计出了两种类型的交易合约:序列到期可撤销合约RSMC和哈希时间锁定合约HTLC。RSMC解决了通道中币单向流动问题,HTLC解决了币跨节点传递的问题。这两个类型的交易组合构成了闪电网络。在闪电网络中,交易双方若在区块链上预先设有支付通道,就可以多次、高频、双向地通过轧差方式实现瞬间确认的微支付;双方若无直接的点对点支付通道,只要网络中存在一条连通双方的、由多个支付通道构成的支付路径,闪电网络也可以利用这条支付路径实现资金在双方之间的可靠转移。
闪电网络并不试图解决单次支付的银货对付问题,其假设是单次支付的金额足够小,即使一方违约另一方的损失也非常小,风险可以承受,因此使用时必须注意“微支付”这个前提。多少资金算“微”,显然应该根据业务而定。
二、雷电网络
以太坊提高交易处理能力的方式主要有两个:一个是分片技术,另一个是状态通道技术。雷电网络是状态通道技术在以太坊上的实现。
以太坊的雷电网络类似于比特币的闪电网络,雷电网络中大量的小额支付搬移到链下处理,由此来满足高并发需求。雷电网络的基本理念是,用户可以私下交换转账签名消息,而不是所有的交易都放到区块链上处理。雷电网络通过以太坊网络中的点对点支付与保证金存款保留了区块链系统所具备的保障机制。
本书评论