買比特幣 買比特幣
Ctrl+D 買比特幣
ads

MER:V神:如何打造更安全中心化交易所?_ARK

Author:

Time:1900/1/1 0:00:00

原文:《Having a safe CEX: proof of solvency and beyond》

編譯:雙花 (@doublespending)

特別感謝 Balaji Srinivasan 以及 Coinbase、Kraken 和 Binance 團隊的探討。

每當大型中心化交易平臺崩潰時,一個常被提及的問題是:我們是否可以利用加密技術來解決這個問題。交易平臺可以通過創建密碼學證明的方式證明其鏈上持有的資金足以償付用戶,而不僅僅依靠政府牌照、審計員、調查公司治理以及交易平臺法人背調等「法幣」方案。

更有野心的是,交易平臺可以建立一個未經儲戶同意無法提取儲戶資金的系統。我們可以嘗試探索「不作惡」有職業素養的 CEX 與「無法作惡」卻泄漏隱私的低效鏈上 DEX 之間的界限。這篇文章將深入探討讓 CEX 更加去信任的歷史嘗試,與其采用技術的局限性,以及一些依賴 ZK-SNARKs 等先進技術的有力手段。

交易平臺試圖用密碼學來證明自己沒有欺騙用戶的最早嘗試可以追溯到很久以前。2011 年,當時最大的比特幣交易平臺 MtGox 通過發送一筆移動 424,242 個 BTC 到預先公布地址的交易來證明他們擁有該筆資金。2013 年,大家開始討論如何解決該問題的另一面:證明用戶存款的總規模。如果你證明用戶的存款等于 X(負債證明 proof of liabilities),并證明擁有 X 個代幣的私鑰(資產證明 proof of assets),那么就提供了可償付證明(proof of solvency):你證明了交易平臺有足夠的資金償還給儲戶。

提供存款證明的最簡單方法是公布一個列表。每個用戶都可以檢查他們在列表中的余額,而且任何人都可以檢查完整的列表:(i)每項余額都是非負的;(ii)總額是宣稱的金額。

當然,這會破壞隱私,所以我們可以稍微改變一下該方案:發布一個 username, salt), balance> 列表,并私下給用戶發送 salt 值。但即使這樣也會泄漏余額與其分布。為了保護隱私,我們采用了后續技術:Merkle 樹技術。

V神:以太坊不能簡化為錢,是以太坊外部的人把ETH認定為錢:近日在節目中,加密人士Samson Mow稱以太坊現在是錢,在這個功能上和比特幣競爭。對此,V神回應稱以太坊不能簡化為錢,從一開始網絡上面就有非金融應用。他本人和以太坊基金會從來沒有把ETH認定為錢或者類似的東西,這個概念是從外部來的。[2020/8/18]

綠色:Charlie 的節點。藍色:Charlie 收到用于證明的節點。黃色:根節點,向所有人公布

Merkle 樹技術會將用戶余額表放進 Merkle 總和樹。在 Merkle 總和樹中,每個節點都是對。底層葉子節點表示各個用戶的余額以及用戶名的加鹽哈希。在每個更高層的節點中,余額是下面兩個節點余額的總和,而哈希是下面兩個節點的哈希。Merkle 總和證明和 Merkle 證明一樣,是一個由葉子節點到根節點路徑上所有姐妹節點組成的「分支」。

首先,交易平臺會向每個用戶發送一份其余額的 Merkle 總和證明。然后,用戶能夠確定其余額作為總額的一部分而被正確地包含。可以在這里找到簡單的示例代碼。

這種設計下的隱私泄露遠低于公開完整的余額表,并可以在每次默克爾根發布時打亂各個分支來進一步降低隱私泄漏風險,但仍存在一些隱私泄露的問題:Charlie 知道某人的余額為 164 ETH,某兩個用戶余額的總和為 70 ETH,等等。控制多個帳戶的攻擊者仍能了解交易平臺用戶的大量信息。

該方案的一個重要的微妙之處在于負余額的可能性:如果一個擁有 1390 ETH 用戶余額卻只有 890 ETH 儲備的交易平臺試圖通過在樹上某處的一個假賬戶下添加 -500 ETH 余額來彌補差額,該怎么辦?這種可能性實際上并沒有破壞該方案,這就是我們特地使用 Merkle 總和樹而不是常規 Merkle 樹的原因。假設 Henry 是交易平臺控制的假賬戶,而且交易平臺在上面放了 -500 ETH:

