基于Zerocoin協(xié)議將如何解決現有私有事務協(xié)議所識別的問題
2019年1月15日,NavCoin核心工程師Alex Vazquez發(fā)表了他的學術白皮書ZeroCT——一種新的私有鏈上加密貨幣交易協(xié)議。顧名思義,ZeroCT基于Zerocoin協(xié)議和加密事務的組合,但它不僅僅是兩個現有協(xié)議的組合。
ZeroCT將業(yè)界領先的私有事務協(xié)議的精華部分與一些新思想結合起來,并將它們集成為部署到區(qū)塊鏈上的最先進的隱私協(xié)議之一。
ZeroCT的白皮書提前發(fā)布,等待同行評閱,并收到了一系列感興趣的加密貨幣專家的反饋——Sam Dobson (Bitcoin Core)、Sarang Noether (Monero)、Guy Kloss (SingleSource)、和Jonathan Cressman。雖然他們的評論不應該被認為是對協(xié)議的認可,但它證明了Alex希望確認ZeroCT的有效性,也證明了審稿人愿意免費貢獻時間對開源學術論文進行反饋。
我在上一篇文章“私有事務——ZeroCT之路”中定義了“私有事務”的確切含義,并帶領讀者了解了在這類加密貨幣中使用的技術的發(fā)展,從而為ZeroCT的文章提供了一些解釋。本文將重點介紹ZeroCT協(xié)議本身,并將其特性與業(yè)界一些領先的隱私協(xié)議進行比較。
ZeroCT試圖解決什么問題?
當您能夠以加密方式隱藏發(fā)送方、接收方和金額,而不泄漏任何關于事務的元數據,并且具有大型匿名集時,可以認為事務是私有的。
目前已有五種主要的隱私協(xié)議;CoinJoin、Zerocoin、Zerocash、CryptoNote和Mimblewimble——其中dash、PIVX、Zcash、Monero和Grin分別是這五種協(xié)議的主要實現。它們都是有趣的協(xié)議,提供了不同級別的匿名性,但是沒有一個能完全實現我在上一段中提到的每一點。
這是使隱私協(xié)議成為我個人非常感興趣的領域之一。有很多偉大的想法還沒有明確的贏家,王冠仍然是在這個激烈辯論的舞臺上爭奪。
ZeroCT打算將業(yè)內領先的私有交易協(xié)議的精華部分結合起來,結果它成為了一個強大的奇美拉(chimera),可能會占據榜首。
引入ZeroCT
ZeroCT實現的技術細節(jié)可以在ZeroCT白皮書—ZeroCT:使用加密事務改進Zerocoin。在這里,我將簡要介紹它如何解決現有私有事務協(xié)議所識別的問題,以及它從實際角度的意義。
隱藏發(fā)送者身份
ZeroCT使用基于Zero代幣幣的RSA累加器來隱藏事務的起源。每次使用該代幣時,沒有相關的歷史和完全的可替代性。
隱瞞接收者的身份
ZeroCT的匿名身份生成的方式與Monero的一次性地址類似。它們來自一個隱式地址,該地址不會泄漏任何關于用戶余額或事務歷史的元數據,并且不受區(qū)塊鏈分析的影響。
隱瞞交易數量
ZeroCT使用機密交易和防彈系統(tǒng)來隱藏交易中使用的代幣數量。
增加匿名集
使用Zerocoin 累加器意味著為消費者身份設置的匿名性等于之前記錄到累加器的私有事務的數量。ZeroCT允許并鼓勵私人下注,這意味著匿名集將穩(wěn)步增長,隨著時間的推移,元分析將變得更加困難。
防止元數據泄漏
ZeroCT代幣可以直接鑄造到獲得匿名身份的接收者手中,也可以直接從一個匿名身份轉移到另一個匿名身份。不需要預先混合,一旦在ZeroCT代幣不需要離開ZeroCT。這減少了第三方在事務進入和退出累加器時推斷它們之間存在關聯的可能性。
性能
機密交易的使用消除了對基于面額的累加器的需要,這減少了支出自然金額時所需的證明大小?;ㄙM999個ZeroCT事務的證明大小等于4個常規(guī)證明的大小,而不是原來的Zerocoin協(xié)議要求的27 個大小。
可用性
所有ZeroCT鑄造的代幣都可以通過主私鑰回收,這意味著你不必在每個ZeroCT鑄造后備份錢包。
ZeroCT協(xié)議提供了一個“查看鍵”,允許第三方(如您的會計)審核您的私人交易歷史,而不會影響您的支出鍵。
直接將ZeroCT代幣鑄造到第三方可以通過刪除任何預混合步驟或等待時間來降低發(fā)送方的復雜性。
關鍵的安全
ZeroCT的初始參數使用的大素數建議采用1991年RSA保理挑戰(zhàn),該挑戰(zhàn)普遍認為密鑰已被正確銷毀,無法計算。
這一切意味著什么?
有了所有這些部分,ZeroCT協(xié)議成功地隱藏了發(fā)送方、接收方和金額,而不會泄漏任何重要的元數據。它保留了可伸縮性,使其更容易在功能上使用,并從網絡和開發(fā)團隊中消除了任何信任需求。
實際上,使用ZeroCT既安全又簡單。下圖以簡單的方式解釋了ZeroCT事務是如何工作的。
除了這個圖,還有一些重要的東西需要理解。
1. 雖然Alice可以從Bob的匿名身份中得到他的累加器身份,但是她無法使用這些信息計算Bob的未來或過去的累加器身份,因此無法繪制事務圖。
2. 在步驟3中,Bob不需要從累加器中取出NAV。他可以把資產凈值從累加器中取出給第三者,把資產凈值直接轉移給另一個累加器而不需要取出資產凈值,把資產凈值用作私人押注的輸入,部分地取出資產凈值,然后把這些改變交還給累加器或任何這些行動的組合。
這種靈活性極大地減少了通過基于事務量或其他元數據的區(qū)塊鏈分析進行推斷的機會,即使Bob的最終目標是將NAV恢復到公共區(qū)塊鏈上。
ZeroCT與其他隱私協(xié)議相比如何?
Reuben Yap最近更新了Zcoin的文章《Zcoin的隱私技術如何與競爭對手進行比較》,其中包括了類似Grin & Beam的Mimble Wimble coin。本文將深入介紹我們將在這里介紹的其他協(xié)議。我建議您閱讀Reuben的文章,以及我在本系列的前一篇文章《私有事務—通往ZeroCT的道路》,以獲得更多的知識。
由于有相當多的隱私幣基于相同的底層協(xié)議,為了簡化問題,我們將選擇每個協(xié)議的主要實現之一進行比較。一些隱私幣還實現了多個協(xié)議,因此從整體上看實現比每個協(xié)議具體提供什么更有用。
圖表的大部分內容都是不言自明的,但有必要進一步討論一些事情。
在“required Trusted Setup”行中,可以看到Pivx、Zcash和ZeroCT都有Yes,但是Pivx和NavCoin是橙色的,而Zcash是紅色的Yes。
這是因為Zerocoin、ZeroCT和Zerocash協(xié)議需要一次可信設置來生成用于從累加器中使用私有硬幣的初始參數。
Pivx和NavCoin都使用了從1991年RSA分解挑戰(zhàn)中獲得的初始參數,該挑戰(zhàn)普遍認為密鑰已被正確銷毀。當Zcash生成它們自己的初始參數時,這意味著您必須信任Zcash工程師正確地銷毀了密鑰,這就是為什么它被標記為紅色。
“需要匿名化”行指的是您是否可以立即創(chuàng)建私有事務,或者在能夠私有發(fā)送之前需要采取一些步驟。在使用Dash之前,你需要先將你的金幣和masternodes預混在一起,然后才能使用你的個人余額。使用Pivx,你需要把你的硬幣發(fā)送到蓄電池和等待一些塊之前花他們的私人。對于其他事務,沒有初始步驟或等待時間,私有事務立即發(fā)生。
總結
ZeroCT是一個很棒的新隱私協(xié)議,我認為它有潛力成為隱私幣領域的真正挑戰(zhàn)者。它使用經過深入研究的方法來滿足為加密貨幣交易提供高水平隱私的所有要求。它不僅提供了技術上的改進,還解決了可用性問題,使保護您的財務隱私比以往任何時候都容易。就我個人而言,我對這個協(xié)議及其在NavCoin中的實現感到興奮。