從算法的角度上來(lái)看,Aleo屬于零知識(shí)證明(ZKP)賽道項(xiàng)目,復(fù)雜度是比大餅和以太坊算法都要復(fù)雜的。算法的核心計(jì)算我們之前也提過主要是MSM+NTT/FFT的計(jì)算,還會(huì)包含一些Hash運(yùn)算。這些計(jì)算主要目的是為了生成零知識(shí)證明,而生成證明的速度直接會(huì)影響生態(tài)的體驗(yàn)。
●在算法過程中頻繁的數(shù)據(jù)混洗使得NTT難以在計(jì)算集群中分布,無(wú)法并行計(jì)算,并且由于需要從大型數(shù)據(jù)集中加載和卸載數(shù)據(jù),在硬件上運(yùn)行時(shí)需要大量帶寬。即使硬件操作很快,這可能也會(huì)導(dǎo)致速度變慢。例如,如果硬件芯片的內(nèi)存為16GB或更少,那么在100GB的數(shù)據(jù)集上運(yùn)行NTT將需要通過網(wǎng)絡(luò)加載和卸載數(shù)據(jù),這可能會(huì)大大降低操作速度。
簡(jiǎn)單來(lái)說(shuō),在其他參數(shù)相同或者差不多的情況下,內(nèi)存和帶寬綜合決定終某個(gè)硬件在Aleo項(xiàng)目上的算力大小。
帶寬這個(gè)概念估計(jì)很多人不是很了解,之前只是關(guān)注顯存,雖然說(shuō)目前Aleo官方還沒有正式公布的PoSW算法,但是從目前的表述來(lái)看把NTT/FFT這個(gè)漏洞堵上是個(gè)必然,而且本身零知識(shí)證明算法是對(duì)NTT/FFT有要求的。
目前零知識(shí)證明(ZKP)應(yīng)用的主要2個(gè)方向:隱私和可驗(yàn)證計(jì)算,Aleo是隱私L1公鏈,同時(shí)兼具可編程性,像ZCash等雖然也是隱私公鏈,但是不具備可編程性。以太坊L2上的ZK-Rollup項(xiàng)目,屬于可驗(yàn)證計(jì)算,我們之前的文章也分析過:重磅分析!為什么說(shuō)FPGA或者ZK通用服務(wù)器在Aleo項(xiàng)目上機(jī)會(huì)是零?,在證明的需求量上完全不是一個(gè)級(jí)別。