本發(fā)明涉及信息安全中的無(wú)證書聚合簽名技術(shù)領(lǐng)域,特別涉及一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法及系統(tǒng)。
背景技術(shù):
為了解決在傳統(tǒng)公鑰密碼體制中的無(wú)法根除的、固有的證書管理問(wèn)題以及證書維護(hù)問(wèn)題,和避免在基于身份密碼體制中引入的新問(wèn)題——密鑰托管問(wèn)題,在2003年,Al-Riyami和Paterson在亞洲密碼學(xué)會(huì)議上,首次公開提出了無(wú)證書公鑰密碼學(xué)(Certificateless Public Key Cryptography,CLS-PKC)的概念,給出了第一個(gè)無(wú)證書簽名方案(Certificateless Signature Scheme,CLS)。
在無(wú)證書公鑰密碼學(xué)中,用戶的私鑰是由兩部分來(lái)共同組成的,一部分是由可信的第三方密鑰生成中心KGC,通過(guò)安全信道提供給用戶的部分私鑰(Partial Private Key);另一部分是由用戶自己選擇的秘密值(Secret Value)。由于密鑰生成中心只知道用戶的部分私鑰信息,而不知道用戶自己選擇的秘密值,因此也就無(wú)法知道用戶完整的私鑰,從而無(wú)法偽造用戶的簽名以及解密用戶的密文。從這點(diǎn)來(lái)看,無(wú)證書公鑰密碼體制解決了基于身份密碼體制中存在的密鑰托管問(wèn)題。此外,由于用戶的公鑰已經(jīng)包含有公開的系統(tǒng)參數(shù)(Public System Parameters)。因此,也就不再需要使用公鑰證書來(lái)進(jìn)行用戶的公鑰認(rèn)證。從這點(diǎn)來(lái)看,無(wú)證書公鑰密碼體制完美地解決了傳統(tǒng)公鑰密碼體制中無(wú)法根除的、固有的證書管理問(wèn)題以及證書維護(hù)問(wèn)題。所以自無(wú)證書密碼體制誕生起,就一直是密碼學(xué)中非?;钴S的研究熱點(diǎn)。
在車聯(lián)網(wǎng)中,車輛用戶的真實(shí)身份信息對(duì)于外界而言是不可獲得的,但在一些緊急情況下,如道路交通出現(xiàn)事故時(shí),權(quán)威交通管理部門仍然可以快速準(zhǔn)確地跟蹤到車輛用戶的真實(shí)身份信息。一般情況下,在車聯(lián)網(wǎng)中,凡是涉及到隱私保護(hù)的安全應(yīng)用,都必須是條件隱私保護(hù)。
在2003年,Boneh等人首次提出了聚合簽名的概念。在車聯(lián)網(wǎng)中,聚合簽名的基本思想是:聚合簽名者首先把n個(gè)不同的簽名,聚合成一個(gè)簽名,以降低網(wǎng)絡(luò)傳輸開銷和提高簽名驗(yàn)證的效率,然后發(fā)送給聚合簽名驗(yàn)證者;聚合簽名驗(yàn)證者對(duì)收到的聚合簽名進(jìn)行聚合驗(yàn)證。如果該聚合簽名通過(guò)了聚合簽名驗(yàn)證者的驗(yàn)證,那么聚合簽名驗(yàn)證者就可以相信這n個(gè)不同車輛用戶確實(shí)對(duì)這n個(gè)不同消息進(jìn)行過(guò)簽名。但是,目前的研究也存在著一定的問(wèn)題,如參與運(yùn)算的雙線性對(duì)數(shù)目會(huì)隨著簽名者的數(shù)量的增加而線性增加,這顯然與進(jìn)行聚合簽名的出發(fā)點(diǎn)相矛盾。
此外,盡管現(xiàn)有了基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法能夠有效地提高消息簽名驗(yàn)證的計(jì)算效率,但是這些已有的基于批驗(yàn)證的車聯(lián)網(wǎng)條件隱私保護(hù)方法本身卻是不安全的,存在著一定的安全性漏洞,因而不能安全地應(yīng)用于車聯(lián)網(wǎng)中。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問(wèn)題是,現(xiàn)有的基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法,不能安全的在實(shí)際中廣泛地應(yīng)用。本發(fā)明基于無(wú)證書密碼體制,提供了一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法。受益于基于無(wú)證書密碼體制的優(yōu)良性能,本發(fā)明所提出的方法不僅避免了證書管理和密鑰托管的問(wèn)題,還提高了車聯(lián)網(wǎng)在聚合簽名驗(yàn)證時(shí)的計(jì)算效率,實(shí)現(xiàn)了車聯(lián)用戶的條件隱私保護(hù),可以安全的在開放的車聯(lián)網(wǎng)中使用。
本發(fā)明為解決上述技術(shù)問(wèn)題采用以下技術(shù)方案:
一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法,所述方法包含以下步驟:
步驟A,該步驟由密鑰生成中心和跟蹤認(rèn)證中心共同執(zhí)行,生成車聯(lián)網(wǎng)的主密鑰和系統(tǒng)參數(shù);
步驟B,根據(jù)所述系統(tǒng)參數(shù),車輛用戶真實(shí)身份信息,跟蹤認(rèn)證中心生成車輛用戶的假名身份;
步驟C,根據(jù)所述系統(tǒng)參數(shù),密鑰生成中心生成車輛用戶的部分私鑰;
步驟D,根據(jù)所述系統(tǒng)參數(shù),車輛用戶生成自己的密鑰;
步驟E,根據(jù)所述系統(tǒng)參數(shù),車輛用戶對(duì)隨機(jī)選擇向路側(cè)單元發(fā)送的消息并對(duì)該消息進(jìn)行簽名;
步驟F,根據(jù)所述系統(tǒng)參數(shù),路側(cè)單元對(duì)簽名進(jìn)行聚合;
步驟G,根據(jù)所述系統(tǒng)參數(shù),路側(cè)單元對(duì)聚合的簽名進(jìn)行驗(yàn)證。
本發(fā)明還提供一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)系統(tǒng),包括:
系統(tǒng)參數(shù)生成模塊,用于根據(jù)輸入的安全參數(shù)分別生成密鑰生成中心和跟蹤認(rèn)證中心的主密鑰,以及系統(tǒng)參數(shù);
假名身份生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù)和車輛用戶的真實(shí)身份信息,生成車輛用戶的假名身份,所述用戶包括跟蹤認(rèn)證中心和車輛用戶Vi;
部分私鑰生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù)和車輛用戶假名身份信息,生成車輛用戶的部分私鑰,所述用戶包括密鑰生成中心和車輛用戶Vi;
車輛密鑰生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成車輛用戶的公私鑰,所述用戶為車輛用戶Vi;
簽名生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成車輛用戶對(duì)消息的簽名,所述用戶為車輛用戶Vi;
聚合簽名生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成n個(gè)不同消息{M1,M2,…,Mn}的聚合簽名σ,所述用戶為路側(cè)單元;
聚合簽名驗(yàn)證模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成該聚合簽名是否有效的判斷結(jié)果,所述用戶為路側(cè)單元。
本發(fā)明采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果:
本發(fā)明采用基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法,不僅保留了基于無(wú)證書密碼體制的優(yōu)點(diǎn),如解決了傳統(tǒng)公鑰密碼體制的證書管理,以及避免了基于身份的密碼體制的密鑰托管問(wèn)題,而且還具有抵抗選擇消息攻擊的安全性,是一種非常適合于車聯(lián)網(wǎng)環(huán)境中的無(wú)證書聚合簽名方法。主要原因如下:
首先,基于傳統(tǒng)公鑰密碼體制的車聯(lián)網(wǎng)條件隱私保護(hù),因?yàn)樽C書管理問(wèn)題和證書維護(hù)問(wèn)題,導(dǎo)致車聯(lián)網(wǎng)存儲(chǔ)開銷大,計(jì)算和通信效率降低;而基于身份密碼體制的車聯(lián)網(wǎng)條件隱私保護(hù),又因?yàn)榭尚诺谌終GC擁有所有車輛用戶的密鑰,存在密鑰托管問(wèn)題,因此有安全隱患的風(fēng)險(xiǎn);而無(wú)證書密碼體制圓滿地解決了傳統(tǒng)公鑰密碼體制中無(wú)法消除的、固有的證書管理問(wèn)題以及證書維護(hù)問(wèn)題,同時(shí)也避免了基于身份密碼體制的所帶來(lái)的密鑰托管問(wèn)題。
其次,聚合簽名者是把n個(gè)不同的簽名,聚合成一個(gè)簽名,以降低網(wǎng)絡(luò)傳輸開銷和提高簽名驗(yàn)證的效率,然后發(fā)送給聚合簽名驗(yàn)證者;聚合簽名驗(yàn)證者對(duì)收到的聚合簽名進(jìn)行聚合驗(yàn)證。如果該聚合簽名通過(guò)了聚合簽名驗(yàn)證者的驗(yàn)證,那么聚合簽名驗(yàn)證者就可以相信這n個(gè)不同車輛用戶確實(shí)對(duì)這n個(gè)不同消息進(jìn)行過(guò)簽名。聚合簽名技術(shù),提高了車聯(lián)網(wǎng)中的簽名驗(yàn)證的效率。
最后,在車聯(lián)網(wǎng)中,采用密鑰生成中心KGC和跟蹤認(rèn)證中心TRA,實(shí)現(xiàn)了車聯(lián)網(wǎng)的條件隱私保護(hù)。車輛用戶的真實(shí)身份信息對(duì)于外界而言是不可獲得的,但是權(quán)威交通管理部門仍然可以快速準(zhǔn)確地跟蹤到車輛用戶的真實(shí)身份信息。
此外,在本發(fā)明中,車聯(lián)網(wǎng)中所有車輛用戶Vi都以真實(shí)身份RIDi向TRA注冊(cè),TRA計(jì)算車輛用戶Vi的假名身份IDi。假名身份IDi存儲(chǔ)在車輛用戶Vi的防纂改設(shè)備TPD中。車輛用戶Vi的假名身份IDi實(shí)際上鏈接到車輛用戶的真實(shí)身份RIDi。TRA通過(guò)假名身份生成算法,利用跟蹤主密鑰s2,可以恢復(fù)出車輛用戶Vi的真實(shí)身份RIDi,車聯(lián)網(wǎng)因此實(shí)現(xiàn)了條件隱私保護(hù)。
附圖說(shuō)明
圖1是本發(fā)明所述的一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法的流程圖。
圖2是依照本發(fā)明方法的基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)系統(tǒng)執(zhí)行的流程圖。
圖3是本發(fā)明所述的基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)系統(tǒng)的示意圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)說(shuō)明:
本發(fā)明所述基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法可基于雙線性對(duì)來(lái)實(shí)現(xiàn),下面首先簡(jiǎn)要介紹雙線性對(duì)的基本定義和它滿足的性質(zhì)。
設(shè)G1是一個(gè)階為q的加法循環(huán)群,G2是一個(gè)階為q的乘法循環(huán)群,并且P是群G1的生成元,其中q是一個(gè)大素?cái)?shù)。假設(shè)G1和G2這兩個(gè)群上的CDH問(wèn)題都是困難問(wèn)題。如果定義在群G1和群G2上一個(gè)映射e:G1×G1→G2滿足下面的三條性質(zhì),則稱該映射為有效的雙線性對(duì)。雙線性對(duì)e:G1×G1→G2是群G1與自身的笛卡爾積G1×G1到群G2的映射,即雙線性對(duì)e:G1×G1→G2是指函數(shù)z=e(P1,P2),其中P1,P2∈G1為自變量,z∈G2為因變量。
雙線性對(duì)應(yīng)滿足的三條性質(zhì)為:
(1)雙線性.對(duì)于任意的P1,P2∈G1和有e(aP1,bP2)=e(P1,P2)ab。
(2)非退化性.其中是群G2的單位元。
(3)可計(jì)算性.對(duì)于任意的P1,P2∈G1,存在有效的算法計(jì)算e(P1,P2)。
循環(huán)群的概念為:設(shè)H為群,如果存在一個(gè)元素P∈H使得H={kP|k∈Z},則稱H為加法循環(huán)群,稱P是H的生成元;如果存在一個(gè)元素u∈H使得H={uk|k∈Z},則稱H為乘法循環(huán)群,稱u是H的生成元。若H為加法(乘法)循環(huán)群且生成元P(u)的階為n,即n是使得P(u)的冪等于群H的單位元的最小正整數(shù),則稱H為n階加法(乘法)循環(huán)群。簡(jiǎn)單來(lái)說(shuō),加法循環(huán)群是指該循環(huán)群的生成元能夠以加法運(yùn)算生成群中的所有元素,而乘法循環(huán)群是指該循環(huán)群的生成元能夠以乘冪的方法生成群中的所有元素。此外,其中Zq是指整數(shù)模素?cái)?shù)q的剩余類,即Zq={1,2,…,q-1}。
根據(jù)以上雙線性對(duì)的描述,下面結(jié)合附圖和實(shí)例對(duì)本發(fā)明提出的一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)方法做進(jìn)一步說(shuō)明,但并不作為對(duì)本發(fā)明的限定。
本發(fā)明所述方法設(shè)計(jì)的實(shí)體如下:密鑰生成中心KGC、跟蹤認(rèn)證中心TRA、車輛用戶Vi以及路側(cè)單元RSU。
(1)密鑰生成中心TRA:當(dāng)車輛用戶Vi在加入車聯(lián)網(wǎng)之前,必須以自己真實(shí)身份RIDi向TRA進(jìn)行身份注冊(cè)。TRA收到車輛用戶Vi的真實(shí)身份RIDi以后,生成車輛用戶Vi的假名身份IDi,并通過(guò)安全信道發(fā)送給KGC。
(2)跟蹤認(rèn)證中心KGC:KGC收到TRA發(fā)送的車輛用戶Vi的假名身份IDi以后,生成并通過(guò)安全信道發(fā)送部分私鑰和假名身份IDi給車輛用戶Vi。
(3)路側(cè)單元RSU:路側(cè)單元是固定不可移動(dòng),具有一定的數(shù)據(jù)存儲(chǔ)和運(yùn)算能力,且能夠直接與車輛用戶進(jìn)行道路交通實(shí)時(shí)信息交換與共享的無(wú)線收發(fā)裝置。在車聯(lián)網(wǎng)中,路側(cè)單元具有網(wǎng)關(guān)功能,且通常具有簽名消息的驗(yàn)證功能。
參照附圖1和附圖2,本發(fā)明所述方法的步驟具體描述如下:
步驟A,分別生成密鑰生成中心KGC的認(rèn)證主密鑰s1,和跟蹤認(rèn)證中心TRA的跟蹤主密鑰s2,以及系統(tǒng)參數(shù)params;具體步驟如下:
步驟101:令G1是一個(gè)階為素?cái)?shù)q的加法循環(huán)群,P是群G1的生成元;G2是一個(gè)階為素?cái)?shù)q的乘法循環(huán)群;e:G1×G1→G2是一個(gè)可計(jì)算的雙線性映射。
步驟102:KGC選擇一個(gè)隨機(jī)數(shù)作為認(rèn)證主密鑰,計(jì)算主公鑰PPub=s1·P,其中:KGC秘密保存認(rèn)證主密鑰s1。
步驟103:TRA選擇一個(gè)隨機(jī)數(shù)作為跟蹤主密鑰,計(jì)算主公鑰TPub=s2·P,其中:TRA秘密保存跟蹤主密鑰s2。
步驟104:KGC和TRA共同選擇4個(gè)密碼學(xué)Hash函數(shù):H1,H2,H3:{0,1}*→G1,公布系統(tǒng)參數(shù)params={q,G1,G2,e,P,PPub,TPub,H1,H2,H3,H4};KGC秘密保存認(rèn)證主密鑰s1,且TRA不知道跟蹤主密鑰s2;TRA秘密保存跟蹤主密鑰s2,且KGC不知道認(rèn)證主密鑰s1。
步驟B,根據(jù)所述系統(tǒng)參數(shù),車輛用戶真實(shí)身份信息,TRA生成車輛用戶的假名身份;具體步驟如下:
步驟105:車輛用戶Vi隨機(jī)選擇計(jì)算IDi,1=ki·P∈G1;然后通過(guò)安全信道發(fā)送二元組(RIDi,IDi,1)給TRA。其中RIDi是車輛用戶Vi的真實(shí)身份。
步驟106:TRA從安全信道接收到二元組(RIDi,IDi,1)后,TRA計(jì)算然后通過(guò)安全信道發(fā)送車輛用戶Vi的假名身份IDi=(IDi,1,IDi,2,Ti)給KGC。其中s2是TRA的跟蹤主密鑰;Ti是車輛用戶Vi的假名身份的有效期;H(·)是一個(gè)密碼學(xué)Hash函數(shù):
步驟C,根據(jù)所述系統(tǒng)參數(shù),車輛用戶的假名身份,KGC生成車輛用戶的部分私鑰;具體步驟如下:
步驟107:KGC通過(guò)安全信道接收到車輛用戶Vi的假名身份IDi后,首先計(jì)算
步驟108:KGC計(jì)算車輛用戶Vi的部分私鑰其中s1是KGC的認(rèn)證主密鑰。
步驟109:KGC通過(guò)安全信道發(fā)送二元組給Vi。
步驟D,根據(jù)所述系統(tǒng)參數(shù),車輛用戶生成自己的公私鑰;具體步驟如下:
步驟110:車輛用戶Vi隨機(jī)選擇一個(gè)秘密值作為私鑰
步驟111:車輛用戶Vi計(jì)算公鑰
步驟E,根據(jù)所述系統(tǒng)參數(shù),車輛用戶對(duì)消息進(jìn)行簽名;具體步驟如下:
步驟112:車輛用戶Vi隨機(jī)選擇計(jì)算Ri=ri·P∈G1。
步驟113:車輛用戶Vi計(jì)算以及Ui=hi·Ri∈G1;
步驟114:車輛用戶Vi計(jì)算
步驟115:車輛用戶Vi輸出消息Mi的簽名σi=(Ri,Ui,Si),并發(fā)送四元組給RSU。
步驟F,根據(jù)所述系統(tǒng)參數(shù),RSU生成聚合簽名;具體步驟如下:
步驟116:RSU計(jì)算和
步驟117:RSU輸出聚合簽名σ=(R,U,S)。
步驟G,根據(jù)所述系統(tǒng)參數(shù),RSU對(duì)生成的聚合簽名,進(jìn)行驗(yàn)證;具體步驟如下:
步驟118:RSU計(jì)算和其中:i=1,…,n。注意到:W、T均可以預(yù)先計(jì)算。
步驟119:RSU驗(yàn)證等式:
是否成立。如果驗(yàn)證等式成立,則RSU輸出“1”,表示聚合簽名有效。否則,RSU輸出“0”,表示聚合簽名無(wú)效。
參見(jiàn)附圖3,本發(fā)明還提供了一種基于無(wú)證書聚合簽名的車聯(lián)網(wǎng)條件隱私保護(hù)系統(tǒng),所述系統(tǒng)包括:系統(tǒng)參數(shù)生成模塊、假名身份生成模塊、部分私鑰生成模塊、車輛密鑰生成模塊、簽名生成模塊、聚合簽名生成模塊、聚合簽名驗(yàn)證模塊。
所述系統(tǒng)參數(shù)生成模塊,用于根據(jù)輸入的安全參數(shù)分別生成密鑰生成中心KGC和跟蹤認(rèn)證中心TRA的主密鑰,以及系統(tǒng)參數(shù)。
所述假名身份生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù)和車輛用戶的真實(shí)身份信息,生成車輛用戶的假名身份,所述用戶包括跟蹤認(rèn)證中心TRA和車輛用戶Vi。
所述部分私鑰生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù)和車輛用戶假名身份信息,生成車輛用戶的部分私鑰,所述用戶包括密鑰生成中心KGC和車輛用戶Vi。
所述車輛密鑰生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成車輛用戶的公私鑰,所述用戶為車輛用戶Vi。
所述簽名生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成車輛用戶對(duì)消息的簽名,所述用戶為車輛用戶Vi。
所述聚合簽名生成模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成聚合簽名,所述用戶為路側(cè)單元RSU。
所述聚合簽名驗(yàn)證模塊,用于根據(jù)系統(tǒng)參數(shù)生成模塊生成系統(tǒng)參數(shù),生成該聚合簽名是否有效的判斷結(jié)果,所述用戶為路側(cè)單元RSU。
以上只是對(duì)本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行了描述。對(duì)該技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),根據(jù)以上實(shí)施方式可以很容易地聯(lián)想到其它的優(yōu)點(diǎn)和變形。因此,本發(fā)明并不局限于上述實(shí)施方式,其僅僅作為例子對(duì)本發(fā)明的一種形態(tài)進(jìn)行詳細(xì)、示范性的說(shuō)明。在不背離本發(fā)明宗旨的范圍內(nèi),本領(lǐng)域普通技術(shù)人員在本發(fā)明技術(shù)的方案范圍內(nèi)進(jìn)行的通常變化和替換,都應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。