[發明專利]基于可鏈接環簽名和多重簽名的區塊鏈匿名簽名方法有效
| 申請號: | 201910254720.3 | 申請日: | 2019-03-31 |
| 公開(公告)號: | CN110011810B | 公開(公告)日: | 2021-04-20 |
| 發明(設計)人: | 高軍濤;劉奇;吳通;于海勇 | 申請(專利權)人: | 西安電子科技大學 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L29/08;G06Q20/38;G06Q20/40 |
| 代理公司: | 陜西電子工業專利中心 61205 | 代理人: | 田文英;王品華 |
| 地址: | 710071*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 鏈接 簽名 多重 區塊 匿名 方法 | ||
1.一種基于可鏈接環簽名和多重簽名的區塊鏈匿名簽名方法,其特征在于:每個用戶使用橢圓曲線上的可鏈接環簽名,為各自的隱私數據生成相應的環簽名,簽名收集者驗證環簽名并生成多重簽名;該方法的具體步驟包括如下:
(1)生成用戶的公鑰私鑰對:
(1a)通過安全信道,將區塊鏈的公共參數pp={q,Fq,g,n,G}發送給每個用戶,其中,q表示一個256比特長的大素數,Fq表示一個有限域,g表示橢圓曲線上的基點,n表示橢圓曲線上的基點的階數,G表示基點所生成的群;
(1b)每個用戶使用各自的私鑰與橢圓曲線上的基點進行點乘操作,得到各自的公鑰;
(2)生成簽名群組公鑰:
(2a)將擬簽名的用戶組成簽名群組,簽名群組中的每個用戶廣播自己的公鑰;
(2b)簽名群組中的每個用戶收集其他用戶的公鑰,生成簽名群組公鑰;
(3)生成可鏈接的環簽名:
(3a)從簽名群組中任意選取一名用戶,按照區塊鏈系統規范,生成包含所選用戶新賬戶的待簽名消息;
(3b)利用下述鏈接標簽算法,計算所選用戶的鏈接標簽:
第一步,按照下式,所選用戶計算自己的公鑰映射:
h=H2(A)
其中,h表示所選用戶的公鑰映射,H2(·)表示不同于H1(·)的安全抗碰撞哈希函數,A表示所選用戶的公鑰;
第二步,按照下式,所選用戶計算自己的鏈接標簽:
其中,表示所選用戶的鏈接標簽,a表示所選用戶的私鑰;
(3c)按照下式,所選用戶計算身份標識:
其中,cb+1表示簽名群組中第b+1個用戶的身份標識,H1(·)表示安全抗碰撞的哈希函數,γ表示簽名群組公鑰,m表示包含所選用戶新賬戶的待簽名消息,u表示所選用戶在[1,n-1]范圍內隨機選擇的正整數,×表示橢圓曲線上的點乘操作;
(3d)利用下述遞推公式,所選用戶計算其他用戶的身份標識:
其中,ci+1表示除所選用戶b外的簽名群組中第i+1個用戶的身份標識,i的取值范圍為[b+1,t]∪[1,b-1],b表示所選用戶在簽名群組中的索引值,t表示簽名群組的用戶總數,∪表示集合并操作,si表示所選用戶在[1,n-1]范圍內隨機選擇的簽名群組中第i個用戶的簽名分量,ci表示簽名群組中第i個用戶的身份標識,Ai表示簽名群組中第i個用戶的公鑰;
(3e)所選用戶利用環簽名生成算法生成可鏈接的環簽名,將可鏈接的環簽名和包含所選用戶新賬戶的待簽名消息發送給簽名收集者;
所述的環簽名生成算法的步驟如下:
第一步,按照下式,所選用戶計算自己的簽名分量:
sb=u-acbmod n
其中,sb表示所選用戶的簽名分量,cb表示所選用戶的身份標識,mod表示數模操作;
第二步,按照下式,所選用戶生成可鏈接的環簽名:
其中,σ表示所選用戶生成的可鏈接的環簽名,c1表示簽名群組中第一個用戶的身份標識,||表示級聯操作,S表示簽名群組中所有用戶的簽名分量集合;
(3f)判斷是否選完簽名群組中的所有用戶,若是,則執行步驟(4),否則,執行步驟(3a);
(4)簽名收集者驗證環簽名:
(4a)簽名收集者接收簽名群組中的所有用戶發來的環簽名;
(4b)利用環簽名恢復公式,簽名收集者計算簽名群組中每個用戶的身份標識;
所述的環簽名恢復公式如下:
其中,cj+1表示簽名群組中第j+1個用戶的身份標識,j的取值范圍為[1,t];
(4c)判斷第一個用戶的身份標識是否滿足環簽名閉合條件,若是,則執行步驟(4d),否則,退出簽名;
所述的環簽名閉合條件是指下式成立:
其中,ct表示簽名群組中第t個用戶的身份標識,st表示簽名群組中第t個用戶的簽名分量,At表示簽名群組中第t個用戶的公鑰;
(4d)判斷所有的環簽名中是否存在滿足可鏈接條件的兩個環簽名,若是,則退出簽名,否則,執行步驟(5);
所述的可鏈接條件是指,兩個不同的環簽名的鏈接標簽相等;
(5)生成多重簽名信息:
(5a)簽名收集者將簽名群組公鑰作為多重簽名信息的輸入地址;
(5b)簽名收集者將簽名群組中所有用戶的新賬戶作為多重簽名信息的輸出地址;
(5c)按照下式,簽名收集者生成多重簽名信息,發送多重簽名信息給簽名群組中的所有用戶:
T=γ||M
其中,T表示簽名收集者生成的多重簽名信息,M表示簽名群組中所有用戶的新賬戶集合;
(6)簽署多重簽名信息:
(6a)簽名群組中的所有用戶使用各自的私鑰,簽署多重簽名信息;
(6b)將多重簽名廣播至區塊鏈系統;
(7)驗證簽名:
區塊鏈系統上的礦工使用簽名群組公鑰驗證簽名,將有效的多重簽名記錄至區塊鏈。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安電子科技大學,未經西安電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910254720.3/1.html,轉載請聲明來源鉆瓜專利網。