Greta 的驗證將不會通過:當交易平臺將不得不把 Henry 余額為 -500 ETH 的節點的給她時,她會拒絕掉該無效節點。Eve 和 Fred 也會驗證失敗,因為 Henry 之上的中間節點余額為 -230 ETH,所以該節點也是無效的!為了盜用行為不被發現,交易平臺只能寄望于樹的右半部分沒人檢查其余額證明。

V神:吹噓專利數量的行為意味著根本不懂區塊鏈:金色財經報道,V神今早發推稱:“如果你吹噓你的國家/公司/組織擁有多少‘區塊鏈專利’,那就代表你根本不了解區塊鏈。”CoinGeek創始人、BSV支持者Calvin Ayre就此回復稱:“事實上,你不了解區塊鏈。你甚至無法模仿CSW。你的技術已被廣泛用于山寨幣ICO詐騙。歷史不會是仁慈的。另一方面,專利是真實存在的。”[2020/4/24]

如果交易平臺能夠挑選出這樣的擁有 500 ETH 的用戶:他們嫌麻煩不去檢查余額證明,或者當他們抱怨未能收到余額證明時,大家并不相信他們,那么交易平臺就可以蒙混過關。但是,交易平臺也可以通過將這些用戶排除在 Merkle 總和樹之外來達到相同的效果。因此,如果僅就負債證明而言,Merkle 樹技術基本滿足了需求。但它的隱私特性仍不夠理想。你可以更巧妙地使用 Merkle 樹進行改進,比如把 satoshi 或 wei 作為一個獨立的葉子節點。然而,通過使用更先進的技術,還可以做得更好。

ZK-SNARKs 是一項強大的技術。ZK-SNARKs 對密碼學的意義類似于人工智能:一項足以碾壓數十年前為了解決一系列問題而開發的一系列專用技術的通用技術。因此,我們當然可以使用 ZK-SNARKs 極大地簡化和改善負債證明協議中的隱私。

我們可以簡單地將所有用戶的存款放進 Merkle 樹(或者更為簡單的 KZG 承諾),并使用 ZK-SNARK 來證明樹中的所有余額都是非負的,并且加起來等于某個聲稱的值。如果我們添加了一層哈希來保證隱私,那么發給每個用戶的 Merkle 分支(或 KZG 證明)將不會泄漏任何其他用戶的余額。

使用 KZG 承諾是避免隱私泄露的一種方法,因為其不需要把「姐妹節點」作為證明提供,并且可以使用簡單的 ZK-SNARK 來證明余額的總和,并且每個余額都是非負的。

我們可以通過一個專用的 ZK-SNARK 來證明上述 KZG 中余額的總和及其非負性。這里有一個簡單的例子。我們引入了一個輔助多項式 I(x),其「構建出用戶余額的每一位」(為了舉例,我們假設余額低于 215),其中每第 16 個位置追蹤差額保證,只有當實際總額與宣稱總額相等該值才會是 0。如果 z 是一個 128 階的原根,我們可以證明方程成立:

聲音 | V神:通過回滾區塊鏈找回被盜比特幣帶來的附帶損失是巨大的:V神今日發推回應趙長鵬不通過回滾區塊鏈找回被盜比特幣的時候表示,“以太坊曾經做過不符合規則的狀態改變”“由此帶來的附帶傷害將是巨大的,甚至是致命的”。

V神所說“不符合規則的狀態改變”一事是指:2016年6月15日,因the DAO漏洞,以當時價格來算價值近6千萬美元的以太幣被盜,V神提議進行軟分叉來將所有被盜的幣都將“凍結”在那個地址上,再進行一次硬分叉將這些以太幣找回。由此ETC的分叉幣ETH產生了。[2019/5/8]

譯者注:對這個多項式等式的解讀。如何把這些等式轉換為多項式校并在后續轉換為 ZK-SNARK 可以參考我撰寫關于 ZK-SNARKs 文章的此處和另外一處。這并不是一個最優的協議,但讓這些密碼學證明比較好理解!

只需要幾個額外的方程式,該約束系統就可以適配更復雜的設定。例如,在杠桿交易系統中,個人用戶擁有負余額是可以接受的,但前提是他們需要擁有足夠的抵押資產以覆蓋其負債。SNARK 可以用于證明這一更為復雜的約束,向用戶保證,交易平臺不能秘密違規豁免某些用戶,從而危及用戶資產。

