專利名稱:基于雙向安全認(rèn)證的數(shù)據(jù)下載方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全領(lǐng)域,具體而言,涉及一種基于雙向安全認(rèn)證的數(shù)據(jù)下載方法及系統(tǒng)。
背景技術(shù):
現(xiàn)有網(wǎng)絡(luò)信息安全領(lǐng)域可以實(shí)現(xiàn)由公私鑰生成模塊生成密鑰,通過公私鑰交換匹配生成不同的驗(yàn)證參數(shù),實(shí)現(xiàn)不同終端之間的認(rèn)證過程。但現(xiàn)有的認(rèn)證方式通常為單向安全認(rèn)證,且在認(rèn)證完成之后,對(duì)數(shù)據(jù)的安全下載并沒有提供一個(gè)完善的安全機(jī)制。目前針對(duì)相關(guān)技術(shù)的不同終端之間僅采用單向安全認(rèn)證,導(dǎo)致安全認(rèn)證機(jī)制和數(shù)據(jù)安全下載機(jī)制不完善的問題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
針對(duì)相關(guān)技術(shù)的不同終端之間僅采用單向安全認(rèn)證,導(dǎo)致安全認(rèn)證機(jī)制和數(shù)據(jù)安全下載機(jī)制不完善的問題,目前尚未提出有效的問題而提出本發(fā)明,為此,本發(fā)明的主要目的在于提供一種基于雙向安全認(rèn)證的數(shù)據(jù)下載方法及系統(tǒng),以解決上述問題。為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種基于雙向安全認(rèn)證的數(shù)據(jù)下載方法,該方法包括第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果;在根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端之后,第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端。進(jìn)一步地,在第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端之前,方法還包括獲取第一終端和第二終端的公私鑰對(duì),并將第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY保存至第二終端,將第一終端私鑰和對(duì)稱密鑰KEY保存至安全芯片,安全芯片內(nèi)置在第一終端之中。進(jìn)一步地,第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果包括 第一終端將生成的第一隨機(jī)數(shù)發(fā)送至第二終端,第二終端根據(jù)對(duì)稱密鑰KEY對(duì)第一隨機(jī)數(shù)進(jìn)行加密,以獲取第一驗(yàn)證碼;在第一終端接收到第二終端返回的第一驗(yàn)證碼之后,通過保存在安全芯片中的對(duì)稱密鑰KEY對(duì)第一驗(yàn)證碼進(jìn)行解密,以獲取解密結(jié)果;通過驗(yàn)證解密結(jié)果與第一隨機(jī)數(shù)是否相同來獲取第二驗(yàn)證結(jié)果,在相同的情況下,第一驗(yàn)證結(jié)果為第二終端是第一終端的合法終端,在不相同的情況下,第一驗(yàn)證結(jié)果為第二終端是非法終端。進(jìn)一步地,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果包括第二終端將生成的第二隨機(jī)數(shù)發(fā)送給第一終端,第一終端根據(jù)安全芯片中保存的第一終端私鑰將第二隨機(jī)數(shù)進(jìn)行簽名,以獲取第二驗(yàn)證碼;在第二終端接收到第一終端返回的第二驗(yàn)證碼之后,通過第二終端中的第一終端公鑰對(duì)第二驗(yàn)證碼進(jìn)行驗(yàn)證,以獲取驗(yàn)簽結(jié)果;通過驗(yàn)證驗(yàn)簽結(jié)果與第一終端私鑰是否匹配來獲取第二驗(yàn)證結(jié)果,在匹配的情況下,第二驗(yàn)證結(jié)果為第一終端是第二終端的合法終端,在不匹配的情況下,第二驗(yàn)證結(jié)果為第一終端是非法終端。進(jìn)一步地,第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端包括第二終端對(duì)數(shù)據(jù)進(jìn)行哈希計(jì)算,以得到數(shù)字摘要;通過第二終端私鑰對(duì)數(shù)字摘要進(jìn)行簽名,來獲取附加簽名信息;通過會(huì)話密鑰將附加了附加簽名信息的數(shù)據(jù)進(jìn)行加密,以獲取安全數(shù)據(jù),并將安全數(shù)據(jù)下載至第二終端。進(jìn)一步地,在第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端之后,方法還包括第一終端獲取到會(huì)話密鑰和第二終端公鑰;使用獲取到的會(huì)話密鑰對(duì)安全數(shù)據(jù)進(jìn)行解密,并使用獲取到的第二終端公鑰對(duì)該解密后的安全數(shù)據(jù)進(jìn)行數(shù)字摘要驗(yàn)證,在驗(yàn)證通過的情況下,第一終端下載數(shù)據(jù)成功。 進(jìn)一步地,在第一終端獲取到會(huì)話密鑰和第二終端公鑰之前,方法還包括第二終端生成會(huì)話密鑰,通過第二終端私鑰對(duì)會(huì)話密鑰進(jìn)行簽名,以獲取簽名會(huì)話密鑰;通過對(duì)稱密鑰KEY對(duì)第二終端公鑰和簽名會(huì)話密鑰進(jìn)行加密,并將得到的加密結(jié)果發(fā)送給第二終端。進(jìn)一步地,第一終端獲取到會(huì)話密鑰和第二終端公鑰包括第一終端接收加密結(jié)果;第一終端通過安全芯片中的對(duì)稱密鑰KEY解密加密結(jié)果,以獲取第二終端公鑰和簽名會(huì)話密鑰;第二終端對(duì)簽名會(huì)話密鑰進(jìn)行驗(yàn)簽后,得到會(huì)話密鑰。為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種基于雙向安全認(rèn)證的數(shù)據(jù)下載系統(tǒng),該系統(tǒng)包括第一終端,發(fā)送數(shù)據(jù)下載請(qǐng)求;第二終端,接收數(shù)據(jù)下載請(qǐng)求,并在驗(yàn)證第一終端和第二終端彼此為合法終端之后,將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端;其中,第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果; 在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果,根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端。進(jìn)一步地,第二終端保存第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY,系統(tǒng)還包括安全芯片,內(nèi)置在第一終端之中,用于保存第一終端私鑰和對(duì)稱密鑰KEY。通過本發(fā)明,采用第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果;在根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端之后,第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端,解決了相關(guān)現(xiàn)有技術(shù)的不同終端之間僅采用單向安全認(rèn)證,導(dǎo)致安全認(rèn)證機(jī)制和數(shù)據(jù)安全下載機(jī)制不完善的問題, 進(jìn)而實(shí)現(xiàn)在不同終端之間創(chuàng)建雙向認(rèn)證通道,以及安全下載,保護(hù)了交互數(shù)據(jù)的安全性和完整性的效果。
此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中圖1是根據(jù)本發(fā)明實(shí)施例的基于雙向安全認(rèn)證的數(shù)據(jù)下載系統(tǒng)的結(jié)構(gòu)示意圖;圖2是根據(jù)圖1所示實(shí)施例中終端設(shè)備驗(yàn)證前端設(shè)備的示意圖;圖3是根據(jù)圖1所示實(shí)施例中前端設(shè)備驗(yàn)證終端設(shè)備的示意圖;圖4是根據(jù)圖1所示實(shí)施例中前端設(shè)備下發(fā)數(shù)據(jù)的方法流程圖5是根據(jù)圖1所示實(shí)施例中后端設(shè)備驗(yàn)證下發(fā)數(shù)據(jù)的方法流程圖;圖6是根據(jù)本發(fā)明實(shí)施例的基于雙向安全認(rèn)證的數(shù)據(jù)下載方法的流程圖;圖7是根據(jù)圖6所示實(shí)施例中前端設(shè)備下發(fā)數(shù)據(jù)的功能示意圖。
具體實(shí)施例方式需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。圖1是根據(jù)本發(fā)明實(shí)施例的基于雙向安全認(rèn)證的數(shù)據(jù)下載系統(tǒng)的結(jié)構(gòu)示意圖。如圖1所示,該基于雙向安全認(rèn)證的數(shù)據(jù)下載系統(tǒng)包括第一終端,發(fā)送數(shù)據(jù)下載請(qǐng)求;第二終端,接收數(shù)據(jù)下載請(qǐng)求,并在驗(yàn)證第一終端和第二終端彼此為合法終端之后,將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端;其中,第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果,根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端。本申請(qǐng)的上述實(shí)施例通過在第一終端和第二終端之間建立雙向認(rèn)證通道,并在雙向認(rèn)證成功之后完成安全下載的過程,這種基于雙向安全認(rèn)證的安全下載系統(tǒng)完善了不同終端之間的安全認(rèn)證機(jī)制和數(shù)據(jù)安全下載機(jī)制,保護(hù)了交互數(shù)據(jù)的安全性和完整性。本申請(qǐng)的上述實(shí)施例的系統(tǒng)還可以包括一個(gè)安全芯片,內(nèi)置在第一終端之中,用于保存第一終端私鑰和對(duì)稱密鑰KEY,且在第二終端中保存第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY。該安全芯片內(nèi)部設(shè)有密鑰處理機(jī)制,用于存放密鑰和產(chǎn)生密鑰。該實(shí)施例利用安全芯片的特有屬性來建立兩個(gè)終端之間的雙向認(rèn)證通道,實(shí)現(xiàn)安全下載,這種基于安全芯片雙向認(rèn)證的下載方法,其建立安全認(rèn)證時(shí)通過對(duì)稱密鑰和非對(duì)稱密鑰機(jī)制,共同實(shí)現(xiàn)認(rèn)證過程,并且是在建立安全認(rèn)證的基礎(chǔ)上,實(shí)現(xiàn)了安全下載的過程。具體的,本發(fā)明上述系統(tǒng)中的第一終端為一個(gè)具有安全芯片,用來接收下載數(shù)據(jù)的終端設(shè)備,而第二終端為一個(gè)用來產(chǎn)生下載數(shù)據(jù),并將數(shù)據(jù)下載至第一終端的前端設(shè)備, 即上述實(shí)例實(shí)現(xiàn)了終端設(shè)備和前端設(shè)備以雙向認(rèn)證為基礎(chǔ),實(shí)現(xiàn)安全下載的過程。其中,安全芯片作為可信任的安全設(shè)備,其內(nèi)部包含特殊的密鑰處理機(jī)制,通過置入芯片標(biāo)識(shí)等一些特征性信息,使安全芯片成為唯一且不可復(fù)制的安全設(shè)備。圖1所示的實(shí)施例在詳細(xì)實(shí)施過程如下首先,前端設(shè)備和終端設(shè)備生成公私鑰對(duì),可以將前端設(shè)備的私鑰、對(duì)稱密鑰Key 和終端設(shè)備的公鑰保留在前端設(shè)備;終端安全芯片中存儲(chǔ)終端私鑰和對(duì)稱密鑰Key ;然后,如圖2所示,開始驗(yàn)證終端設(shè)備是不是對(duì)應(yīng)該前端設(shè)備的合法終端終端設(shè)備生成隨機(jī)數(shù)A發(fā)送給前端設(shè)備;前端設(shè)備利用對(duì)稱密鑰Key對(duì)隨機(jī)數(shù)A進(jìn)行加密,生成 Key(A),并回傳給終端設(shè)備;終端設(shè)備利用對(duì)稱密鑰Key對(duì)Key(A)進(jìn)行解密;終端設(shè)備驗(yàn)證前端設(shè)備回傳的隨機(jī)數(shù)A是否與終端保存的隨機(jī)數(shù)A—致,如果一致,則終端設(shè)備驗(yàn)證前端設(shè)備成功。在終端設(shè)備驗(yàn)證前端設(shè)備成功之后,如圖3所示,開始驗(yàn)證前端設(shè)備是不是對(duì)應(yīng)該終端設(shè)備的合法終端前端設(shè)備自動(dòng)生成隨機(jī)數(shù)B,發(fā)送給終端設(shè)備;終端設(shè)備收到前端設(shè)備發(fā)來的隨機(jī)數(shù)B后,終端設(shè)備用存儲(chǔ)于安全芯片的終端私鑰對(duì)隨機(jī)數(shù)B進(jìn)行簽名,得到R(B),并回傳給前端設(shè)備,在前端設(shè)備收到終端設(shè)備回傳的R(B)后,用終端公鑰進(jìn)行驗(yàn)簽, 如果驗(yàn)簽通過,表示前端驗(yàn)證終端設(shè)備成功。此時(shí),如圖4所示,在完成上述前端設(shè)備和后端設(shè)備的雙認(rèn)證功能之后,前端設(shè)備在對(duì)終端設(shè)備進(jìn)行軟件下發(fā)時(shí),前端設(shè)備首先對(duì)軟件進(jìn)行哈希計(jì)算得到數(shù)字摘要;然后前端設(shè)備用自己的私鑰對(duì)數(shù)字摘要進(jìn)行簽名,并把簽名后的數(shù)字摘要附加在要下發(fā)的數(shù)據(jù) (例如軟件)后面,用會(huì)話密鑰進(jìn)行加密后,發(fā)送給終端用戶。最后,如圖5所示,終端設(shè)備接收下發(fā)的軟件后,終端設(shè)備用會(huì)話密鑰解密,用前端公鑰對(duì)數(shù)字摘要的簽名進(jìn)行驗(yàn)證;如果驗(yàn)證通過,說明文件在傳輸過程中沒有被破壞。其中,終端設(shè)備獲取會(huì)話密鑰和前端公鑰的過程如下首先,在前端設(shè)備中自動(dòng)生成一個(gè)會(huì)話密鑰,連同前端公鑰,用前端私鑰對(duì)會(huì)話密鑰進(jìn)行簽名,再用終端設(shè)備對(duì)稱密鑰 Key加密前端公鑰和簽名后的會(huì)話密鑰并發(fā)送給終端設(shè)備。終端設(shè)備通過解密并驗(yàn)簽后,得到明文的會(huì)話密鑰和前端公鑰。圖6是根據(jù)本發(fā)明實(shí)施例的基于雙向安全認(rèn)證的數(shù)據(jù)下載方法的流程圖;圖7是根據(jù)圖6所示實(shí)施例中前端設(shè)備下發(fā)數(shù)據(jù)的功能示意圖。如圖6所示,該方法包括如下步驟步驟S102,第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果。步驟S104,在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果。步驟S106,在根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端之后,第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端。本申請(qǐng)的上述實(shí)施例通過在第一終端和第二終端之間建立雙向認(rèn)證通道,并在雙向認(rèn)證成功之后完成安全下載的過程,這種基于雙向安全認(rèn)證的安全下載系統(tǒng)完善了不同終端之間的安全認(rèn)證機(jī)制和數(shù)據(jù)安全下載機(jī)制。具體的,本發(fā)明的方法實(shí)例中,第一終端可以為一個(gè)具有安全芯片,用來接收下載數(shù)據(jù)的終端設(shè)備,而第二終端可以為一個(gè)用來產(chǎn)生下載數(shù)據(jù),并將數(shù)據(jù)下載至第一終端的前端設(shè)備,即上述實(shí)例實(shí)現(xiàn)了終端設(shè)備和前端設(shè)備以雙向認(rèn)證為基礎(chǔ)本申請(qǐng)上述實(shí)施例中,在步驟S102第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端之前,方法還包括獲取第一終端和第二終端的公私鑰對(duì),并將第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY保存至第二終端,將第一終端私鑰和對(duì)稱密鑰KEY保存至安全芯片,安全芯片內(nèi)置在第一終端之中。本申請(qǐng)上述實(shí)施例中的步驟S102第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果可以包括如下步驟第一終端將生成的第一隨機(jī)數(shù)發(fā)送至第二終端,第二終端根據(jù)對(duì)稱密鑰KEY對(duì)第一隨機(jī)數(shù)進(jìn)行加密,以獲取第一驗(yàn)證碼;在第一終端接收到第二終端返回的第一驗(yàn)證碼之后,通過保存在安全芯片中的對(duì)稱密鑰KEY對(duì)第一驗(yàn)證碼進(jìn)行解密,以獲取解密結(jié)果;通過驗(yàn)證解密結(jié)果與第一隨機(jī)數(shù)是否相同來獲取第二驗(yàn)證結(jié)果, 在相同的情況下,第一驗(yàn)證結(jié)果為第二終端是第一終端的合法終端,在不相同的情況下,第一驗(yàn)證結(jié)果為第二終端是非法終端。本申請(qǐng)上述步驟S104 第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果包括第二終端將生成的第二隨機(jī)數(shù)發(fā)送給第一終端,第一終端根據(jù)安全芯片中保存的第一終端私鑰將第二隨機(jī)數(shù)進(jìn)行簽名,以獲取第二驗(yàn)證碼;在第二終端接收到第一終端返回的第二驗(yàn)證碼之后,通過第二終端中的第一終端公鑰對(duì)第二驗(yàn)證碼進(jìn)行驗(yàn)證,以獲取驗(yàn)簽結(jié)果;通過驗(yàn)證驗(yàn)簽結(jié)果與第一終端私鑰是否匹配來獲取第二驗(yàn)證結(jié)果,在匹配的情況下,第二驗(yàn)證結(jié)果為第一終端是第二終端的合法終端,在不匹配的情況下,第二驗(yàn)證結(jié)果為第一終端是非法終端。上述步驟S102和步驟S104的具體實(shí)施步驟,實(shí)現(xiàn)了終端設(shè)備利用對(duì)稱加密算法, 下發(fā)隨機(jī)數(shù)給前端設(shè)備,前端設(shè)備加密后回傳給終端設(shè)備,終端設(shè)備完成驗(yàn)證前端設(shè)備。然后,前端設(shè)備采用非對(duì)稱加密算法,下發(fā)隨機(jī)數(shù)給終端設(shè)備,終端設(shè)備簽名后回傳給前端設(shè)備,前端設(shè)備完成驗(yàn)證終端設(shè)備。從而實(shí)現(xiàn)雙向認(rèn)證。前端設(shè)備和終端設(shè)備相互認(rèn)證后建立了一種安全通道,保證前端和終端的安全交互。本申請(qǐng)上述實(shí)施例中,如圖7所示,步驟S106第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端可以包括如下實(shí)施方式第二終端(前端設(shè)備)對(duì)數(shù)據(jù)進(jìn)行哈希計(jì)算,以得到數(shù)字摘要;通過第二終端私鑰對(duì)數(shù)字摘要進(jìn)行簽名,來獲取附加簽名信息;通過會(huì)話密鑰將附加了附加簽名信息的數(shù)據(jù)進(jìn)行加密,以獲取安全數(shù)據(jù),并將安全數(shù)據(jù)下載至第二終端。上述步驟S106的具體實(shí)施步驟,可以實(shí)現(xiàn)前端設(shè)備下發(fā)軟件數(shù)據(jù)時(shí)首先經(jīng)過安全通道的保護(hù),然后前端設(shè)備對(duì)下發(fā)的軟件信息進(jìn)行簽名,終端設(shè)備對(duì)前端設(shè)備下發(fā)的軟件信息進(jìn)行驗(yàn)證,使得終端設(shè)備能夠得到完整可靠的軟件信息。本申請(qǐng)的上述實(shí)施過程中,在第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端之后,方法還包括如圖7所示的實(shí)施方式第一終端(終端設(shè)備)獲取到會(huì)話密鑰和第二終端公鑰;使用獲取到的會(huì)話密鑰對(duì)安全數(shù)據(jù)進(jìn)行解密,并使用獲取到的第二終端公鑰對(duì)該解密后的安全數(shù)據(jù)進(jìn)行數(shù)字摘要驗(yàn)證,在驗(yàn)證通過的情況下,第一終端下載數(shù)據(jù)成功。本申請(qǐng)上述實(shí)施例中,在第一終端獲取到會(huì)話密鑰和第二終端公鑰之前,方法還包括第二終端生成會(huì)話密鑰,通過第二終端私鑰對(duì)會(huì)話密鑰進(jìn)行簽名,以獲取簽名會(huì)話密鑰;通過對(duì)稱密鑰KEY對(duì)第二終端公鑰和簽名會(huì)話密鑰進(jìn)行加密,并將得到的加密結(jié)果發(fā)
送給第二終端。優(yōu)選地,第一終端獲取到會(huì)話密鑰和第二終端公鑰的步驟可以包括第一終端接收加密結(jié)果;第一終端通過安全芯片中的對(duì)稱密鑰KEY解密加密結(jié)果,以獲取第二終端公鑰和簽名會(huì)話密鑰;第二終端對(duì)簽名會(huì)話密鑰進(jìn)行驗(yàn)簽后,得到會(huì)話密鑰。需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。本申請(qǐng)上述各個(gè)實(shí)施例的基于雙向安全認(rèn)證的數(shù)據(jù)下載方法和系統(tǒng)可以應(yīng)用于數(shù)字電視領(lǐng)域,例如在數(shù)字電視端從機(jī)頂盒下載電視數(shù)據(jù)時(shí),可以首先驗(yàn)證數(shù)字電視和機(jī)頂盒是不是經(jīng)過雙向認(rèn)證的合法終端(即此時(shí)數(shù)字電視可以為前端,機(jī)頂盒可以為終端), 在驗(yàn)證他們都是彼此的合法終端之后,機(jī)頂盒可以下載安全數(shù)據(jù)(加密過的電視數(shù)據(jù))至數(shù)字電視,供用戶觀看。其中,安全芯片可以安裝在機(jī)頂盒中。從以上的描述中,可以看出,本發(fā)明實(shí)現(xiàn)了如下技術(shù)效果本發(fā)明是基于安全芯片雙向認(rèn)證的下載方法,該方法通過利用安全芯片內(nèi)部的密鑰處理機(jī)制,實(shí)現(xiàn)雙向認(rèn)證過程, 并保護(hù)交互數(shù)據(jù)的安全性和完整性。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于雙向安全認(rèn)證的數(shù)據(jù)下載方法,其特征在于,包括 第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)所述第一驗(yàn)證結(jié)果確定所述第二終端為合法終端之后,所述第二終端通過非對(duì)稱密鑰算法驗(yàn)證所述第一終端,以獲取第二驗(yàn)證結(jié)果;在根據(jù)所述第二驗(yàn)證結(jié)果確定所述第一終端為合法終端之后,所述第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至所述第一終端。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端之前,所述方法還包括獲取所述第一終端和所述第二終端的公私鑰對(duì),并將第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY保存至第二終端,將第一終端私鑰和對(duì)稱密鑰KEY保存至安全芯片,所述安全芯片內(nèi)置在所述第一終端之中。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果包括所述第一終端將生成的第一隨機(jī)數(shù)發(fā)送至所述第二終端,所述第二終端根據(jù)所述對(duì)稱密鑰KEY對(duì)所述第一隨機(jī)數(shù)進(jìn)行加密,以獲取第一驗(yàn)證碼;在所述第一終端接收到所述第二終端返回的所述第一驗(yàn)證碼之后,通過保存在所述安全芯片中的對(duì)稱密鑰KEY對(duì)所述第一驗(yàn)證碼進(jìn)行解密,以獲取解密結(jié)果;通過驗(yàn)證所述解密結(jié)果與所述第一隨機(jī)數(shù)是否相同來獲取所述第二驗(yàn)證結(jié)果,在相同的情況下,所述第一驗(yàn)證結(jié)果為所述第二終端是所述第一終端的合法終端,在不相同的情況下,所述第一驗(yàn)證結(jié)果為所述第二終端是非法終端。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述第二終端通過非對(duì)稱密鑰算法驗(yàn)證所述第一終端,以獲取第二驗(yàn)證結(jié)果包括所述第二終端將生成的第二隨機(jī)數(shù)發(fā)送給所述第一終端,所述第一終端根據(jù)所述安全芯片中保存的第一終端私鑰將所述第二隨機(jī)數(shù)進(jìn)行簽名,以獲取第二驗(yàn)證碼;在所述第二終端接收到所述第一終端返回的所述第二驗(yàn)證碼之后,通過所述第二終端中的所述第一終端公鑰對(duì)所述第二驗(yàn)證碼進(jìn)行驗(yàn)證,以獲取驗(yàn)簽結(jié)果;通過驗(yàn)證所述驗(yàn)簽結(jié)果與所述第一終端私鑰是否匹配來獲取第二驗(yàn)證結(jié)果,在匹配的情況下,所述第二驗(yàn)證結(jié)果為所述第一終端是所述第二終端的合法終端,在不匹配的情況下,所述第二驗(yàn)證結(jié)果為所述第一終端是非法終端。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至所述第一終端包括所述第二終端對(duì)所述數(shù)據(jù)進(jìn)行哈希計(jì)算,以得到數(shù)字摘要; 通過所述第二終端私鑰對(duì)所述數(shù)字摘要進(jìn)行簽名,來獲取附加簽名信息; 通過會(huì)話密鑰將附加了所述附加簽名信息的數(shù)據(jù)進(jìn)行加密,以獲取安全數(shù)據(jù),并將所述安全數(shù)據(jù)下載至所述第二終端。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,在所述第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至所述第一終端之后,所述方法還包括所述第一終端獲取到所述會(huì)話密鑰和第二終端公鑰;使用獲取到的所述會(huì)話密鑰對(duì)所述安全數(shù)據(jù)進(jìn)行解密,并使用獲取到的所述第二終端公鑰對(duì)該解密后的安全數(shù)據(jù)進(jìn)行數(shù)字摘要驗(yàn)證,在驗(yàn)證通過的情況下,所述第一終端下載所述數(shù)據(jù)成功。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在所述第一終端獲取到所述會(huì)話密鑰和第二終端公鑰之前,所述方法還包括所述第二終端生成所述會(huì)話密鑰,通過所述第二終端私鑰對(duì)所述會(huì)話密鑰進(jìn)行簽名, 以獲取簽名會(huì)話密鑰;通過所述對(duì)稱密鑰KEY對(duì)所述第二終端公鑰和所述簽名會(huì)話密鑰進(jìn)行加密,并將得到的加密結(jié)果發(fā)送給所述第二終端。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述第一終端獲取到所述會(huì)話密鑰和第二終端公鑰包括所述第一終端接收所述加密結(jié)果;所述第一終端通過所述安全芯片中的對(duì)稱密鑰KEY解密所述加密結(jié)果,以獲取所述第二終端公鑰和所述簽名會(huì)話密鑰;所述第二終端對(duì)所述簽名會(huì)話密鑰進(jìn)行驗(yàn)簽后,得到所述會(huì)話密鑰。
9.一種基于雙向安全認(rèn)證的數(shù)據(jù)下載系統(tǒng),其特征在于,包括第一終端,發(fā)送數(shù)據(jù)下載請(qǐng)求;第二終端,接收所述數(shù)據(jù)下載請(qǐng)求,并在驗(yàn)證所述第一終端和所述第二終端彼此為合法終端之后,將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至所述第一終端;其中,所述第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)所述第一驗(yàn)證結(jié)果確定所述第二終端為合法終端之后,所述第二終端通過非對(duì)稱密鑰算法驗(yàn)證所述第一終端,以獲取第二驗(yàn)證結(jié)果,根據(jù)所述第二驗(yàn)證結(jié)果確定所述第一終端為合法終端。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述第二終端保存第一終端公鑰、第二終端私鑰以及對(duì)稱密鑰KEY,所述系統(tǒng)還包括安全芯片,內(nèi)置在所述第一終端之中,用于保存第一終端私鑰和對(duì)稱密鑰KEY。
全文摘要
本發(fā)明公開了一種基于雙向安全認(rèn)證的數(shù)據(jù)下載方法及系統(tǒng)。其中,該方法包括第一終端通過對(duì)稱密鑰算法驗(yàn)證第二終端,以獲取第一驗(yàn)證結(jié)果;在根據(jù)第一驗(yàn)證結(jié)果確定第二終端為合法終端之后,第二終端通過非對(duì)稱密鑰算法驗(yàn)證第一終端,以獲取第二驗(yàn)證結(jié)果;在根據(jù)第二驗(yàn)證結(jié)果確定第一終端為合法終端之后,第二終端將通過數(shù)字簽名算法加密處理過的數(shù)據(jù)下載至第一終端。通過本發(fā)明,能夠?qū)崿F(xiàn)在不同終端之間創(chuàng)建雙向認(rèn)證通道,以及安全下載,保護(hù)了交互數(shù)據(jù)的安全性和完整性。
文檔編號(hào)H04L9/32GK102413132SQ20111036403
公開日2012年4月11日 申請(qǐng)日期2011年11月16日 優(yōu)先權(quán)日2011年11月16日
發(fā)明者劉利華, 張向輝, 李京娜, 湯俊峰, 鄭力錚, 陳鵬飛 申請(qǐng)人:北京數(shù)碼視訊軟件技術(shù)發(fā)展有限公司