在很多媒體文章中,通常將加密貨幣描述成具有匿名屬性,然而在其他文章中卻又說成加密貨幣要比法幣(如美元)更容易被追蹤。那實際情況究竟如何呢?首先我們需要理解的是:加密貨幣的隱私性意味著什么?
這個問題并不像表面上那么容易回答,因為在區塊鏈領域中,隱私可以意味著很多不同的東西。要成為更加知情的開發者、投資者或加密貨幣的參與者,了解隱私在加密經濟系統中的實際含義是非常重要的。
假設Alice想要開設一個Venmo帳戶(PayPal旗下的一個支付服務,讓用戶可以在手機或網頁上通過該平臺轉賬給他人),這需要她提供并驗證她的真實身份信息,如此一來Venmo平臺掌握了她的真實身份信息并且可能與其他人共享這些信息。
假設Bob通過Venmo平臺向Alice轉賬$20,并將此信息在該平臺的Feed版塊上分享出來(注:用戶使用Venmo平臺進行轉賬時,可以設置成叫該筆轉賬信息公布出來,包括轉賬時間和原因、雙方的姓名等,但具體金額不會顯示),這就意味著這筆交易信息是公開的了,盡管Alice的賬戶余額信息只有Venmo平臺知道。
相比之下,假設Alice創建了一個比特幣賬戶,并要求Bob向她發送價值$20的BTC,與Venmo相比,此時Alice的身份信息并不會公開,因為她的真實姓名并不會與這個比特幣賬戶聯系在一起。
然而,Bob賬戶向Alice賬戶發送了BTC這件事情,以及Alice賬戶還剩多少余額等信息將公開被世界上任何人看到。我們可以看到,通過使用比特幣,Alice在某種意義上保護了自己的一些隱私,但在其他方面卻失去了一些隱私。
類似這種折衷性(tradeoff)在使用不同的加密貨幣時都很常見。在加密貨幣領域中,我們通過三個方面來探討其中涉及的折衷情況,即:
使用加密貨幣來完成某種操作的用戶的身份信息;
用戶執行操作所產生的具體交易數據;
集合所有交易信息的區塊鏈整體狀態。
區塊鏈協議可以通過利用密碼學來使任何一個外部的觀察者無法知曉或計算出以上這三個方面中的任何信息(從理論上來說是非常困難的)。但同時,攻擊者如果想要發現區塊鏈的某個屬性,可以通過組合不同的信息,來推斷或猜測出他們想要知道的信息。
為了保護隱私,區塊鏈協議的設計需要盡可能少地向潛在攻擊者顯露出有關特定屬性的信息。
重要的是,某個特定屬性(attribute)是否屬于隱私保護范疇,這并不是非黑即白的。比如,某個屬性對于一些觀察者來說是可知的,但對于另一些觀察者卻不可知,或者觀察者可能在一定概率上可以猜測出某個屬性,但無法完全確定。
這種隱晦性意味著諸如“我最喜歡的幣能夠保護隱私”和“我最喜歡的幣要比你最喜歡的幣更加能保護隱私”這樣的言論通常都是站不住腳的。相比之下,“門羅幣(XMR)中的交易金額是隱秘的”,甚至“ZCash的匿名性保護了發送者賬戶的隱私”這樣的言論會更說得通。
正如下文將提到,在某些加密工具(如零知識證明)能夠幫助我們量化這些言論,甚至為這些言論提供嚴格的證明。我們現在一起來研究一下與加密貨幣相關的隱私保護的各個方面。