[發明專利]一種基于身份的前向安全環簽名方法在審
| 申請號: | 202110777009.3 | 申請日: | 2021-07-09 |
| 公開(公告)號: | CN113505396A | 公開(公告)日: | 2021-10-15 |
| 發明(設計)人: | 田苗苗;王婉玉;仲紅 | 申請(專利權)人: | 安徽大學 |
| 主分類號: | G06F21/64 | 分類號: | G06F21/64;G06F21/60 |
| 代理公司: | 安徽省合肥新安專利代理有限責任公司 34101 | 代理人: | 陸麗莉;何梅生 |
| 地址: | 230601 安*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 身份 安全 簽名 方法 | ||
1.一種基于身份的前向安全環簽名方法,其特征是,包括以下步驟:
步驟1、參數的設置;
步驟1.1、設置安全參數n,并選擇素數q≥2、第一整數第二整數m>5nlogq,以及高斯參數ω表示下界參數;
步驟1.2、利用陷門生成函數TrapGen(q,n)生成隨機矩陣及其基BA∈Zm×m;表示在集合{0,1,2...q-1}中取值構成維數為n×m的矩陣集合;Zm×m表示非負整數組成維數為m×m的矩陣的集合;
步驟1.3、構建公共參數和主私鑰MSK=BA;H1、H2表示兩個將任意長度輸入通過散列算法變換成固定長度輸出的抗碰撞哈希函數,表示消息空間;
步驟2、初始私鑰skid,0的提取;
步驟2.1、定義用戶身份id∈{0,1}*,{0,1}*表示由0、1組成的任意長度的串的集合,計算用戶id的標簽矩陣Q=H1(id),并構造用戶身份矩陣Aid=[A|Q];|表示矩陣A和Q連接;
步驟2.2、利用格基隨機化函數RandBasis(ExtBasis(BA,Aid),s)生成用戶身份的基Rid∈Z(m+1)×(m+1);Z(m+1)×(m+1)表示維數為(m+1)×(m+1)的非負整數矩陣的集合;
步驟2.3、對于任一個節點z,確定集合Nodes(0→T-1),z∈Nodes(0→T-1),其中,Nodes(t→T-1)表示二叉樹中包含葉子節點{t,...,T-1}但不包含{0,...,t-1}的所有祖先的最小集合,0→T-1表示從0開始到T-1的時間周期;
步驟2.3.1、如果z∈⊥,⊥表示無實質節點存在的一個空集,令用戶id在節點z處對應的私鑰skid[z]=⊥;否則,執行步驟2.3.2;
步驟2.3.2、用dz表示二進制向量z的長度,其中,dz≤d,d表示二叉樹的深度;
步驟2.3.3、構造用戶id在對應節點z處的矩陣其中,Bin(z)是節點z的二進制表示,Bin(z)[dz]表示第dz個比特位,表示節點z從根到節點z的路徑在深度dz處的矩陣,表示在集合{0,1,2...q-1}中取值構成的維數為n×((dz+1)m+1)的矩陣集合;
步驟2.3.4、計算用戶id在對應節點z處的基令skid[z]=Rid,z;←表示生成,RandBasis()表示基的隨機化,ExtBasis()表示基的提取,表示隨機化基時隨機選取的高斯參數;
步驟2.3.5、令與用戶身份id相對應的初始私鑰為skid,0={skid[z],z∈Nodes(0→T-1)};
步驟3、時間段t的私鑰skid,t的更新;
步驟3.1、令已知時間段t的私鑰skid,t={skid[z],z∈Nodes(t→T-1)},則對于新的二進制向量z'∈Nodes(t+1→T-1)的秘鑰演化過程如下:
步驟3.1.1、如果z'∈⊥,令用戶id在節點z處對應的私鑰skid[z′]=⊥;
如果存在一個z∈Nodes(t→T-1)是z'的前綴,則:
若z'=z,則令skid[z′]=skid[z];
若z'=z||y,y表示非空的二進制比特串,||表示z和y進行連接,則計算用戶在對應節點z'處的基Rid,z'←RandBasis(ExtBasis(Rid,z,Aid,z'),sdz'),令skid[z']=Rid,z';Aid,z'表示在節點z'提取基時用到的矩陣,且表示隨機化基時隨機選取的高斯參數;
步驟3.1.2、計算時間段t+1的私鑰skid,t+1={skid[z′],z′∈Nodes(t+1→T-1)};
步驟4、簽名;
步驟4.1、定義最大環為S,待簽名消息為μ,當前環為R,時間段t的私鑰skid,t所對應的身份id∈R;
步驟4.2、定義當前環R為所有用戶的身份集合R={id1,…,ids,…,idl},其中,ids表示第s個用戶身份,l表示用戶數量,在時間段t第s個用戶身份ids的私鑰為消息μ∈{0,1}*;
步驟4.3、假設第s個用戶身份ids為簽名者,則解析時間段t內簽名者的私鑰獲取簽名者在節點z處的基其中,z∈Nodes(t→T-1),z=Bin(t),Bin表示整數時間t對應的二進制表示,Bin(t)的長度為dt;
步驟4.4、構造用戶s對環進行簽名所要的驗證矩陣其中,Qs+1表示第s+1個用戶的身份標簽矩陣,表示用戶s的身份矩陣,Bt表示從根出發到節點t的路徑矩陣,且表示節點t從根到節點t的路徑在深度dt處的矩陣;
步驟4.5、選擇一個隨機數τ∈{0,1}ω(logn),{0,1}ω(logn)表示由0或1組成的長度為ω(logn)的串的集合,計算哈希值u=H2(R,μ,t,τ);
步驟4.6、利用陷門抽樣函數產生一個向量其中,e滿足高斯分布r表示隨機選取的一個高斯參數,表示q模格;
步驟4.6、得到時間段t的簽名σt=(e,R,t,τ);
步驟5、根據消息μ,簽名σt,時間段t和環R={id1,…,idl},驗證消息簽名對(μ,σt),如果驗證通過,則輸出1,否則,輸出0;
步驟5.1.將簽名σt解析為(e,R,t,τ);
步驟5.2、根據哈希值u和驗證矩陣AR,當且僅當(AR·e)modq=H2(R,μ,t,τ)且時,表示驗證通過,否則,表示驗證失敗,其中,O表示時間復雜度,||e||表示向量e的l2范數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽大學,未經安徽大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110777009.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:拋丸涂裝生產線及拋丸涂裝方法
- 下一篇:融合圖卷積神經網絡的文本情感分類系統





