前言
本系列的第一篇文章,以Zk-snark做對照,分別從概念和算法流程上,做了概括性的介紹。建議在閱讀本篇文章之前,先閱讀下第一篇文章的內容。本篇文章,讓我們由淺入深,一起踏上探索Zk-stark算法奧秘的旅途。
回顧
在第一篇的文章中講到,Zk-stark算法大體可以分為兩個部分:Arithmetization和LowDegreeTesting。本篇我們先詳細介紹算法的第一階段Arithmetization。Arithmetization的整體步驟如下圖所示:
那什么是Arithmetization?具體過程又是什么呢?帶著這些疑問,讓我們仔細的品味文章后面的內容。
首先,什么是Arithmetization?
Arithmetization就是把CIstatement轉化成正式的Algebraiclanguage的過程,此步驟有兩個目的:第一,把CIstatement以簡潔清晰的方式呈現出來;第二,把CIstatement嵌入到代數域,為后面多項式的轉換做鋪墊。Arithmetizationrepresentation主要由兩部分組成:第一,執行軌跡;第二,多項式約束。執行軌跡是一個表,表的每一行代表一個單步的運算;多項式約束的構造是和執行軌跡相輔相成的,即當前僅當執行軌跡是正確的,多項式約束會滿足執行軌跡的每一行計算。最后把執行軌跡和多項式約束結合組成一個確定的多項式,然后對多項式進行LDT驗證。至此,驗證CIstatement的問題轉換成了驗證確定性多項式LDT的問題。
RDNT短時突破0.32美元 日內漲幅達到13%:金色財經報道,行情顯示,RDNT短時突破0.32美元,現報0.3176美元,日內漲幅達到13%,行情波動較大,請做好風險控制。[2023/7/20 11:07:48]
Arithmetization
知道了Arithmetization的整體流程,接下來,我們討論下具體的過程。為了便于理解,我們用一個簡單的例子,來貫穿整個Arithmetization的過程。每個人都去過超市,一般超市的收據的內容如下:
現在,好萊塢人氣演員Bob聲稱:"thetotalsumweshouldpayatthesupermarketwascomputedcorrectly"。那怎么驗證呢?其實很簡單,這時另一個氣人演員Alice只要對著收據,每一項累加求和就可以完成驗證。那么,這只是一個很簡單的例子,事實上,Alice只需要5步,就可以完成驗證過程。試想這樣一個場景:畢竟Bob很有錢,在超市買了1000000樣東西,同樣,他又聲稱:"thetotalsumweshouldpayatthesupermarketwascomputedcorrectly",這時候,Alice真的生氣了,這怎么驗證,按照之前的辦法,得大約要算1000000步,鬧呢?誰愛干誰干。Bob心里也心疼Alice,畢竟那么多年了。心想,有沒有什么牛掰的辦法能讓Alice用很少的步驟,就能確信我說的是對的呢?于是,Bob開動了最強大腦模式。下面,讓我們用上面簡單的例子,跟隨Bob去尋找這個牛掰的辦法。
BitNile擴大與Core Scientific合作,5月起運作1萬臺比特幣礦機:4月26日消息,多元化控股公司Ault Alliance, Inc.宣布擴大其全資子公司BitNile, Inc.與高性能區塊鏈計算數據中心和軟件解決方案提供商Core Scientific, Inc.之間的戰略合作。
該公司上個月宣布,從2023年4月開始,BitNile將在Core Scientific的現有設施中運作3000臺S19j Pro礦機。現在BitNile和Core Scientific修改了協議,即從2023年5月1日開始,BNI將與Core Scientific一起運營10000臺S19j Pro礦機。這將使BitNile在Core Scientific的設施中運行大約30兆瓦的電力容量。(Business Wire)[2023/4/26 14:28:34]
Bob心想,你不就是驗證最終的總和對不對么?那我就把總和的計算過程列出來,我保證每次的累加都對,那么我最終的結果一定也是對的。于是Bob在收據上新增了一列,用來保存計算總和過程中的中間值,這就是執行軌跡。新增的一列值需要滿足,初始化的值為0、最終的值和要付的總和相等、中間的每一個值都要等于上一個值加上上一行物品的單價,這構成了多項式約束。從圖2可以看出:
外媒:SBF在巴哈馬監獄中獲得“優待”:12月22日消息,據外媒報道,前FTX首席執行官Sam Bankman-Fried(SBF)在巴哈馬福克斯山監獄中一直被關押在醫務室,與其他囚犯不同,他可以獲得自來水,甚至還有廁所,以及其他福利。據不愿透露姓名的監獄官員說,SBF整天都在看電視新聞和閱讀有關自己的文章。
在福克斯山監獄,SBF與其他四名男子共用一間病房。他們都有帆布床,這在監獄里是一種奢侈,囚犯們抱怨說他們被迫睡在光禿禿的地面上,或者睡在老鼠出沒的牢房里的臨時紙板床上。按照標準程序,那些被限制在醫療單位的人不允許出去鍛煉,SBF大部分時間都在帆布床上度過。盡管他最初表示他會反對引渡,但SBF上周晚些時候開始表示他準備返回美國。據一位直接了解此事的人士透露,SBF態度的轉變部分與他能夠在美國獲得保釋的預期有關。
此前今日早些時候消息,SBF已抵達巴哈馬機場接受美國引渡。(彭博社)[2022/12/22 22:00:42]
多項式約束總共有3個,兩個是邊界約束,一個是循環約束;多項式的大小和執行軌跡的答案小沒有關系,即表格的長度即使擴大到1000000,最終的多項式約束仍是這三個,唯一變化的是變量x的取值范圍而已。在這里,借用V神的話來描述一下Zk-stark:Zk-Stark不是一個確定性的算法,它是一大類密碼??數學結構,對于不同的應用,具有不同的最優設置。可以理解為,對于不同的問題,具有不同的算術化的方案,因此要做到具體問題具體分析。但是有一個共同目標就是,無論是什么問題,得到的執行軌跡最好是用一個LOOP就可以表示,這樣得到的多項式約束也就最為簡潔。多項式約束的個數和形式直接影響到了proof的大小和Zk-stark算法的性能,因此,尋找一個最優的設置對于Zk-stark算法顯得尤為重要。回歸到主題,現在Bob已經得到了多項式約束和執行軌跡,那么如何把它們轉換成一個確定的多項式呢?請看下圖:
Coin98 Labs宣布已收購鏈游CyBall:12月8日消息,Coin98 Labs宣布已收購鏈游CyBall,進一步進入Web3游戲,將對其注入新的資金和資源。
此前消息,CyBall融資180萬美元,Bitkraft Ventures領投。[2022/12/8 21:31:53]
Bob首先把關注點切到執行軌跡,可以看到執行軌跡有2列,一列是單項價格,一列是價格總和,我們分別對兩列的元素進行拉格朗日插值,得到兩個函數f(x),w(x),0≤x≤5。分別對兩個函數進行域擴展,得到了在更多的點上的評估,即f(x),w(x),0≤x≤10000。
然后,Bob把f(x),w(x)和多項式約束等式結合,得到一組確切的多項式約束(圖中紅色圈2所示),以循環約束多項式為例:
1≤x≤5w(x)-f(x-1)-w(x-1)=0(1)
令Q(x)=w(x)-f(x-1)-w(x-1),則有Q(1)=0、Q(2)=0、Q(3)=0、Q(4)=0、Q(5)=0。
BTC盈利地址數達3個月高點:金色財經消息,據Glassnode數據顯示,BTC盈利地址數達3個月高點,7日均值數額為26,591,272.173。[2022/8/15 12:25:14]
根據已知事實,度為d的多項式H(x)在x=n處為0,則存在一個度為d-1的多項式H(x),滿足d(H(x))=d(H(x))-1&&H(x)=H`(x)*(x-n)
因此對于Q(x),度為5,存在一個多項式Ψ(x),度為0,即常量,滿足Q(x)=Ψ(x)*(x-1)(x-2)(x-3)(x-4)(x-5),令目標多項式T(x)=(x-1)(x-2)(x-3)(x-4)(x-5),度為5,則有:
Q(x)=Ψ(x)*T(x)(2)
驗證者Alice從0≤x≤10000隨機選擇一點a,發送給證明者Bob,要求Bob返回相應的值,以公式(2)為例,Bob需要返回w(a)、w(a-1)、f(a-1)、Ψ(a),然后Alice判斷等式是否成立,即:
w(a)-f(a-1)-w(a-1)=Ψ(a)*T(a)(3)
如果等式成立,則Alice大概率相信執行軌跡是正確的,那么原始計算成立。假如驗證者Bob作惡,講表格中的4.98改成5.98把,那么Q(1)=w(1)-w(0)-f(0)=5.98-0-4.98=1,不等于0。在這種情況下,觀察公式(2),等式右邊為Q(x),度為5,x=1不是零點;等式右側Ψ(x)*T(x),令G(x)=Ψ(x)*T(x),度為5,因為T(x)在x=1處是零點,所以G(x)在x=1處也是0點,因此,等式兩邊實際上是度相等的不同多項式,其交點最多為5個,因此在0≤x≤10000范圍內,只有5個值相等,9995值是不等的,因此隨機的從0≤x≤10000中選擇一個值,驗證不通過的概率是99.95%,如果域擴展的范圍更大,則驗證不通過的概率將會更接近于1。按照同樣的邏輯,分別處理邊界約束多項式,得到的結果如圖所示。
下面,我們講討論如何增加零知識屬性。
對于證明者Bob來講,執行軌跡是不希望被驗證者Alice看到的,因為它會包含一些重要的信息,因此,限定驗證者Alice只能從6≤x≤10000范圍內隨機選擇一個值,進行驗證,當然這種限定,雙方都是同意的。
存在這樣一類問題。當驗證者Alice收到證明者Bob反饋的值時,如何保證這些值是合法的,確實是通過多項式的形式計算,并且這些多項式是小于某個度的,而不是證明者Bob僅僅為了驗證通過,而生成的隨機值?比如如何確保w(a)、w(a-1)、f(a-1)、Ψ(a)是多項式w(x)、f(x)、Ψ(x)分別在x=a&&x=a-1上的取值呢,且多項式w(x)、f(x)、Ψ(x)的度小于某個固定值的呢?這些問題將在下一篇文章中給出答案,在此之前,不如先討論一下,為何多項式的度小于某個固定值就能證明原始執行軌跡式正確的呢?
從以上的例子中,可以看出,當且僅當執行軌跡是正確的時候,Q(x)才會在x取值為1、2、3、4、5時,等于0。那么Q(x)才可以被目標多項式T(x)整除,即:Ψ(x)=Q(x)/T(x),d(Ψ(x))=d(Q(x))-5。
從圖3可以看出,需要驗證的多項式的個數時5個(紅色圈4所示),如果對每一個多項式都進行LDT,那么消耗是很巨大的,因此,可以通過將這些多項式進行線性組合(紅色圈5所示),當且僅當每個多項式都滿足小于某個度時,其線性組合后的多項式也是小于某個度的,這個條件時充分的,具體的細節見后續的系列章節。
北京2021年2月4日/美通社/--工信部近期發布了《工業互聯網創新發展行動計劃》,為落實《行動計劃》,在工信部信息技術發展司的指導下,賽迪研究院牽頭編制了《工業互聯網平臺新模式新業態白皮書》.
1900/1/1 0:00:00行情分析: 日內,以太坊先漲后跌在漲,那么晚間很有可能再跌一點,然后起漲,從5分鐘級別來看,支撐位是在1608,昨日灰度大量增持47000枚ETH.
1900/1/1 0:00:00在人工智能技術越來越普及的當下,不論是日常生活出行,還是購物消費,機器人的概念和形象已經普遍被使用。那么在號稱“幣圈一日,互聯網十年”區塊鏈領域,當然也少不了機器人的存在.
1900/1/1 0:00:00人生工作室 02-0320:17科技達人 已關注 12:00-20:00 關鍵詞:NicCarter、人人影視字幕組、韓國韓華投資證券、ETH、ScottMinerd、馬克·庫班、A股收盤、火幣.
1900/1/1 0:00:002021年2月4日星期四北京時間00:01分ETH再創新高,劍斬1600點,向1700快速沖擊。不久之后的一個ETH將會價值2000美元,而以太坊價值幾百美元一個的日子卻仍歷歷在目.
1900/1/1 0:00:001月27日,北京市把能源、交通、通信、建筑、貿易等領域的“大佬”聚集在一起,召開北京市長安鏈生態聯盟工作推進會,共謀區塊鏈產業創新發展.
1900/1/1 0:00:00