基于代理的用戶設備可信接入認證方法
【專利摘要】本發(fā)明公開了一種基于代理的用戶設備可信接入認證方法。主要解決現(xiàn)有的用戶設備認證時間過長,無線網(wǎng)絡覆蓋范圍小,且無線網(wǎng)絡的安全性得不到保障的問題。其技術(shù)方案是:用戶設備探尋認證服務器,若能夠探尋到認證服務器,則用戶設備與認證服務器進行雙向身份認證,否則,用戶設備與父節(jié)點進行權(quán)限判斷;若父節(jié)點為已認證節(jié)點,則用戶設備與父節(jié)點進行雙向身份認證;若父節(jié)點為未認證節(jié)點,則父節(jié)點重復用戶設備的探尋和認證過程,再執(zhí)行與用戶設備的認證,完成可信接入認證。本發(fā)明減少了認證時間,擴大了無線網(wǎng)絡覆蓋范圍,提升了網(wǎng)絡的安全性??捎糜诒Wo網(wǎng)絡安全。
【專利說明】基于代理的用戶設備可信接入認證方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于無線網(wǎng)絡【技術(shù)領(lǐng)域】,特別涉及用戶設備可信接入認證方法,可用于保護網(wǎng)絡安全。
【背景技術(shù)】
[0002]近些年來,無線網(wǎng)絡技術(shù)得到快速發(fā)展,新的技術(shù)類型和應用模式層出不窮,大量面向通信網(wǎng)絡環(huán)境的服務如電子商務、電子政務、音視頻業(yè)務以及企事業(yè)單位的內(nèi)網(wǎng)構(gòu)建等等,都可以在無線網(wǎng)絡環(huán)境下得到廣泛應用。無線網(wǎng)絡具有極大的便捷性,用戶只需要一臺移動設備就可隨時隨地接入網(wǎng)絡,從而大大的提高工作效率,但由于移動設備計算能力較弱、存儲空間有限、無線信號易被截獲等缺點,其也存在著極大的安全隱患。針對無線網(wǎng)絡環(huán)境,嗅探、竊聽、身份冒充、分布式拒絕服務等攻擊方式為常用手段,移動設備受到攻擊之后,可能會導致敏感數(shù)據(jù)泄露、設備信息被篡改、入侵者通過無線網(wǎng)絡獲得網(wǎng)絡管理權(quán)限等等嚴重后果。
[0003]面對無線網(wǎng)絡環(huán)境下的安全隱患,傳統(tǒng)的安全解決思路可能并不理想,例如防火墻對無線網(wǎng)絡通信起不了作用,任何人在無線信號覆蓋范圍之內(nèi)都能截獲數(shù)據(jù);由于體積和傳輸能力的限制,計算量大的加密/解密算法不適用于移動設備等等。在此背景之下,可信認證技術(shù)作為針對無線網(wǎng)絡和移動設備安全威脅的新思路,成為了業(yè)界關(guān)注的熱點。可信認證是一種通過密碼技術(shù)對用戶身份進行雙向認證的方法,用這種方法構(gòu)筑網(wǎng)絡,可以對偽造身份的非法節(jié)點拒絕接入,從而確保接入網(wǎng)絡的用戶設備都為可信的。在實際的認證過程中,由于無線網(wǎng)絡的邊界不確定性和用戶設備的移動性,可能使得用戶設備發(fā)送的認證請求數(shù)據(jù)包無法到達認證服務器,從而導致用戶設備認證時間過長,甚至無法接入網(wǎng)絡,且無線網(wǎng)絡的安全性也得不到保證。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提出一種基于代理的用戶設備可信接入認證方法,以解決現(xiàn)有技術(shù)用戶設備認證時間過長,無線網(wǎng)絡覆蓋范圍小,且無線網(wǎng)絡的安全性得不到保障的問題。
[0005]實現(xiàn)本發(fā)明目的的主要思想是:通過用戶設備向認證服務器發(fā)送探尋請求數(shù)據(jù)包,認證服務器若收到來自用戶設備的探尋請求數(shù)據(jù)包,則向用戶設備答復探尋響應數(shù)據(jù)包;若用戶設備收到來自認證服務器的探尋響應數(shù)據(jù)包,則用戶設備向認證服務器發(fā)送認證請求數(shù)據(jù)包以進行雙向身份認證;若用戶設備未收到來自認證服務器的探尋響應數(shù)據(jù)包,則用戶設備應向其父節(jié)點發(fā)送認證請求數(shù)據(jù)包,若父節(jié)點為已認證節(jié)點,則用戶設備同父節(jié)點進行雙向身份認證;若父節(jié)點為未認證節(jié)點,則其重復上一步用戶設備的探尋和認證過程,以執(zhí)行自己與認證服務器的雙向身份認證,再執(zhí)行與用戶設備的雙向身份認證。當用戶設備認證完成后,其就接入了可信網(wǎng)絡。
[0006]根據(jù)以上思路,本發(fā)明的實現(xiàn)步驟如下:
[0007](I)用戶設備A探尋認證服務器R:
[0008]當用戶設備A需要接入網(wǎng)絡時,首先向網(wǎng)絡中的認證服務器R發(fā)送探尋請求數(shù)據(jù)包,認證服務器R收到來自用戶設備A的探尋請求數(shù)據(jù)包之后,向用戶設備A答復探尋響應數(shù)據(jù)包,若用戶設備A收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程正常結(jié)束,執(zhí)行步驟(2);若用戶設備A未收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程異常結(jié)束,執(zhí)行步驟⑶;
[0009](2)用戶設備A與認證服務器R之間進行三次握手的雙向身份認證;
[0010](3)用戶設備A與父節(jié)點B之間進行權(quán)限判斷:
[0011]用戶設備A構(gòu)造認證請求數(shù)據(jù)包,并將認證請求數(shù)據(jù)包發(fā)送至父節(jié)點B,父節(jié)點B收到認證請求數(shù)據(jù)包后,判斷自身是否為已認證節(jié)點:如果是,則執(zhí)行步驟(4),如果不是,則執(zhí)行步驟(5);
[0012](4)用戶設備A與父節(jié)點B之間進行三次握手的雙向身份認證;
[0013](5)父節(jié)點B重復用戶設備A的探尋和認證過程,以執(zhí)行自己與認證服務器R的雙向身份認證,再執(zhí)行與用戶設備A的雙向身份認證。
[0014]本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點:
[0015]1.由于本發(fā)明使用可信接入認證技術(shù),因此可以保證接入網(wǎng)絡的用戶設備都為可信的,若用本發(fā)明建立網(wǎng)絡,則可構(gòu)筑可信無線局域網(wǎng)環(huán)境;
[0016]2.由于本發(fā)明使用父節(jié)點認證機制,因此若有大量新用戶同時接入網(wǎng)絡時,則可緩解認證服務器的認證壓力,使新用戶得以快速接入網(wǎng)絡;
[0017]3.由于本發(fā)明使用父節(jié)點認證機制,因此若用戶設備無法與網(wǎng)絡中的認證服務器通信時,也可通過向其父節(jié)點發(fā)送認證請求的方式接入網(wǎng)絡,這樣一來,就大大減少了因設備的移動性和無線網(wǎng)絡覆蓋范圍的不確定性導致的用戶設備無法接入網(wǎng)絡的情況。
【專利附圖】
【附圖說明】
[0018]圖1本發(fā)明的實現(xiàn)總流程圖;
[0019]圖2用戶設備與認證服務器進行雙向身份認證的子流程圖;
[0020]圖3用戶設備與父節(jié)點進行雙向身份認證的子流程圖。
【具體實施方式】
[0021]參照圖1,本發(fā)明的實現(xiàn)步驟如下:
[0022]步驟I,參數(shù)設置
[0023]密鑰生成中心Trent根據(jù)安全參數(shù)z選取一個大素數(shù)q,其中q>2%構(gòu)造一個q階的加法循環(huán)群G1和一個q階乘法循環(huán)群G 2;
[0024]構(gòu)造一個雙線性映射G = G1XG1^G2;
[0025]從群G1上隨機選取生成元P ;
[0026]生成用戶設備身份IDa、認證服務器身份IDk、父節(jié)點身份IDb;
[0027]選取一種簽名算法Sig,如RSA算法等;
[0028]生成用戶設備A的簽名私鑰SKa、認證服務器R的簽名私鑰SKK、父節(jié)點B的簽名私鑰 SKb;
[0029]選取密碼單向哈希函數(shù)h (X)。
[0030]步驟2,用戶設備A探尋認證服務器R。
[0031]當用戶設備A需要接入網(wǎng)絡時,首先向網(wǎng)絡中的認證服務器R發(fā)送探尋請求數(shù)據(jù)包;
[0032]認證服務器R收到來自用戶設備A的探尋請求數(shù)據(jù)包之后,向用戶設備A答復探尋響應數(shù)據(jù)包:若用戶設備A收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程正常結(jié)束,執(zhí)行步驟3;若用戶設備A未收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程異常結(jié)束,執(zhí)行步驟4;
[0033]步驟3,用戶設備A與認證服務器R之間進行三次握手的雙向身份認證。
[0034]參照圖2,本步驟具體實現(xiàn)如下:
[0035]3a)用戶設備A與認證服務器R之間進行第一次握手:
[0036]3al)用戶設備A選取XAKe z 作為DH交換臨時私鑰,再通過公式Y(jié) AK= XakP計算DH交換臨時公鑰YAK,用戶設備A生成隨機數(shù)Nak;
[0037]3a2)用戶設備A使用簽名算法Sig對用戶設備A的身份IDa、認證服務器R的身份IDK、隨機數(shù)Nak、DH交換臨時公鑰Yak進行計算,生成簽名Sig AE;
[0038]3a3)用戶設備A構(gòu)造認證請求數(shù)據(jù)包P1,并將認證請求數(shù)據(jù)包P1*送至認證服務器R,認證請求數(shù)據(jù)包P1的內(nèi)容包括:
[0039]104字段:用戶設備A的身份;
[0040]IDk字段:認證服務器R的身份;
[0041]Nak字段:用戶設備A生成的隨機數(shù);
[0042]Yak字段:用戶設備A選取的DH交換臨時公鑰;
[0043]SigAK字段:用戶設備A使用自身的簽名私鑰SKW IDa字段、IDk字段、Nak字段、Yak字段的簽名;
[0044]3a4)當認證服務器R收到認證請求數(shù)據(jù)包PJt,驗證簽名正確性:如果不正確,則丟棄認證請求數(shù)據(jù)包P1,如果正確,則執(zhí)行步驟3b)。
[0045]3b)用戶設備A與認證服務器R之間進行第二次握手:
[0046]3bl)認證服務器R選取z:作為DH交換臨時私鑰,再通過公式Y(jié) EA= X MP計算DH交換臨時公鑰\k,認證服務器R生成隨機數(shù)Nka;
[0047]3b2)認證服務器R使用自身的簽名私鑰SKk對認證服務器R的身份ID κ、用戶設備A的身份IDa、隨機數(shù)Nka、隨機數(shù)Nak、DH交換臨時公鑰Yka進行計算,生成簽名Sig EA;
[0048]3b3)認證服務器R根據(jù)DH交換臨時私鑰Xea和認證請求數(shù)據(jù)包P:中的DH交換臨時公鑰YAK,通過公式MKka= e (X KA,Yae)計算R與A之間通信的主密鑰MKka;
[0049]3b4)認證服務器 R使用公式MICka= h (MKEA | | IDe | | IDa | | Nea | | Nae | | Yea)計算消息完整性校驗碼MICka;
[0050]3b5)認證服務器R構(gòu)造認證響應數(shù)據(jù)包P2,并將認證響應數(shù)據(jù)包P2發(fā)送至用戶設備A,認證響應數(shù)據(jù)包P2的內(nèi)容包括:
[0051]IDa字段:用戶設備A的身份;
[0052]IDk字段:認證服務器R的身份;
[0053]Nea字段:認證服務器R生成的隨機數(shù);
[0054]Nak字段:認證服務器R收到的認證請求數(shù)據(jù)包P i中的隨機數(shù)Nak;
[0055]Yea字段:認證服務器R選取的DH交換臨時公鑰;
[0056]SigM字段:認證服務器R使用自身的簽名私鑰SKJi IDk字段、IDa字段、Nea字段、
Nak字段、Y RA字段的簽名;
[0057]MICea字段:認證服務器R對MK KA字段、ID κ字段、ID Α字段、N Μ字段、N Ακ字段、Y ^字段計算得到的消息完整性校驗碼;
[0058]3b6)當用戶設備A收到認證響應數(shù)據(jù)包己后,判斷認證響應數(shù)據(jù)包P 2中的Nak字段是否與認證請求數(shù)據(jù)包P1中的Nak相同:若不同,則丟棄認證響應數(shù)據(jù)包P2,若相同,則執(zhí)行 3b7);
[0059]3b7)用戶設備A對DH交換臨時私鑰Xak和認證響應數(shù)據(jù)包P 2中的DH交換臨時公鑰Yka使用公式MK AE= e (X AK,Yea)計算A與R之間通信的主密鑰MKak;
[0060]3b8)用戶設備A對MKak、IDk字段、IDa字段、Nea字段、Nak字段、Y M字段使用公式MICeai= h(MKae IDe| IDa Nea| Nae| Yea)計算消息完整性校驗碼MICeai,驗證MICkai是否與認證響應數(shù)據(jù)包P2中的MIC EA^0同:若不同,則丟棄認證響應數(shù)據(jù)包P 2,若相同,則驗證簽名Sig1J^正確性:若不正確,則丟棄認證響應數(shù)據(jù)包P 2,若正確就執(zhí)行步驟3c);
[0061]3c)用戶設備A與認證服務器R之間進行第三次握手:
[0062]3cI)用戶設備A對主密鑰MKak、用戶設備A的身份IDa、認證服務器R的身份IDK、認證響應數(shù)據(jù)包P2中的隨機數(shù)N M使用公式MIC AE= h (MK AEI I IDa | | IDe | | Nea)計算消息完整性校驗碼MICae;
[0063]3c2)用戶設備A構(gòu)造認證確認數(shù)據(jù)包P3,并將認證確認數(shù)據(jù)包匕發(fā)送至認證服務器R,認證確認數(shù)據(jù)包P3的內(nèi)容包括:
[0064]104字段:用戶設備A的身份;
[0065]IDk字段:認證服務器R的身份;
[0066]Nea字段:用戶設備A收到認證響應數(shù)據(jù)包P 2中的隨機數(shù)Nka;
[0067]MICak字段:用戶設備A對MK Ακ字段、ID A字段、ID κ字段、N Μ字段計算得到的消息完整性校驗碼;
[0068]3c3)當認證服務器R收到認證確認數(shù)據(jù)包己后,判斷認證確認數(shù)據(jù)包P 3中的隨機數(shù)Nea是否與認證響應數(shù)據(jù)包?2中的隨機數(shù)Nea相同:若不同,則丟棄認證確認數(shù)據(jù)包P 3,若相同,則執(zhí)行3c4);
[0069]3c4)認證服務器R對主密鑰MKm、IDk字段、ID A字段、N M字段使用公式MIC AE1 =h (MKea I IDe IDa| Nea)計算消息完整性校驗碼MICaki,并驗證MICaki是否與認證確認數(shù)據(jù)包P3中的MIC AK相同,若不同,則丟棄認證響應數(shù)據(jù)包P 3,若相同,則整個認證過程完成。
[0070]步驟4,用戶設備A與父節(jié)點B之間進行權(quán)限判斷。
[0071]用戶設備A構(gòu)造認證請求數(shù)據(jù)包,并將認證請求數(shù)據(jù)包發(fā)送至父節(jié)點B,父節(jié)點B收到認證請求數(shù)據(jù)包后,判斷自身是否為已認證節(jié)點:如果是,則執(zhí)行步驟5,如果不是,則執(zhí)行步驟6 ;
[0072]步驟5,用戶設備A與父節(jié)點B之間進行三次握手的雙向身份認證。
[0073]參照圖3,本步驟具體實現(xiàn)如下:
[0074]5a)用戶設備A與父節(jié)點B之間進行第一次握手:
[0075]5al)用戶設備A選取XabE z 作為DH交換臨時私鑰,再通過公式Y(jié)ab= XabP計算DH交換臨時公鑰Yab,用戶設備A生成隨機數(shù)Nab;
[0076]5a2)用戶設備A使用簽名算法Sig對用戶設備A的身份IDa、父節(jié)點B的身份IDB、隨機數(shù)Nab、DH交換臨時公鑰Yab進行計算,生成簽名Sig AB;
[0077]5a3)用戶設備A構(gòu)造認證請求數(shù)據(jù)包P4,并將認證請求數(shù)據(jù)包匕發(fā)送至認證父節(jié)點B,認證請求數(shù)據(jù)包P4的內(nèi)容包括:
[0078]104字段:用戶設備A的身份;
[0079]IDb字段:父節(jié)點B的身份;
[0080]Nab字段:用戶設備A生成的隨機數(shù);
[0081]Yab字段:用戶設備A選取的DH交換臨時公鑰;
[0082]Sigiffi字段:用戶設備A使用自身的簽名私鑰SK 4對ID A字段、ID B字段、N字段、Y字段的簽名;
[0083]5a4)當父節(jié)點B收到認證請求數(shù)據(jù)包匕后,判斷自身是否為已認證節(jié)點:如果不是已認證節(jié)點,則執(zhí)行步驟5,如果是已認證節(jié)點,則驗證簽名正確性:如果不正確,則丟棄認證請求數(shù)據(jù)包P4,如果正確,則執(zhí)行步驟5b);
[0084]5b)用戶設備A與父節(jié)點B之間進行第二次握手:
[0085]5bl)父節(jié)點B選取XBAe z 作為DH交換臨時私鑰,再通過公式Y(jié)ba= XbaP計算DH交換臨時公鑰YBA,父節(jié)點B生成隨機數(shù)Nba;
[0086]5b2)父節(jié)點B使用自身的簽名私鑰SKJi父節(jié)點B的身份IDb、用戶設備A的身份IDa,隨機數(shù)Nba、隨機數(shù)1、DH交換臨時公鑰Yba進行計算,生成簽名Sig BA;
[0087]5b3)父節(jié)點B根據(jù)DH交換臨時私鑰Xba和認證請求數(shù)據(jù)包P 4中的DH交換臨時公鑰YAB,通過公式MKba= e (X BA,Yab)計算B與A之間通信的主密鑰MKba;
[0088]5b4)父節(jié)點 B使用公式MICba= h (MKba | | IDb | | IDa | | Nba | | Nab | | Yba)計算消息完整性校驗碼MICba;
[0089]5b5)父節(jié)點B構(gòu)造認證響應數(shù)據(jù)包P5,并將認證響應數(shù)據(jù)包P5&送至用戶設備A,認證響應數(shù)據(jù)包P5的內(nèi)容包括:
[0090]IDa字段:用戶設備A的身份;
[0091]IDb字段:父節(jié)點B的身份;
[0092]Nba字段:父節(jié)點B生成的隨機數(shù);
[0093]Nab字段:父節(jié)點B收到的認證請求數(shù)據(jù)包P 4中的隨機數(shù)Nab;
[0094]Yba字段:父節(jié)點B選取的DH交換臨時公鑰;
[0095]SigBA字段:父節(jié)點B使用自身的簽名私鑰SKJi IDb字段、IDa字段、Nba字段、Nab字段、Yba字段的簽名;
[0096]MICba字段:父節(jié)點B對MK BA字段、ID B字段、ID A字段、N BA字段、N 字段、Y BA字段計算得到的消息完整性校驗碼。
[0097]5b6)當用戶設備A收到認證響應數(shù)據(jù)包?5后,判斷認證響應數(shù)據(jù)包P 5中的N Afi字段是否與認證請求數(shù)據(jù)包P4中的Nab相同:若不同,則丟棄認證響應數(shù)據(jù)包P5,若相同,則執(zhí)行步驟5b7);
[0098]5b7)用戶設備A對DH交換臨時私鑰Xab和認證響應數(shù)據(jù)包P 5中的DH交換臨時公鑰Yba使用公式MK e (X Yba)計算A與B之間通信的主密鑰MKab;
[0099]5b8)用戶設備A對MKf IDb字段、IDa字段、Nba字段、Nab字段、Y BA字段使用公式MICbai= h (MKab IDb IDa Nba| Nab Yba)計算消息完整性校驗碼MICbai,驗證MICbai是否與認證響應數(shù)據(jù)包P5中的MIC BA^0同:若不同,則丟棄認證響應數(shù)據(jù)包P 5,若相同,則驗證簽名SigBJ^正確性:若不正確,則丟棄認證響應數(shù)據(jù)包P 5,若正確就執(zhí)行步驟5c);
[0100]5c)用戶設備A與父節(jié)點B之間進行第三次握手:
[0101]5cl)用戶設備A對主密鑰MKab、用戶設備A的身份IDa、父節(jié)點B的身份IDb、認證響應數(shù)據(jù)包P5中的隨機數(shù)N “吏用公式MIC AB= h (MK ABI I IDa | | IDb | | Nba)計算消息完整性校驗碼MICffi;
[0102]5c2)用戶設備A構(gòu)造認證確認數(shù)據(jù)包P6,并將認證確認數(shù)據(jù)包匕發(fā)送至父節(jié)點B,認證確認數(shù)據(jù)包P6的內(nèi)容包括:
[0103]IDa字段:用戶設備A的身份;
[0104]IDb字段:父節(jié)點B的身份;
[0105]Nba字段:用戶設備A收到認證響應數(shù)據(jù)包P 5中的隨機數(shù)Nba;
[0106]MICab字段:用戶設備A對MK Afi字段、IDa字段、IDb字段、Nba字段計算得到的消息完整性校驗碼;
[0107]5c3)當父節(jié)點B收到認證確認數(shù)據(jù)包己后,判斷認證確認數(shù)據(jù)包P 6中的隨機數(shù)Nba是否與認證響應數(shù)據(jù)包P 5中的隨機數(shù)Nba相同:若不同,則丟棄認證確認數(shù)據(jù)包P 6,若相同,則執(zhí)行步驟5c4);
[0108]5c4)父節(jié)點B對主密鑰MKba、IDb字段、ID A字段、N BA字段使用公式MIC AB1 =h (MKba I IDb IDa| Nba)計算消息完整性校驗碼MICabi,并驗證MICabi是否與認證確認數(shù)據(jù)包P6中的MICab相同:若不同,則丟棄認證響應數(shù)據(jù)包P6,若相同,則整個認證過程完成。
[0109]步驟6,父節(jié)點B重復用戶設備A的探尋和認證過程,以執(zhí)行自己與認證服務器R的雙向身份認證,再執(zhí)行與用戶設備A的雙向身份認證。
[0110]名詞解釋
[0111]Trent:密鑰生成中心;
[0112]z:密鑰生成中心Trent選取的安全參數(shù);
[0113]q:密鑰生成中心Trent選取的大于22的大素數(shù);
[0114]G1:密鑰生成中心Trent選取的q階加法循環(huán)群;
[0115]G2:密鑰生成中心Trent選取的q階乘法循環(huán)群;
[0116]e:密鑰生成中心Trent選取的GjPG2I的雙線性映射,即GiG1XG1-G2;
[0117]P -G1上的生成元,由密鑰生成中心Trent隨機選??;
[0118]z?;谒財?shù)q的非零乘法群;
[0119]IDa:密鑰生成中心Trent生成的用戶設備A的身份;
[0120]IDK:密鑰生成中心Trent生成的認證服務器R的身份;
[0121]IDb:密鑰生成中心Trent生成的父節(jié)點B的身份;
[0122]SL戶設備A的簽名私鑰;
[0123]SKk:認證服務器R的簽名私鑰;
[0124]SKB:父節(jié)點B的簽名私鑰;
[0125]XAK:用戶設備A選取的DH交換臨時私鑰;
[0126]Yak:用戶設備A根據(jù)Xak計算得出的DH交換臨時公鑰,Yak= XaeP ;
[0127]Xea:認證服務器R選取的DH交換臨時私鑰;
[0128]Yea:認證服務器R根據(jù)X M計算得出的DH交換臨時公鑰,Y EA= X EAP ;
[0129]Xab:用戶設備A選取的DH交換臨時私鑰;
[0130]Yab:用戶設備A根據(jù)X Afi計算得出的DH交換臨時公鑰,Yab= XabP ;
[0131]XBA:父節(jié)點B選取的DH交換臨時私鑰;
[0132]YBA:父節(jié)點B根據(jù)Xba計算得出的DH交換臨時公鑰,Yba= XbaP ;
[0133]Nar:用戶設備A生成的隨機數(shù),用于發(fā)送至認證服務器R ;
[0134]Nea:認證服務器R生成的隨機數(shù),用于發(fā)送至用戶設備A ;
[0135]Nab:用戶設備A生成的隨機數(shù),用于發(fā)送至父節(jié)點B ;
[0136]Nba:父節(jié)點B生成的隨機數(shù),用于發(fā)送至用戶設備A ;
[0137]Sig:密鑰生成中心Trent選取的簽名算法;
[0138]h(x):密碼單向哈希函數(shù);
[0139]MKak:用戶設備A計算得到的通信主密鑰,MK AE= e (X Ακ,YEA);
[0140]MKea:認證服務器R計算得到的通信主密鑰,MK M= e (X M,YAE);
[0141]MKab:用戶設備A計算得到的通信主密鑰,MK Afi= MXab, YBA);
[0142]MKba:父節(jié)點B計算得到的通信主密鑰,MK BA= e (X BA,YAB);
[0143]A| I B:表示A與B的級聯(lián),其中A和B鏈接起來即為AI |B,通過對A| | B解鏈接操作即可得到A和B ;
[0144]MICea:認證服務器R計算得到的消息完整性校驗碼,用于發(fā)送至用戶設備A,其中,MICea= h(mkkaI IidkI |ida| IneaI |nae| Iyea);
[0145]MICea1:用戶設備A使用自身公鑰計算得到的消息完整性校驗碼,用于驗證是否與收到的消息完整性校驗碼 MICJ 同,其中,MIC KA1 = h (MK AKI I IDe | | IDa | | Nea | | Nae | | Yea);
[0146]MICak:用戶設備A計算得到的消息完整性校驗碼,用于發(fā)送至認證服務器R,其中,MICae= h (mkae I |ida| IideI nea);
[0147]MICak1:認證服務器R使用自身公鑰計算得到的消息完整性校驗碼,用于驗證是否與收到的消息完整性校驗碼MICae^同,其中,MIC AK1 = h (MK ka I I IDa | | IDe | | Nea);
[0148]MICba:父節(jié)點B計算得到的消息完整性校驗碼,用于發(fā)送至用戶設備A,其中,MICba= h(MKBA| |idb| |ida| |nba| Inab |yba);
[0149]MICba1:用戶設備A使用自身公鑰計算得到的消息完整性校驗碼,用于驗證是否與收到的消息完整性校驗碼 MICba相同,其中,MIC BA1 = h (MK ABI I IDb | | IDa | | Nba | | Nab | | Yba);
[0150]MICab:用戶設備A計算得到的消息完整性校驗碼,用于發(fā)送至父節(jié)點B,其中,MICab
=h(mkabI |ida| Iidb |nba);
[0151]MICab1:父節(jié)點B使用自身公鑰計算得到的消息完整性校驗碼,用于驗證是否與收到的消息完整性校驗碼MICffi相同,其中,MIC AB1 = h (MK BAI I IDa | | IDb | | Nba)。
【權(quán)利要求】
1.一種基于代理的用戶設備可信接入認證方法,包括如下步驟: (1)用戶設備A探尋認證服務器R: 當用戶設備A需要接入網(wǎng)絡時,首先向網(wǎng)絡中的認證服務器R發(fā)送探尋請求數(shù)據(jù)包,認證服務器R收到來自用戶設備A的探尋請求數(shù)據(jù)包之后,向用戶設備A答復探尋響應數(shù)據(jù)包,若用戶設備A收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程正常結(jié)束,執(zhí)行步驟(2);若用戶設備A未收到來自認證服務器R的探尋響應數(shù)據(jù)包,則探尋過程異常結(jié)束,執(zhí)行步驟⑶; (2)用戶設備A與認證服務器R之間進行三次握手的雙向身份認證; (3)用戶設備A與父節(jié)點B之間進行權(quán)限判斷: 用戶設備A構(gòu)造認證請求數(shù)據(jù)包,并將認證請求數(shù)據(jù)包發(fā)送至父節(jié)點B,父節(jié)點B收到認證請求數(shù)據(jù)包后,判斷自身是否為已認證節(jié)點:如果是,則執(zhí)行步驟(4),如果不是,則執(zhí)行步驟(5); (4)用戶設備A與父節(jié)點B之間進行三次握手的雙向身份認證; (5)父節(jié)點B重復用戶設備A的探尋和認證過程,以執(zhí)行自己與認證服務器R的雙向身份認證,再執(zhí)行與用戶設備A的雙向身份認證。
2.根據(jù)權(quán)利要求1所述的基于代理的用戶設備可信接入認證方法,其中所述步驟(2)中的用戶設備A與認證服務器R之間進行的三次握手雙向身份認證過程,其表述如下: 2a)用戶設備A構(gòu)造認證請求數(shù)據(jù)包P1,并將認證請求數(shù)據(jù)包P1發(fā)送至認證服務器R,當認證服務器R收到認證請求數(shù)據(jù)包PJt,驗證簽名正確性:如果不正確,則丟棄認證請求數(shù)據(jù)包P1,如果正確,則執(zhí)行步驟2b); 2b)認證服務器R構(gòu)造認證響應數(shù)據(jù)包P2,并將認證響應數(shù)據(jù)包匕發(fā)送至用戶設備A,當用戶設備A收到認證響應數(shù)據(jù)包己后,判斷認證響應數(shù)據(jù)包P 2中的隨機數(shù)Nak字段是否與收到的認證請求數(shù)據(jù)包P1中的N AK字段相同:若不同,則丟棄認證響應數(shù)據(jù)包P 2,若相同,則執(zhí)行步驟2c); 2c)用戶設備A使用自身公鑰計算認證服務器R發(fā)送至用戶設備A的消息完整性校驗碼MICkai,并驗證MICeai是否與收到的認證響應數(shù)據(jù)包P 2中的消息完整性校驗碼MIC M字段相同:若不同,則丟棄認證響應數(shù)據(jù)包P2,若相同,則驗證簽名Sig1J^正確性:若不正確,則丟棄認證響應數(shù)據(jù)包P2,若正確,則執(zhí)行步驟2d); 2d)用戶設備A構(gòu)造認證確認數(shù)據(jù)包P3,并將認證確認數(shù)據(jù)包P3發(fā)送至認證服務器R,當認證服務器R收到認證確認數(shù)據(jù)包己后,判斷認證確認數(shù)據(jù)包P 3中的隨機數(shù)Nka是否與收到的認證響應數(shù)據(jù)包匕中的隨機數(shù)Nka相同:若不同,則丟棄認證確認數(shù)據(jù)包P3,若相同,則執(zhí)行步驟2e); 2e)認證服務器R使用自身公鑰計算用戶設備A發(fā)送至認證服務器R的消息完整性校驗碼MICaki,并驗證MICaki是否與收到的認證確認數(shù)據(jù)包P 3中的消息完整性校驗碼MIC磯字段相同:若不同,則丟棄認證確認數(shù)據(jù)包P3,若相同,則整個認證過程完成。
3.根據(jù)權(quán)利要求1所述的基于代理的用戶設備可信接入認證方法,其中所述步驟(4)中的用戶設備A與父節(jié)點B之間進行的三次握手雙向身份認證過程,其表述如下: 4a)用戶設備A構(gòu)造認證請求數(shù)據(jù)包P4,并將認證請求數(shù)據(jù)包P4發(fā)送至父節(jié)點B,當父節(jié)點B收到認證請求數(shù)據(jù)包匕后,驗證簽名正確性:如果不正確,則丟棄認證請求數(shù)據(jù)包P4,如果正確,則執(zhí)行步驟4b); 4b)父節(jié)點B構(gòu)造認證響應數(shù)據(jù)包P5,并將認證響應數(shù)據(jù)包匕發(fā)送至用戶設備A,當用戶設備A收到認證響應數(shù)據(jù)包匕后,判斷認證響應數(shù)據(jù)包P 5中的隨機數(shù)Nab字段是否與收到的認證請求數(shù)據(jù)包P4中的Nab字段相同:若不同,則丟棄認證響應數(shù)據(jù)包P 5,若相同,則執(zhí)行步驟4c); 4c)用戶設備A使用自身公鑰計算父節(jié)點B發(fā)送至用戶設備A的消息完整性校驗碼MICbai,并驗證該MICbai碼是否與收到的認證響應數(shù)據(jù)包P 5中的消息完整性校驗碼MIC BA字段相同:若不同,則丟棄認證響應數(shù)據(jù)包P5,若相同,則驗證簽名SigBJ^正確性:若不正確,則丟棄認證響應數(shù)據(jù)包P5,若正確,則執(zhí)行步驟4d); 4d)用戶設備A構(gòu)造認證確認數(shù)據(jù)包P6,并將認證確認數(shù)據(jù)包P6發(fā)送至父節(jié)點B,當父節(jié)點B收到認證確認數(shù)據(jù)包己后,判斷認證確認數(shù)據(jù)包P 6中的隨機數(shù)Nba是否與收到的認證響應數(shù)據(jù)包P5中的隨機數(shù)Nba相同:若不同,則丟棄認證確認數(shù)據(jù)包P6,若相同,則執(zhí)行步驟 4e); 4e)父節(jié)點B使用自身公鑰計算用戶設備A發(fā)送至父節(jié)點B的消息完整性校驗碼MICabi,并驗證該MICabi碼是否與收到的認證確認數(shù)據(jù)包P 6中的消息完整性校驗碼MIC ^字段相同:若不同,則丟棄認證確認數(shù)據(jù)包P6,若相同,則整個認證過程完成。
4.根據(jù)權(quán)利要求2所述的用戶設備A與認證服務器R之間進行的三次握手雙向身份認證過程,其中所述步驟2c)中的用戶設備A使用自身公鑰計算認證服務器R發(fā)送至用戶設備A的消息完整性校驗碼MICkai,按如下公式進行:
MICeai= h(MKaeI IideI IidaI IneaI |nae| Iyea) 其中,h(x)為密碼單向哈希函數(shù),MKak為用戶設備A與認證服務器R之間的通信主密鑰,IDk為用戶設備A收到的認證響應數(shù)據(jù)包P2中的認證服務器身份字段,IDa為用戶設備A收到的認證響應數(shù)據(jù)包P2中的用戶設備身份字段,Nea為用戶設備A收到的認證響應數(shù)據(jù)包己中的認證服務器R發(fā)送至用戶設備A的隨機數(shù)字段,Nak為用戶設備A收到的認證響應數(shù)據(jù)包P2中的用戶設備A發(fā)送至用認證服務器R的隨機數(shù)字段,Y M為用戶設備A收到的認證響應數(shù)據(jù)包P2中的認證服務器公鑰字段。
5.根據(jù)權(quán)利要求2所述的用戶設備A與認證服務器R之間進行的三次握手雙向身份認證過程,其中所述步驟2e)中的認證服務器R使用自身公鑰計算用戶設備A發(fā)送至認證服務器R的消息完整性校驗碼MICaki,按如下公式進行:
MICaei= h (MKea I IideI IidaI nea) 其中,h(x)為密碼單向哈希函數(shù),MKea為認證服務器R與用戶設備A之間的通信主密鑰,IDk為認證服務器R收到的認證確認數(shù)據(jù)包P3中的認證服務器身份字段,IDaS認證服務器R收到的認證確認數(shù)據(jù)包P3中的用戶身份字段,Nea為認證服務器R收到的認證確認數(shù)據(jù)包匕中的認證服務器R發(fā)送至用戶設備A的隨機數(shù)字段。
6.根據(jù)權(quán)利要求3所述的用戶設備A與父節(jié)點B之間進行的三次握手雙向身份認證過程,其中所述步驟4c)中的用戶設備A使用自身公鑰計算父節(jié)點B發(fā)送至用戶設備A的消息完整性校驗碼MICbai,按如下公式進行:
MICbai= h(MKabI IidbI IidaI |nba| Inab |yba) 其中,h(x)為密碼單向哈希函數(shù),MKab為用戶設備A與父節(jié)點B之間的通信主密鑰,IDb為用戶設備A收到的認證響應數(shù)據(jù)包匕中的父節(jié)點身份字段,IDa為用戶設備A收到的認證響應數(shù)據(jù)包P5中的用戶設備身份字段,Nba為用戶設備A收到的認證響應數(shù)據(jù)包P 5中的父節(jié)點B發(fā)送至用戶設備A的隨機數(shù)字段,Nab為收到的認證響應數(shù)據(jù)包P 5中的用戶設備A發(fā)送至父節(jié)點B的隨機數(shù)字段,Yba為用戶設備A收到的認證響應數(shù)據(jù)包P5*的父節(jié)點公鑰字段。
7.根據(jù)權(quán)利要求3所述的用戶設備A與父節(jié)點B之間進行的三次握手雙向身份認證過程,其中所述步驟4e)中的父節(jié)點B使用自身公鑰計算用戶設備A發(fā)送至父節(jié)點B的消息完整性校驗碼MICabi,按如下公式進行:
Micabi= h (MK BAI |idb| |ida| |nba) 其中,h(x)為密碼單向哈希函數(shù),MKbaS父節(jié)點B與用戶設備A之間的通信主密鑰,IDb為父節(jié)點B收到的認證確認數(shù)據(jù)包己中的父節(jié)點身份字段,IDaS父節(jié)點B收到的認證確認數(shù)據(jù)包P6中的用戶設備身份字段,Nba為父節(jié)點B收到的認證確認數(shù)據(jù)包P 6中的父節(jié)點B發(fā)送至用戶設備A的隨機數(shù)字段。
【文檔編號】H04W12/06GK104468585SQ201410765889
【公開日】2015年3月25日 申請日期:2014年12月12日 優(yōu)先權(quán)日:2014年12月12日
【發(fā)明者】龐遼軍, 曹潮, 趙穎, 曲志華, 譚示崇 申請人:西安電子科技大學