作者
配對是許多加密協議的核心組成部分。本文我們介紹circom-pairing1,一種在Circom用于橢圓曲線配對的zkSNARK電路的概念驗證實現。
簡介
基于配對的密碼學(PBC)建立在一個叫做橢圓曲線配對的數學對象存在的橢圓曲線密碼學之上。雖然配對的定義相對復雜,但它們是零知識密碼學現代發展的許多加密對象的基礎:BLS數字簽名、KZG多項式承諾和zkSNARKs。
由于ZK生態系統中的這個關鍵角色,在zkSNARKs中實現配對極大地擴展了可尋址密碼構造的范圍,并增加了SNARKs的反射能力。特別是,我們設想的應用程序的ZK身份,區塊鏈擴容,和可編程的SNARKs。最后的“解鎖”可能會帶來一個未來,任何人都可以在運行中自由組合和聯合不同的SNARKs。
由于配對涉及許多復雜的橢圓曲線操作,在zkSNARK中實現它們會帶來許多挑戰。首先,對于非自然域上的橢圓曲線算法,我們必須使用zk-ECDSA6的大整數和ECC優化,但是要適應我們的曲線和BLS12-381的配對涉及到在域擴展上操作的事實。其次,Miller的計算配對算法Miller'salgorithm7允許在標準計算模型中進行許多優化,我們將這些優化移植到zkSNARK設置中。最后,由于配對計算的復雜性,即使最終優化的電路也可能相當大,這意味著需要一些基礎設施的最佳實踐來適應Circom工具棧。
OKX即將開放zkSync-Era鏈的提幣功能:5月19日消息,據OKX官方APP的ETH提幣頁面顯示,ETH-zkSync-Era提幣即將開啟,目前看到頁面的預計開放時間為5月20日下午6:00,暫時未發現相關的充值頁面。[2023/5/19 15:14:05]
在這一系列的文章中,我們提出了一個在BLS12-381曲線上的最優Ate配對的概念驗證Circom實現,以及一個在BLS簽名驗證中的應用實例。然后,我們概述了其他潛在的應用,如遞歸SNARK和多項式承諾驗證,我們認為這種方法很容易推廣應用。
循環配對
我們實現了循環配對circom-pairing8代碼庫,它為BLS12-3819曲線上的以下操作提供未經審核的ZK電路:
Tate配對是最簡單的橢圓曲線配對之一。該算法滿足雙線性特性,適用于密碼學領域,對橢圓曲線的計算和算法的正確實現起到了很好的檢驗作用。
最佳配對:最佳配對是實踐中最常用的配對。計算類似于Tate配對(使用Miller的算法,我們將在以后的文章中討論);然而,涉及的步驟較少,而每一步的算法更加復雜,最終的結果是一個較短的總計算。
Polygon和Immutable合作推出以太坊擴展網絡“Immutable zkEVM”:金色財經報道,Polygon和Immutable宣布建立“戰略聯盟”并合作推出一個專為Web3游戲設計的全新以太坊擴展網絡“Immutable zkEVM”,將Polygon zkEVM技術與專為基于區塊鏈的游戲設計的Immutable平臺相結合。據悉,Immutable zkEVM將在2023年第二季度末推出,不過開發人員目前已經可以開始構建軟件開發工具包 (SDK) 。Polygon和Immutable還特別澄清兩個平臺沒有合并,Polygon自己的zkEVM主網網絡將于3月27日推出測試版,而現有的基于StarkEx zk-Rollup技術的Immutable X網絡將會與新的Immutable zkEVM網絡一起運行。(Decrypt)[2023/3/21 13:16:19]
BLS10簽名驗證(短公鑰):簽名驗證允許檢查一個BLS簽名.給定簽名s,生成元G,公鑰xG,和哈希hash,驗證電路轉換hash到橢圓曲線點H(m),使用maptoG2下面的電路,然后驗證s確實是由給定的公鑰和消息生成的簽名。BLS簽名驗證涉及到評估兩個最優的Ate配對來驗證這一點e(s,G)=e(H(m),xG),e表示最佳的Ate配對
YouSwap將于6月4日18:00新增ZKT一礦多挖:據官方最新消息,YouSwap將于6月4日18:00(UTC+8)于HECO鏈開拓區新增開啟ZKT一礦多挖???,用戶可以通過質押以上幣種來挖礦YOU和ZKT。
截至6月4日17:00,YouSwap累計交易總額達56,287,189USDT,YOU總銷毀數量達304,322,累計挖礦總產值3,749,024USDT。[2021/6/4 23:12:15]
散列hash到曲線:maptoG2的BLS簽名驗證操作通過計算橢圓曲線上的點對。正在簽名的消息必須首先散列成一個數值。然后,這個散列值被轉換成橢圓曲線上的一個點;散列到曲線電路執行這種轉換。
更詳細的文件,我們的電路在這里可用。這些電路沒有經過審核,也不打算用作生產級應用的庫。
演示
為了說明我們的電路,我們在zkpairing.xyz11實現了一個演示,它允許用戶生成任何BLS簽名(以特定的輸入格式)有效性的證明。如果用戶沒有一個特定的BLS簽名他們可以指定以太坊信標鏈上的任何塊號,并且演示會將塊數據解析為適當的格式,并生成一個驗證該驗證者簽名的證明區塊。對于每個證明,我們提供所有的數據-在三個小文件中-任何人都可以用來在自己的計算機上驗證證明!
ZKSwap于今日18:00正式開啟第五期流動性挖礦:官方消息,ZKSwap將于北京時間2021年5月24日18:00開啟第五期的流動性挖礦(PoL)和交易挖礦(PoT)活動,本次活動持續14天,至6月7日18:00結束。PoL總獎勵約為130萬ZKS,PoT總獎勵約為15萬ZKS。
為再度提升ZKSwap使用體驗和激勵ZKS持有者,本次活動延續了上一期流動性挖礦的規則,在大幅削減交易對挖礦產出的同時,把更多的挖礦獎勵給到交易需求量大的交易對(整體ZKS挖礦產出降低30%),其中大部分交易對的獎勵減少25%,少部分年化過高的交易對獎勵降低50%。此外,ZKS單幣挖礦,用戶只需在L2錢包中持有ZKS即可參與挖礦(可同時參與ZKS持幣生息活動)。[2021/5/24 22:38:39]
基準
所有基準測試都運行在32核3.1GHz、256GRAM、1T硬盤和400G交換機(AWSr5.8xlarge實例)上。
新加坡WBF交易所將上線ZKS:據官方消息顯示,WBF交易所將正式上線ZKS,并于2月9日12:00在創新區的掘金板塊上線ZKS/USDT交易對,充值和提現將于2月9日12:00開放。
據悉,ZKSwap是一套基于自動化做市商(AMM,Automated Market Maker)的代幣Swap協議。通過ZK-Rollup技術在Layer-2實現了uniswap的全套功能,同時提供無限可擴展性和隱私性。ZKSwap為流動性提供者和交易者提供超高吞吐量的Swap基礎設施,且交易無需任何Gas費用。[2021/2/9 19:18:56]
運行大型電路
請注意,驗證和Tate配對是非常大的電路,因此它們需要特殊的硬件和設置來運行。特別是,必須使用C++生成見證服務器,使用rapidsnark進行證明,使用補丁版本的Node.js而不使用垃圾收集生成密鑰。所有這些都必須在具有大容量內存的機器上完成;我們的設置工作流程在《大電路最佳實踐》文檔中有詳細說明。
我們能用zkPairing做什么?
因為配對是許多加密協議的核心組成部分,所以用于配對計算的zkSNARKs允許我們將以下高級原語放入SNARK中:
BLS簽名驗證:Boneh-Lynn-Shacham(BLS)數字簽名是一種基于橢圓曲線配對的簽名方案。由于能夠使用BLS有效地計算聚合簽名和閾值簽名,它目前被用于區塊鏈,如Etherum2.0、ZCash和Dfinity。驗證BLS簽名涉及到一個配對檢查,檢查兩個橢圓曲線配對是否相等,因此通過zkPairing直接啟用。這解鎖了潛在的可伸縮應用程序,比如輕型客戶機和橋接的簽名聚合。
遞歸SNARK驗證:因為Groth16證明驗證只涉及配對檢查,所以SNARK-ing配對允許SNARK-ing整個驗證算法,稱為遞歸驗證。這使我們能夠構建一個zkSNARK的zkSNARK的...無限廣告,使開發人員能夠構建不同的SNARK證明,而不是構建一個單一的大型SNARK和大大增加可能的SNARK的復雜性。我們正在調整我們的電路,以遞歸Groth16驗證BN254,并希望在不久的將來發布一個概念證明。
KZG多項式承諾驗證:KZG多項式承諾是PlonK的基礎,PlonK是具有通用可信設置的新一代zkSNARK之一。因為驗證KZG承諾涉及到一個配對檢查,zkSNARK-ing配對使我們能夠驗證任何建立在SNARK中的KZG承諾之上的東西,包括PlonK驗證本身!
很快就會看到第2部分討論了zkPairing的實現技術!
致謝
該項目是在ZKxZKGitcoin基金的支持下,在0xPARC的ZK身份工作組期間構建的。
我們借鑒并分享了很多與circom-ecdsa相關的技術,特別是在大整數和橢圓曲線算法的優化方面。例如,我們使用xJsnark的大整數乘法優化。
我們也從最初的創作者JordiBaylina和snarkjs的研究中獲益匪淺。他教了我們很多關于circom/snarkJS工具棧的知識,并分享了很多關于如何有效地構建大型ZK電路的見解。
參考
https://github.com/yi-sun/circom-pairing
https://en.wikipedia.org/wiki/Pairing-based_cryptography
https://medium.com/@VitalikButerin/exploring-elliptic-curve-pairings-c73c1864e627
https://en.wikipedia.org/wiki/Elliptic-curve_cryptography
https://0xparc.org/blog/zk-id-2
https://0xparc.org/blog/zk-ecdsa-2
https://crypto.stanford.edu/pbc/notes/ep/miller.html
https://github.com/yi-sun/circom-pairing
https://hackmd.io/@benjaminion/bls12-381
https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-bls-signature-04
https://zkpairing.xyz/
https://hackmd.io/V-7Aal05Tiy-ozmzTGBYPA?view
本推薦列表可能是一個活的信息來源,每個信息源都會以一定頻率更新,適合剛入門web3的小伙伴,挑選1、2個你欣賞其策展邏輯和水平的信息源,深入探索。這遠比在推特亂撞更適合web3入門學習.
1900/1/1 0:00:00Sept.2022,ThiagoFreitasDataSource:FootprintAnalytics-EthereumBlockchainMetrics合并改變了以太坊的共識機制.
1900/1/1 0:00:00過去的一周,波場TRON項目進展順利,為滿足波場TRON全球社區愛好者閱讀,本周周報共分為14種語言,請您選擇閱讀.
1900/1/1 0:00:009月22日,據區塊鏈瀏覽器TRONSCAN數據,波場TRON交易總數達到3,900,825,600,正式突破39億.
1900/1/1 0:00:00據官方消息,去中心化超抵押穩定幣USDD已登陸HitBTC交易平臺Staking板塊。在HitBTC質押USDD可以享受高達11%APY的獎勵! 期權協議Lyra已上線Arbitrum,并與去中.
1900/1/1 0:00:00TetherGold(XAU?)和EuroTether(EUR?)將在火幣全球站上線Tether于2022年12月8日在火幣全球數字代幣交易所推出TetherGold(XAU?)和EuroTet.
1900/1/1 0:00:00