小链君每日精心分享
自中本聪提出区块链已有10年时间,在这其中很明显的一个问题就是区块链共识在保证一致性的同时也将效率降低到与平均相当,这就限制了区块链主链的TPS——BTC在目前的设计下最大也只有7,ETH大约不超过20。虽然可以增加区块的大小,但一味增加大小并不能真正提高性能,同时还会造成矿场矿池的算力垄断,并不可取。于是有人就提出采用Layer2甚至Layer3的架构来不改变主链的情况下提高性能。
Layer2是啥
Layer2这个词来源于互联网分层架构,每层都负责一个层面的事情,来将全球数亿台计算机通过网络连接在一起。区块链的用户还远远没有那么多,但即使是为了能够有效交易,也必须拓展区块链主链。Vitalik提到:从长远观点看,随着区块链发展逐渐成熟,底层将被要求稳定化,而Layer2则日益承担创新和变化的重任。
那么Layer2的设计有哪些呢?有On-chain和Off-chain的不同。On-chain表示在另一条区块链上进行,不占用主链的算力。这种方法一般是侧链或者子链。分片在提高TPS方面效果很好,但并不代表分片一定是Layer2架构的。有时候分片只是Layer1性能的拓展。
Off-chain则表示链下进行。这就不得不提到状态通道。状态通道牺牲了一定的安全性,但足够把大量不需要上链的事务全部从主链移开。这就大大降低了主链的负担。如果智能合约设计得当,整个系统将可以方便地把链上事务转移到链下,再将结果转移到链上进行记录。
当然,还有人提出将跨链列为Layer3.这不是没有道理,但以目前区块链的情况来看,专门做Layer3并无太大必要——自身的数据都不能完全支持,跨链跨啥呢?小链觉得,目前还是先将Layer2的相似底层系统的跨链做好,扩大区块链的影响力,再进行Layer3的构造,并通过更高级的架构联系传统互联网,共同构建价值互联网。
Layer2的要求
Layer系列的架构都有一个明显的特点:越向上通用性越强,抽象性越强,否则就会受到很大的限制。对于Layer2,一般的需求如下:
任何人都可以随时创建该层执行引擎,不同的用户可以使用不同的执行引擎,并且可以非常快速地切换到任何其他执行引擎或基本协议。
底层链只需要一个具有准图灵完备执行规则的数据可用性层,任何Layer2合约都可以构建在最顶层,进行状态同步。
而Layer3的要求在互操作性、通用性和兼容性上。
目前区块链进入了深冬,正是好好思考需要做什么有实际应用价值东西的时候。Layer2架构是一个值得思考的方向。
文/烨煌
领取专属 10元无门槛券
私享最新 技术干货