Gnosis Ring Batch Markets

作者:扎克-赫斯, Zack Hess https://github.com/zack-bitcoin/amoveo-docs/blob/master/other_blockchains/gnosis_multi_token_batch_auction.md

解釋環狀批次基本知識的非正式博文

下面是一份解釋環形批處理工具的正式文件

Ring Batches(環形批次)相當於Amoveo在狀態通道中的限價訂單 的鏈上、基於子貨幣(subcurrency)的版本。

問題所在 #

我們希望能夠用區塊鏈執行的資產來交易其他區塊鏈執行的資產。我們希望交易能以一個好的價格進行。

區塊鏈上NP問題的良好近似值 #

Gnosis Ring Batch Markets的一大技術創新是,他們找到了一種方法,可以找到NP硬問題的良好近似值,並將解決方案放在區塊鏈上。

這是一項重要的創新,因爲在鏈上計算這些問題的近似值都是難以實現的,而且近似的解決方案也不是確定的。 這類問題,想出一個完美的解決方案往往是不可能的,但一個近似解決方案的準確性可以很快得到驗證。因此,Gnosis採用的策略是允許許多人提供近似的解決方案,並使用這些提交的最優化的解決方案。

感謝Gnosis,現在有可能解決區塊鏈上的旅行銷售員問題(the traveling salesman problem)/或者knapsack問題。 Gnosis的新工具與TrueBit欺詐證明機制屬於同一家族。通過TrueBit,你可以在鏈上驗證任何有N個步驟的計算,而鏈上的時間和空間成本只有O(log2(N))。

分佈式加密密鑰生成 PoS #

這個組件是Gnosis新市場引擎的弱點。 DKG工具是這樣工作的。N個不同的人產生糾纏的信息,一個是公共的,一個是私人的。他們共享所有的公共信息,並使用它們來生成一個公鑰。現在,可以使用這個公鑰進行加密信息。最終,N個不同的人中的一些子集一起分享私人信息,並使用它們來計算一個私人密鑰,該密鑰可用於解密所有的信息。 Gnosis打算用這個DKG工具來防止市場上的搶先交易(front-running)行爲。如果每個人的賭注都是祕密的,那麼想在前面進行這些賭注的人就不會有他們需要的信息,從而能夠在前面進行賭注。人們可以在市場上有加密的賭注,而這些賭注直到投注回合結束纔會被解密。

所有創建糾纏信息的參與者,他們都提供了安全保證金。因此,如果有人能證明糾纏在一起的私人信息被提前泄露,那麼不正當泄露的人就會受到懲罰。

DKG在gnosis中的應用,可以被認爲是一種PoS共識協議。提供押金的N個參與者是共識協議的驗證者。

正常的PoS共識協議是基於2/3的參與,所以如果1/3的驗證者合作攻擊,他們可以讓協議停止運行。如果2/3的驗證者合作,那麼他們可以進行軟分叉更新,對協議進行任意的修改。你可以在這裏閱讀更多關於PoS協議不工作的原因

PoS的參與者正在商定的共識狀態,每個拍賣批次只有一個比特。他們要麼同意透露從他們的信息中產生的私鑰,要麼決定不透露。

Gnosis DKG有一些需要透露私人信息的參與者的門檻M,他們有一個參與者的總數N,所以它類似於一個基於M/N參與的PoS協議,並且有2種可能的失敗模式,類似於PoS的2種失敗模式。

DKG因遺漏而破損 #

如果有N-M+1個驗證者合作進行攻擊,這種攻擊是可能的。

DKG PoS的參與者可以做出決定,不透露他們的私人信息,所以這批訂單都保持私人狀態,這批訂單永遠不會被執行。

這使得DKG PoS驗證者能夠在市場上佔據先機。攻擊者可以查看每個批次的交易,然後利用這些知識來決定哪些批次應該被取消。他們可以把有風險的交易放到每一批中,而只解密那些對他們有利的交易批次。

DKG被提前揭示而打破 #

如果驗證者中的M人合作,他們可以進行這種攻擊。 如果驗證者提前分享他們的祕密信息,他們可以使用私鑰來解密所有的訂單。因此,他們可以與礦工合作,讓某些訂單被選擇性地審查。

這使得front-running變得微不足道。

首先有一批,他們審查所有賣出訂單。只有攻擊者可以出售。由於賣家如此之少,攻擊者在所有交易中都能得到好的交易。

然後有一批人審查所有的買單。只有攻擊者可以購買。由於買家如此之少,攻擊者在所有交易中都得到了很好的交易。

讓DKG PoS驗證者使用安全押金債券並不能防止這種攻擊。攻擊者可以一起使用智能合約,把更多的錢鎖進更多的押金中,強制要求他們合作執行攻擊。

結論 #

現在看來,要想擁有安全的鏈上市場還是不可能的。可能很快就會有人證明這個目標是不可能的。 原子化地將不同合同的更新聯繫在一起是一個已解決的問題。通道的原子交換已經有將近十年的歷史了。如果我們把計算移到鏈外,移到通道網絡中,那麼單價的批次就很容易被執行。安全市場是微不足道的。

我不明白爲什麼人們要花這麼多精力去嘗試把市場放在鏈上。鏈上智能合約是不可擴展的。即使鏈上市場是可能的,它們在與通道市場的競爭中仍然會失敗。