專利名稱::安全控制遠(yuǎn)程無(wú)線設(shè)備的方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種安全控制遠(yuǎn)程無(wú)線設(shè)備的方法。技術(shù)背景行動(dòng)通訊是目前及未來(lái)趨勢(shì),由于HSDPARouter(3G路由器)及PortableNavigationDevice(便攜式自動(dòng)導(dǎo)航設(shè)備)等行動(dòng)相關(guān)設(shè)備開(kāi)發(fā),了解這些設(shè)備可結(jié)合短信息服務(wù)6MS,ShortMessiigeService)功能來(lái)做遠(yuǎn)程控制,然而目前簡(jiǎn)單控制架構(gòu)是用戶僅僅發(fā)送短信息直接控制無(wú)線設(shè)備,透過(guò)電話號(hào)碼進(jìn)行校驗(yàn),且在發(fā)送短信息控制無(wú)線設(shè)備時(shí)沒(méi)有進(jìn)行用戶鑒定。這樣導(dǎo)致了非法的用戶在沒(méi)有鑒定的情況下也可以控制遠(yuǎn)程設(shè)備,此外,由于沒(méi)有進(jìn)行數(shù)據(jù)加密,不能防止其他人偷聽(tīng);再者,電話號(hào)碼可能丟失,采用電話號(hào)碼進(jìn)行校驗(yàn)并不可靠安全,這樣無(wú)法應(yīng)付未來(lái)安全性需求。
發(fā)明內(nèi)容鑒于以上內(nèi)容,有必要提供一種安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其以共同的成對(duì)主密鑰來(lái)相互校驗(yàn)身份,提供完整的身份校驗(yàn)以及信息加密機(jī)制。所述安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,包括步驟用戶設(shè)備創(chuàng)建請(qǐng)求信息,發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備,該遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該請(qǐng)求信息數(shù)據(jù)包,所述的用戶設(shè)備和遠(yuǎn)程無(wú)線設(shè)備擁有共同的成對(duì)主密鑰;當(dāng)該請(qǐng)求信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備創(chuàng)建回復(fù)信息,發(fā)送回復(fù)信息數(shù)據(jù)包至所述用戶設(shè)備,用戶設(shè)備校驗(yàn)該回復(fù)信息數(shù)據(jù)包;當(dāng)該回復(fù)信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述用戶設(shè)備創(chuàng)建并加密控制信息,發(fā)送控制信息數(shù)據(jù)包至所述遠(yuǎn)程無(wú)線設(shè)備,遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該控制信息數(shù)據(jù)包;當(dāng)該控制信息數(shù)據(jù)包檢驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備解密并處理控制信息,發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備,用戶設(shè)備校驗(yàn)確認(rèn)信息數(shù)據(jù)包,等待發(fā)送下一個(gè)控制信息數(shù)據(jù)包。相較于現(xiàn)有技術(shù),本發(fā)明所述的安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,采用成對(duì)主密鑰對(duì)合法用戶進(jìn)行校驗(yàn),使用成對(duì)臨時(shí)密鑰加密短信數(shù)據(jù)字段,大大提高了安全級(jí)別,并有效地防止了重放攻擊。讓用戶可以使用短信息服務(wù)作為一個(gè)溝通通道,安全控制遠(yuǎn)程無(wú)線設(shè)備。圖1為本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法較佳實(shí)施例的架構(gòu)圖。圖2為本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法的較佳實(shí)施例的流程圖。圖3是本發(fā)明較佳實(shí)施例中用戶設(shè)備發(fā)送請(qǐng)求信息及遠(yuǎn)程無(wú)線設(shè)備進(jìn)行驗(yàn)證的細(xì)化流程圖。圖4是本發(fā)明較佳實(shí)施例中遠(yuǎn)程無(wú)線設(shè)備發(fā)送回復(fù)信息及用戶設(shè)備進(jìn)行驗(yàn)證的細(xì)化流程圖。圖5是本發(fā)明較佳實(shí)施例中用戶設(shè)備發(fā)送控制信息及遠(yuǎn)程無(wú)線設(shè)備進(jìn)行驗(yàn)證的細(xì)化流程圖。圖6是本發(fā)明較佳實(shí)施例中遠(yuǎn)程無(wú)線設(shè)備發(fā)送確認(rèn)信息及用戶設(shè)備進(jìn)行驗(yàn)證的細(xì)化流程圖。圖7是PDU中的TP-UD的定義方式示意圖。圖8是TP-UD中MessiigeType的示意圖。具體實(shí)施方式針對(duì)本發(fā)明的專業(yè)詞匯注釋如下Nonce隨機(jī)數(shù),是任意的或非重復(fù)的值,它包括在經(jīng)過(guò)一個(gè)協(xié)議的數(shù)據(jù)交換中,用于免受重放攻擊。ACK數(shù)據(jù)包首部中的確認(rèn)標(biāo)志,對(duì)已接收到的報(bào)文進(jìn)行確認(rèn)。在通訊協(xié)議中,如果接受方成功的接收到數(shù)據(jù),那么會(huì)回復(fù)一個(gè)ACK數(shù)據(jù)。通常ACK信號(hào)有自己固定的格式,長(zhǎng)度大小,由接受方回復(fù)給發(fā)送方。HMACHash信息校驗(yàn)碼,HashMessageAuthenticationCodes,校驗(yàn)接收信息和發(fā)送信息的完全一致性(完整性)。HASH主要用于信息安全領(lǐng)域中加密算法,把一些任意長(zhǎng)度的信息通過(guò)散列算法轉(zhuǎn)化成固定長(zhǎng)度的輸出,該輸出就是HASH值,也可以說(shuō),HASH就是找到一種數(shù)據(jù)內(nèi)容和數(shù)據(jù)特征碼之間的單向映射關(guān)系。Hash散列本身就是所謂加密檢查和或信息完整性編碼,通信雙方必須各自執(zhí)行函數(shù)計(jì)算來(lái)校驗(yàn)信息。PMKPairwiseMasterKey,成對(duì)主密鑰。用于幫助密鑰協(xié)商,即用于產(chǎn)生其他臨時(shí)密鑰,所產(chǎn)生的這些密鑰用于保密。PTKPairwiseTransientKey成對(duì)臨時(shí)密鑰。所述的PTK由PMK協(xié)商計(jì)算出來(lái)。PTK用于產(chǎn)生MIC密鑰(MK)以及數(shù)據(jù)加密密鑰(DataEncryptionKey,DK)。MK是用于計(jì)算和校驗(yàn)MIC的密鑰,DK是用于對(duì)數(shù)據(jù)進(jìn)行加密的密鑰。MIC信息完整性編碼(MessiigeIntegrityCode),是用于鑒別一條信息的一個(gè)短塊密碼校驗(yàn)。它也被叫做完整性檢查值,修改檢測(cè)編碼或信息認(rèn)證碼。PDUMODE是發(fā)送或接收手機(jī)SMS的一種方法。消息正文經(jīng)過(guò)十六進(jìn)制編碼后進(jìn)行傳送;PDU發(fā)送只能輸入十六進(jìn)制的字符0-9、A-F。如圖1所示是本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法較佳實(shí)施例的架構(gòu)圖。所述的架構(gòu)包括通用移動(dòng)通信系統(tǒng)1、本地基站2、遠(yuǎn)程基站3、用戶設(shè)備4、遠(yuǎn)程無(wú)線設(shè)備5以及安全通道6。所述的本地基站2通過(guò)無(wú)線通信網(wǎng)絡(luò)7與用戶設(shè)備2相連,所述的遠(yuǎn)程基站3通過(guò)無(wú)線通信網(wǎng)絡(luò)7與遠(yuǎn)程無(wú)線設(shè)備5相連。所述的通用移動(dòng)通信系統(tǒng)(UniversalMobileTelecommunicationsSystem,UMTS)1是國(guó)際標(biāo)準(zhǔn)化組織3GPP制定的全球3G標(biāo)準(zhǔn)之一。在本較佳實(shí)施例中,所述的用戶設(shè)備4是配備有GPRS(GeneralPacketRadioService,通用分組無(wú)線服務(wù)技術(shù))/WCDMA或HSDPA(HighSpeedDownlinkPacketAccess,高速下行分組接入技術(shù))適配器的用戶設(shè)備。所述的遠(yuǎn)程無(wú)線設(shè)備5可以是3G無(wú)線路由器、便攜式導(dǎo)航設(shè)備等其他任意適用的遠(yuǎn)程無(wú)線設(shè)備。此外應(yīng)說(shuō)明的是,通過(guò)本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法較佳實(shí)施例的架構(gòu),所述的用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5可以進(jìn)行收發(fā)信息。所述的安全通道6可以使用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5傳送加密控制信息,對(duì)用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5之間收發(fā)的信息進(jìn)行加密。如圖2所示,是本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法較佳實(shí)施例的流程圖。應(yīng)說(shuō)明的是,用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5是分配到一個(gè)相同的、事先生成好的一個(gè)PMK。所述的PMK是由認(rèn)證服務(wù)器(AS,AuthenticationServer)(圖中未示出)產(chǎn)生的,并通過(guò)安全的方法傳送至用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5。所述的PMK是可以由認(rèn)證服務(wù)器(AS,AuthenticationServer)(圖中未示出)產(chǎn)生的,并通過(guò)安全的方法傳送至用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5。另外也可以透過(guò)用戶設(shè)備4與遠(yuǎn)程無(wú)線設(shè)備5的擁有者事先協(xié)商設(shè)定。步驟S10,用戶設(shè)備4創(chuàng)建請(qǐng)求信息,發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備5,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)該請(qǐng)求信息數(shù)據(jù)包。步驟S11,當(dāng)該請(qǐng)求信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備5創(chuàng)建回復(fù)信息,發(fā)送回復(fù)信息數(shù)據(jù)包至用戶設(shè)備4,用戶設(shè)備4校驗(yàn)該回復(fù)信息數(shù)據(jù)包。步驟S12,當(dāng)該回復(fù)信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述用戶設(shè)備4創(chuàng)建控制信息并進(jìn)行加密,發(fā)送控制信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備5,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)該控制信息數(shù)據(jù)包。步驟S13,當(dāng)該控制信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備5解密并處理控制信息,發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備4,用戶設(shè)備4校驗(yàn)該確認(rèn)信息數(shù)據(jù)包,等待發(fā)送下一個(gè)控制信息數(shù)據(jù)包。圖3所示,是圖2中步驟SlO之用戶設(shè)備發(fā)送請(qǐng)求信息數(shù)據(jù)包及遠(yuǎn)程無(wú)線設(shè)備進(jìn)行校驗(yàn)該請(qǐng)求信息數(shù)據(jù)包的細(xì)化流程圖。步驟S100,用戶設(shè)備4生成一個(gè)隨機(jī)數(shù)PNonce以及設(shè)置一個(gè)用戶設(shè)備4的序列號(hào)SNp并保存。步驟S101,用戶設(shè)備4創(chuàng)建請(qǐng)求信息,以用戶設(shè)備4的PMK與請(qǐng)求信息為參數(shù),通過(guò)HMACMD5算法得到請(qǐng)求信息的MIC。步驟S102,用戶設(shè)備4發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備5,所述發(fā)送的請(qǐng)求信息數(shù)據(jù)包中包括用戶設(shè)備4的請(qǐng)求信息、SNp、PNance以及請(qǐng)求信息的MIC;并設(shè)置其超時(shí)值為tl。步驟S103,遠(yuǎn)程無(wú)線設(shè)備5初始化設(shè)置遠(yuǎn)程無(wú)線設(shè)備5的序列號(hào)為SNr=O,并接收來(lái)自用戶設(shè)備4的請(qǐng)求信息數(shù)據(jù)包。步驟S104,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)請(qǐng)求信息的MIC是否正確。遠(yuǎn)程無(wú)線設(shè)備5以遠(yuǎn)程無(wú)線設(shè)備5的PMK與所接收的請(qǐng)求信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的請(qǐng)求信息的MIC,校驗(yàn)其是否和用戶設(shè)備4所發(fā)送的請(qǐng)求信息的MIC—致。若一致,則進(jìn)入步驟S106;若不一致,則進(jìn)入步驟S105。步驟S105,遠(yuǎn)程無(wú)線設(shè)備5放棄此請(qǐng)求信息數(shù)據(jù)包,并返回步驟S103。步驟S106,遠(yuǎn)程無(wú)線設(shè)備5生成一個(gè)隨機(jī)數(shù)RNonce,并保存該RNonce以及保存請(qǐng)求信息數(shù)據(jù)包中的PNonce。如圖4所示,是圖2中步驟Sll之遠(yuǎn)程無(wú)線設(shè)備發(fā)送回復(fù)信息數(shù)據(jù)包及用戶設(shè)備校驗(yàn)該回復(fù)信息數(shù)據(jù)包的細(xì)化流程圖。步驟幻00,以遠(yuǎn)程無(wú)線設(shè)備5的PMK、RNonce及所接收的請(qǐng)求信息數(shù)據(jù)包中的PNonce為參數(shù),使用偽隨機(jī)函數(shù)(PRF)得到遠(yuǎn)程無(wú)線設(shè)備5的PTK(成對(duì)臨時(shí)密鑰),所得到的遠(yuǎn)程無(wú)線設(shè)備5的PTK的長(zhǎng)度為1字節(jié)。然后以遠(yuǎn)程無(wú)線設(shè)備5的PTK、RNonce及所接收的請(qǐng)求信息數(shù)據(jù)包中的PNance為參數(shù),使用PRF得到長(zhǎng)度為256字節(jié)的遠(yuǎn)程無(wú)線設(shè)備5的密鑰流,提取該遠(yuǎn)程無(wú)線設(shè)備5的密鑰流的前16個(gè)字節(jié)組成遠(yuǎn)程無(wú)線設(shè)備5的MK(MICKey,信息完整性編碼密鑰),設(shè)置遠(yuǎn)程無(wú)線設(shè)備5的SNr=SNp+Ι。例如,若SNp為1900,則設(shè)置SNr等于SNp+Ι,即1901。步驟幻01,遠(yuǎn)程無(wú)線設(shè)備5創(chuàng)建回復(fù)信息,然后以遠(yuǎn)程無(wú)線設(shè)備5的PMK與該回復(fù)信息為參數(shù),根據(jù)HMACMD5算法計(jì)算回復(fù)信息的MIC。步驟幻02,遠(yuǎn)程無(wú)線設(shè)備5發(fā)送回復(fù)信息數(shù)據(jù)包至用戶設(shè)備4,所述發(fā)送的回復(fù)信息數(shù)據(jù)包包括遠(yuǎn)程無(wú)線設(shè)備5的回復(fù)信息、SNr、RNance以及回復(fù)信息的MIC,然后設(shè)置其超時(shí)值為t2。步驟幻03,用戶設(shè)備4判斷在tl時(shí)間內(nèi)是否能收到該回復(fù)信息數(shù)據(jù)包。若收到遠(yuǎn)程無(wú)線設(shè)備5的回復(fù)信息數(shù)據(jù)包,則進(jìn)入步驟幻04;若沒(méi)有收到遠(yuǎn)程無(wú)線設(shè)備5的回復(fù)信息數(shù)據(jù)包,則結(jié)束流程。步驟幻04,用戶設(shè)備4校驗(yàn)所接收到回復(fù)信息數(shù)據(jù)包中的SNr是否等于SNp+Ι。若SNr等于SNp+1,則進(jìn)入步驟S206;若SNr不等于SNp+Ι,則進(jìn)入步驟S205o步驟幻05,用戶設(shè)備4放棄此回復(fù)信息數(shù)據(jù)包,返回步驟幻03。步驟幻06,用戶設(shè)備4校驗(yàn)回復(fù)信息的MIC是否正確。用戶設(shè)備4以用戶設(shè)備4的PMK與所接收的回復(fù)信息為參數(shù),結(jié)合HMACMD5算法再次得到所接收的回復(fù)信息的MIC,校驗(yàn)其是否和遠(yuǎn)程無(wú)線設(shè)備5所發(fā)送的回復(fù)信息的MIC—致。若一致,則進(jìn)入步驟S207;若不一致,則返回步驟幻05。步驟S207,以用戶設(shè)備4的PMK、PNonce及所接收的回復(fù)信息數(shù)據(jù)包中的RNonce為參數(shù),使用偽隨機(jī)函數(shù)PRF得到用戶設(shè)備4的PTK,該P(yáng)TK的長(zhǎng)度為1字節(jié),然后以用戶設(shè)備4的PTK、PNance及所接收的回復(fù)信息數(shù)據(jù)包中的RNance為參數(shù),使用PRF得到長(zhǎng)度為256字節(jié)的用戶設(shè)備4的密鑰流,并提取該用戶設(shè)備4的密鑰流的前16個(gè)字節(jié)組成用戶設(shè)備4的MK以及提取用戶設(shè)備4的密鑰流的后16個(gè)字節(jié)組成DK(DataEncryptionKey,數(shù)據(jù)加密密鑰)。如圖5所示,是圖2中步驟S12之用戶設(shè)備發(fā)送控制信息數(shù)據(jù)包及遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該控制信息數(shù)據(jù)包的細(xì)化流程圖。步驟S300,用戶設(shè)備4設(shè)置SNp=SNp+2,創(chuàng)建控制信息,以用戶設(shè)備4的MK以及控制信息為參數(shù),通過(guò)HMAC-MD5算法計(jì)算得到控制信息的MIC,用戶設(shè)備4使用用戶設(shè)備4的數(shù)據(jù)加密密鑰DK對(duì)控制信息的數(shù)據(jù)部分進(jìn)行加密得到DATAdk(加密的控制信息的數(shù)據(jù)部分)。步驟S301,用戶設(shè)備4發(fā)送控制信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備5,所述發(fā)送的控制信息數(shù)據(jù)包包括用戶設(shè)備4的控制信息、SNp、PNonce>控制信息的MIC以及DATAdk,然后設(shè)置其超時(shí)值為t3。步驟S302,遠(yuǎn)程無(wú)線設(shè)備5判斷在t2時(shí)間內(nèi)是否收到控制信息數(shù)據(jù)包。若收到用戶設(shè)備4的控制信息數(shù)據(jù)包,則進(jìn)入步驟S303;若沒(méi)有收到用戶設(shè)備4的控制信息數(shù)據(jù)包,則轉(zhuǎn)至步驟S103。步驟S303,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)PNonce是否正確。遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)所接收的控制信息數(shù)據(jù)包中的PNance與所接收的請(qǐng)求信息數(shù)據(jù)包中的PNance是否一致,若一致,則進(jìn)入步驟幻05;若不一致,則進(jìn)入步驟S304。步驟S304,遠(yuǎn)程無(wú)線設(shè)備5放棄此控制信息,返回步驟S302。步驟S305,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)所接收的SNp是否等于SNr+Ι。由于此時(shí)用戶設(shè)備4的SNp=SNp+2,而SNr=SNp+l,則校驗(yàn)SNp是否等于SNr+1。若SNp等于SNr+1,則進(jìn)入步驟S306,若SNp不等于SNr+Ι,則進(jìn)入步驟S304。步驟S306,遠(yuǎn)程無(wú)線設(shè)備5校驗(yàn)控制信息的MIC是否正確。由遠(yuǎn)程無(wú)線設(shè)備5以遠(yuǎn)程無(wú)線設(shè)備5的MK以及所接收的控制信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的控制信息的MIC,校驗(yàn)其是否和用戶設(shè)備4的所發(fā)送的控制信息的MIC—致。若一致,則進(jìn)入步驟S307;若不一致,則進(jìn)入步驟S304。步驟S307,判斷此控制信息是否是Rn(結(jié)束)信息。若不是Rn信息,則進(jìn)入步驟S308;若是Rn信息,則轉(zhuǎn)至步驟S103。步驟S308,遠(yuǎn)程無(wú)線設(shè)備5解密DATAdk,得到控制信息并處理控制信息。如圖6所示,是圖2中步驟S13之遠(yuǎn)程無(wú)線設(shè)備發(fā)送確認(rèn)信息數(shù)據(jù)包及用戶設(shè)備校驗(yàn)該確認(rèn)信息數(shù)據(jù)包的細(xì)化流程圖。步驟S400,遠(yuǎn)程無(wú)線設(shè)備5設(shè)置SNr=SNr+2,創(chuàng)建確認(rèn)信息,并以遠(yuǎn)程無(wú)線設(shè)備5的MK以及確認(rèn)信息為參數(shù),結(jié)合HMACMD5算法得到確認(rèn)信息的MIC。步驟S401,遠(yuǎn)程無(wú)線設(shè)備5發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備4,所述發(fā)送的確認(rèn)信息數(shù)據(jù)包包括遠(yuǎn)程無(wú)線設(shè)備5的確認(rèn)信息、SNr、RNance以及確認(rèn)信息的MIC,并等待接收下一個(gè)控制信息數(shù)據(jù)包。步驟S402,用戶設(shè)備4判斷在t3時(shí)間內(nèi)是否收到確認(rèn)信息數(shù)據(jù)包。若接收到確認(rèn)信息數(shù)據(jù)包,則進(jìn)入步驟S403;若沒(méi)有收到確認(rèn)信息數(shù)據(jù)包,則結(jié)束流程。步驟S403,用戶設(shè)備4校驗(yàn)RNance是否正確。用戶設(shè)備4校驗(yàn)所接收的確認(rèn)信息數(shù)據(jù)包中的RNance與所接收回復(fù)信息數(shù)據(jù)包中的RNance是否一致,若一致,則進(jìn)入步驟S405;若不一致,則進(jìn)入步驟S404。步驟S404,用戶設(shè)備4放棄此確認(rèn)信息數(shù)據(jù)包,返回步驟S402。步驟S405,用戶設(shè)備4校驗(yàn)所接收的SNr是否等于SNp+Ι。此時(shí)SNr=SNr+2,而SNp=SNr+Ι,則校驗(yàn)SNr是否等于SNp+Ι。若SNr等于SNp+Ι,則進(jìn)入步驟S406;若SNr不等于SNp+Ι,則進(jìn)入步驟S404。步驟S406,用戶設(shè)備4校驗(yàn)確認(rèn)信息的MIC是否正確。由用戶設(shè)備4通過(guò)以用戶設(shè)備4的MK以及所接收的確認(rèn)信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的確認(rèn)信息的MIC,校驗(yàn)其是否和遠(yuǎn)程無(wú)線設(shè)備5的所發(fā)送的確認(rèn)信息的MIC—致,若一致,則進(jìn)入步驟S407;若不一致,則進(jìn)入步驟S404。步驟S407,用戶設(shè)備4判斷是否發(fā)送下一個(gè)控制信息數(shù)據(jù)包。如果是,則返回至步驟S300;若不再發(fā)送下一個(gè)控制信息數(shù)據(jù)包,則結(jié)束流程。應(yīng)說(shuō)明的是,通過(guò)對(duì)所述的序列號(hào)和隨機(jī)數(shù)的校驗(yàn),有效地防止了重新發(fā)送此信息的重放攻擊。所過(guò)對(duì)MIC的校驗(yàn),提供了完整的身份校驗(yàn),使用PTK進(jìn)行加密以及校驗(yàn),提高了安全級(jí)別。此外,本發(fā)明安全控制遠(yuǎn)程無(wú)線設(shè)備的方法發(fā)送SMS的TPDU所采用的是PDU模式,其中,PDU中的TP-UD(用戶信息)的定義方式如圖7所示。其中的MessiigeDelimiter(定界符)用于使本發(fā)明所發(fā)送的信息區(qū)別于一般的正常的SMS。所述的MessageDelimiter默認(rèn)值為[OxAO,OxAl,OxCO,OxC1]。如圖8所示,是TP-UD中MessageType(信息類型)的示意圖。Requestmessage即為請(qǐng)求信息,其信息類型為0x00,Rn為O;Replymessage即為回復(fù)信息,其信息類型為0x01,Rn為O;Controlmessiige即為控制信息,其信息類型為0x02,Rn為0;Rnmessiige即為結(jié)束信息,其信息類型為0x02,Hn為1;ACKmessiige即為確認(rèn)信息,其信息類型為0x03,Hn為0。最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。權(quán)利要求1.一種安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其特征在于,該方法包括步驟a.用戶設(shè)備創(chuàng)建請(qǐng)求信息,發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備,該遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該請(qǐng)求信息數(shù)據(jù)包,所述的用戶設(shè)備和遠(yuǎn)程無(wú)線設(shè)備擁有共同的成對(duì)主密鑰;b.當(dāng)該請(qǐng)求信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備創(chuàng)建回復(fù)信息,發(fā)送回復(fù)信息數(shù)據(jù)包至所述用戶設(shè)備,用戶設(shè)備校驗(yàn)該回復(fù)信息數(shù)據(jù)包;c.當(dāng)該回復(fù)信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述用戶設(shè)備創(chuàng)建并加密控制信息,發(fā)送控制信息數(shù)據(jù)包至所述遠(yuǎn)程無(wú)線設(shè)備,遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該控制信息數(shù)據(jù)包;d.當(dāng)該控制信息數(shù)據(jù)包檢驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備解密并處理控制信息,發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備,用戶設(shè)備校驗(yàn)確認(rèn)信息數(shù)據(jù)包,等待發(fā)送下一個(gè)控制信息數(shù)據(jù)包2.如權(quán)利要求1所述的安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其特征在于,所述步驟a包括al.用戶設(shè)備生成隨機(jī)數(shù)PNance以及設(shè)置用戶設(shè)備的序列號(hào)SNp;a2.用戶設(shè)備創(chuàng)建請(qǐng)求信息,以用戶設(shè)備的成對(duì)主密鑰與請(qǐng)求信息為參數(shù),通過(guò)HMAC-MD5算法得到請(qǐng)求信息的信息完整性編碼;a3.用戶設(shè)備發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備,所述的請(qǐng)求信息數(shù)據(jù)包包括用戶設(shè)備的請(qǐng)求信息、SNp、PNance以及請(qǐng)求信息的信息完整性編碼,并設(shè)置其超時(shí)值為tl;a4.遠(yuǎn)程無(wú)線設(shè)備初始化設(shè)置遠(yuǎn)程無(wú)線設(shè)備的序列號(hào)SNr=0,接收來(lái)自用戶設(shè)備的請(qǐng)求信息數(shù)據(jù)包;a5.遠(yuǎn)程無(wú)線設(shè)備通過(guò)以成對(duì)主密鑰與所接收的請(qǐng)求信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的請(qǐng)求信息的信息完整性編碼,校驗(yàn)其是否和用戶設(shè)備發(fā)送的請(qǐng)求信息的信息完整性編碼一致;若一致,則進(jìn)入步驟a7;若不一致,則進(jìn)入步驟a6;a6.遠(yuǎn)程無(wú)線設(shè)備放棄此請(qǐng)求信息數(shù)據(jù)包,并返回步驟a4。a7.遠(yuǎn)程無(wú)線設(shè)備生成隨機(jī)數(shù)RNance并保存,以及保存請(qǐng)求信息數(shù)據(jù)包中的PNonce03.如權(quán)利要求2所述的安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其特征在于,所述步驟b包括bl.以遠(yuǎn)程無(wú)線設(shè)備的成對(duì)主密鑰、RNance及所接收請(qǐng)求信息數(shù)據(jù)包中的PNance為參數(shù),使用偽隨機(jī)函數(shù)得到遠(yuǎn)程無(wú)線設(shè)備的成對(duì)臨時(shí)密鑰;b2.以該成對(duì)臨時(shí)密鑰、PNonce、RNance為參數(shù),使用偽隨機(jī)函數(shù)得到遠(yuǎn)程無(wú)線設(shè)備的密鑰流,提取該密鑰流的前16個(gè)字節(jié)組成遠(yuǎn)程無(wú)線設(shè)備的信息完整性編碼密鑰,并設(shè)置SNr=SNp+1;b3.遠(yuǎn)程無(wú)線設(shè)備創(chuàng)建回復(fù)信息,然后以成對(duì)主密鑰以及回復(fù)信息為參數(shù),根據(jù)HMAC-MD5算法計(jì)算回復(fù)信息的信息完整性編碼;b4.遠(yuǎn)程無(wú)線設(shè)備發(fā)送回復(fù)信息數(shù)據(jù)包至用戶設(shè)備,所述的回復(fù)信息數(shù)據(jù)包包括回復(fù)信息、SNr、RNance以及回復(fù)信息的信息完整性編碼,并設(shè)置其超時(shí)值為t2;b5.用戶設(shè)備判斷在tl時(shí)間內(nèi)是否收到回復(fù)信息,若收到回復(fù)信息,則進(jìn)入步驟b6;若沒(méi)有收到回復(fù)信息,則結(jié)束;b6.用戶設(shè)備校驗(yàn)所接收到的回復(fù)信息數(shù)據(jù)包中的SNr是否等于SNp+Ι,若SNr等于SNp+Ι,則進(jìn)入步驟b8,若SNr不等于SNp+1,則進(jìn)入步驟b7;b7.用戶設(shè)備放棄此回復(fù)信息數(shù)據(jù)包,返回步驟b5;b8.用戶設(shè)備以成對(duì)主密鑰以及所接收的回復(fù)信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的回復(fù)信息的信息完整性編碼,校驗(yàn)其是否和遠(yuǎn)程無(wú)線設(shè)備發(fā)送的回復(fù)信息的信息完整性編碼一致,若一致,則進(jìn)入步驟b9,若不一致,則進(jìn)入步驟b7;b9.以成對(duì)主密鑰、PNonce、所接收的回復(fù)信息數(shù)據(jù)包中的RNance為參數(shù),使用偽隨機(jī)函數(shù)產(chǎn)生用戶設(shè)備的成對(duì)臨時(shí)密鑰;blO.以用戶設(shè)備的成對(duì)臨時(shí)密鑰、PNance及所接收的回復(fù)信息數(shù)據(jù)包中的RNance為參數(shù),使用偽隨機(jī)函數(shù)產(chǎn)生用戶設(shè)備的密鑰流,并提取該密鑰流的前16個(gè)字節(jié)組成信息完整性編碼密鑰以及提取該密鑰流的后16個(gè)字節(jié)組成用戶設(shè)備的數(shù)據(jù)加密密鑰。4.如權(quán)利要求3所述的安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其特征在于,所述步驟c包括Cl.用戶設(shè)備設(shè)置SNp=SNp+2,創(chuàng)建控制信息,以用戶設(shè)備的信息完整性編碼密鑰以及控制信息為參數(shù),通過(guò)HMAC-MD5算法計(jì)算得到控制信息的信息完整性編碼,使用用戶設(shè)備的數(shù)據(jù)加密密鑰對(duì)控制信息的數(shù)據(jù)部分進(jìn)行加密,得到加密的控制信息的數(shù)據(jù)部分;c2.用戶設(shè)備發(fā)送控制信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備,所述控制信息數(shù)據(jù)包包括用戶設(shè)備的控制信息、SNp、PNonce,控制信息的信息完整性編碼以及加密的控制信息的數(shù)據(jù)部分,設(shè)置其超時(shí)值為t3;c3.遠(yuǎn)程無(wú)線設(shè)備判斷在t2時(shí)間內(nèi)是否收到控制信息數(shù)據(jù)包,若收到該控制信息數(shù)據(jù)包,則進(jìn)入步驟c4;若沒(méi)有收到用戶設(shè)備的控制信息數(shù)據(jù)包,則返回步驟a4;c4.遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)所接收的控制信息數(shù)據(jù)包中的PNance與所接收的請(qǐng)求信息數(shù)據(jù)包中的PNance是否一致,若一致,則進(jìn)入步驟c6;若不一致,則進(jìn)入步驟c5;c5.遠(yuǎn)程無(wú)線設(shè)備放棄此控制信息數(shù)據(jù)包,轉(zhuǎn)至步驟c3。c6.遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)控制信息數(shù)據(jù)包中的SNp是否等于SNr+Ι,若SNp等于SNr+1,則進(jìn)入步驟c7;若SNp不等于SNr+Ι,則進(jìn)入步驟c5;c7.遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)控制信息的信息完整性編碼,由遠(yuǎn)程無(wú)線設(shè)備以遠(yuǎn)程無(wú)線設(shè)備的信息完整性編碼密鑰以及所接收的控制信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的控制信息的信息完整性編碼,校驗(yàn)其是否和用戶設(shè)備發(fā)送的控制信息的信息完整性編碼一致;若一致,則進(jìn)入步驟c8;若不一致,則進(jìn)入步驟c5;c8.判斷此控制信息是否是結(jié)束信息,若不是結(jié)束信息,則進(jìn)入步驟c9,若是結(jié)束信息,則返回步驟a4;c9.解密控制信息的數(shù)據(jù)部分,得到控制信息并處理該控制信息。5.如權(quán)利要求4所述的安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,其特征在于,所述步驟d包括dl.遠(yuǎn)程無(wú)線設(shè)備設(shè)置SNr=SNr+2,并以遠(yuǎn)程無(wú)線設(shè)備的信息完整性編碼密鑰以及確認(rèn)信息為參數(shù),結(jié)合HMAC-MD5算法得到確認(rèn)信息的信息完整性編碼;d2.遠(yuǎn)程無(wú)線設(shè)備發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備,所述的確認(rèn)信息數(shù)據(jù)包包括遠(yuǎn)程無(wú)線設(shè)備的確認(rèn)信息、SNr、RNance以及確認(rèn)信息的信息完整性編碼,并等待接收下一個(gè)控制信息數(shù)據(jù)包;d3.用戶設(shè)備判斷在t3時(shí)間內(nèi)是否收到確認(rèn)信息數(shù)據(jù)包,若接收到確認(rèn)信息數(shù)據(jù)包,則進(jìn)入步驟d4;若沒(méi)有收到確認(rèn)信息數(shù)據(jù)包,則結(jié)束;d4.用戶設(shè)備校驗(yàn)所接收的確認(rèn)信息數(shù)據(jù)包中的RNance與所接收的回復(fù)信息數(shù)據(jù)包中的RNance是否一致,若一致,則進(jìn)入步驟d6;若不一致,則進(jìn)入步驟d5;d5.用戶設(shè)備放棄此確認(rèn)信息數(shù)據(jù)包,轉(zhuǎn)至步驟d3;d6.用戶設(shè)備校驗(yàn)SNr是否等于SNp+1,若SNr等于SNp+1,則進(jìn)入步驟d7;若SNr不等于SNp+Ι,則進(jìn)入步驟d5;d7.用戶設(shè)備校驗(yàn)確認(rèn)信息的信息完整性編碼,由用戶設(shè)備通過(guò)用戶設(shè)備的信息完整性編碼密鑰以及所接收的確認(rèn)信息為參數(shù),結(jié)合HMAC-MD5算法再次得到所接收的確認(rèn)信息的信息完整性編碼,校驗(yàn)其是否和遠(yuǎn)程無(wú)線設(shè)備的所發(fā)送的確認(rèn)信息的信息完整性編碼一致,若一致,則進(jìn)入步驟d8;若不一致,則進(jìn)入步驟d5;d8.用戶設(shè)備判斷是否發(fā)送下一個(gè)控制信息,如果是,則返回步驟Cl,若不是,則結(jié)束ο全文摘要本發(fā)明提供一種安全控制遠(yuǎn)程無(wú)線設(shè)備的方法,該方法包括步驟用戶設(shè)備發(fā)送請(qǐng)求信息數(shù)據(jù)包至遠(yuǎn)程無(wú)線設(shè)備,該遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該請(qǐng)求信息數(shù)據(jù)包;當(dāng)該請(qǐng)求信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備發(fā)送回復(fù)信息數(shù)據(jù)包至所述用戶設(shè)備,用戶設(shè)備校驗(yàn)該回復(fù)信息數(shù)據(jù)包;當(dāng)該回復(fù)信息數(shù)據(jù)包校驗(yàn)無(wú)誤時(shí),所述用戶設(shè)備創(chuàng)建并加密控制信息,發(fā)送控制信息數(shù)據(jù)包至所述遠(yuǎn)程無(wú)線設(shè)備,遠(yuǎn)程無(wú)線設(shè)備校驗(yàn)該控制信息數(shù)據(jù)包;當(dāng)該控制信息數(shù)據(jù)包檢驗(yàn)無(wú)誤時(shí),所述遠(yuǎn)程無(wú)線設(shè)備解密并處理控制信息,發(fā)送確認(rèn)信息數(shù)據(jù)包至用戶設(shè)備,用戶設(shè)備校驗(yàn)確認(rèn)信息數(shù)據(jù)包,等待發(fā)送下一個(gè)控制信息數(shù)據(jù)包。本發(fā)明提供完整的身份校驗(yàn)及信息加密機(jī)制。文檔編號(hào)H04L29/06GK102026171SQ20091030718公開(kāi)日2011年4月20日申請(qǐng)日期2009年9月17日優(yōu)先權(quán)日2009年9月17日發(fā)明者呂啟明,李東明申請(qǐng)人:國(guó)基電子(上海)有限公司,鴻海精密工業(yè)股份有限公司