Groth16和Spartan是什么關(guān)系?
網(wǎng)站安全 admin 發(fā)布時(shí)間:2023-11-27 19:35:06 瀏覽: 次
1.Spartan 和 Testudo 都是與Groth16一樣,都是一個(gè)zkSnark的證明系統(tǒng),只是他們更加高效。
Spartan中關(guān)于data-parallel的邏輯在代碼中也寫(xiě)的很清楚。在做第三次Sumcheck和最終GKR的時(shí)候有個(gè)并行處理(for循環(huán)處)。
Groth16也好,Spartan也好都是一個(gè)證明系統(tǒng),只是里面的算法不同,都是已經(jīng)把Setup,Prove,Verify這3個(gè)主要算法都是封裝好了。
Zebra也是調(diào)用這些方法而已。
2.您的論文,簡(jiǎn)稱(chēng)Vote,是一個(gè)投票系統(tǒng),關(guān)于可驗(yàn)證這個(gè)屬性的時(shí)候用到了zkSnark的證明系統(tǒng)。其他屬性比如去中心化,隱私性跟Spartan就沒(méi)有什么關(guān)系了。
如果Vote想要借鑒Zebra的方案,那么直接采用Zebra的方案測(cè)試就行。只是把Spartan里面的幾個(gè)重要的參數(shù)確定好即可。
let num_constraints = 1 << 3;
let num_witness = 1 << 2;
let num_inputs = 6;
let num_copies = 4;
這幾個(gè)參數(shù)應(yīng)該跟Statement有關(guān),但是我還不知道如何根據(jù)陳述來(lái)確定這些參數(shù)。您的論文里面的Statement=(CTi,SNi),是一個(gè)密文。
3.關(guān)于聚合,因?yàn)檎麄€(gè)的prove,verify過(guò)程都已經(jīng)交給zkSnark系統(tǒng),因此還需要我們聚合什么?Proof,Witness,Statement?
您的論文里面有聚合的過(guò)程,是把每個(gè)投票者的投票信息進(jìn)行聚合,也就是密文聚合。從密文就是陳述的角度來(lái)看我們只要根據(jù)陳述確定Spartan
的那幾個(gè)參數(shù),然后跑一遍Spartan就可以了。
相關(guān)推薦
-
無(wú)相關(guān)信息