本發(fā)明涉及密碼應(yīng)用,具體而言,涉及一種多機(jī)構(gòu)的隱式證書公鑰生成方法。
背景技術(shù):
1、在物聯(lián)網(wǎng)應(yīng)用,對(duì)網(wǎng)絡(luò)、終端計(jì)算資源要求嚴(yán)苛,基于證書的應(yīng)用并不適用于該場(chǎng)景。隱式證書是公鑰基礎(chǔ)體系(public?key?infrastructure,pki)的新型數(shù)字證書的方案,其基于橢圓曲線密碼算法,在認(rèn)證過程中不包括證書簽名機(jī)構(gòu),不包括證書簽發(fā)機(jī)構(gòu)的簽名,且驗(yàn)證者需要根據(jù)數(shù)據(jù)計(jì)算隱式證書擁有者的公鑰,通過公鑰進(jìn)行密碼運(yùn)算。
2、但是,現(xiàn)有的方案只能一次驗(yàn)證一個(gè)機(jī)構(gòu)對(duì)用戶的認(rèn)證信息,無法一次驗(yàn)證多個(gè)機(jī)構(gòu)對(duì)用戶的認(rèn)證信息。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于,針對(duì)上述現(xiàn)有技術(shù)中的不足,提供一種多機(jī)構(gòu)的隱式證書公鑰生成,以便使用端根據(jù)用戶公鑰同時(shí)驗(yàn)證多個(gè)信任機(jī)構(gòu)對(duì)目標(biāo)用戶的認(rèn)證信息,有效滿足目標(biāo)用戶需要多個(gè)信任機(jī)構(gòu)認(rèn)證的需求。
2、為實(shí)現(xiàn)上述目的,本技術(shù)實(shí)施例采用的技術(shù)方案如下:
3、第一方面,本技術(shù)實(shí)施例提供了一種多機(jī)構(gòu)的隱式證書公鑰生成方法,應(yīng)用于隱式證書公鑰系統(tǒng),所述隱式證書公鑰系統(tǒng)包括:公鑰使用端、用戶端以及多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端,所述方法包括:
4、在主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端分別生成所述多個(gè)信任機(jī)構(gòu)的主公私鑰對(duì),并將所述多個(gè)信任機(jī)構(gòu)的主公私鑰對(duì)中的主公鑰公開至所述公鑰使用端;
5、在聲明密鑰階段,所述用戶端根據(jù)所述多個(gè)信任機(jī)構(gòu)針對(duì)目標(biāo)用戶的聲明公鑰分量以及所述目標(biāo)用戶的臨時(shí)公鑰,生成并向所述公鑰使用端公開所述用戶端對(duì)應(yīng)目標(biāo)用戶的用戶聲明公鑰;
6、在公鑰使用階段,所述公鑰使用端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí)、所述多個(gè)信任機(jī)構(gòu)的主公鑰以及所述用戶聲明公鑰,生成所述目標(biāo)用戶的用戶公鑰,所述目標(biāo)用戶的用戶公鑰用于進(jìn)行針對(duì)所述目標(biāo)用戶的隱式證書的加密或驗(yàn)簽。
7、在可選的實(shí)施方式中,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端分別生成所述多個(gè)信任機(jī)構(gòu)的主公私鑰對(duì),包括:
8、所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)各自生成的第一隨機(jī)數(shù),生成所述多個(gè)信任機(jī)構(gòu)的主公鑰,其中,每個(gè)信任機(jī)構(gòu)的主公私鑰對(duì)包括:所述每個(gè)信任機(jī)構(gòu)的主公鑰,以及第一隨機(jī)數(shù)。
9、在可選的實(shí)施方式中,所述方法還包括:
10、在所述聲明密鑰階段,所述用戶端向每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端發(fā)送所述目標(biāo)用戶的聲明密鑰獲取請(qǐng)求;
11、所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)各自產(chǎn)生的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的聲明公鑰分量。
12、在可選的實(shí)施方式中,所述方法還包括:
13、在所述主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí),生成所述目標(biāo)用戶的用戶公鑰參數(shù);
14、在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量;
15、在私鑰使用階段,所述用戶端根據(jù)所述多個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量,以及所述目標(biāo)用戶的臨時(shí)私鑰,生成所述目標(biāo)用戶的用戶私鑰,所述目標(biāo)用戶的用戶私鑰用于進(jìn)行針對(duì)所述目標(biāo)用戶的隱式證書的解密或簽名。
16、在可選的實(shí)施方式中,所述在所述主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí),生成所述目標(biāo)用戶的用戶公鑰參數(shù),包括:
17、在所述主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí)以及各自信任機(jī)構(gòu)的主公鑰坐標(biāo),分別生成所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶公鑰參數(shù);
18、所述在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量,包括:
19、在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量。
20、在可選的實(shí)施方式中,所述在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量,包括:
21、在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)針對(duì)目標(biāo)用戶的聲明公鑰分量,生成所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰參數(shù);
22、所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述各自信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰參數(shù),以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量。
23、在可選的實(shí)施方式中,所述在所述主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí),生成所述目標(biāo)用戶的用戶公鑰參數(shù),包括:
24、在所述主密鑰階段,所述多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí)以及所有信任機(jī)構(gòu)的主公鑰坐標(biāo),生成所述目標(biāo)用戶的共同用戶公鑰參數(shù);
25、所述在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量,包括:
26、在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的共同用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量。
27、在可選的實(shí)施方式中,所述在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的共同用戶公鑰參數(shù)以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量,包括:
28、在所述聲明密鑰階段,所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述目標(biāo)用戶的共同用戶公鑰參數(shù)以及所述用戶聲明公鑰,生成針對(duì)所述目標(biāo)用戶的共同用戶私鑰參數(shù);
29、所述每個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端根據(jù)所述共同用戶私鑰參數(shù),以及所述各信任機(jī)構(gòu)的第二隨機(jī)數(shù),生成并向所述用戶端返回所述每個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的用戶私鑰分量。
30、在可選的實(shí)施方式中,所述方法還包括:
31、在所述聲明密鑰階段,所述用戶端還向所述公鑰使用端公開所述多個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的聲明公鑰分量;
32、所述在公鑰使用階段,所述公鑰使用端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí)、所述多個(gè)信任機(jī)構(gòu)的主公鑰以及所述用戶聲明公鑰,生成所述目標(biāo)用戶的用戶公鑰,包括:
33、在所述公鑰使用階段,所述公鑰使用端根據(jù)所述目標(biāo)用戶的標(biāo)識(shí)、所述多個(gè)信任機(jī)構(gòu)的主公鑰、所述用戶聲明公鑰以及所述多個(gè)信任機(jī)構(gòu)針對(duì)所述目標(biāo)用戶的聲明公鑰分量,生成所述目標(biāo)用戶的用戶公鑰。
34、在可選的實(shí)施方式中,所述方法還包括:
35、在所述私鑰使用階段,所述用戶端根據(jù)所述目標(biāo)用戶的用戶私鑰,生成所述目標(biāo)用戶的用戶公鑰。
36、第二方面,本技術(shù)實(shí)施例還提供了一種隱式證書公鑰系統(tǒng),所述隱式證書公鑰系統(tǒng)包括:公鑰使用端、用戶端以及多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端,所述隱式證書公鑰系統(tǒng)用于執(zhí)行上述第一方面任一所述的多機(jī)構(gòu)的隱式證書公鑰生成方法的步驟。
37、本技術(shù)的有益效果是:
38、本技術(shù)實(shí)施例提供一種多機(jī)構(gòu)的隱式證書公鑰生成方法,應(yīng)用于隱式證書公鑰系統(tǒng),該方法包括:在主密鑰階段,多個(gè)信任機(jī)構(gòu)的機(jī)構(gòu)端分別生成多個(gè)信任機(jī)構(gòu)的主公私鑰對(duì),并將多個(gè)信任機(jī)構(gòu)的主公私鑰對(duì)中的主公鑰公開至公鑰使用端,在聲明密鑰階段,用戶端根據(jù)多個(gè)信任機(jī)構(gòu)針對(duì)目標(biāo)用戶的聲明公鑰分量以及目標(biāo)用戶的臨時(shí)公鑰,生成并向公鑰使用端公開用戶端對(duì)應(yīng)目標(biāo)用戶的用戶聲明公鑰,在公鑰使用階段,公鑰使用端根據(jù)目標(biāo)用戶的標(biāo)識(shí)、多個(gè)信任機(jī)構(gòu)的主公鑰以及用戶聲明公鑰,生成目標(biāo)用戶的用戶公鑰,目標(biāo)用戶的用戶公鑰用于進(jìn)行針對(duì)目標(biāo)用戶的隱式證書的加密或驗(yàn)簽。本技術(shù)的方法,將單一機(jī)構(gòu)的隱式證書公鑰系統(tǒng)擴(kuò)展多個(gè)信任機(jī)構(gòu)使用,將目標(biāo)用戶的用戶公鑰與多個(gè)信任機(jī)構(gòu)的主公鑰進(jìn)行綁定,使用端可以根據(jù)用戶公鑰同時(shí)驗(yàn)證多個(gè)信任機(jī)構(gòu)對(duì)目標(biāo)用戶的認(rèn)證信息,減少多個(gè)信任機(jī)構(gòu)認(rèn)證目標(biāo)用戶身份的交互流程,有效滿足目標(biāo)用戶需要多個(gè)信任機(jī)構(gòu)認(rèn)證的需求。