本發(fā)明涉及移動(dòng)設(shè)備合法性的驗(yàn)證技術(shù)領(lǐng)域,具體為一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法。
背景技術(shù):
移動(dòng)設(shè)備合法性的問題一直是困擾移動(dòng)應(yīng)用系統(tǒng)的一個(gè)問題,移動(dòng)應(yīng)用通常通過提取設(shè)備型號(hào)、硬件唯一標(biāo)識(shí)碼、hash、自行生成隨機(jī)數(shù)等手段用于識(shí)別設(shè)備的合法性,然而這些手段都是通過系統(tǒng)接口實(shí)現(xiàn)的,容易被攻擊者通過劫持相關(guān)接口的方式篡改,從而使得移動(dòng)應(yīng)用遭受到黑客的攻擊。
有鑒于此,特提出本發(fā)明。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)的不足,提供一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法,將移動(dòng)設(shè)備身份憑證轉(zhuǎn)化為公私鑰形式,并將身份憑證和密鑰保存在移動(dòng)設(shè)備端,以避免移動(dòng)設(shè)備身份合法性提取接口被劫持造成的安全風(fēng)險(xiǎn);并且本發(fā)明還提供了實(shí)施該方法的系統(tǒng)。
為解決上述技術(shù)問題,本發(fā)明采用技術(shù)方案的基本構(gòu)思是:
第一方面,本發(fā)明提供了一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的系統(tǒng),包括:
移動(dòng)設(shè)備:用于存儲(chǔ)帶有公鑰的認(rèn)證證書以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰;還用于在接收到設(shè)備認(rèn)證服務(wù)器發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器;
設(shè)備認(rèn)證服務(wù)器:用于存儲(chǔ)簽發(fā)認(rèn)證證書的根證書,以及用于接收到移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證請(qǐng)求后,對(duì)所述移動(dòng)設(shè)備發(fā)送驗(yàn)證請(qǐng)求報(bào)文;并在收到所述應(yīng)答報(bào)文后通過根證書驗(yàn)證該報(bào)文中認(rèn)證證書合法性,之后通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
進(jìn)一步的,上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的系統(tǒng)中,所述移動(dòng)設(shè)備內(nèi)的安全存儲(chǔ)區(qū)域中存儲(chǔ)用于將所述認(rèn)證證書進(jìn)行封裝,并進(jìn)行所述認(rèn)證私鑰的簽名的可信應(yīng)用。
第二方面,本發(fā)明提供了一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法,在設(shè)備認(rèn)證服務(wù)器端,包括:
發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備;以及
存儲(chǔ)簽發(fā)移動(dòng)設(shè)備中的認(rèn)證證書的根證書,其中簽發(fā)的該認(rèn)證證書帶有公鑰且與該公鑰對(duì)應(yīng)的認(rèn)證私鑰在所述移動(dòng)設(shè)備中;在收到移動(dòng)設(shè)備發(fā)回的應(yīng)答報(bào)文后通過根證書驗(yàn)證應(yīng)答報(bào)文中包含的認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文中被認(rèn)證私鑰簽署的簽名的合法性。
進(jìn)一步的,上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法中,在設(shè)備認(rèn)證服務(wù)器端還包括:
發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備的步驟,是在設(shè)備認(rèn)證服務(wù)器接收到移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證請(qǐng)求進(jìn)行的;且在完成移動(dòng)設(shè)備的合法性校驗(yàn)后,將結(jié)果發(fā)送至移動(dòng)應(yīng)用服務(wù)器。
進(jìn)一步的,上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法中,在設(shè)備認(rèn)證服務(wù)器端還包括:生成帶有隨機(jī)數(shù)和挑戰(zhàn)值的請(qǐng)求報(bào)文,將該報(bào)文發(fā)送給移動(dòng)應(yīng)用服務(wù)器,以使移動(dòng)應(yīng)用服務(wù)器通過網(wǎng)絡(luò)將請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備端的移動(dòng)應(yīng)用,移動(dòng)應(yīng)用再通過系統(tǒng)接口將該報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備。
進(jìn)一步的,上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法中,在設(shè)備認(rèn)證服務(wù)器端還包括:在完成通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文中被認(rèn)證私鑰簽署的簽名的合法性后,對(duì)接收到的所述應(yīng)答報(bào)文中的隨機(jī)數(shù)和挑戰(zhàn)值應(yīng)答串進(jìn)行校驗(yàn)。
上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法在移動(dòng)設(shè)備端,包括:
存儲(chǔ)帶有公鑰的認(rèn)證證書以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰;以及
在接收到設(shè)備認(rèn)證服務(wù)器發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器,以使設(shè)備認(rèn)證服務(wù)器收到所述應(yīng)答報(bào)文后,通過設(shè)備認(rèn)證服務(wù)器存儲(chǔ)的簽發(fā)認(rèn)證證書的根證書驗(yàn)證應(yīng)答報(bào)文中認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
進(jìn)一步的,上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法中,在移動(dòng)設(shè)備端還包括:根據(jù)請(qǐng)求報(bào)文中讀取的挑戰(zhàn)值生成挑戰(zhàn)值應(yīng)答串,并將認(rèn)證證書連同從請(qǐng)求報(bào)文中讀取的隨機(jī)數(shù)以及挑戰(zhàn)值應(yīng)答串信息封裝在一起,并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名,簽名附在應(yīng)答報(bào)文的末尾。
第三方面本發(fā)明提供了構(gòu)成上述系統(tǒng)的設(shè)備認(rèn)證服務(wù)器,包括存儲(chǔ)介質(zhì),存儲(chǔ)介質(zhì)中分別存儲(chǔ)有程序和根證書,所述根證書為簽發(fā)移動(dòng)設(shè)備中的認(rèn)證證書的根證書,其中簽發(fā)的該認(rèn)證證書帶有公鑰且與該公鑰對(duì)應(yīng)的認(rèn)證私鑰在所述移動(dòng)設(shè)備中;所述程序被運(yùn)行時(shí)執(zhí)行以下步驟:
發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備;以及
存儲(chǔ)簽發(fā)移動(dòng)設(shè)備中的認(rèn)證證書的根證書,其中簽發(fā)的該認(rèn)證證書帶有公鑰且與該公鑰對(duì)應(yīng)的認(rèn)證私鑰在所述移動(dòng)設(shè)備中;在收到移動(dòng)設(shè)備發(fā)回的應(yīng)答報(bào)文后通過根證書驗(yàn)證應(yīng)答報(bào)文中包含的認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文中被認(rèn)證私鑰簽署的簽名的合法性。
進(jìn)一步的,上述設(shè)備認(rèn)證服務(wù)器中,程序被運(yùn)行時(shí)還執(zhí)行:
接收到移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證請(qǐng)求后,發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備;以及完成移動(dòng)設(shè)備的合法性校驗(yàn)后,將結(jié)果發(fā)送至移動(dòng)應(yīng)用服務(wù)器。
進(jìn)一步的,上述設(shè)備認(rèn)證服務(wù)器中,程序被運(yùn)行時(shí)還執(zhí)行:生成帶有隨機(jī)數(shù)和挑戰(zhàn)值的所述請(qǐng)求報(bào)文,將該報(bào)文發(fā)送給移動(dòng)應(yīng)用服務(wù)器以使移動(dòng)應(yīng)用服務(wù)器通過網(wǎng)絡(luò)將請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備端的移動(dòng)應(yīng)用,移動(dòng)應(yīng)用再通過系統(tǒng)接口將該報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備的可信應(yīng)用程序。
本發(fā)明還提供了構(gòu)成上述系統(tǒng)的移動(dòng)設(shè)備,包括存儲(chǔ)介質(zhì),存儲(chǔ)介質(zhì)中分別存儲(chǔ)有程序和帶有公鑰的認(rèn)證證書以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰;該程序被運(yùn)行時(shí)執(zhí)行以下步驟:
在接收到設(shè)備認(rèn)證服務(wù)器發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器,以使設(shè)備認(rèn)證服務(wù)器收到所述應(yīng)答報(bào)文后,通過設(shè)備認(rèn)證服務(wù)器存儲(chǔ)的簽發(fā)認(rèn)證證書的根證書驗(yàn)證應(yīng)答報(bào)文中認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
進(jìn)一步的,上述移動(dòng)設(shè)備中,該程序封裝報(bào)文時(shí):根據(jù)請(qǐng)求報(bào)文中讀取的挑戰(zhàn)值生成挑戰(zhàn)值應(yīng)答串,并將認(rèn)證證書連同從請(qǐng)求報(bào)文中讀取的隨機(jī)數(shù)以及挑戰(zhàn)值應(yīng)答串等信息封裝在一起,并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名,簽名附在應(yīng)答報(bào)文的末尾。
采用上述技術(shù)方案后,本發(fā)明與現(xiàn)有技術(shù)相比具有以下有益效果:
提供一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法,將移動(dòng)設(shè)備身份憑證轉(zhuǎn)化為公私鑰的形式,并將私鑰保存于移動(dòng)設(shè)備端的安全環(huán)境中,設(shè)備認(rèn)證服務(wù)器僅存儲(chǔ)簽發(fā)設(shè)備證書的根證書,安全性更高,避免移動(dòng)設(shè)備相關(guān)接口被劫持進(jìn)行惡意篡改設(shè)備數(shù)據(jù)造成的安全風(fēng)險(xiǎn),且即便移動(dòng)設(shè)備端相關(guān)接口被惡意劫持,由于本發(fā)明方法中認(rèn)證服務(wù)器端驗(yàn)證移動(dòng)設(shè)備的認(rèn)證措施(如根證書)不在網(wǎng)絡(luò)上傳輸(即避免被劫持和篡改),且其簽發(fā)的證書帶有的公鑰與私鑰簽名作為第二重驗(yàn)證,使得接口被劫持后也不會(huì)出現(xiàn)將非法設(shè)備轉(zhuǎn)化合法設(shè)備的效果,有效地降低了安全風(fēng)險(xiǎn),大大降低了設(shè)備認(rèn)證系統(tǒng)的風(fēng)險(xiǎn)水平。
并且本發(fā)明還提供了實(shí)現(xiàn)該方法的系統(tǒng),成本低,安全性高,兼容性好。
附圖說(shuō)明
圖1是本發(fā)明提供的一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的系統(tǒng)的結(jié)構(gòu)示意圖;
圖2是本發(fā)明提供的基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法在系統(tǒng)上實(shí)施的示意圖;
圖3是本發(fā)明系統(tǒng)中設(shè)備認(rèn)證服務(wù)器的結(jié)構(gòu)示意框圖;
圖4是本發(fā)明系統(tǒng)中移動(dòng)設(shè)備的結(jié)構(gòu)示意框圖;
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例,對(duì)本發(fā)明作進(jìn)一步說(shuō)明,以助于理解本發(fā)明的內(nèi)容。
如圖1-2所示,一種基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的系統(tǒng),包括:
移動(dòng)設(shè)備1:用于安全存儲(chǔ)帶有公鑰的認(rèn)證證書(attestation證書)以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰(attestation私鑰);還用于在接收到設(shè)備認(rèn)證服務(wù)器3發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器3;
設(shè)備認(rèn)證服務(wù)器3:用于存儲(chǔ)簽發(fā)認(rèn)證證書的根證書,以及用于接收到移動(dòng)應(yīng)用服務(wù)器2發(fā)起的移動(dòng)設(shè)備1合法性驗(yàn)證請(qǐng)求后,對(duì)所述移動(dòng)設(shè)備1發(fā)送驗(yàn)證請(qǐng)求報(bào)文;并在收到所述應(yīng)答報(bào)文后通過根證書驗(yàn)證該報(bào)文中認(rèn)證證書合法性,之后通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
移動(dòng)設(shè)備1上的移動(dòng)應(yīng)用進(jìn)行一些敏感操作(如交易或授權(quán)等))時(shí)需要驗(yàn)證移動(dòng)設(shè)備的合法性,則移動(dòng)應(yīng)用服務(wù)器2為移動(dòng)應(yīng)用向設(shè)備認(rèn)證服務(wù)器3發(fā)起對(duì)移動(dòng)設(shè)備的合法性驗(yàn)證請(qǐng)求,以通知設(shè)備認(rèn)證服務(wù)器3發(fā)起移動(dòng)設(shè)備1的合法性驗(yàn)證操作;所述設(shè)備認(rèn)證服務(wù)器3在發(fā)起移動(dòng)設(shè)備合法性驗(yàn)證操作后,發(fā)送請(qǐng)求報(bào)文(requestmessage):具體的,首先將該請(qǐng)求報(bào)文發(fā)送給移動(dòng)應(yīng)用服務(wù)器,移動(dòng)應(yīng)用服務(wù)器通過網(wǎng)絡(luò)將請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備端的移動(dòng)應(yīng)用,移動(dòng)應(yīng)用再通過系統(tǒng)接口將該請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備內(nèi)可信執(zhí)行環(huán)境(tee)或可信模塊(se)或可信平臺(tái)模塊(tpm)等安全區(qū)域中的可信應(yīng)用程序。其中該安全區(qū)域中存儲(chǔ)上述帶有公鑰的attestation證書和attestation私鑰作為移動(dòng)設(shè)備的身份憑證,這些移動(dòng)設(shè)備憑證僅存放在移動(dòng)設(shè)備的安全區(qū)域中,不會(huì)存放于設(shè)備認(rèn)證服務(wù)器端,而簽發(fā)所述attestation證書的根證書(rootcertificate)存儲(chǔ)在設(shè)備認(rèn)證服務(wù)器上。
設(shè)備認(rèn)證服務(wù)器在接收到移動(dòng)設(shè)備發(fā)送的應(yīng)答報(bào)文后,首先通過根證書驗(yàn)證報(bào)文中attestation證書的合法性,在通過attestation證書驗(yàn)證應(yīng)答報(bào)文中簽名的合法性,因?yàn)閍ttestation證書包含公鑰,該公鑰與所述認(rèn)證私鑰為一對(duì)非對(duì)稱密鑰,能互為加解密,應(yīng)答報(bào)文被認(rèn)證私鑰簽名,故而用attestation證書對(duì)應(yīng)答報(bào)文的簽名的合法性進(jìn)行驗(yàn)證,最終完成移動(dòng)設(shè)備的合法性校驗(yàn)后,將結(jié)果傳遞給移動(dòng)應(yīng)用服務(wù)器。
本發(fā)明驗(yàn)證系統(tǒng)中移動(dòng)設(shè)備身份憑證轉(zhuǎn)化為公私鑰形式,將私鑰保存于移動(dòng)設(shè)備端的安全環(huán)境中,公鑰附在認(rèn)證證書中也安全保存在移動(dòng)設(shè)備端,在設(shè)備認(rèn)證服務(wù)器中僅存儲(chǔ)簽發(fā)設(shè)備證書的根證書,通過根證書驗(yàn)證認(rèn)證證書合法,則證書中的公鑰可驗(yàn)證移動(dòng)設(shè)備私鑰合法,相對(duì)于傳統(tǒng)識(shí)別識(shí)別合法性的手段(提取硬件唯一識(shí)別碼、hash、自動(dòng)生成隨機(jī)數(shù)等),可有效地避免移動(dòng)設(shè)備身份合法性提取接口被劫持造成的安全風(fēng)險(xiǎn);其中所述移動(dòng)設(shè)備可以是手機(jī)、筆記本、平板或可穿戴設(shè)備等,都可以基于本發(fā)明認(rèn)證系統(tǒng)完成合法性校驗(yàn)。
對(duì)本發(fā)明上述系統(tǒng),本發(fā)明還提供了一種通過該系統(tǒng)實(shí)施的基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法,參考圖1-2,該方法在設(shè)備認(rèn)證服務(wù)端,包括
接收移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證請(qǐng)求,并發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備;以及
存儲(chǔ)簽發(fā)移動(dòng)設(shè)備中的認(rèn)證證書的根證書,其中簽發(fā)的該認(rèn)證證書帶有公鑰且與該公鑰對(duì)應(yīng)的認(rèn)證私鑰在所述移動(dòng)設(shè)備中;在收到移動(dòng)設(shè)備發(fā)回的應(yīng)答報(bào)文后通過根證書驗(yàn)證應(yīng)答報(bào)文中包含的認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文中被認(rèn)證私鑰簽署的簽名的合法性;
完成移動(dòng)設(shè)備的合法性校驗(yàn)后,將結(jié)果發(fā)送至移動(dòng)應(yīng)用服務(wù)器。
具體的,本發(fā)明方法是在移動(dòng)應(yīng)用需要驗(yàn)證移動(dòng)設(shè)備合法性時(shí),通過移動(dòng)應(yīng)用服務(wù)器發(fā)起移動(dòng)設(shè)備合法性驗(yàn)證流程后實(shí)施的,標(biāo)準(zhǔn)的設(shè)備認(rèn)證服務(wù)器收到移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證的通知后,發(fā)起移動(dòng)設(shè)備的認(rèn)證:設(shè)備認(rèn)證服務(wù)器生成帶有隨機(jī)數(shù)和挑戰(zhàn)值等安全措施的請(qǐng)求報(bào)文(requestmessage),將該報(bào)文發(fā)送給移動(dòng)應(yīng)用服務(wù)器;移動(dòng)應(yīng)用服務(wù)器通過網(wǎng)絡(luò)將請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備端的移動(dòng)應(yīng)用,移動(dòng)應(yīng)用再通過系統(tǒng)接口將該報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備。
移動(dòng)設(shè)備向設(shè)備認(rèn)證服務(wù)器返回一個(gè)應(yīng)答報(bào)文,其中封裝有被上述根證書簽發(fā)的帶有公鑰的認(rèn)證證書(attestation證書),以及封裝有從請(qǐng)求報(bào)文讀取出的隨機(jī)數(shù)和對(duì)所述挑戰(zhàn)值生成的挑戰(zhàn)值應(yīng)答串;且應(yīng)答報(bào)文末尾附有被移動(dòng)設(shè)備中的認(rèn)證私鑰(attestation私鑰)簽署的簽名;故設(shè)備認(rèn)證服務(wù)器收到該應(yīng)答報(bào)文后,首先通過根證書驗(yàn)證認(rèn)證證書的合法性,若該attestation證書合法,再通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文簽名的合法性,因?yàn)閼?yīng)答報(bào)文的簽名由attestation私鑰完成,則已驗(yàn)證合法的attestation證書中的公鑰可對(duì)該簽名驗(yàn)證合法性;如果簽名合法,而后再校驗(yàn)隨機(jī)數(shù)、挑戰(zhàn)值應(yīng)答串等安全手段,校驗(yàn)完畢后,將結(jié)果發(fā)送給移動(dòng)應(yīng)用服務(wù)器。
故本發(fā)明上述基于公私鑰體制的遠(yuǎn)程驗(yàn)證移動(dòng)設(shè)備合法性的方法在在移動(dòng)設(shè)備端,還包括:
安全存儲(chǔ)帶有公鑰的認(rèn)證證書(attestation證書)以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰(attestation私鑰);
在接收到設(shè)備認(rèn)證服務(wù)器發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器,以使設(shè)備認(rèn)證服務(wù)器收到所述應(yīng)答報(bào)文后,通過設(shè)備認(rèn)證服務(wù)器存儲(chǔ)的簽發(fā)認(rèn)證證書的根證書驗(yàn)證應(yīng)答報(bào)文中認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
其中,移動(dòng)設(shè)備內(nèi)集成可信執(zhí)行環(huán)境(tee)或可信模塊(se)等安全措施,在可信執(zhí)行環(huán)境或可信模塊中由移動(dòng)設(shè)備廠商通過安全手段預(yù)置認(rèn)證證書(attestation證書)和認(rèn)證私鑰(attestation私鑰),其中attestation證書帶有與該attestation私鑰對(duì)應(yīng)的公鑰;廠商對(duì)attestation證書和密鑰的下發(fā)方式是本領(lǐng)域成熟技術(shù),本發(fā)明不做唯一限定。
移動(dòng)應(yīng)用通過系統(tǒng)接口將設(shè)備認(rèn)證服務(wù)器發(fā)送的所述請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備后,對(duì)請(qǐng)求報(bào)文進(jìn)行解析處理,以讀取報(bào)文數(shù)據(jù),此處理步驟為本領(lǐng)域成熟技術(shù),本發(fā)明不做特殊限定;根據(jù)請(qǐng)求報(bào)文中讀取的挑戰(zhàn)值生成挑戰(zhàn)值應(yīng)答串,并將認(rèn)證證書連同從請(qǐng)求報(bào)文中讀取的隨機(jī)數(shù)以及挑戰(zhàn)值應(yīng)答串等信息封裝在一起,并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名sig,其中簽名sig附在應(yīng)答報(bào)文的末尾,組成應(yīng)答報(bào)文(responsemessage):
responsemessage=process(requestmessage)…|attestation證書|sig
sig=signattestation私鑰(process(requestmessage)…|attestation證書)
將應(yīng)答報(bào)文層層轉(zhuǎn)發(fā)至設(shè)備認(rèn)證服務(wù)器中進(jìn)行合法性驗(yàn)證過程。
設(shè)備認(rèn)證服務(wù)器端收到應(yīng)答報(bào)文后進(jìn)行的上述驗(yàn)證過程如下:
a).requestmessage自帶的安全機(jī)制如挑戰(zhàn)值應(yīng)答、隨機(jī)數(shù)等判斷responsemessage的合法性;
b).通過根證書(rootcertificate)驗(yàn)證attestation證書的合法性;
c).通過attestation證書驗(yàn)證sig簽名合法性;
判斷移動(dòng)設(shè)備合法性的結(jié)果告知移動(dòng)應(yīng)用服務(wù)器,移動(dòng)應(yīng)用服務(wù)器接收到設(shè)備認(rèn)證服務(wù)器報(bào)告的驗(yàn)證結(jié)果,進(jìn)行后續(xù)的邏輯操作。
本發(fā)明驗(yàn)證方法,將移動(dòng)設(shè)備身份憑證轉(zhuǎn)化為公私鑰的形式,并將私鑰保存于移動(dòng)設(shè)備端的安全環(huán)境中,設(shè)備認(rèn)證服務(wù)器僅存儲(chǔ)簽發(fā)設(shè)備證書的根證書,安全性更高,避免移動(dòng)設(shè)備相關(guān)接口被劫持進(jìn)行惡意篡改設(shè)備數(shù)據(jù)造成的安全風(fēng)險(xiǎn),且即便移動(dòng)設(shè)備端相關(guān)接口被惡意劫持,由于本發(fā)明方法中認(rèn)證服務(wù)器端驗(yàn)證移動(dòng)設(shè)備的認(rèn)證措施(如根證書)不在網(wǎng)絡(luò)上傳輸(即避免被劫持和篡改),且其簽發(fā)的證書帶有的公鑰與私鑰簽名作為第二重驗(yàn)證,使得接口被劫持后也不會(huì)出現(xiàn)將非法設(shè)備轉(zhuǎn)化合法設(shè)備的效果,有效地降低了安全風(fēng)險(xiǎn),大大降低了設(shè)備認(rèn)證系統(tǒng)的風(fēng)險(xiǎn)水平。
第三方面,本發(fā)明還提供了構(gòu)成上述系統(tǒng)且實(shí)施上述方法的設(shè)備認(rèn)證服務(wù)器3,如圖3所示的,該設(shè)備認(rèn)證服務(wù)器包括存儲(chǔ)介質(zhì)301,存儲(chǔ)介質(zhì)301中分別存儲(chǔ)有程序和根證書,所述根證書為簽發(fā)移動(dòng)設(shè)備中的認(rèn)證證書的根證書,其中簽發(fā)的該認(rèn)證證書帶有公鑰且與該公鑰對(duì)應(yīng)的認(rèn)證私鑰在所述移動(dòng)設(shè)備中;所述程序被運(yùn)行時(shí)執(zhí)行以下步驟:
接收移動(dòng)應(yīng)用服務(wù)器發(fā)起的移動(dòng)設(shè)備合法性驗(yàn)證請(qǐng)求,并發(fā)出移動(dòng)設(shè)備合法性驗(yàn)證的請(qǐng)求報(bào)文至移動(dòng)設(shè)備;以及在收到移動(dòng)設(shè)備發(fā)回的應(yīng)答報(bào)文后通過根證書驗(yàn)證應(yīng)答報(bào)文中包含的認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證應(yīng)答報(bào)文中被認(rèn)證私鑰簽署的簽名的合法性;
完成移動(dòng)設(shè)備的合法性校驗(yàn)后,將結(jié)果發(fā)送至移動(dòng)應(yīng)用服務(wù)器。
具體的該程序執(zhí)行生成請(qǐng)求報(bào)文的步驟:生成帶有隨機(jī)數(shù)和挑戰(zhàn)值等安全措施的請(qǐng)求報(bào)文(requestmessage),將該報(bào)文發(fā)送給移動(dòng)應(yīng)用服務(wù)器以使移動(dòng)應(yīng)用服務(wù)器通過網(wǎng)絡(luò)將請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備端的移動(dòng)應(yīng)用,移動(dòng)應(yīng)用再通過系統(tǒng)接口將該報(bào)文轉(zhuǎn)發(fā)給移動(dòng)設(shè)備的可信應(yīng)用程序。
因此本發(fā)明進(jìn)一步還提供了構(gòu)成上述系統(tǒng)且實(shí)施上述方法的移動(dòng)設(shè)備1,如圖4所示的,包括存儲(chǔ)介質(zhì)101,存儲(chǔ)介質(zhì)101中存儲(chǔ)有程序,且移動(dòng)設(shè)備中安全存儲(chǔ)帶有公鑰的認(rèn)證證書(attestation證書)以及與該公鑰對(duì)應(yīng)的認(rèn)證私鑰(attestation私鑰);該程序被運(yùn)行時(shí)執(zhí)行以下步驟:
在接收到設(shè)備認(rèn)證服務(wù)器發(fā)送的驗(yàn)證請(qǐng)求報(bào)文后進(jìn)行處理,對(duì)處理后的報(bào)文附加所述認(rèn)證證書后封裝并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名形成應(yīng)答報(bào)文,發(fā)送給設(shè)備認(rèn)證服務(wù)器,以使設(shè)備認(rèn)證服務(wù)器收到所述應(yīng)答報(bào)文后,通過設(shè)備認(rèn)證服務(wù)器存儲(chǔ)的簽發(fā)認(rèn)證證書的根證書驗(yàn)證應(yīng)答報(bào)文中認(rèn)證證書的合法性,再通過認(rèn)證證書驗(yàn)證報(bào)文簽名的合法性。
該程序存儲(chǔ)在可信執(zhí)行環(huán)境(tee)或可信模塊(se)或可信平臺(tái)模塊(tpm)等安全區(qū)域中作為可信應(yīng)用程序,程序封裝報(bào)文時(shí):根據(jù)請(qǐng)求報(bào)文中讀取的挑戰(zhàn)值生成挑戰(zhàn)值應(yīng)答串,并將認(rèn)證證書連同從請(qǐng)求報(bào)文中讀取的隨機(jī)數(shù)以及挑戰(zhàn)值應(yīng)答串等信息封裝在一起,并使用認(rèn)證私鑰對(duì)封裝報(bào)文進(jìn)行簽名sig,其中簽名sig附在應(yīng)答報(bào)文的末尾,組成應(yīng)答報(bào)文(responsemessage):
responsemessage=process(requestmessage)…|attestation證書|sig
sig=signattestation私鑰(process(requestmessage)…|attestation證書)
將應(yīng)答報(bào)文層層轉(zhuǎn)發(fā)至設(shè)備認(rèn)證服務(wù)器中進(jìn)行合法性驗(yàn)證過程。
本發(fā)明移動(dòng)設(shè)備將執(zhí)行程序安全存儲(chǔ)在可信執(zhí)行環(huán)境/可信模塊中保護(hù),安全性高;移動(dòng)設(shè)備上的移動(dòng)應(yīng)用無(wú)須自己考慮驗(yàn)證設(shè)備合法性的方法,調(diào)用相關(guān)接口即可,移動(dòng)設(shè)備通過設(shè)備認(rèn)證服務(wù)器驗(yàn)證,成本低,且用戶體驗(yàn)好,移動(dòng)設(shè)備身份憑證對(duì)用戶透明;兼容性好,基于與本發(fā)明設(shè)備認(rèn)證服務(wù)器交互驗(yàn)證,無(wú)論何種設(shè)備(手機(jī)、筆記本、平板、可穿戴設(shè)備),都可以使用相同的認(rèn)證協(xié)議完成設(shè)備合法性校驗(yàn)。
本文中應(yīng)用了具體個(gè)例對(duì)發(fā)明構(gòu)思進(jìn)行了詳細(xì)闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離該發(fā)明構(gòu)思的前提下,所做的任何顯而易見的修改、等同替換或其他改進(jìn),均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。