1. 算法
从算法的角度上来看,Aleo属于零知识证明(ZKP)赛道项目,复杂度是比大饼和以太坊算法都要复杂的。算法的核心计算我们之前也提过主要是MSM+NTT/FFT的计算,还会包含一些Hash运算。这些计算主要目的是为了生成零知识证明,而生成证明的速度直接会影响生态的体验。
生成证明的速度可以从软件和硬件两个方面来优化:
软件层面,在语言层面上,ZK更友好的格式,也会带来加速生成的过程,比如Aleo的Leo语言。再就是算法本身的优化,虽然说有一定的优化空间,但是要想有大的突破需要非常多的时间,毕竟牵涉到很多数学问题。
证明生成的过程中,约有60%的时间花在MSM上,其余时间由NTT/FTT主导。MSM和NTT都存在性能挑战,通常的解决办法:
●MSM可以在多线程上执行,从而支持并行处理。然而,当处理大型数据向量时,例如6700万个参数,乘法运算可能仍然很慢,并且需要大量的内存资源。此外,MSM存在可扩展性方面的挑战,即使在广泛并行化的情况下也可能保持缓慢。
其次,与以太坊对比来看,以太坊并不是隐私公链,没有隐私的刚性要求,从开始设计的时候就没有考虑过隐私,虽然在L2上也有像Aztec这样的隐私项目,但是和Aleo这种L1的公链相比,完全不在一个数量级别。