隱私計算在區塊鏈賬戶設計中的應用

買賣虛擬貨幣
隱私計算主要解決區塊鏈在面臨複雜業務場景中,對原始資料外發進行可用不可見的隱私保護,當前隱私計算主要包含可信執行環境(TEE)、同態加密(HE)、安全多方計算(MPC)和零知識證明(ZKP)四種技術方案。隱私計算與區塊鏈的結合,不但能夠提供資料隱私保護,還能解決區塊鏈效能瓶頸,已經成為區塊鏈落地商用的重點研究方向,在未來隱私計算也將同區塊鏈一樣成為通用的資訊基礎設施。Trias中的隱私賬戶設計Trias的隱私賬戶在設計上採用了面向賬戶和UTXO兩種模式,以賬戶製為核心實現複雜業務的需求,以UTXO支援更高的隱私需求和潛在的擴充套件性需求。當前很多主流的區塊鏈專案賬戶在具體使用的時候,都會強調自己的交易非常安全,但實際上每個賬號的具體操作和使用全世界的鏈上參與者都能看見,這就給鏈上交易帶來一定的隱患。Trias在實現目標的時候不但能很好的體驗到區塊鏈上去中心化匿名應用的好處,也能最大限度的保護使用者的隱私,不讓與本次交易無關的人覺察自己資產的動向。
1. 相容兩種賬戶這裡簡要介紹一下賬戶(Account)和UTXO兩種模型的區別。賬戶模型很容易理解,我們日常使用的銀行卡、支付寶、微信錢包等支付方式都是基於賬戶模型設計的。每人的賬戶中都有一個餘額作為狀態,即當前餘額是記錄在某個地方的,這種設計即被稱為賬戶模型,比如我們的銀行卡餘額就被記錄在銀行的資料庫中。UTXO模型是比特幣獨創的價值轉移基本單元。其核心設計思路是無狀態,即只記錄交易變更事件,而不記錄交易的最終狀態。區塊鏈系統只處理交易,而清算餘額等過程,則交由節點自行處理。綜合來看,兩種機制各有優劣。目前比特幣採用UTXO,以太坊選用的是Account。UTXO:原理簡單、易於擴充套件、高度並行、隱匿性強。
Account:易於理解、節省空間、易於實現、模式成熟。涉及到賬戶相關的各種操作,如賬戶註冊、管理秘鑰、許可權變化等,每個賬戶有三套秘鑰,一套支援面向賬戶機制的操作,一套面向UTXO機制使用,一套用於表明賬戶所屬,極端情況下可用於賬戶找回(冷備份)。2. 交易隱私支援Trias支援採用UTXO的方式進行轉賬交易,同時支援採用隱藏地址和零知識證明的方法進行匿名轉賬。我們先說隱藏地址。在UTXO的工作模式下,假如A賬戶向B賬戶進行轉賬。A賬戶會透過B賬戶的公鑰產生一個臨時地址,並把資產轉移到對應的臨時地址中去。在收款的過程中,B賬戶需要歷遍所有的有效交易,並透過私鑰和交易隨機數來判斷收款人是否是自身。

其過程如下:A賬戶向B賬戶轉賬,B賬戶有兩對橢圓曲線演算法公私鑰對,(m,M),(n,N),其指定橢圓曲線的公共引數為G:

透過上述流程計算出臨時地址P,A轉賬至P中並公開R。而B賬戶透過R計算出對應的隱藏收款中的私鑰。如此,既實現了轉賬收款的全過程,有保護了A賬戶的隱私資訊。

而零知識證明作為近年來頗為火熱的技術,受到了國內外學術界的廣泛探討和研究。什麼是零知識證明呢?舉一個例子,有一個環形走廊,出口與入口在一個位置,中間被一道上了鎖的門隔斷, B聲稱他有鑰匙,那麼A如何在不拿到鑰匙的情況下知道B真的有鑰匙。這時,A只需要看到B從入口進入,並從出口走出,這樣A便可以相信B持有門的鑰匙這一事實。 

零知識證明指的是一方向另一方陳述一件事是正確的,而不透露出該陳述之外的任何資訊。證明者不直接告訴你答案,而是採用另一種表達方式來讓向你證明,直到你認為對方確實知道答案為止。在Trias中,零知識證明主要由zkSNARK演算法所實現。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;