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

比特幣:V神:探討打造安全中心化交易平臺方法_Berkshire

Author:

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

原文標題:《Vitalik:打造安全的中心化交易所 —— 可償付證明及更多》

原文作者:Vitalik Buterin 

原文編譯:雙花 (@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神:預計合并不會對網絡產生任何不利影響,因為大多數以太坊社區都支持合并:8月6日消息,Vitalik Buterin(V神)在周六的網絡研討會上表示,以太坊合并不會對ETC上鑄造新代幣產生不利影響。他預計不會對區塊鏈產生任何不利影響,因為大多數以太坊社區都支持合并。

有人擔心涌向ETC的礦工可能會破壞合并。開發人員Tim Beiko說,理想情況下,用戶不應該注意到任何不同。Buterin補充說,ETC擁有強大的社區和強大的產品,可為提供PoW。ETC社區大力提倡PoW價值觀。盡管如此,市場仍有可能分裂。(Be in Crypto)[2022/8/7 12:07:01]

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

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

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

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

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

V神:將長期提升以太坊區塊容量至16MB,將支持Rollup達到8萬TPS:5月20日消息,以太坊創始Vitalik Buterin在2022年5月20日舉行的ETH Shanghai會議上表示,以太坊團隊已經提出名為Danksharding的擴容計劃,長期將把以太坊的區塊容量擴充至8萬TPS,最終Rollup將能夠達到8萬TPS/秒。首先將完成Proto-danksharding,支持1MB的區塊容量和5000的TPS。[2022/5/20 3:29:44]

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

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

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

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

V神:比特幣最初打算成為P2P現金 其次是數字黃金:Blockstream員工ZackVoell昨日在推特聲稱比特幣曾經是,現在是而且永遠是數字黃金。以太坊聯合創始人VitalikButerin回復稱這種說法自2011年以來就發生了變化,他稱:“我在2011年加入了比特幣,我記得當時清晰的氛圍,比特幣首先是P2P現金,其次是數字黃金”。Buterin認為,比特幣最初是打算成為點對點電子現金的,這一觀點得到了許多人的認同,并得到了2008年中本聰的比特幣白皮書標題的支持。由于比特幣開發者拒絕增加區塊大小以擴大鏈上規模,導致了高昂的交易費用,Buterin接受BTC高額費用的現實,并建議既然數字黃金用例已經建立,人們應該簡單地為其他用例使用不同的加密貨幣:“這是一個有爭議的支點,對此感到不滿是合理的,如果你不喜歡它,你應該使用其他區塊鏈,它們的社區表達著不同的價值觀。”(Cointelegraph)[2020/4/2]

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

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

譯者注:對這個多項式等式的解讀。

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

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

聲音 | V神:Bitcoin SV被高估,BCH被低估:據ambcrypto消息,近日,V神在一次演講時表示,Bitcoin SV(BSV)被高估,而比特幣現金(BCH)被低估了。此外,他對比特幣現金在比特幣之前實施Schnorr簽名方案表示贊賞。他補充說,比特幣現金社區已變得“理智”,因為最近支持比特幣現金(此前曾分裂為Bitcoin ABC和BSV)的人擊敗了BSV的支持者。[2019/5/5]

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

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

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

 冷錢包處理

 抵押品重用

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

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

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

聲音 | V神:分配資本是“殺手級”鏈條治理應用:據Ambcrypto消息,V神日前在接受Zcash采訪時表示,EOS的投票機制創造了一種超線性專職效應,如果一個平臺或個人足夠大就有足夠的投票購買代表位,從而以此賺取更多數字貨幣。V神稱“這就是我認為硬幣投票治理在分配資金的情況下會失敗的一個例子。我實際上認為分配資本是鏈條治理的殺手級應用。”[2018/9/15]

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

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

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

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

另一種方法是將實體 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

媒體專欄

閱讀更多

金色財經 子木

金色早8點

去中心化金融社區

虎嗅科技

CertiK中文社區

深潮TechFlow

念青

Odaily星球日報

騰訊研究院

Tags:BSPNBSERK比特幣BSPAY幣nbs幣前景Berkshire比特幣以太坊最新價格

幣安app下載
AND:全球可持續發展危機持續 Algorand 引領Web3.0走向「負碳之路」_DANDY

Algorand致力于成為「負碳區塊鏈」,其在推動 Web3.0成為可持續生態系統方面也處于領先地位.

1900/1/1 0:00:00
SEE:SeeDAO萬字專訪:11個月4次進出鬼門關 SeeDAO積累了什么樣的共識和經驗?_ZSEED幣

原文:《SeeDAO萬字專訪:11個月4次低谷,一個DAO如何從停滯中重生?》作者:Jack(0x137),BlockBeats在成立以來的11個月時間里.

1900/1/1 0:00:00
ITA:賬戶抽象如何確保以太坊大規模化采用_0XGAS

賬戶抽象是今年被反復關注的話題,但很少有市場參與者了解它是什么以及它如何改變游戲規則。根據 Vitalik 的說法,帳戶抽象是“我們一直想要的東西”,并且它一直是“以太坊社區的長期夢想”.

1900/1/1 0:00:00
加密貨幣:港財司長隨筆:穩慎推進虛擬資產業在港發展_區塊鏈

特區政府在上月底發表了《有關虛擬資產在港發展的政策宣言》,闡明了我們對虛擬資產行業、相關創新技術與應用,和其生態系統發展的愿景和方針.

1900/1/1 0:00:00
KEY:對話王一石和超級君:還要 CeFi 暴雷多少次 持幣者才肯用自己的錢包?_imkey官方商城

主持人:子魚 嘉賓:OneKey 王一石、本末社區主理人超級君 子魚:今天的話題就正式開始。我是子魚,也是一個老韭菜了。今天我們請來了 OneKey 的核心貢獻者王一石和本末社區的主理人超級君.

1900/1/1 0:00:00
ATA:確認發Token Binance領投的DID項目Lifeform有什么不同?_WEB

隨著 Web 3 以更具前瞻性技術的姿態沖入 Web 2 世界,加密領域衍生出了很多 Web 3 產品和概念,前段時間,Web 3 域名帶頭引發了一波熱度.

1900/1/1 0:00:00
ads