導語

系統透明是區塊鏈正常運行的關鍵。所謂的透明度是指網絡中的每個節點均可存儲副本並有權驗證有無違規。在許多分佈式賬本中,任何人均可裝載區塊瀏覽器,瀏覽網絡中的區塊、交易與地址。

從隱私角度出發,這種方式並不理想。在比特幣等系統中,每筆交易均可與之前的交易相關聯。代幣在技術層面不可互換,即每枚代幣均與特定交易掛鉤。沒有人可以阻止您發送比特幣,但如果這些代幣曾經過黑名單地址,則對方有權拒接這筆交易。

在最糟糕的情況下,同質化欠缺可能對系統的基礎造成深遠影響。乾淨的代幣獲得溢價,而早期代幣則因歷史問題而貶值。

比特幣的隱私性往往被誇大。實際上系統中代幣與用戶均有跡可循。人們習慣匿名操作(顯示公共地址,而非姓名),但這種方式存在一定弊端。隨着精度不斷提升,尖端分析技術將網絡中的實體聚集起來,以便實施去匿名化。

保密交易正是推動交易真正私密化的升級手段。


什麼是保密交易?

保密交易(CT)的概念問世於2013年,由Blockstream的首席執行官Adam Back首次提出,隨後被比特幣開發人員Gregory Maxwell拓展延伸。Maxwell在第一部分概述了提到的“同質化”與“弱匿名性”等問題,提出了相應的解決方案。他指出,交易金額可在更廣泛的網絡中隱藏,只有交易參與方纔能知曉具體數值。


常规交易与保密交易对比


在正常情況下(交易可以公開查看),節點可以輕鬆驗證接收的代幣是否超出發送的金額。例如,Alice希望向Bob發送0.3 BTC,她使用未消費的輸出(我們稱爲“1 BTC”)並將其分爲兩部分:0.3 BTC發送給Bob,0.69 BTC發送回個人錢包(剩餘資金作爲挖礦費用上繳)。

對於其他節點來說,這就是簡單的代數問題:1 > 0.3+0.69,簽名全部正確無誤,而Alice的輸入並未在其他地方消費,因此這筆交易必定有效。數額隱藏後,事情卻變得複雜起來。我們如何確定一個未知金額是否大於等於另外兩個未知金額的總和?


涉及的密碼學原理概述

爲了隱藏數據,必須應用一些加密技術。然而,傳統方式與將文件存入保險櫃類似:入櫃上鎖後,在解鎖前都無法取出。“保密交易”的運行方式則與數字保險櫃類似,其中的內容隱藏起來,可由外人驗證資產的所有權。

答案就在於“同態加密”,這是一種名爲佩德森承諾的機制。這種加密方式允許外部人員基於各種目的對加密數據執行操作,但無法查看具體內容。

常規哈希可用於提交您希望顯示的數據。假設您希望在社交媒體宣佈一項競賽,內容爲猜出您最喜歡的交易所,可贏得0.01 BTC的獎勵。參與者可能會對競賽心存疑慮,因爲您完全可以在比賽結束後查看他們的答案,然後挑一家誰都沒提到過的交易所。

爲此,您可以爲粉絲提供一個哈希值:一串看似隨機的數字與字符組合(對應特定輸入),通過特定函數傳遞答案(即指定交易所),最終得到輸出。我們以SHA256算法爲例:


f1624fcc63b615ac0e95daf9ab78434ec2e8ffe402144dc631b055f711225191


根據以上哈希值,您不知道具體的輸入,也不能通過函數逆推得到之前的輸入。但如果您知道輸入是“幣安”,則可輕鬆判定其哈希值與上面列出的是一致的。這樣一來,粉絲就會比較放心,知道您不會在比賽結束時更改答案,因爲這樣就會產生一個完全不同的輸出。

其實,此種方式也並非絕對安全。雖然粉絲不能對這個算法開展逆向工程,但他們可以創建交易所列表,逐一與上述哈希值相匹配,直至得到正確答案。爲了避免此類操作,我們可以向需要哈希運算的數據中添加隨機數據,稱爲“遮蔽因子”。

如果我們輸入“幣安是我最喜歡的交易所,勝過其他任何交易所 2#43Wr”,競爭者便很難猜出結果(畢竟他們不可能爲了區區0.01 BTC而進行無數次嘗試)。

藉助佩德森承諾,我們可以在承諾的後面添加輸入。Maxwell對此解釋爲:


confidential transaction equation


C(BF1 + D1) + C(BF2 + D2) = C(BF1 + BF2, D1 + D2)

其中BF指代遮蔽因子,而D指代數據


後續幾步涉及橢圓曲線密碼學與範圍證明,但基本思想還是對地址進行佩德森承諾處理。發送資金時,系統會額外生成兩項“承諾”(分別用於返還資金的找零地址與目標地址)。

沒人知曉發送金額,但可以檢查找零和目標承諾(Maxwell方程的左側)與原始地址(方程的右邊)是否相等。如果計算正確無誤,則足以證明輸入與輸出相等,表明用戶的交易有效。


保密交易可以實現的目標

如果在比特幣中應用保密交易,則可以打造隱私性更強的系統。系統中的輸入和輸出均會掩藏,賬本中的實體也將被模糊處理,但節點仍可驗證其真實性。隨着隱私性顯著提升,鏈分析無法揭示給定單位的歷史,因此比特幣可以有效互換。

至於“保密交易”是否能夠被整合到協議中,從目前來看似乎可能性不大。新增這項功能之後,交易的規模比常規交易更大,鑑於區塊空間有限,這自然會催生更多的市場需求。此外,網絡中的多數參與者必須同意更改代碼,這在過去也是一大難題。


總結

部分加密貨幣與比特幣側鏈中的保密交易進行了一定程度的迭代。例如,門羅幣將保密交易與“環簽名”結構完美融合,實現匿名性與同質化。Liquid側鏈和MimbleWimble的隱私性也都得到顯著提升。

保密交易的確具備諸多優勢,但同樣面臨處理量增大的問題。加密貨幣在基礎層的可擴展性與吞吐量方面長期面臨挑戰,大體量交易也會讓許多人望而卻步。儘管如此,隱私性倡導者認爲有必要隱藏交易金額與參與者,推動加密貨幣成爲名副其實的同質化貨幣。