時間:2023-07-16|瀏覽:255
為了實現更強的保密性能,SERO匿名系統的體系結構設計在滿足系統性能要求的同時,還需遵循以下基本原則。
The basic principle
基本原則
- 不可追溯: 區塊鏈網絡中每筆交易都有輸入和輸出通道,它們構成了一個非循環交易圖,在這個圖上所有交易流都可以被跟蹤,所有交易序列都可以被串聯、追溯。SERO的設計初衷是切斷兩個交易之間的聯系,使攻擊無法進行。
- 不可關聯: 區塊鏈網絡中的每個用戶都有自己的收集地址。一旦該地址與實際用戶身份相關聯,網絡中發生在該地址上的所有交易都將與對應用戶的身份關聯,從而導致將關聯的行為暴露給該地址。當用戶創建用于匿名的新假名公鑰時,所有的交易和余額仍然是公開可見的。SERO使用加密技術使支付地址不可關聯。
- 反統計分析: 實際用戶行為具有統計特征。如果區塊鏈網絡中的交易數據具有反映這種統計特性相關內容的功能,則可以通過對區塊鏈數據的統計分析來推斷屬于特定用戶的地址。當使用環簽名時,如果環成員或節點是惡意的,抵抗統計分析的能力將會降低。而SERO能夠通過技術手段完全隱藏地址之間的關系。
- 可選審計解決方案: 對于可供選擇的審計方案和某些復雜的業務程序應用,SERO用戶可以選擇可信的第三方對交易進行財務審計,并能夠讓第三方跟蹤交易中的特定信息。
Protocol design
協議設計
SERO協議的設計簡要描述如下:
- 賬戶系統:
- 帳戶分為兩類:用戶帳戶與合約帳戶。用戶帳戶是用戶自主選擇的32字節的帳戶,合約帳戶自動生成與用戶安裝的智能合約環境相對應的64字節地址;以上兩類帳戶都是唯一且不可重復的。
- 用戶帳戶可以生成64字節私鑰SK和64字節公鑰PK,錢包會根據當前條件生成一個臨時地址。該臨時地址不能與用戶的私鑰和公鑰關聯,并且只能使用一次。
- 安裝智能合約時,錢包會根據當前條件將臨時地址更改為64字節智能合約地址(CADDR)。當節點接收到地址時,需要確保合約地址以前沒有出現過。
- 資產系統:
- 用戶帳戶或智能合約帳戶都具有管理無限種類資產的屬性,不僅僅是SERO幣的結算交易費,賬戶下的所有資產都具有與SERO幣相同的交易特征。除了SERO幣外,其他資產可通過智能合約生成(類似以太坊)。
- 為了便于記憶,可為每項資產指定一個長度不超過32字節的名稱(代幣名),這些名稱不允許重復使用。當賬戶執行余額查詢或轉賬操作時,可以指定資產類型。
- 輸出和輸入結構:
- 輸出結構:
- 輸入結構:
- 錨是輸入數據所在哈希樹的根。Nil是用于銷毀已使用OUT的32字節哈希,Til是用于交易跟蹤的32字節哈希,并且僅對系統內的OUT有效。AssertCM是輸入的資產協議。OutCM是交易的輸出協議。
- 見證系統:
SERO協議使用非交互式零知識證明(NIZK),在生成交易時需要提供資產來源的見證信息。每個節點將根據見證信息進行驗證。SERO使用哈希樹算法來維護記錄狀態更改的見證系統。系統將在節點提供驗證功能,在錢包端提供認證信息。
根=根哈希(位置、葉、路徑):
- 根即當前哈希樹的根 - 葉即當前位置的葉 - 路徑即從葉至根的證明路徑
- 證明系統:
SERO的證明系統包括一個基于有向無環圖的計算線路,用于描述每個SERO交易的內部約束:各種資產類型的輸入和輸出平衡,公鑰和私鑰的驗證,交易的有效性,見證的有效性等。
加載數據的線路可以通過非交互式零知識證明(NIZK)生成證明。從提交的證明中,節點可以驗證線路中加載的各種參數和約束條件,同時又能隱藏大量的詳細信息。
步驟流程:
A. 計算
用戶使用賬戶、資產和見證系統提供的信息,并根據當前運算需要提供輸入數據。計算規則在離鏈環境下運行以獲得結果。
B. 證明
用戶使用隨機變量r生成STX和計算結果,并將其提交給節點。STX包括檢查數據Ci、編碼數據Ei和驗證數據Pi。
STX=PROVE(RESULT,r)
STX={(C0.C1……Cn),(E0,E1……En),(P0,P1……Pn)}
C. 驗證
節點收到STX后,會在見證系統和證明系統中確認Ci。當證書被驗證為正確時,節點將接受STX。
RET_i=VERIFYi(C_i)
Check=ret_0ret_1…ret_n
D. 確認
當資產接收方與已驗證交易STX同步時,接收方使用私鑰對編碼數據E_i進行解密,并生成明文D_i。明文D_i和證明P_i被輸入到證明系統進行驗證;成功即表示交易已驗證。當交易被n個塊確認時,交易接收者可認為交易已被確認。
D_i=FETCH_i(E_i,ACCOUNT)
ret_i=CONFIRM_i(D_i,P_i)
Check=ret_0ret_1…ret_m
值得注意的是,SERO的執行步驟是開放的,這意味著這種對步驟和參數的抽象描述支持持續升級,隨后添加的功能對整體架構的影響也微乎其微。
以上就是SERO匿名系統的體系結構設計啦,下期礦視界將為大家帶來世上最快零知識證明加密庫Super-ZK的介紹。
文章來源:medium。
翻譯&校對:有條魚。
本文由礦視界(奇跡摩爾)翻譯整理編輯,如需轉載,請標明出處。