寫在前面
伴隨著區塊鏈的技術發展,零知識證明(ZKP,ZeroKnowledger
Proof)技術先后在隱私和Layer2擴容領域得到越來越多的應用,技術也在持續的迭代更新。從需要不同的TrustSetup的
ZKP,到需要一次TrustSetup同時支持更新的ZKP,再到不需要TrustSetup的
ZKP,ZKP算法逐漸走向去中心化,從依賴經典NP問題,到不依賴任何數學難題,ZKP算法逐漸走向抗量子化。
我們當然希望,一個不需要TrustSetup同時也不依賴任何數學難題、具有抗量子性的ZKP算法也具有較好的效率和較低的復雜度,它就是REDSHIFT。
REDSHIFT
《REDSHIFT:TransparentSNARKsfromListPolynomial
CoinGecko去年收錄的項目已有1866個宣告死亡:金色財經報道,CoinGecko數據顯示,在2022年收錄的6300個項目中,1866已被標記為“死幣(dead coin)”。
在2021年,有8000多種代幣被收錄,其中近40%的項目已經被CoinGecko取消列出。在過去5年中,平均每年有947個被CoinGecko收錄項目被宣布死亡。[2023/4/1 13:38:45]
CommitmentIOPs》,從名字可以可出,它是基于List多項式承諾且具有透明性的SNARK算法。算法本身和PLONK
有大部分的相似之處,唯一不同的是多項式承諾的原語不同。下面先簡單的通過一張表格來展示REDSHIFT和PLONK
算法的異同之處,具體如下:
FTX CEO確認遭受黑客攻擊并與執法部門合作:金色財經報道,FTX新任首席執行官約翰-雷周六在Twitter上證實,上周五申請破產保護的FTX及其美國子公司FTX US昨晚遭到黑客攻擊,該攻擊使交易所的錢包中數億美元的加密貨幣被抽出。在通過FTX的總法律顧問Ryne Miller在Twitter上發表的聲明中,Ray表示FTX US和FTX.com \"繼續盡一切努力確保所有資產的安全,無論位于何處\"。(coindesk)[2022/11/13 12:57:17]
因此,只要對PLONK算法有深入了解的讀者,相信再理解REDSHIFT算法,將是一件相對簡單的事。ZKSwap團隊在此之前已經對PLONK算法進行了深入的剖析,我們在文章《零知識證明算法之PLONK---電路》詳細的分析了
PLONK算法里,關于電路部分的詳細設計,包括表格里的《Statement->Circuit->
FastAF與基于Solana的NFT項目Degen Apes達成合作:金色財經報道,FastAF和Degenerate Ape Academy合作促進手機上的NFT門控商務。?Degenerate Ape Academy的持有人可以在快速商務應用FastAF上獲得獨家商品。該伙伴關系為第一個基于Solana的項目提供了一個代幣門的用例,該項目凈銷售額超過100萬美元。[2022/9/21 7:11:26]
QAP》過程,并且還詳細描述了PLONK算法里,關于“PermutationCheck”的原理及意義介紹,文章零知識證明算法之PLONK
---協議對PLONK的協議細節進行了剖析,其中多項式承諾在里面發揮了重要的作用:保持確保算法的簡潔性和隱私性。
我們知道,零知識證明算法的第一步,就是算術化,即把prover
巨鯨地址過去一周買入1.713萬億SHIB,價值2200萬美元:金色財經報道,據Crypt Eye數據,一個巨鯨地址在過去一周購買了1.713萬億SHIB,價值2200萬美元,其中有1萬億SHIB是在過去24小時完成的;目前該地址擁有24萬億SHIB,價值3.192億美元,位列SHIB富豪榜第六。
另外,Shiba Inu社區自稱的Shiba Army成員地址超過200萬個,并且數據不斷增長:上周,SHIB持有者地址增加了7718個,上個月增加了30,108個。
Coingecko數據顯示,Shiba Inu (SHIB)暫報0.00001261美元,24小時漲幅2.6%。(Newsnow)[2022/9/5 13:08:31]
要證明的問題轉化為多項式等式的形式。如若多項式等式成立,則代表著原問題關系成立,想要證明一個多項式等式關系是否成立比較簡單,根據
Schwartz–Zippel定理可推知,兩個最高階為n的多項式,其交點最多為n個。
換句話說,如果在一個很大的域內隨機選取一個點,如果多項式的值相等,那說明兩個多項式相同。因此,verifier只要隨機選取一個點,prover提供多項式在這個點的取值,然后由verifier判斷多項式等式是否成立即可,這種方式保證了隱私性。
然而,上述方式存在一定的疑問,“如何保證prover
提供的確實是多項式在某一點的值,而不是自己為了能保證驗證通過而特意選取的一個值,這個值并不是由多項式計算而來?”為了解決這一問題,在經典
snark算法里,利用了KCA算法來保證,具體的原理可參見V神的zk-snarks系列。在PLONK
算法里,引入了多項式承諾的概念,具體的原理可在“零知識證明算法之PLONK---
協議”里提到。
簡單來說,算法實現了就是在不暴露多項式的情況下,使得verifier相信多項式在某一點的取值的確是prover聲稱的值。兩種算法都可以解決上述問題,但是通信復雜度上,多項式承諾要更小,因此也更簡潔。
協議
下面將詳細介紹REDSHIFT算法的協議部分,如前面所述,該算法與PLONK算法有很大的相似之處,因此本篇只針對不同的部分做詳細介紹;相似的部分將會標注出來方便讀者理解,具體如下圖所示:
協議的1-6步驟在PLONK的算法設計里都有體現,這里著重分析一下后續的第7步驟。
在PLONK算法里,prover為了使verifier相信多項式等式關系的成立,由
verifier隨機選取了一個點,然后prover提供各種多項式(包括setuppoly、constriant
ploy、witnesspoly)的commitment,由于使用的Katecommitment算法需要一次TrustSetup
并依賴于離散對數難題,因此作為PLONK算法里的子協議,PLONK算法自然也需要TrustSetup且依賴于離散對數難題。
在REDSHIFT協議里,多項式的commitment
是基于默克爾樹的。若prover
想證明多項式在某一個或某些點的值,證明方只需要根據這些值插值出具體的多項式,然后和原始的多項式做商并且證明得到商也是個多項式即可。
當然為了保護隱私,需要對原始多項式做隱匿處理,類似于上圖協議中的第一步。在實際設計中,為了方便
FRI協議的運行,往往設計原始多項式的階d=2^n+k(其中k=log(n))。可能讀者一直在疑惑前面一直提到的FRI
協議具體是怎么運行的,ZKSwap曾對FRI的具體原理進行過解讀,感興趣的可以通過ZKSwap官網閱讀以下文章:
《理解零知識證明算法之Zk-stark》
《理解零知識證明算法之Zk-stark--Arithmetization》
《深入理解零知識證明算法之Zk-stark--LowDegreeTesting》
《深入理解零知識證明算法之Zk-stark--FRI協議》
來源:金色財經
白皮書下載地址:https://cxw202006.lanzous.com/iLE84mds2yj科學上網軟件下載:?https://www.xt6vvn.
1900/1/1 0:00:00今日資訊: 法國國民議會議員Jean-MichelMis已向法國參議院簽署了一份請愿書,旨在授權法國央行購買比特幣和其他加密貨幣.
1900/1/1 0:00:00鏈上數字黃金LCS自2018年誕生,四年時間穩健推進,生態不斷演進。從自由現金到公鏈模型,再到當前的鏈上數字黃金,LCS旨在致敬比特幣,成為運行在鏈上的數字黃金.
1900/1/1 0:00:00今日資訊: 約翰·列儂之子SeanOnoLennon在推特個人簡介中添加比特幣標簽,以表示對比特幣的支持.
1900/1/1 0:00:00近日,全球市值第三的NFT和游戲開發項目Enjin計劃正式進軍中國,ENJ中文社群正式開始建立.
1900/1/1 0:00:00午盤16:30時候以太坊給出多空策略:1、價格反彈1825/1830做空,止損位1855/1860,目標1785/1780,跌破可繼續下看1750~1740.
1900/1/1 0:00:00