法得到群心〇、和 雙線性映射運(yùn)算e:巧.0.X拉0 範(fàn)1,;其中,0' =征,G〇,肛1,6),.屬性域U=忍P,群厄0、Gi的階 數(shù)為素?cái)?shù)P。即:PKG首先輸入系統(tǒng)安全參數(shù)A,然后運(yùn)行算法巧(1勺,輸出兩個(gè)階數(shù)為素 數(shù)P的群拉0、拉1和一個(gè)雙線性映射運(yùn)算e:斬X拉0 一拉1,設(shè)0二如紅0,招1,句,屬性域 U=忍口 6
[0077] 81〇12:私鑰生成中屯、隨機(jī)選取0,咕/1,做,^£紅〇^及《£每,^得到公共參數(shù)口口 =值,g,U,h,W,V,e (g,g)。)W及主密鑰msk= ( a )。即:PKG隨機(jī)選取身,U',W,UE拉【) W及巧E.是P..,得到公共參數(shù)卵=(D,g,U,h,W,V,e(g,g)。),系統(tǒng)主密鑰msk= (a )。
[007引 S102 :私鑰生成中屯、根據(jù)主密鑰和用戶屬性集得到用戶私鑰,W及將用戶私鑰發(fā) 送給對(duì)應(yīng)的用戶,其中,用戶屬性集包括多個(gè)用戶屬性。也就是說(shuō),PKGW系統(tǒng)主密鑰msk和 用戶屬性集S作為輸入,相應(yīng)的用戶私鑰Sk為輸出。得到的私鑰Sk將W安全方式發(fā)送給 用戶。
[0079] 作為一個(gè)具體的示例,步驟S102具體包括如下步驟:
[0080] S1021 :獲取用戶屬性集,其中,用戶屬性集S二{'4!,'42,…,CZp(即; 設(shè)用戶屬性集S=Pi,屯,….4?}CZp),從用戶屬性集中隨機(jī)選取k+1個(gè)指數(shù) r, /-1,…,r、EZ:p,通過(guò)如下公式計(jì)算;
[0081] Ko=g。訊',Ki=邑r,
[008引并對(duì)公Te的,通過(guò)如下公式計(jì)算:
[0083] 二沒(méi)盡,K巧二知'4【/1)???打,
[0084] 得到所述用戶私鑰Sk= (S,K。,Ki,化1,2,Ktj}TEW)。
[00財(cái) S103 :簽名方(SigningParty)根據(jù)用戶私鑰、用戶滿足的訪問(wèn)結(jié)構(gòu)、用戶屬性集 和預(yù)定消息生成用戶的數(shù)字簽名。也就是說(shuō),簽名方在運(yùn)一模塊中W用戶私鑰Sk,所聲稱滿 足的訪問(wèn)結(jié)構(gòu)(M,P),簽名屬性集SW及消息me心1作為輸入,輸出簽名0。
[008引具體而言,包括:
[0087] S1031:設(shè) I=a:P(i) G S},隨機(jī)選取Z e 宏護(hù),y=(S,仍,…,擁)£邱乂1,其中, 所述S為要共享的隨機(jī)秘密,計(jì)算{>1= (My)iKei,并隨機(jī)選取化E 然后通過(guò)如下 公式計(jì)算:
[008引 C=me(邑,g)。%Co=邑SZ,
[008引對(duì)于W巨/,:通過(guò)如下公式計(jì)算:
[0090] C,',i二叫X,2 二(w〇(〇h)-如,二/,'Z,
[0091] S1032:計(jì)算:
[0092] Dq=Kq/,Di=Ki/,
[009引設(shè)J=U:j為屬性Pa)在集合S中的索引(與i相關(guān))},則對(duì)于巧E/,計(jì)算:
[0094] D,'2=K,/z,D,'3=K,/z,
[009引得到所述數(shù)字簽名O= (m,S,(M,P),C,C。,杞,1,。,2,CwhEI,D。,化,化,2,Dj, 3} j E J)。
[0096] S104 :驗(yàn)證方(VerifyingParty)根據(jù)公共參數(shù)和用戶的數(shù)字簽名對(duì)用戶進(jìn)行驗(yàn) 證。也就是說(shuō),驗(yàn)證方W公共參數(shù)PP,簽名O為輸入,輸出得到驗(yàn)證結(jié)果(驗(yàn)證成功或者驗(yàn) 證失?。?。
[0097] 具體而言,包括:
[009引S1041 :如果用戶屬性集S是授權(quán)集合,驗(yàn)證方計(jì)算常數(shù)集:如reZp}…W使 E151?萬(wàn)二(1,0,...,0),其中,Mi為矩陣M的第i行,進(jìn)一步判斷對(duì)于We/,等式e(gi, 。'2) =e(Ci'3,uP(i)h)是否均成立;
[0099] S1042 :如果等式不成立,則驗(yàn)證失敗,如果等式成立,則進(jìn)一步通過(guò)如下公式計(jì) 算:
[0100]
[0101] 進(jìn)一步判斷等式m=C/B是否成立,如果不成立,則驗(yàn)證失敗,反之則驗(yàn)證成功。
[0102] 根據(jù)本發(fā)明實(shí)施例的大屬性域的屬性基簽名方法,可實(shí)現(xiàn)細(xì)粒度訪問(wèn)控制,支持 "與口 "和"或口 ",操作靈活。另外,無(wú)須在初始化階段對(duì)屬性數(shù)量進(jìn)行限制,可靈活地對(duì)進(jìn) 行擴(kuò)展。此外,公共參數(shù)長(zhǎng)度為常數(shù),有效減輕負(fù)擔(dān)。本發(fā)明的實(shí)施例可W滿足網(wǎng)絡(luò)中信息 的完整性保護(hù)、身份認(rèn)證和不可否認(rèn)性等安全需求。
[0103] 圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的大屬性域的屬性基簽名系統(tǒng)的結(jié)構(gòu)框圖。如圖2 所示,根據(jù)本發(fā)明一個(gè)實(shí)施例的大屬性域的屬性基簽名系統(tǒng)200,包括:初始化模塊210、私 鑰生成模塊220、簽名模塊230和驗(yàn)證模塊240。
[0104] 初始化模塊210用戶通過(guò)私鑰生成中屯、根據(jù)輸入的系統(tǒng)安全參數(shù)得到公共參數(shù) 和主密鑰。私鑰生成模塊220用于通過(guò)私鑰生成中屯、根據(jù)主密鑰和用戶屬性集得到用戶 私鑰,W及將用戶私鑰發(fā)送給對(duì)應(yīng)的用戶,其中,用戶屬性集包括多個(gè)用戶屬性。簽名模塊 230用于通過(guò)簽名方根據(jù)用戶私鑰、用戶滿足的訪問(wèn)結(jié)構(gòu)、用戶屬性集和預(yù)定消息生成用戶 的數(shù)字簽名。驗(yàn)證模塊240用于通過(guò)驗(yàn)證方根據(jù)公共參數(shù)和用戶的數(shù)字簽名對(duì)用戶進(jìn)行驗(yàn) 證。
[0105] 在本發(fā)明的一個(gè)實(shí)施例中,初始化模塊210用于:
[0106] 向私鑰生成中屯、輸入系統(tǒng)安全參數(shù)A,并根據(jù)預(yù)定算法得到群拉〇、也1,和雙線性 映射運(yùn)算e:GoXGo一Gi,其中,D=旅?〇,%,材,屬性域U= %,所述群騎、咕的階 數(shù)為素?cái)?shù)P;
[0107] 私鑰生成中必隨機(jī)選取沒(méi),拓度,w,K€:輪W及a居馬,W得到公共參數(shù)卵=值, 邑,U,h,W,V,e (g,g)°)W及主密鑰msk=(曰)。
[010引在本發(fā)明的一個(gè)實(shí)施例中,私鑰生成模塊220用于:
[0109] 獲取用戶屬性集,其中,用戶屬性集S二,…,從用戶屬性集中隨 機(jī)選取k+1個(gè)指數(shù)?,化e卻,通過(guò)如下公式計(jì)算:
[0110] Ko=g。訊',Ki=邑r,
[OIU] 并對(duì)VtG|_fc],通過(guò)如下公式計(jì)算:
[011引馬,2二沒(méi)朽,扳巧=
[011引得到用戶私鑰Sk= (S,K。,Ki,化1,2,Ktj}TEW)。
[0114] 在本發(fā)明的一個(gè)實(shí)施例中,簽名模塊230用于:
[0"引設(shè)I=a:P(i)GS},隨機(jī)選取'Ze玄P,y二於,…,斯)e邱",其中,S為要 共享的隨機(jī)秘密,計(jì)算{>1= (My)iKei,并隨機(jī)選取{tfeZphw,然后通過(guò)如下公式計(jì)算:
[011 引C=me(邑,g)。%Co=邑SZ,
[0117] 對(duì)于Vi6/,通過(guò)如下公式計(jì)算:
[011 引 每1 二=批'。(0巧-如,(巧=島t'x,
[0119] 通過(guò)如下公式計(jì)算:
[0120] D。=K〇i/z,Di=K//Z,
[012。 設(shè)J=U:j為屬性P(i)在集合S中的索引(與i相關(guān))},則對(duì)于計(jì)算:
[0122] D,,2=K,/z,D,,3=K,/z,
[012引 侍到數(shù)字蓋名。一(m,S, (M,P),C,C。,{C;, 1,。,2,Cij}iEI,D。, 01, {Dj,2,Djj}jEJ)。
[0124] 在本發(fā)明的一個(gè)實(shí)施例中,驗(yàn)證模塊240用于:
[012引如果用戶屬性集S是授權(quán)集合,驗(yàn)證方計(jì)算常數(shù)集{叫eZphyW使E151?萬(wàn)二 (1,0,. . .,0),其中,Mi為矩陣M的第i行,進(jìn)一步判斷對(duì)于釣居J,等式e(g1,。,2) =e杞, 3,U"Wh)是否均成立;
[0126] 如果等式不成立,則驗(yàn)證失敗,如果等式成立,則進(jìn)一步通過(guò)如下公式計(jì)算:
[0127]
[012引進(jìn)一步判斷等式m=C/B是否成立,如果不成立,則驗(yàn)證失敗,反之則驗(yàn)證成功。
[0129] 根據(jù)本發(fā)明實(shí)施例的大屬性域的屬性基簽名系統(tǒng),可實(shí)現(xiàn)細(xì)粒度訪問(wèn)控制,支持 "