下一代区块链技术:Telegram Open Network 简介

2017 年,伴随着比特币和以太币等虚拟货币的暴涨,区块链技术逐渐被越来越多的人知晓。此时,著名即时通讯软件 telegram 高调推出数额巨大的 ICO 计划——telegram open network (TON)。与传统区块链网络相比,TON 在吞吐量、实时性、可扩展性上都引入了突破性的技术,代表了当前区块链技术的巅峰水平。本文将纵览 TON 的整体设计,并探究它实现高性能区块链网络的方法。


区块链的特性

根据官方的说法,与传统区块链网络相比,telegram open network 具有如下几大优势。

首先是惊人的交易吞吐量。经典的区块链,如比特币和以太网,由于使用单一链条结构,受到区块大小的限制,每秒可承载的交易吞吐量大约在 10 ~ 100 笔左右。TON 采用了独特的动态分片技术,在高负载条件下能自动拆分区块链,以支撑更多的交易。官方宣称 TON 的吞吐量可达每秒百万笔交易。

其次是极快的确认速度。区块链数据的真实性和不可变性,是由后继区块来背书的。对于比特币来说,如果某个区块后已经增长了六个区块,一般可以认为这个区块得到了确认。考虑到比特币平均每 10 分钟增长一个新区块,确认一个比特币交易通常需要一小时。TON 通过引入一条主链来背书,把交易确认时间缩短到增长一个新区块,即 5 秒钟。

第三是优异的可扩展性。与以太网类似,运行 TON 的节点也是图灵完备的虚拟机,这使得区块链应用开发者可以自由定制智能合约等区块链程序。但与以太网不同,TON 最多支持 2^32 种不同的工作链,每种工作链都可以定义其专属的协议,使整个 TON 网络能支持的服务充满了无限可能。

第四是节能环保。比特币等区块链网络使用工作证明(Proof-of-Work)的机制创建新区块。工作证明的方法大量重复无意义的哈希计算,造成了能源的巨大浪费。TON 则使用股份证明(Proof-of-Stake)的方法,大约有 100 ~ 1000 个节点参与新区块的创建,奖励根据股份所占比例瓜分。由于节点间不是竞争关系,所有的计算都用于维护运营 TON 网络,因此 TON 网络的能耗相对较小。


区块链的结构

整个 TON 区块链网络由一条唯一的主链和若干种工作链组成。

每种工作链可以定义其专属的协议,各工作链中的用户不互通,工作链在主链上注册后即可开始运行。

TON 最多支持 2^32 种工作链。在初始状态下,每种工作链只有一条。当一个工作链的负载(交易量)持续大于某一阈值时,会自动拆分成两条分片链。分片是依据用户账号的前缀进行的,相同前缀的用户会被安排在同一分片之下。每种工作链最多可支持 2^60 个分片。同理,当两个临近分片的负载持续小于某一阈值时,也会自动进行分片链的合并。TON 正是通过这种方式实现自动扩容和缩容。

TON 初始包括一个第零工作链,用以承载 TON 的货币——TON Coin。


新区块的创建

整个 TON 网络的所有区块,由 100 ~ 1000 个选定的节点创建。这些节点每个月选举一次,选举时封存提交的股份(股份用 TON Coin 表示)。在这一个月期间,选定的节点被划分成多个工作组,创建指定区块链上的新区块。每个新区块拿到工作组超过 2/3 的股份的节点的签名即算创建成功。如果节点在工作期间和工作结束后的一个月内未被发现弄虚作假的行为,其股份和收益(包括创建新区块的奖励和交易费用)会被一并退还。否则,节点会损失股份并被剥夺区块创建资格。

主链与所有分片链生成一个新区块的时间间隔都是 5 秒钟。分片链上的每一个新区块都会包含该链前一个区块的哈希值,以及需要加入区块的交易信息。主链上的新区块,除了包含主链前一个区块的哈希值外,还包含了每条分片链最后一个区块的哈希值。这样,当新区块加入主链时,相当于为整个 TON 网络的状态建立快照,这一快照将整个网络状态的合法性写入主链中。如果一条分片链的哈希值得到了主链的确认,那么该链直至那一刻的交易历史也就得到了确认。正是由于主链与分片链间的紧密耦合,为 TON 提供了极快的交易确认速度。


错误区块的修正

由于程序错误、网络故障、恶意破坏等诸多原因,区块链网络中可能会出现非法的区块,此时应采取措施修正错误。与简单的回滚策略不同,TON 使用二维区块链解决这个问题。正常情况下,一条区块链随时间流逝从左到右增长。当某个区块被发现有错误时,可以向上增长一个新区块去修复问题,即形成这个区块的一条子链。区块链网络中每一个引用了该非法区块的区块都应同理向上增长一个新区块。当错误的修正追上了新区块的创建后,就不需要向上增长区块了,进而回归从左到右增长的模式。


结论

TON 使用了一系列新技术去构建这个庞大而复杂的区块链网络。它支持自定义的工作链来满足各种应用场景的需求,通过分片的自动扩容缩容支撑海量交易,凭借主链与分片链的紧密耦合加快确认速度,同时又避免了能源的浪费。这些新技术的应用,为下一代区块链技术的发展指明了方向。