軟件層面,在語言層面上,ZK更友好的格式,也會帶來加速生成的過程,比如Aleo的Leo語言。再就是算法本身的優(yōu)化,雖然說有一定的優(yōu)化空間,但是要想有大的突破需要非常多的時間,畢竟牽涉到很多數(shù)學問題。
●在算法過程中頻繁的數(shù)據(jù)混洗使得NTT難以在計算集群中分布,無法并行計算,并且由于需要從大型數(shù)據(jù)集中加載和卸載數(shù)據(jù),在硬件上運行時需要大量帶寬。即使硬件操作很快,這可能也會導致速度變慢。例如,如果硬件芯片的內(nèi)存為16GB或更少,那么在100GB的數(shù)據(jù)集上運行NTT將需要通過網(wǎng)絡加載和卸載數(shù)據(jù),這可能會大大降低操作速度。
簡單來說,在其他參數(shù)相同或者差不多的情況下,內(nèi)存和帶寬綜合決定終某個硬件在Aleo項目上的算力大小。
帶寬這個概念估計很多人不是很了解,之前只是關(guān)注顯存,雖然說目前Aleo官方還沒有正式公布的PoSW算法,但是從目前的表述來看把NTT/FFT這個漏洞堵上是個必然,而且本身零知識證明算法是對NTT/FFT有要求的。
目前零知識證明(ZKP)應用的主要2個方向:隱私和可驗證計算,Aleo是隱私L1公鏈,同時兼具可編程性,像ZCash等雖然也是隱私公鏈,但是不具備可編程性。以太坊L2上的ZK-Rollup項目,屬于可驗證計算,我們之前的文章也分析過:重磅分析!為什么說FPGA或者ZK通用服務器在Aleo項目上機會是零?,在證明的需求量上完全不是一個級別。