匿名幣——萬億級地下網路硬通貨
原標題:匿名幣——萬億級地下網路硬通貨
2008年11月1日,比特幣白皮書釋出。
2009年1月,中本聰挖出了“上帝區塊”並獲得了50個比特幣的報酬。從此比特幣網路開始出現,比特幣正式誕生。
眾所周知的是比特幣一直以安全,匿名,去中心化等特性著稱。由於難以追蹤受到地下網路的青睞。
然而比特幣的地址和交易的關聯性是完全暴露的,任何第三方,都可以查任何BTC地址的所有相關歷史交易記錄,從而對該地址進行全面審計。我們稱之為“假名化”。也正由於這個原因,有些機構或個人不會接受涉及某些地址的比特幣。
據統計,目前的地下網路中,假設未來50%的交易用匿名幣來結算,並且假設每年週轉4次,那麼對匿名幣發行量的需求就是5000億美元。而目前情況是,地下經濟存在巨大的機會,全球地下經濟體量3-4萬億美元。這其中用虛擬貨幣結算的比例不超過5%。
根據Fundstrat 的估計,美國的比特幣資本利得應繳稅金額大約在200億美元,現在美國國稅局在全力追稅。而幫助他們追稅和查賬的是Chainalysis。
Chainalysis 公司成立於2014年10月,目前有45名員工,據諮詢公司Dealroom.com,2018年4月的估計,該公司估值介於6400萬和9600萬美元之間。
另外根據歐洲刑警組織的說法,歐洲每年用crypto洗錢的金額大約42-56億歐元,只佔到歐洲洗錢規模的3-4%,而以上計算,與美國緝毒署的說法也比較吻合:2013年比特幣鏈上交易90%是為了洗錢,而如今這個比例降到了10%。可見,用比特幣洗錢並不是個靠譜的事情。這大概是因為比特幣的賬本匿名性遠沒有現金那麼好。
匿名的需求真實存在,加上技術的不斷髮展,催生了一批追求絕對匿名的產品。他們試圖完全隱匿交易的傳送方,接收方甚至交易金額,以滿足隱私保護的需求。
雖然小編已經盡力將匿名幣原理深入淺出的舉例說明,但身邊同事強烈反映需要一個總覽。小編特地總結了幾個匿名幣的主要特徵和目前的發展情況,對複雜原理不感興趣的看官可直接看整理表格和最後的總結:
從比特幣到匿名幣
比特幣“假名化”的問題本質是由於純線上閉環的比特幣在網路流轉的過程中遇到了線下世界的關聯場景,形成了強關係,比如:交易所KYC。出於匿名性考慮,解決該問題的方法有兩個:
1、僅使用純線上閉環的比特幣,如:場外交易時僅收購新出塊的BTC。
2、為該場景開發一種完全匿名的數字貨幣。
一、傳統方法的優化——達世幣(DASH)
傳統的解決辦法是“混幣”(coinjoin)。中心化交易所在接收和傳送客戶的數字資產時常會有意無意地涉及到這一操作。其原理類似於警匪片中在逃的嫌犯混入人群,換裝之後繼續跑路。
使用該原理的第一個著名產品,是2014年1月出現的知名匿名幣 – 達世幣。
達世幣的具體實現是通過fork比特幣的程式碼然後在加密演算法,共識層等部分做了改進,主要涉及X11演算法和雙層獎勵網路(主節點網路)。X11演算法是11種加密演算法的組合,用於增強出礦的隨機性;雙層節點網路指的是普通礦工POW挖礦之上增加了一層主節點礦工,成為主節點礦工需要抵押1000個DASH coin。
用達世幣的錢包客戶端轉賬時可選取普通轉賬,即時交易和匿名交易;主節點用於後兩種交易模式。匿名交易過程的工作方式如下:
首先將交易輸入分解為標準面額,例如:0.1DASH,1DASH,10DASH;
之後交易者將給主節點發送訊息,需要混合的面額會在全網以先進先出的形式排隊廣播,但是不會包含交易者身份的資訊;當出現其他交易者傳送訊息表明希望混合相同面額的DASHcoin時混合開始,主節點將輸入混合,混合後的輸出支付給接收方;這一過程需要不同交易者的交易數額保持一致,達到匿名效果。
達世幣通過掩蓋資金來源來提供匿名,為了提高匿名質量,達世幣採用連結的方式,將資金通過多個主節點依次傳送出去。這一技術可以降低主節點資金流被監控的概率,同時還能極大降低攻擊成功的概率。
解決了資金來源匿名,混幣的主節點隨機和資金去向匿名三個問題,匿名性已經大大提高,但在每筆轉賬過程中,地址餘額是透明的,通過區塊鏈瀏覽器可以查詢到某一地址上的達世幣餘額。
二、進一步加強匿名性——門羅幣(XMR)
2014年4月18日,門羅幣誕生了。由於所有資料和交易都是不公開的,沒有人能夠知道你的門羅幣在之前經歷了哪些交易,也無法知道你的門羅幣會用來購買什麼。在門羅幣區塊瀏覽器裡,唯一能看見的只有一個區塊高度。
門羅幣使用了3個隱匿的技術實現這種匿名性
所謂環形簽名技術是指在門羅的區塊鏈網路中,接收到簽名者公鑰時先和其他公鑰混合成一個公鑰組,然後將一次交易看作一個單元來分配隱私;以此簽名之後的組,由於組內每個成員有等概率的權重,他人便無法區分簽名者到底是小組中的哪位成員。
環形簽名操作過程如下:
當傳送方決定發起一筆交易時,首先發送方會確認環的大小,代表組中的簽名成員數,環越大佔用空間越大,環中僅有一個真實簽名組員。假設傳送方選擇環的大小為X,那麼就存在X-1誘騙輸出的組員公鑰。
公鑰組會共同構建一個方程,只需要其中一個公鑰對應私鑰即可解開方程;但是除了真實交易組員的私鑰對應的公鑰外,組內的其他公鑰都是隨機生成的。
因此交易者可以用自己的私鑰解密,然後將這一方程的解、公鑰和選取的引數(用於確定公鑰在組種的位置)發給驗證節點,節點對簽名驗證後即可確認交易的正確性。但無法判斷髮送方是組中的哪位成員。
交易過程中為了防止雙花攻擊,每一筆交易都有唯一的金鑰映象(keyimage)。金鑰映象是通過獲取隱藏地址P的雜湊,並將其乘以私鑰x來建立,對每個交易都是不同的。這種機制確保每個P只能被使用用一次。Monero網路維護一個包含所有未完成金鑰映像的資料庫,因此,如果使用者嘗試重用金鑰,網路將拒絕該事務。
隱形地址技術的原理是採用多重金鑰,支付金鑰(spendkey)和檢視金鑰(viewkey)兩對金鑰。交易過程中接收方類似伺服器,傳送方類似客戶端。交易的傳送方選取接收方的(viewkey)公鑰資訊計算出一個臨時地址,將金額傳送到臨時地址,接收方掃描區塊上所有交易,使用私鑰(viewkey)計算相應資訊,比對後確認是傳送給自己的交易。
該過程僅能驗證交易的有效性,但無法知道交易的傳送方。另外支付金鑰(spendkey)中的私鑰用於建立金鑰映象,公鑰用於驗證金鑰映象以及參與環交易。該過程已在上文詳述。
最後一個關鍵技術是環保密技術(ringCT),用於隱藏交易額。該技術是Monero協議實施的一項措施,在一次交易中,傳送方不會向網路公開交易金額,而是由錢包自動生成一個rct值,rct = 隨機數 + 真正的交易金額。
網路可使用rct值驗證交易的輸入是否等於輸出,確保沒有額外的門羅幣被偽造產生。這是通過成為Pedersen承諾的密碼方案實現的。
門羅幣的匿名性已經足夠完善,但在極端情況下還是可能會遭受攻擊或暴露個人資訊,比如關鍵映象重用和小環攻擊。前者可能出現在門羅的分叉網路上,原鏈的私鑰在新鏈上被重用,環上的相同映象同時同時從存在於兩個分叉鏈上。後者可能由於小環增加了旁觀者確定環內可靠輸入的概率。
三、終極匿名技術——大零幣(ZEC)
2016年10月誕生的大零幣ZEC是首個使用零知識證明的區塊鏈系統。
零知識證明源於2014年IEEE的一篇論文,Zcash使用的zk-SNARKS(zero-knowledgesuccinctnon-interavtiveargumentsofknowledge)零知識證明加密技術,使得Zcash中的遮蔽交易可以在區塊鏈上對交易信息完全加密,並在網路一致性規則下證明有效。被稱為終極匿名技術。
零知識證明的一般形式。
1、非零知識證明
通常情況下,如果我知道X是真的,並且我想說服你,我會試圖提出我所知道的所有事實以及暗示X是真的那個事實的推論。舉個例子:我知道26781不是素數,因為它是113倍的237,為了向你證明這一事實,我將提出相關因子並證明確實是113×237 =26781。
證據的典型副產品是你獲得了一些知識,除此之外,你現在確信這種說法是正確的。在之前的例子中,你不僅確信了26781不是素數,而且你也學會了它的分解。零知識證明試圖避免它。在零知識證明中,愛麗絲將向鮑勃證明宣告X是真的,鮑勃將完全確信X是真的,但不會學習到這個過程的結果。也就是說,鮑勃將獲得零知識。
2、零知識證明的兩種型別:
要完成零知識證明,需要證明的三個要素是:零幣在裡面,沒用過,並且你有使用許可權。
而依據證明過程可將其分為互動式和非互動式。
舉個例子:
桌上有一個紅色和一個黃色的球,除了顏色外其餘屬性完全相同。A同學和B同學一起做一個實驗,目的是A同學要給色盲B同學證明這兩個球顏色是不同的。
首先,A和B背靠背站好,B同學通過拋硬幣的方式決定是否交換左右手的球,如果硬幣是正面那就不交換,反面則左右調換;然後讓A同學轉身檢視並回答兩個球是否交換過。實驗重複100次。
通過簡單的數學計算可以得出,A同學如果瞎猜,那麼100次實驗的情況下全猜對的概率僅為1 / (2^100),由概率論可知,如果A同學100次全答對,那麼球的顏色是相同的。
在這個例子中,每次實驗需要A和B進行互動,並且需要多次互動才能完成證明,這樣的證明稱為互動式的。
但是在區塊鏈上,我們要向所有礦工進行證明,只能使用非互動式的方式。也就是,我把證明內容提交給區塊鏈網路後,礦工可以獨立完成驗證,不用再問我問題。
這時候需要藉助一些數學工具:
存在加密函式E(x) 使得:
1、如果x, y不同,那E(x), E(y)也不同。
2、根據E(x)很難反推x的值。
3、根據E(x)和E(y),可以計算一些表示式的加密值,比如E(x+y)
然後我們再結合隨機偏移和提前生成並分散式儲存隨機值,即可完成非互動的零知識證明。
具體到Zcash中,在遮蔽地址間的匿名交易過程中,礦工只記錄“存在一個未花費餘額,且有一筆交易產生”的證明,而不記錄遮蔽地址和交易金額本身。
交易過程中,傳送方利用私鑰對該筆Zcash交易進行簽名,證明“自己有使用權”,並提供零知識證明,證明該筆Zcash被授權過(“零幣在裡面”);節點通過驗證金鑰檢查計算,檢查該筆交易是否遵循共識規則,檢查簽名後確認傳送方擁有相應的Zcash(“沒用過”);確認接收方有該筆Zcash使用權時,礦工將交易序列號放入作廢列表中。
總結:
匿名幣一路發展,到今天已日趨成熟,最近XMR和ZEC也都有了重大技術更新,分別釋出了Bulletproof和Sapling的更新,不斷推動著個人財產安全和隱私保護技術的的進步,
從理論上講,zk-SNARK可提供比環簽名,更高的安全性。如果環簽名被暴力破解,會洩漏使用者隱私。而zk-SNARK不會傳達任何交易資訊。但從技術角度考慮,三者的優勢排序應該為:大零幣> 門羅幣 > 達世幣。但綜合社群,市值,流動性等因素考慮,三個著名的匿名幣各有千秋。
隨著匿名技術不斷演化,如今的匿名幣生態越來越豐富,很多後起之秀如LOKI,PIVX等等。技術層面日趨成熟後,生態的落地和實用性的拓展還有很大發展空間,市場廣闊,期待匿名幣能在各個領域大展拳腳。
文章來源丨Hashgard臨界