1. 算法
從算法的角度上來看,Aleo屬于零知識證明(ZKP)賽道項目,復雜度是比大餅和以太坊算法都要復雜的。算法的核心計算我們之前也提過主要是MSM+NTT/FFT的計算,還會包含一些Hash運算。這些計算主要目的是為了生成零知識證明,而生成證明的速度直接會影響生態的體驗。
生成證明的速度可以從軟件和硬件兩個方面來優化:
軟件層面,在語言層面上,ZK更友好的格式,也會帶來加速生成的過程,比如Aleo的Leo語言。再就是算法本身的優化,雖然說有一定的優化空間,但是要想有大的突破需要非常多的時間,畢竟牽涉到很多數學問題。
證明生成的過程中,約有60%的時間花在MSM上,其余時間由NTT/FTT主導。MSM和NTT都存在性能挑戰,通常的解決辦法:
●MSM可以在多線程上執行,從而支持并行處理。然而,當處理大型數據向量時,例如6700萬個參數,乘法運算可能仍然很慢,并且需要大量的內存資源。此外,MSM存在可擴展性方面的挑戰,即使在廣泛并行化的情況下也可能保持緩慢。
身份驗證和身份驗證:ZKP 可用于確認身份,而不會泄露不必要的信息。例如,一個人可以在不提供確切出生日期的情況下證明自己已年滿 18 歲,或者在不共享密碼等敏感數據的情況下證明自己的身份。這可以限度地降低身份盜竊或未經授權訪問的風險。
多方計算(SMPC):ZKP 可以促進多方之間的復雜交互,其中每一方都可以證明他們遵循商定的協議,而無需透露其私人輸入。這在各種場景中都很有用,例如保護隱私的數據挖掘、投票系統和分布式游戲。