長遠來看,這種 ZK 負債證明的用處不限于交易平臺中的用戶存款,還可以用于更廣泛的貸款場景。任何貸款的人都會將記錄放入含該貸款的一個多項式或一棵樹中,而根會在鏈上發布。這將使得任何尋求貸款的人向放款方提供零知識證明,以表明其未獲得太多其他貸款。最終,法律上的創新甚至可以使得以這種方式進行承諾的貸款比無承諾的貸款擁有更高的優先級。這與我們在《去中心化社會:尋找 Web3 的靈魂》中討論的一個想法不謀而合:通過某種形式的」靈魂綁定代幣「,使得鏈上負面信譽的概念成為可能。

資產證明最簡單的版本是我們上面看到的協議:為了證明您持有 X 個代幣,您只需在預定時間移動 X 個代幣或在交易中攜帶「這些資金屬于 Binance」的信息。為了避免支付交易手續費,你可以簽署一條鏈下消息。比特幣和以太坊都有鏈下簽名信息標準。

這種簡單的資產證明技術存在兩個實際問題:

冷錢包處理

聲音 | V神:自己絕對是POS的“極端主義者”:近日,當V神被問道“你在擔心POS嗎”,他表示自己絕對是POS的“極端主義者(maximalist)”。[2018/8/2]

抵押品重用

出于安全考慮,大多數交易平臺會將大部分用戶資金存儲在冷錢包中:在離線的計算機上,交易需要手動簽名并攜帶到互聯網上。這種手段是很普遍的:我過去用于存放私人資金的冷錢包放在一臺永久離線的計算機上,它會生成包含已簽名交易的二維碼,然后我會用手機掃描這些二維碼。由于資金量龐大,交易平臺使用的安全協議會更加復雜,經常涉及在多個設備間的多方計算,以進一步降低單設備被黑導致密鑰泄露的可能性。在這種背景下,即使是創建一條額外消息來證明對地址的控制也是一項昂貴的操作!

交易平臺可以采用以下幾種方式:

維護一些長期使用的公開地址。交易平臺生成若干地址,僅發布一次每個地址所有權證明,然后重復使用這些地址。這是迄今為止最簡單的方案,盡管它在保護安全及隱私上增加了一些限制。

持有很多地址,然后隨機證明幾個地址。交易平臺持有很多地址,甚至可能每個地址只用一次,并在單次交易后不再使用。在這種情況下,交易平臺需要有一個協議,不時地隨機選擇一些地址,交易平臺必須「打開」以證明所有權。一些交易平臺已通過審計員進行了類似的操作,但原則上,這種技術可以轉化為完全自動化的程序。

更復雜的 ZKP 方式。例如,交易平臺可以將其所有地址設置 1/2 多簽,這些地址的其中一份密鑰各不相同,而另一份相同的密鑰是以某種復雜但安全的方式(如,12/16 多簽)存儲起來重要的緊急備份盲版。為了保護隱私并避免泄漏其全部地址,交易平臺甚至可以在區塊鏈上運行零知識證明以證明該格式鏈上地址的總余額。

另一個主要問題是防止抵押品重用。彼此間來回轉移抵押品以證明儲備金對交易平臺而言通常很容易辦到,這使得實際上沒有償付能力的情況下蒙混過關。理想情況下,可償付證明應該實時完成,并在每個區塊后更新證明。如果不切實際的話,那么下一個最好的辦法就是交易平臺間協調出一個固定的時間進行證明,例如在 UTC 時間每周二下午 2 點證明儲備。

最后一個問題是:能在法定貨幣上做資產證明嗎?交易平臺不僅持有加密貨幣,還持有銀行系統內的法幣。在這方面,回答是肯定的,但這樣的程序將不可避免地依賴于「法幣」信任模型:銀行自身可以證明余額,審計人員可以證明資產負債表等。鑒于法幣不能通過密碼學驗證,這是在該框架內的最佳方案,仍然值得一做。

V神:徹底關閉公鏈很難,但監管要容易得多:今日V神在王峰十問上表示:我們在2014年非常認真地考慮過證券監管法規等問題,我們與多家律師事務所進行了磋商,并仔細確認了我們所做的事情是否符合當時的法律。我們很高興看到,美國證券交易委員會認為并非所有的加密貨幣都是證券。我覺得,監管政策絕對會繼續影響區塊鏈技術的進步,盡管主要是從應用角度來看。我認為總的來說,各國政府已經認識到,徹底關閉公鏈網絡是非常困難的,但監管它們要容易得多。[2018/6/22]

