主頁 微信公眾號:密碼應(yīng)用技術(shù)實(shí)戰(zhàn) 博客園首頁:https://www.cnblogs.com/informatics/ GIT地址:https://github.com/warm3snow 簡介 在《門羅幣隱私保護(hù)之隱形地址》文章中,我們重點(diǎn)介紹了門羅幣Monero的隱形地址技術(shù),門羅幣通過隱形地
微信公眾號:密碼應(yīng)用技術(shù)實(shí)戰(zhàn)
博客園首頁: https://www.cnblogs.com/informatics/
GIT地址: https://github.com/warm3snow
在 《門羅幣隱私保護(hù)之隱形地址》 文章中,我們重點(diǎn)介紹了門羅幣Monero的隱形地址技術(shù),門羅幣通過隱形地址保證了交易的不可鏈接性,并實(shí)現(xiàn)了用戶的隱私保護(hù)和監(jiān)管需求。
本文將繼續(xù)介紹門羅幣的另一個核心技術(shù)——環(huán)簽名技術(shù),Monero通過環(huán)簽名技術(shù),實(shí)現(xiàn)了交易的不可追蹤性。
注:incoming和outgoing交易分別表示用戶的收款和支出交易。
環(huán)簽名 ( Ring Signature )是一種數(shù)字簽名方案,允許一組用戶中的任何一個用戶為某個消息生成簽名,而不需要透露具體是哪個用戶生成的簽名。環(huán)簽名的主要特點(diǎn)是它提供了 簽名 的 匿名性 和 可驗證性 ,確保簽名者的身份在簽名過程中保持隱私。
環(huán)簽名的基本概念
環(huán)的大小是環(huán)簽名方案的一個重要參數(shù),環(huán)越大,簽名者的身份越難以確定,簽名的匿名性越高。但是環(huán)的大小也會影響簽名的計算和驗證性能,因此需要在匿名性和性能之間進(jìn)行權(quán)衡。
環(huán)簽名構(gòu)造和驗證流程
環(huán)簽名方案 涉及一個三元組 \((KeyGen, Sign, Verify)\) ,其中:
回顧在 《門羅幣隱私保護(hù)之隱形地址》 介紹的交易模型,Bob作為收款方,能夠驗證每一筆相關(guān)交易的有效性。
進(jìn)一步說明:
值得注意的是, \((P, x)\) 是 一次性密鑰 ,當(dāng)Bob花費(fèi)這筆收入時,會使用該密鑰參與環(huán)簽名,之后可以丟棄。
門羅幣使用環(huán)簽名技術(shù),實(shí)現(xiàn)了交易的不可追蹤性。門羅幣的環(huán)簽名方案基于CryptoNote協(xié)議。在CryptoNode協(xié)議中,環(huán)簽名交易模型如下:
門羅幣環(huán)簽名方案涉及一個四元組 \((KeyGen, Sign, Verify, Link)\) ,其中:
門羅幣的KeyGen算法與一般的環(huán)簽名方案類似,目的都是生成公私鑰對
\((P_s, x_s)\)
,其中
\(P_s\)
是簽名者的公鑰,
\(x_s\)
是簽名者的私鑰。
不同的是:
在門羅幣中,由于簽名公私鑰對 \((P_s, x_s)\) 是由隱形地址技術(shù)生成的,并且僅用于一次性簽名,因此門羅幣環(huán)簽名我們也稱為 一次性環(huán)簽名 。
門羅幣的Sign算法如下:
初始化:
計算環(huán)簽名(類似零知識承諾:承諾-挑戰(zhàn)-響應(yīng),可以參考之前的文章 《零知識證明之承諾方案》
計算承諾,承諾由兩個集合組成 \(L\) 和 \(R\) ,集合元素計算如下:
計算挑戰(zhàn)(實(shí)際上是前面已有知識的哈希值)
其中, \(m\) 是待簽名的消息,在這里表示交易信息(簽名除外,因為簽名還未生成)
計算響應(yīng)
其中, \(\sigma\) 就是環(huán)簽名的簽名值, \(\sigma\)
區(qū)塊鏈礦工在收到交易后,會對交易進(jìn)行簽名驗證。礦工已知 \(R = {P_1, P_2, ..., P_n}\) ,以及環(huán)簽名 \(\sigma = (I, c_1, ..., c_n, r_1, ..., r_n)\) , 簽名驗證Verify算法如下:
如果上述等式成立,則簽名有效,否則簽名無效,交易被拒絕。
正確性驗證
在上述推導(dǎo)中,由于 \(P_s = x_s \cdot G\) ,所以: \(-c_s \cdot x_s \cdot G + c_s \cdot P_s = -c_s \cdot P_s + c_s \cdot P_s = 0\)
在上述推導(dǎo)中,由于 \(I = x_s \cdot H_p(P_s)\) ,所以: \(-c_s \cdot x_s \cdot H_p(P_s) + c_s \cdot I = -c_s \cdot I + c_s \cdot I = 0\)
由于 \(L^{'} = L\) 且 \(R^{'} = R\) ,所以:
因此,簽名驗證等式成立,簽名有效。
,密鑰鏡像和密鑰對之間的關(guān)系如下:
密鑰鏡像
\(I\)
的計算方式,反映了用戶密鑰和密鑰鏡像之間存在一一對應(yīng)關(guān)系,而用戶密鑰(x, P)基于隱形地址技術(shù),只使用一次,且與交易綁定。
礦工會記錄所有交易的密鑰鏡像列表,在收到新交易時,會檢查交易中的
\(I\)
是否已存在于列表中,如果存在,則說明該交易的(x, P)已經(jīng)被使用過,是一筆雙花交易,交易被拒絕。
環(huán)簽名是門羅幣的另一個核心技術(shù),通過環(huán)簽名技術(shù),實(shí)現(xiàn)了交易的不可追蹤性。本文簡單介紹了環(huán)簽名的基本概念,并詳細(xì)介紹了門羅幣的環(huán)簽名方案,包括密鑰生成、簽名、驗證和雙花驗證等算法。希望通過本文的介紹,讀者對隱私幣的匿名技術(shù)有更進(jìn)一步的了解。
門羅幣隱私保護(hù)使用了多種技術(shù),包括隱形地址、環(huán)簽名、機(jī)密交易等,這些技術(shù)共同構(gòu)成了門羅幣的隱私保護(hù)體系。在接下來的文章中,我們將繼續(xù)介紹門羅幣的其他隱私保護(hù)技術(shù)。
機(jī)器學(xué)習(xí):神經(jīng)網(wǎng)絡(luò)構(gòu)建(下)
閱讀華為Mate品牌盛典:HarmonyOS NEXT加持下游戲性能得到充分釋放
閱讀實(shí)現(xiàn)對象集合與DataTable的相互轉(zhuǎn)換
閱讀鴻蒙NEXT元服務(wù):論如何免費(fèi)快速上架作品
閱讀算法與數(shù)據(jù)結(jié)構(gòu) 1 - 模擬
閱讀5. Spring Cloud OpenFeign 聲明式 WebService 客戶端的超詳細(xì)使用
閱讀Java代理模式:靜態(tài)代理和動態(tài)代理的對比分析
閱讀Win11筆記本“自動管理應(yīng)用的顏色”顯示規(guī)則
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]
湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2025 haote.com 好特網(wǎng)