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