另一種方法是將實體 A 和實體 B 分離開來,A 負責運行交易平臺并且處理 USDC 這種由某種資產背書的穩定幣;而 B 負責在加密貨幣和傳統銀行系統之間處理現金流入和流出的過程,在這個案例中 B 即是 USDC 本身。由于 USDC 的「負債」只是鏈上的 ERC20 代幣,所以負債證明是可以「輕易」獲得的,而我們只需處理資產證明的問題。

假設我們想更進一步:我們不想僅僅證明交易平臺有足夠資金償還其用戶。相反,我們想徹底防止交易盜用用戶的資金。

在這上第一個嘗鮮的是 Plasma,這是一種 2017 年和 2018 年在以太坊研究界流行的擴容解決方案。Plasma 的工作原理是將余額拆分為一組獨立的「代幣」,每個代幣都會分配一個索引,并放到 Plasma 區塊的 Merkle 樹中的特定位置上。要進行有效的代幣轉移,需要將交易放到樹中的正確位置上,而樹根會被發布到鏈上。

Plasma 的一個版本的極簡圖。代幣被保存在智能合約中,該合約在取款時會強制執行 Plasma 協議的規則。

OmiseGo 試圖基于此協議創建一個去中心化交易平臺,但從那時起,他們就轉向去做其他事了——就這而言,Plasma Group 也是如此,他們去做了 optimistic rollup 項目 Optimism。

2018 年對 Plasma 的局限性(如,證明代幣碎片整理)的探討讓大家從根本上懷疑 Plasma 的可行性。自 2018 年對 Plasma 的探討達到頂峰以來,ZK-SNARKs 在擴容相關用例上變得愈加可行,正如我們上面所說的,ZK-SNARKs 改變了一切。

Plasma 更新的版本是 Starkware 稱為 validium 的方案:除了數據被保存在鏈下以外,基本上與 ZK-rollup 相同。該構造適用于許多用例,可以想象其適用于任何中心化服務器需要證明其正確執行代碼的場景。在 validium 中,運營方無法竊取資金,但根據具體的實現細節,如果運營方消失,一些用戶資金可能會被卡住。

現在看來一切很棒:CEX 和 DEX 遠非二選一,事實證明,其中有一系列的選擇,包含各種形式的混合中心化,在那里你能獲得一些好處,比如效率,但仍有很多密碼學保障,可以防止中心化運營方的大部分形式的惡意行為。

然而,余下的基本問題也值得思考:如何處理用戶錯誤。到目前為止,最重要的錯誤類型是:如果用戶忘記了密碼、丟失了設備、被黑或無法訪問其帳戶,那該怎么辦?

交易平臺可以解決這個問題:首先利用電子郵件恢復,如果連這都失敗了,再通過 KYC 進行更復雜的恢復。但若要解決這些問題,交易平臺需要真正控制這些代幣。為了能夠合理地恢復用戶資金,交易平臺需要擁有同樣可用于無故竊取用戶資金的權力。這是一個不可避免的權衡。

理想的長期解決方案是依靠自我托管,用戶在未來可以方便地使用諸如多簽及社交恢復錢包等技術來幫助處理緊急情況。而短期內,有兩種明顯的替代方案,有著不同的成本和收益:

另一個重要問題是對跨鏈支持:交易平臺需要支持很多不同的鏈,諸如 Plasma 和 validiums 等系統需要用不同的語言編寫代碼以支持不同的平臺,并且在當前形式下無法在一些平臺(尤其是比特幣)上實現,這有望通過技術升級和標準化來解決;然而,從短期來看,這是如今托管型交易平臺保持托管模式的另一個原因。

短期內,有兩種明確的交易平臺類別:托管型交易平臺和非托管型交易平臺。如今,后一類即像 Uniswap 那樣的 DEX,未來我們可能還會看到受密碼學約束的 CEX,其中用戶資金會以類似 validium 智能合約的方式持有。我們也可能會看到半托管型交易平臺,其中我們信任其對法幣而非加密貨幣的處理。

這兩種類型的交易平臺將繼續存在,而提高托管型交易平臺安全性的向后兼容最簡單方法是增加儲備證明。這包括資產證明和負債證明的結合。為兩者都設計出優秀的協議仍存在著一些挑戰,但我們能夠且應當推動兩類技術的齊頭并進,并盡可能開源軟件和程序,以便所有交易平臺都能獲益。

