各類以太坊隱私技術(shù)方案的優(yōu)缺點(diǎn)及適用場(chǎng)景評(píng)估
前言:當(dāng)我們談到隱私時(shí),并沒(méi)有什么靈丹妙藥能夠解決所有的問(wèn)題,而是需要針對(duì)特定的用例使用不同的方法和機(jī)制。
原文作者:Dean Pierce(ConsenSys Diligence)、Robert Drost (ConsenSys 研發(fā)部)以及Mason Nystrom (ConsenSys)
在一個(gè)聯(lián)系越來(lái)越緊密的世界里,我們的信息被人復(fù)制、共享甚至被用于銷售目的,而要維護(hù)我們想要的隱私水平,這可能會(huì)是一個(gè)挑戰(zhàn)。
和大多數(shù)事物一樣,隱私并非是二元對(duì)立關(guān)系的,而是介于完全公開(kāi)及完全保密之間。所以在談到隱私問(wèn)題時(shí),我們有三個(gè)問(wèn)題需要進(jìn)一步討論。
1. 消費(fèi)者和企業(yè)想要的隱私是什么樣的程度?
2. 人們?cè)敢鉃殡[私付出代價(jià)嗎?
3. 在公共區(qū)塊鏈上實(shí)現(xiàn)隱私交易的權(quán)衡是什么?
本文的目的是簡(jiǎn)要地檢查在公鏈上實(shí)現(xiàn)隱私的要求,并在高維度上討論實(shí)施隱私解決方案的權(quán)衡。
第一個(gè)問(wèn)題:什么程度的隱私是有意義的?
隱私的一個(gè)例子是匿名,或者說(shuō)是身份的私密化。在公鏈的背景下,匿名性是指當(dāng)事方在不需要披露其自身或其他交易者身份相關(guān)信息的情況下交換某物(金錢(qián)、代幣或數(shù)據(jù))的能力。雖然這只是隱私的一個(gè)方面,但隨著區(qū)塊鏈的發(fā)展,它已經(jīng)變得越來(lái)越重要。
像比特幣和以太幣之類的加密貨幣,因?yàn)橄嚓P(guān)交易地址及信息是公開(kāi)的原因,再加上分析方法的不斷發(fā)展,人們可將這些交易與鏈外身份關(guān)聯(lián)到一起,這使得這些加密貨幣的使用者的身份變得越來(lái)越透明。
對(duì)于隱私權(quán),企業(yè)和消費(fèi)者有著截然不同的要求。企業(yè)通常以交易數(shù)據(jù)的形式要求隱私,例如產(chǎn)品名稱、數(shù)量、價(jià)格、地址、個(gè)人可識(shí)別的財(cái)務(wù)信息等。
網(wǎng)絡(luò)參與者通常是已知的,但可能需要保留身份或根據(jù)其角色提供給其他參與者。例如,貨運(yùn)代理可能不需要知道某個(gè)運(yùn)輸集裝箱的內(nèi)容,而只需要知道該集裝箱已經(jīng)到達(dá)。銀行業(yè)法規(guī)還會(huì)限制誰(shuí)可以訪問(wèn)交易數(shù)據(jù)。安永公司的Nightfall協(xié)議,以及摩根大通(JP Morgan)為Quorum定制的匿名Zether協(xié)議,是企業(yè)為以太坊開(kāi)發(fā)隱私解決方案的主要例子。
相比企業(yè)(通常圍繞隱私有很強(qiáng)的商業(yè)動(dòng)機(jī)及監(jiān)管),迄今為止,消費(fèi)者對(duì)隱私的意識(shí)和關(guān)注程度則普遍較低。當(dāng)然,消費(fèi)者也希望保護(hù)自己的身份、信用卡信息或其他敏感數(shù)據(jù),以防止欺詐或身份盜竊事件的發(fā)生。而有時(shí),消費(fèi)者就希望用到匿名交易,這就要求交易的發(fā)送者和接受者都具有隱私。然而,隱私在消費(fèi)者的日常生活中并不是天然存在的,大多數(shù)人為了方便或免費(fèi)訪問(wèn)而自愿犧牲他們的隱私(接受cookies、使用免費(fèi)WiFi等)。
第二個(gè)問(wèn)題:隱私有需求嗎?
隱私通常發(fā)生在消息傳遞的環(huán)境中,以保護(hù)各方之間發(fā)送的內(nèi)容,它還被用于通信通道和底層網(wǎng)絡(luò)層這樣更廣泛的構(gòu)造中。
但在加密貨幣背景下,隱私的需求似乎并沒(méi)有人們想象的那么強(qiáng)烈。
具體來(lái)說(shuō),雖然Zcash已存在大約3年的時(shí)間,但只有大約5%的ZEC使用了SNARKs(其中大約有一半是使用的舊版SNARKs),另外大約有95%的ZEC存儲(chǔ)在幾乎沒(méi)有隱私的透明地址中。通過(guò)這種低采用情況,我們可以推斷,也許大多數(shù)用戶對(duì)隱私并沒(méi)有付費(fèi)需求(成本相對(duì)較高)。
然而,最終區(qū)塊鏈技術(shù)要成為主流仍然需要隱私。內(nèi)置的隱私層(如SSL)使得互聯(lián)網(wǎng)成為了一個(gè)值得信賴的商業(yè)媒介,這表明消費(fèi)者和企業(yè)所希望的隱私,是被內(nèi)置到系統(tǒng)和應(yīng)用當(dāng)中的。
第三個(gè)問(wèn)題:隱私的權(quán)衡
第三個(gè)問(wèn)題是更偏向技術(shù)的,其需要對(duì)以太坊平臺(tái)上的隱私技術(shù)方案進(jìn)行深入的檢查,這還會(huì)涉及到各種機(jī)制的權(quán)衡。
其他隱私區(qū)塊鏈給我們帶來(lái)的啟示(門(mén)羅幣和Zcash)
在我們討論以太坊的隱私話題之前,我們不妨先看一下隱私幣領(lǐng)域里的兩大主流參與者:門(mén)羅幣和Zcash。門(mén)羅幣在早期的競(jìng)爭(zhēng)幣時(shí)代是特別的,因?yàn)樗拇a庫(kù)并不是源自比特幣代碼庫(kù),而是基于一個(gè)完全不相關(guān)的加密貨幣項(xiàng)目Bytecoin(其使用的是CryptoNote協(xié)議的參考設(shè)計(jì)),而原CryptoNote協(xié)議設(shè)計(jì)是通過(guò)混合一筆交易的發(fā)送者(通過(guò)混合它們的簽名以及很多其他誘餌簽名來(lái)實(shí)現(xiàn))來(lái)達(dá)到隱私目的。通過(guò)這一點(diǎn),再結(jié)合隱形地址輸出方案,這給門(mén)羅幣帶來(lái)了非常強(qiáng)大的隱私保證。這一“環(huán)簽名”方案早被譽(yù)為是一種內(nèi)置式混合器,但其并不成熟。
2017年,隨著RingCT技術(shù)方案的引入,環(huán)簽名方案隱藏交易數(shù)據(jù)的能力大大提高,RingCT使用零知識(shí)范圍證明來(lái)增加可進(jìn)行批處理的簽名種類。RingCT的引入還強(qiáng)制執(zhí)行最小混和要求,以減少早期版本門(mén)羅幣的可關(guān)聯(lián)性攻擊。而使用環(huán)簽名方案的最大挑戰(zhàn)之一是,其會(huì)占用大量磁盤(pán)空間,這使得門(mén)羅幣區(qū)塊鏈變得十分臃腫。此外,環(huán)簽名方案并不適用于大型群體,其目前僅限于10-15人的群體。
而在2018年末,我們看到了門(mén)羅幣網(wǎng)絡(luò)引入了“Bulletproof”(防彈證明),這是一種令人興奮的新零知識(shí)方案,其改善了環(huán)簽名方案,減少了交易所需的大小,這種改進(jìn)使得門(mén)羅幣的隱私交易成本大大降低。
Zcash 是第一個(gè)使用 zkSNARKs技術(shù)的加密貨幣,通過(guò)這種零知識(shí)證明方案,用戶可發(fā)送僅對(duì)接收者可見(jiàn)的完全隱私的交易,而對(duì)于外部觀察者而言,ZEC似乎被發(fā)送到了一個(gè)巨大的密碼黑匣子中,當(dāng)接收者想要將他們的幣移回到一個(gè)非隱私地址(類似比特幣標(biāo)準(zhǔn)地址)時(shí),這些幣似乎是憑空而來(lái)的,這使得發(fā)送者和接收者之間沒(méi)有明顯的聯(lián)系。關(guān)于零知識(shí)證明的一個(gè)重要注意事項(xiàng)是,其需要更多的計(jì)算能力來(lái)運(yùn)行,這使得交易變得更加昂貴。
對(duì)可互換性的威脅
以太坊網(wǎng)絡(luò)提供了偽匿名性(即交易鏈接到由用戶持有的私鑰所對(duì)應(yīng)的地址),其分布式以及透明性特性使得許多全新的技術(shù)能力成為可能。
然而,類似于比特幣,以太坊也會(huì)無(wú)意中暴露使用這些數(shù)字資產(chǎn)的用戶的信息。
鑒于比特幣和以太坊等區(qū)塊鏈的公開(kāi)特性,天真地使用它們的內(nèi)置交易框架,就好比是一路撒下面包屑,這使得對(duì)手可輕易地跟蹤你的交易路徑。
通過(guò)地址生成獲得的隱私
隨著隱私技術(shù)的不斷進(jìn)步,我們可考慮很多更為復(fù)雜的威脅模型。2012年,BIP32(比特幣改進(jìn)提議)引入了分層確定性密鑰(HD Key),允許一個(gè)種子短語(yǔ)可生成一個(gè)不斷產(chǎn)生新比特幣地址的流。這允許用戶每次接受交易時(shí)可生成新的地址,所有這些地址都可輕松地通過(guò)一個(gè)種子短語(yǔ)導(dǎo)出和導(dǎo)入新的錢(qián)包。
而在以太坊中,也存在著相同的功能,盡管新生成的密鑰不能與智能合約直接進(jìn)行交互(直到它們得到了它們所需的gas成本(ETH資助)。這一點(diǎn)也很復(fù)雜,因?yàn)楹芏嗷谝蕴坏南到y(tǒng)將用戶真實(shí)身份的許多方面與他們的地址聯(lián)系起來(lái),這種與以太坊地址鏈接的額外數(shù)量的元數(shù)據(jù),可以使以太坊特別容易受到去匿名化攻擊的影響。幸運(yùn)的是,那些使以太坊暴露于這些威脅的智能合約,也可被尖端的新密碼學(xué)系統(tǒng)所使用,從而實(shí)現(xiàn)安全和無(wú)縫的隱私交易。
ZK構(gòu)造和可信設(shè)置
很多零知識(shí)證明構(gòu)造會(huì)用到所謂的“可信設(shè)置”(Trusted Setup),這意味著整個(gè)構(gòu)造依賴于特殊隨機(jī)數(shù)的生成,任何知道這些隨機(jī)數(shù)的人都有能力窺視操作內(nèi)部。為了減輕這些擔(dān)憂,人們就設(shè)計(jì)了復(fù)雜的方法來(lái)生成這些隨機(jī)參數(shù),以確保構(gòu)造能夠被信任。這通常涉及到社區(qū)中的幾個(gè)可信成員,每個(gè)成員都派生出他們自己的私有隨機(jī)數(shù)據(jù),并以一種方式將它們彼此結(jié)合(如果任何一方刪除了他們的密鑰數(shù)據(jù),那么秘密值是安全的。因此,所以參與方都需要串通)。
值得注意的是,門(mén)羅幣所使用的“ Bulletproof”(防彈證明)是不需要可信設(shè)置的,而Zcash的zkSNARKs卻是需要的,另外,STARKs也不需要可信設(shè)置,因?yàn)樗鼈兪褂昧斯:瘮?shù)作為“設(shè)置”,而不是任何類型的特殊數(shù)字。
零知識(shí)Note(ZK-Note)
AZTEC是以太坊隱私領(lǐng)域的早期推動(dòng)者,其使用的是一個(gè)“零知識(shí)note”系統(tǒng)來(lái)追蹤隱秘財(cái)務(wù)狀況。這些 note在以太坊網(wǎng)絡(luò)上是可見(jiàn)的(包括每個(gè)note的所有者),但是除了note的所有者之外,note上存儲(chǔ)的金額數(shù)量對(duì)其他所有人而言都是隱藏的。
當(dāng)一個(gè)note 擁有者決定執(zhí)行“joinSplit”操作時(shí),零知識(shí)的魔力就來(lái)了,這意味著他們可記下他們控制的任意數(shù)量的note,并創(chuàng)建一組輸出note,這些note可能屬于也可能不屬于其他人。與隱形地址技術(shù)相結(jié)合,這可使創(chuàng)建的每個(gè)新note都?xì)w一個(gè)完全干凈的以太坊地址所有。在一個(gè)常見(jiàn)的用例中,一個(gè)“ZK-Asset”(零知識(shí)資產(chǎn))合約可連接到任何ERC20兼容代幣,允許用戶存放代幣以生成ZK-Note,并允許用戶燃燒ZK-Note進(jìn)行提幣。此機(jī)制允許以太坊網(wǎng)絡(luò)上的任何現(xiàn)有資產(chǎn)以保護(hù)隱私的方式進(jìn)行交易。
AZTEC協(xié)議使用的證明要比ZK-Snarks更容易使用,但其仍需要一個(gè)可信設(shè)置。
AZTEC也正在接近其他新的需要可信設(shè)置的新生解決方案。PLONK是一種新的、高效的ZK-SNARK結(jié)構(gòu),所有程序都可重用這一設(shè)置。由于PLONK的gas需求量并不大,因此它對(duì)以太坊而言更有實(shí)用價(jià)值。對(duì)此,AZTEC協(xié)議首席執(zhí)行官Tom Pocock認(rèn)為,PLONK可用于編程復(fù)雜的邏輯語(yǔ)句,以保持完美的隱私。
ZK與安全多方計(jì)算(MPC)的結(jié)合使用
在ZKBoo以及最近的Ligero例子中,零知識(shí)證明系統(tǒng)就與安全多方計(jì)算(MPC)進(jìn)行了結(jié)合使用。這要求證明者提交安全MPC協(xié)議的記錄,然后讓驗(yàn)證者隨機(jī)評(píng)估其中一方的視圖,將安全多方計(jì)算協(xié)議“編譯”成ZK-PCP系統(tǒng)(最早使用概率證明的ZK系統(tǒng)之一)。更重要的是,使用MPC有可能創(chuàng)建隱私智能合約。
與ZK-STARKs一樣,基于MPC的證明具有:
1. 透明性:隨機(jī)數(shù)的生成是公開(kāi)信息;
2. 后量子安全性;
3. 可擴(kuò)展性:基于MPC的證明具有一個(gè)(準(zhǔn)線性)證明時(shí)間及一個(gè)驗(yàn)證者時(shí)間,這可提高分期和批量計(jì)算的效率;
使用此類技術(shù)的一些折衷方案,涉及如何使這些技術(shù)對(duì)中小型“電路”或問(wèn)題具有最佳效果,而這可能會(huì)導(dǎo)致驗(yàn)證程序的可擴(kuò)展性問(wèn)題。
也就是說(shuō),基于MPC的技術(shù)在區(qū)塊鏈領(lǐng)域還沒(méi)有得到充分的開(kāi)發(fā),這些技術(shù)將比現(xiàn)有的ZK(零知識(shí))技術(shù)普遍得多,特別是在各方需保護(hù)與實(shí)際計(jì)算本身有關(guān)的機(jī)密信息的情況下。例如,MPC技術(shù)對(duì)于嘗試運(yùn)行信用評(píng)分算法來(lái)評(píng)估客戶信用度而言是有用的,無(wú)論是客戶還是銀行都不想放棄與其交易歷史相關(guān)的機(jī)密信息,以及在ML信用評(píng)分模型中的權(quán)重。
硬件限制
當(dāng)Zcash首次提出使用zk-SNARKs來(lái)發(fā)送交易的想法時(shí),人們對(duì)使用隱形交易所需的計(jì)算力的數(shù)量存在嚴(yán)重?fù)?dān)憂,在當(dāng)時(shí)這需要數(shù)小時(shí)或更長(zhǎng)的時(shí)間才能生成交易。從那時(shí)起,我們已走過(guò)了很長(zhǎng)的一段路,而當(dāng)前的實(shí)現(xiàn)能夠在瀏覽器甚至在移動(dòng)設(shè)備上,以秒為單位完成類似的任務(wù)。
隱私混合器
最近一個(gè)備受關(guān)注的話題就是混合器,早在今年5月份時(shí),Vitalik就發(fā)布了以太坊網(wǎng)絡(luò)下一代混合器設(shè)計(jì)的動(dòng)機(jī)和粗略概要的一篇文章。
用戶需要以太坊混合器來(lái)幫助他們實(shí)現(xiàn)錢(qián)包或個(gè)人的隱私交易,以太幣的可追溯性意味著特定的交易可被跟蹤并鏈接到其他錢(qián)包、賬戶等。而混合器則被用于交換以太幣,以提高交易的隱私性。
從那時(shí)起,很多團(tuán)隊(duì)在進(jìn)行相關(guān)的努力,以使混合器更適合于以太坊。下面是一個(gè)最新的圖表,計(jì)算了相關(guān)混合交易的gas成本。
應(yīng)用層中單獨(dú)的混合器永遠(yuǎn)不會(huì)給用戶提供絕對(duì)的隱私性,而只是提供了概率保證。然而,這或許足以滿足大多數(shù)個(gè)人和企業(yè)的隱私需求。
誰(shuí)為Gas買(mǎi)單?
然而,上述這些混合器方法中存在著一個(gè)致命的缺陷,那就是,最終需要有人支付gas才能確認(rèn)輸出。那這部分以太幣是從哪里來(lái)呢?如果支付最終確認(rèn)輸出的以太幣可追溯到某個(gè)用戶,那么該用戶就相當(dāng)于失去了匿名保護(hù),這就破壞了整個(gè)隱私目的。
這就產(chǎn)生了一種隱私“雞與蛋”的場(chǎng)景,其中接受匿名以太幣的唯一方法是已擁有匿名以太幣。在Vitalik的原混合器帖子中,他用一個(gè)簡(jiǎn)單的中繼者注冊(cè)合約解決了這一問(wèn)題,其中承諾發(fā)布任意交易的中繼運(yùn)營(yíng)者可注冊(cè)一個(gè)HTTP端點(diǎn),這樣交易就可實(shí)現(xiàn)匿名發(fā)布。
最后,我們還需要考慮錢(qián)包和操作安全問(wèn)題,這需要在保護(hù)用戶安全的同時(shí),又不會(huì)給用戶帶來(lái)太多麻煩的體驗(yàn)。所有這些混合器解決方案需要大量的參與者來(lái)合理地期望隱私,所以工具需要容易被容易使用,但這里的任何捷徑都可導(dǎo)致一些嚴(yán)重侵犯隱私的行為。
這些技術(shù),以及行業(yè)當(dāng)中很多其它在發(fā)展的技術(shù),都是以太坊網(wǎng)絡(luò)的隱私問(wèn)題越來(lái)越受到關(guān)注的標(biāo)志,而這些技術(shù)進(jìn)展可能很快會(huì)得到巨大的推動(dòng)。雖然在公共區(qū)塊鏈上實(shí)現(xiàn)隱私似乎有些自相矛盾,但零知識(shí)和其他隱私技術(shù)方案將使得各種新的、尖端的用例成為可能。
展望未來(lái)
本文并不是對(duì)以太坊所有隱私方案的完整概述,當(dāng)我們談到隱私時(shí),并沒(méi)有什么靈丹妙藥能夠解決所有的問(wèn)題,而是需要針對(duì)特定的用例使用不同的方法和機(jī)制。
因此,我們將繼續(xù)檢查和評(píng)估以太坊的隱私解決方案,以幫助科普和推動(dòng)這類技術(shù)的發(fā)展。這包括未來(lái)會(huì)提供的關(guān)于具體隱私解決方案的文章以及解釋各種隱私技術(shù)的報(bào)告,另外還有對(duì)目前正在構(gòu)建隱私解決方案的項(xiàng)目及公司的更深入的分析。
披露:Consensys仍然對(duì)隱私和可擴(kuò)展性技術(shù)非常感興趣,Consensys實(shí)驗(yàn)室已投資了Aztec協(xié)議、Ligero以及Starkware,并會(huì)繼續(xù)尋找突破這一領(lǐng)域限制的項(xiàng)目。
來(lái)源: 巴比特