在区块链系统中,可扩展性、去中心化以及安全性组成的三角,存在不可能共同取得最优化的"不可能三角"问题,云图怎么解决这个问题的?
其中去中心化可以简单量化为参与共识的节点数量,其数量越多,去中心化的程度也就越高;可扩展性也可量化为TPS,TPS越高,系统的性能越强。"不可能三角"问题中,最受人关注的是所有区块链系统都存在的共识节点数量和性能之间的平衡问题。
PlatON在Layer 1和Layer 2两个层面来解决这个问题。
- Layer 1上,PlatON的Giskard共识综合采用了基于概率分布的PoS(简称为PPoS)和并行BFT(简称为CBFT)机制,有效均衡了去中心化和可扩展性。目前一些PoS或DPoS系统使用Staking或投票排名的方式选出共识节点,其最终结果是只有较少的节点有机会参与共识,这种做法可以换取较高的性能,但更接近于中心化。另外一些系统采用随机方式在全网范围选取共识节点,但是只能在强同步网络上运行,虽然保证了尽可能程度上的去中心化,但性能有待验证。这是两个典型的极端方案。PlatON采取折衷的方法,通过持续投票维持一个中等规模的动态共识节点候选人列表,然后在这个候选人列表中采用VRF和概率分布方式随机选取,每个候选人都有机会参与共识。这种方法相对缩小了共识节点的选取范围,又有效避免了过于中心化的问题。另外,目前常用的各种xBFT均为同步处理,即对一个区块确认后才生产下一个区块,这种方法存在性能上的上限。PlatON采用并行BFT共识,即出块和区块验证并行进行,在保证BFT1/3容错性的同时,大大提高了出块的速度。
- Layer2层面,PlatON的可验证计算(VC)密码学算法将信任传递到链下。通过可验证计算,合约只需要在链下计算一次,所有节点可以快速验证计算的正确性,一方面提高了交易的处理性能,另一方面也将权力进一步分散,更加去中心化。
3 个赞