從長遠來看,我希望我們向著所有交易平臺皆為非托管的方向發展,至少在加密貨幣上如此。錢包恢復將會存在,可能需要為小額資金的新用戶和出于法律因素需要此類安排的機構提供高度中心化的恢復選項,但這可以在錢包層而非交易平臺內部完成。在法幣方面,傳統銀行系統和加密貨幣生態系統之間的移動可以通過 USDC 等資產背書穩定幣原生的資金進出流程完成。然而,我們仍有很長的路要走。

譯者注:

每 16 個數字代表一個用戶(前面 15 個數字代表該用戶的余額,最后一位代表目前為止用戶余額總和跟聲明的差額)。我們可以看到上面的舉例代表了兩個用戶(這里要讀者洞察一下)

宣稱的用戶平均余額:185

用戶 1 的余額:20 -> 000 0000 0001 0100

差額:20 - 185 = -165

用戶 2 的余額:50 -> 000 0101 0011 0010

差額:-165 + 50 -185 = -300

最終遍歷完所有用戶,最后一個用戶的差額要求為 0

四個等式的解釋

等式 1:遞推的初始值為 0

等式 2:每個用戶余額需要跟 KZG commitment 相對應

等式 3:每個用戶余額的遞推公式,約束余額 >= 0 且 214

(上面說余額 215應該是筆誤,因為按照等式 3,遞推公式只有 14 個取值,I(zi) 214,

16 個數字對應:I(z{16x})=0| I(z{16x+1}) | I(z{16x+2}) | … | I(z{16x+14}) | 差值

16 個數字對應最大取值:0 | 21-1| 22-1| … | 214-1| 差值)

等式 4:約束所有用戶總余額與交易平臺宣稱的余額一致

原文鏈接律動 BlockBeats 提醒,根據銀保監會等五部門于 2018 年 8 月發布《關于防范以「虛擬貨幣」「區塊鏈」名義進行非法集資的風險提示》的文件,請廣大公眾理性看待區塊鏈,不要盲目相信天花亂墜的承諾,樹立正確的貨幣觀念和投資理念,切實提高風險意識;對發現的違法犯罪線索,可積極向有關部門舉報反映。

Vitalik Buterin

個人專欄

閱讀更多

金色財經

金色財經 子木

金色早8點

去中心化金融社區

虎嗅科技

區塊律動BlockBeats

CertiK中文社區

深潮TechFlow

念青

Odaily星球日報

Tags:MERERKARKETHINMERBerkshireDARK幣ethicalvalues

歐易okex官網
NBS:教你如何使用好電報、DC管理工具 玩轉 Web3 社區_BSPT

原文標題:《社區運營工具盤點,教你如何使用好電報&DC 管理工具》對于 Web3 項目而言,社區的重要性已經不言而喻,項目的成敗也與社區的建設也息息相關.

1900/1/1 0:00:00
GNS:從協議、采用、盈利能力和潛力四方面分析GMX和GNS的優勢與潛力_GMX幣發行量

撰寫:DAOtopia 真實收益和 DEX 交易的敘事最近吸引了大量的關注。許多協議和分叉在鏈上涌現($MVX、$OPX...),但我們如何辨別哪一個最創新,哪一個最有潛力? 在這個系列中,我們.

1900/1/1 0:00:00
DEF:金色觀察 | Bankless:比特幣DeFi使用指南_DEFIT

文/William M. Peaster,Bankless貢獻者;譯/金色財經xiaozou在過去幾年里, DeFi的活動中心一直是以太坊,同時還擴展到了以太坊虛擬機(EVM)鏈.

1900/1/1 0:00:00
ICS:理解以太坊事件日志_TOP

當你在區塊鏈瀏覽器上查詢交易時,是否只是查看概覽和內部交易?那么事件日志呢?是否在不起眼的角落被你忽略了。交易事件日志對于用戶以及開發者來說實際上都是至關重要的.

1900/1/1 0:00:00
BSP:2023年的第一個DeFi“肝”貨 (超長 慎入)_XDEX幣

來源:twitter @CurveFinance LLAMMA將逐步清算借款人的頭寸,而不是一次性清算.

1900/1/1 0:00:00
RIT:Move to Earn Gritti 能成為下一個STEPN嗎?_Pepe Grinch

來源:老雅痞 導讀 本月 Gritti 宣布完成170萬美元的種子資金,這筆資金將增強 Gritti 在 Web2 和 Web3 之間創建一致且有效的轉換渠道的能力.

1900/1/1 0:00:00
ads