从算法的角度上来看,Aleo属于零知识证明(ZKP)赛道项目,复杂度是比大饼和以太坊算法都要复杂的。算法的核心计算我们之前也提过主要是MSM+NTT/FFT的计算,还会包含一些Hash运算。这些计算主要目的是为了生成零知识证明,而生成证明的速度直接会影响生态的体验。
证明生成的过程中,约有60%的时间花在MSM上,其余时间由NTT/FTT主导。MSM和NTT都存在性能挑战,通常的解决办法:
●MSM可以在多线程上执行,从而支持并行处理。然而,当处理大型数据向量时,例如6700万个参数,乘法运算可能仍然很慢,并且需要大量的内存资源。此外,MSM存在可扩展性方面的挑战,即使在广泛并行化的情况下也可能保持缓慢。
目前零知识证明(ZKP)应用的主要2个方向:隐私和可验证计算,Aleo是隐私L1公链,同时兼具可编程性,像ZCash等虽然也是隐私公链,但是不具备可编程性。以太坊L2上的ZK-Rollup项目,属于可验证计算,我们之前的文章也分析过:重磅分析!为什么说FPGA或者ZK通用服务器在Aleo项目上机会是零?,在证明的需求量上完全不是一个级别。
但是Aleo从开始的设计共识就是POS,也就是说其实本质上它是POS链,这一点上和其他项目有本质差别。其实对于某些人来说他们不太明白为什么Aleo一定要有PoW,完全用POS就可以了,很多业内知名ZK项目都是只有POS。关于这点可以看一下我们之前的文章:Aleo的PoSW、证明和委托代理计算到底是什么关系?“PoW”会不会消失?