軟件層面,在語言層面上,ZK更友好的格式,也會帶來加速生成的過程,比如Aleo的Leo語言。再就是算法本身的優(yōu)化,雖然說有一定的優(yōu)化空間,但是要想有大的突破需要非常多的時間,畢竟牽涉到很多數(shù)學問題。
證明生成的過程中,約有60%的時間花在MSM上,其余時間由NTT/FTT主導。MSM和NTT都存在性能挑戰(zhàn),通常的解決辦法:
●MSM可以在多線程上執(zhí)行,從而支持并行處理。然而,當處理大型數(shù)據(jù)向量時,例如6700萬個參數(shù),乘法運算可能仍然很慢,并且需要大量的內(nèi)存資源。此外,MSM存在可擴展性方面的挑戰(zhàn),即使在廣泛并行化的情況下也可能保持緩慢。
●在算法過程中頻繁的數(shù)據(jù)混洗使得NTT難以在計算集群中分布,無法并行計算,并且由于需要從大型數(shù)據(jù)集中加載和卸載數(shù)據(jù),在硬件上運行時需要大量帶寬。即使硬件操作很快,這可能也會導致速度變慢。例如,如果硬件芯片的內(nèi)存為16GB或更少,那么在100GB的數(shù)據(jù)集上運行NTT將需要通過網(wǎng)絡加載和卸載數(shù)據(jù),這可能會大大降低操作速度。
但是Aleo從開始的設計共識就是POS,也就是說其實本質(zhì)上它是POS鏈,這一點上和其他項目有本質(zhì)差別。其實對于某些人來說他們不太明白為什么Aleo一定要有PoW,完全用POS就可以了,很多業(yè)內(nèi)知名ZK項目都是只有POS。關于這點可以看一下我們之前的文章:Aleo的PoSW、證明和委托代理計算到底是什么關系?“PoW”會不會消失?