區塊鏈入門 | 區塊鏈領域各類隱私保護技術簡介
區塊鏈的最大特性是其公共賬本是透明的。 但在許多情況下,進行隱蔽交易是可行的。 在本文中,我們將向您介紹旨在提升交易隱私級別的四個概念。 加密貨幣是隱蔽的,這實際是一種常見的誤解。 它們中的大多數並不是匿名的,這意味著預設情況下,雖然現實世界的身份不與地址相關聯,但可以通過持續的資料分析進行連線。
為何需要隱私?
在區塊鏈上建立私有交易有許多合理的理由。 如果您有健康問題並且需要定期購買處方藥,您有充分的理由私密地進行這些交易。 如果您有業務,您不希望向競爭對手透露您的收入來源,如果您為配偶購買禮物,您可能不希望他或她在實際獲得禮物之前看到它。 希望私下交易有很多充分理由,我們認為隱私是並且應該被視為一項基本人權。
對於本文,我們假設您熟悉許多區塊鏈用於記帳的UTXO模型。 如果您不太瞭解,請隨時檢視我們之前的文章。
找零地址
引入了找零地址後,對方無法通過查詢您用於與和對方交易的地址來訪問你的整個交易歷史記錄。 大多數現代錢包會在您建立交易時自動為您生成找零地址。 在常規比特幣交易的上述示例中,您可以看到交易的一個輸入和兩個輸出。 第一個輸出轉到不同的地址,是使用者想要花費的金額。 UTXO的其餘部分回到了資金來源的同一地址。
無論是找零還是常規的轉入交易,支援更改地址的錢包將在您每次收到資金時生成新地址。 上面的示例顯示了與之前具有完全相同金額的交易,但這次找零返回到新建立的找零地址。 此功能通過使跟蹤給定使用者的事務歷史記錄變得更加困難、更加隱私。
混合硬幣
像SharedCoin,TumbleBit或CoinJoin(Dash使用)這樣的硬幣,混合協議是通過在單個交易中混合多個不同的輸入和輸出來改善隱私的手段,通常是在幾個交易中期期間。
硬幣混合交易不需要對許多其他加密貨幣(例如Horizen)使用的基本比特幣協議進行任何更改。在上圖中,您可以看到硬幣混合交易的原理圖。許多輸入在混合池(中心)中組合,然後分配到它們的目標地址。硬幣混合交易使得攻擊者更難以找出誰向誰匯款。
混合服務提供的隱私水平遠遠優於使用常規交易,但是可以通過監控混合交易中的硬幣數量來輕鬆地將輸入地址連結到輸出地址。網上有工具可以這樣做。硬幣混合的另一個缺點是可用的許多混合器是由第三方集中管理的,可能會竊取您的資金。基於CoinJoin的技術可以避免因沒有中央集僅而導致您的硬幣被盜的風險。
到目前為止,有許多硬幣混合協議的迭代,逐步改進了隱私承諾。以CoinJoin為例,每個使用者都必須向混合池傳送相同的金額,這使得金額跟蹤變得更加困難。 機密交易 將通過隱藏交易金額來解決此問題。在我們的高階篇,我們將更詳細地討論各個混合器,讓我們先繼續前向下閱讀。
環形簽名
環形簽名在2001年,由Rivest,Shamir和Taumann首次引入。從那時起,這個概念已被用於許多隱私協議。 我們將利用白宮洩漏困境來證明環形簽名概念的價值主張。
想象一下,一位高級別的白宮官員(愛麗絲)想向媒體透露有關總統的祕密。 她需要確保,接收祕密的記者有辦法在不洩露她身份的情況下驗證資訊來源。 她能做的是使用環形簽名對郵件進行簽名。 為了構建環簽名,她需要的只是她的私鑰和其他可能的告密者的公鑰,例如, 內閣的其他成員(鮑勃和卡羅爾)。
驗證者(記者)可以驗證該訊息確實是由高階官員簽署的,但他無法確定誰構建了簽名(Alice,Bob或Carol?)。
在加密貨幣領域,使用者可以收集一堆公鑰,建立交易並使用他的私鑰對其進行簽名。 網路上的節點的驗證者可以驗證交易是否有效以及該訊息是否已由其中一個組成員簽署。 他們無法分辨誰簽署了交易,這使得環形簽名非常適合私密交易。
Monero是最值得注意的加密貨幣,它使用環形簽名,環形簽名是Monero構建的CryptoNote協議的一部分。 CryptoNote協議已經構建,其中一個補充是RingCT協議。 這是對環簽名方案的提升,它不僅隱藏交易的傳送者而且還隱藏轉移的金額。
零知識證明
零知識證明(zk-Proofs)早在區塊鏈技術出現之前就已為人所知,但隨著分散式賬本的出現,進化出了一整套新的可用案例。
簡單地說,零知識證明可以讓您向驗證者證明您知道某些事情,而不會洩露你傳送的資訊。下面是一個直觀的非示例,說明了這可能是什麼樣子。看見的人是證明者,被矇住眼睛的人是驗證者,並且驗證者有兩個不同顏色的球。
觀察者(證明者)需想要說服被矇住眼睛的人(驗證者)兩個球具有不同的顏色,而不會露出顏色。他們坐在一張桌子旁,盲人向證明者展示其中一個球。盲人繼續將兩個球放在桌子下面並選擇在第二輪中顯示一個球 - 與之前相同或另一個相同。如果他選擇展示同一個球,則證明者知道因為他看到了相同的顏色並告訴了盲人。如果盲人要顯示另一個球,則證明者可以肯定地告知驗證者(盲人)已將球在桌下轉換過了。
在第二輪中,如果必須猜測的話,證明者有一半的機會猜到正確答案。他們必須猜測,以防他試圖證明(球是不同顏色的)是錯誤的。在這一點上,盲人不能確定驗證人是否正確,或者證明者是靠運氣猜的。
但如果他們多次重複遊戲,那麼每次通過猜測獲得正確答案的機會都會呈指數級下降。在僅僅十輪比賽之後,每次通過純粹運氣召喚正確球的機會在1024(1/2 ^ 10)中減少到1。盲人現在可以非常肯定,雖然證明者沒有分享關於顏色本身的任何資訊,但她知道這兩個球確實具有不同的顏色。
使用零知識證明進行加密貨幣交易的思路如下:您構建一個證據,證明您要傳送的交易將被驗證節點視為有效,而不會洩露任何實際的交易資料。這要將傳送者、接收者和金額隱藏。另一個非常適合zk-Proofs應用案例是身份驗證。例如。您可以向實體證明您已達到某個年齡而不會洩露任何個人資料,例如您的出生日期。 Horizen使用Zk-snark進行隱蔽交易。 zk-SNARKs是一種特殊型別的零知識證明,即零知識簡潔非互動式知識論證。
簡潔是指在易於計算和驗證,使其更簡便。
非互動式意味著證明者和驗證者不必同時線上。 對於上面的球示例,證明者和驗證者必須來回幾次,然後驗證者才能確認證明者的言論。 通過非互動式證明,證明者可以完全自己構建證明,而無需在此過程中進行通訊。
知識論證描述了證據在計算上是合理的,即使壞人擁有巨大的算力資源,也不能偽造錯誤的證明。
要使用Horizen的私密交易,您將使用不同的地址型別。 在錢包中,您可以生成t-Addresses(透明地址)或z-Addresses(私密地址)。 當您將資金髮送到z-Address私密地址時,金額和發件人將記錄在區塊鏈中,但不會顯示在接收地址中。 如果您將資金再次轉發到第二個z-Address私密地址,則既不會記錄任何有關交易的資訊,也不會記錄發件人,收件人和金額。 如果您想嘗試此功能,可以下載Horizen旗艦應用領域(連結到錢包下載)。 確保在設定中啟用全節點模式,否則您將無法生成z-Addresses私密地址。
總結
有很多方法可以在公共區塊鏈上拿回您的隱私。 像變更地址和硬幣混合器這樣的方法,這樣雖然不能提供強大的隱私,但它們有助於使得跟蹤交易到原始地址,並將現實身份對應到區塊鏈上的地址變得更加困難。 環形簽名和Zero-Knowledge Proofs是更先進的技術,實際上允許您完全私密,且不用同時線上地進行交易,即使在完全開放的公共區塊鏈上也是如此。
(來源:HORIZEN)