本發(fā)明涉及一種基于指紋和終端認(rèn)證實(shí)現(xiàn)物聯(lián)網(wǎng)信息安全傳輸技術(shù)領(lǐng)域,尤其涉及一種物聯(lián)網(wǎng)信息安全傳輸方法,包括物聯(lián)網(wǎng)終端與云端、終端與終端的安全認(rèn)證及安全信息傳輸,通過這種方式保證了交互雙方身份的安全認(rèn)證、信息傳輸?shù)耐暾?、機(jī)密性等安全要素,主要涉及到技術(shù)包括pki、數(shù)字證書、國密對(duì)稱算法sm4等。
背景技術(shù):
隨著互聯(lián)網(wǎng)迅速普及和蓬勃發(fā)展,網(wǎng)絡(luò)速度及網(wǎng)絡(luò)響應(yīng)越來越快,人們不再局限于關(guān)注互聯(lián)網(wǎng),物聯(lián)網(wǎng)借著互聯(lián)網(wǎng)的發(fā)展開始進(jìn)入人類發(fā)展的浪潮中來。物聯(lián)網(wǎng)時(shí)代的到來,是技術(shù)使然也是歷史必然,它將推動(dòng)人類的發(fā)展,同時(shí)也帶來了安全技術(shù)進(jìn)一步發(fā)展和應(yīng)用。目前,物聯(lián)網(wǎng)已然成為各大商業(yè)巨頭爭相逐利和放眼未來發(fā)展的重要領(lǐng)域。但由于物聯(lián)網(wǎng)的安全性和相關(guān)的安全標(biāo)準(zhǔn)有限,導(dǎo)致物聯(lián)網(wǎng)的發(fā)展也不盡人意。當(dāng)然,最為顯著的問題就是包括物聯(lián)網(wǎng)設(shè)備的認(rèn)證和相關(guān)操作實(shí)體身份認(rèn)證的合法性、物聯(lián)網(wǎng)交互過程中數(shù)據(jù)傳輸?shù)耐暾浴?zhǔn)確性、安全性及數(shù)據(jù)處理的安全性。目前最好的防范措施就是建立一套以指紋識(shí)別與終端認(rèn)證為基礎(chǔ)的信息安全傳輸機(jī)制,來保證物聯(lián)網(wǎng)時(shí)代安全至上的終極目標(biāo)。
目前,物聯(lián)網(wǎng)還未制定相關(guān)的安全標(biāo)準(zhǔn)和協(xié)議,只有少量的互聯(lián)網(wǎng)公司投身物聯(lián)網(wǎng)的安全方向,但物聯(lián)網(wǎng)卻未停止發(fā)展的腳步,在這個(gè)大環(huán)境下,一套安全可靠的物聯(lián)網(wǎng)安全信息傳輸機(jī)制即保證大環(huán)境下物聯(lián)網(wǎng)的設(shè)備與人的安全,同時(shí)也保證了物聯(lián)網(wǎng)這一行業(yè)發(fā)展的安全。本發(fā)明,根據(jù)物聯(lián)網(wǎng)的特點(diǎn)及互聯(lián)網(wǎng)實(shí)名認(rèn)證和物聯(lián)網(wǎng)未來安全領(lǐng)域的發(fā)展,提出了一種基于指紋識(shí)別和終端認(rèn)證實(shí)現(xiàn)物聯(lián)網(wǎng)信息安全傳輸?shù)姆绞健?/p>
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)存在的不足之處,本發(fā)明的目的在于提供一種物聯(lián)網(wǎng)信息安全傳輸方法,保證了終端設(shè)備與服務(wù)器在整個(gè)會(huì)話過程的數(shù)據(jù)安全,同時(shí)保證了指紋身份認(rèn)證、數(shù)據(jù)的完整性、準(zhǔn)確性,采用對(duì)稱加密算法同時(shí)也保證了響應(yīng)時(shí)間的及時(shí)性、可靠性。
本發(fā)明的目的通過下述技術(shù)方案實(shí)現(xiàn):
一種物聯(lián)網(wǎng)信息安全傳輸方法,包括終端設(shè)備和服務(wù)器,所述終端設(shè)備內(nèi)部存儲(chǔ)有rsa數(shù)字證書公鑰(puk)、終端sn號(hào)、廠家名稱、終端型號(hào)、sdk包以及sdk包md5值,所述sdk包md5值為sdk包的md5值,所述服務(wù)器內(nèi)部存儲(chǔ)有rsa數(shù)字證書私鑰(prk),所述終端設(shè)備與服務(wù)器構(gòu)成一個(gè)物聯(lián)網(wǎng),其方法步驟如下:
a、終端設(shè)備向服務(wù)器發(fā)起激活請(qǐng)求:終端設(shè)備向服務(wù)器上傳經(jīng)過rsa數(shù)字證書公鑰(puk)簽名的終端相關(guān)信息,所述終端相關(guān)信息包括終端sn號(hào)、廠家名稱、終端型號(hào)、sdk包以及sdk包md5值;服務(wù)器通過rsa數(shù)字證書私鑰(prk)驗(yàn)簽終端相關(guān)信息,當(dāng)服務(wù)器驗(yàn)簽成功后,服務(wù)器對(duì)終端設(shè)備上傳的終端相關(guān)信息進(jìn)行審核,當(dāng)服務(wù)器審核通過后,則生成終端設(shè)備的唯一標(biāo)簽識(shí)別號(hào)tid與對(duì)應(yīng)服務(wù)器真實(shí)身份的sid,然后通過服務(wù)器的rsa數(shù)字證書私鑰(prk)將tid和sid簽名后回傳給終端設(shè)備;終端設(shè)備獲取到服務(wù)器回傳的tid與sid信息后經(jīng)過puk驗(yàn)簽,當(dāng)終端設(shè)備驗(yàn)簽成功后,終端設(shè)備旋即獲取到tid與sid信息,然后終端設(shè)備再次采用rsa數(shù)字證書公鑰(puk)簽名后上傳激活tof值至服務(wù)器,服務(wù)器即可完成該終端設(shè)備的tid的激活,同時(shí)服務(wù)器與終端設(shè)備均存儲(chǔ)相關(guān)數(shù)據(jù),該相關(guān)數(shù)據(jù)包括終端相關(guān)信息、激活tof值、tid與sid信息;
b、終端設(shè)備指紋激活流程:終端設(shè)備錄入使用人的指紋信息,該指紋信息包括不超過使用人的三個(gè)指紋數(shù)據(jù);當(dāng)終端設(shè)備錄入指紋信息成功后,然后終端設(shè)備將最新的指紋信息與tid關(guān)聯(lián)后通過rsa數(shù)字證書(puk)簽名上傳給服務(wù)器,服務(wù)器獲取終端設(shè)備上傳的指紋信息保存后并返回經(jīng)rsa數(shù)字證書(prk)簽名的tof值與sid值,tof值為步驟a的激活tof值,sid值為步驟a的sid信息,終端設(shè)備獲取返回的tof值與sid值;若服務(wù)器成功錄入,則終端設(shè)備保存指紋信息,在指紋激活完成后,終端設(shè)備即可正常使用;在每次重啟終端設(shè)備后,需先通過指紋認(rèn)證后才能正常進(jìn)行物聯(lián)網(wǎng)信息安全傳輸使用;
c、身份認(rèn)證:包括服務(wù)器驗(yàn)證終端設(shè)備身份與終端設(shè)備驗(yàn)證服務(wù)器身份;
c1、終端第一次向服務(wù)器發(fā)起會(huì)話連接請(qǐng)求時(shí),服務(wù)器需要驗(yàn)證終端設(shè)備的身份,服務(wù)器驗(yàn)證終端設(shè)備身份方法如下:
c11、終端設(shè)備獲取當(dāng)前時(shí)間的時(shí)間戳ttm;
c12、終端設(shè)備將時(shí)間戳ttm通過sdk包中的國密對(duì)稱加密算法sm4進(jìn)行加密后tsm4數(shù)據(jù)與tid一起上傳至服務(wù)器,國密對(duì)稱加密算法sm4加密的密鑰為sid信息與指紋信息的組合密鑰;
c13、服務(wù)器收到tid后,服務(wù)器獲取相關(guān)的指紋信息與sid信息,采用國密對(duì)稱加密算法sm4解密方法進(jìn)行解密;當(dāng)解密成功后,服務(wù)器記錄時(shí)間戳ttm及終端設(shè)備上傳時(shí)間的時(shí)間差值ttmv,時(shí)間差值ttmv=當(dāng)前時(shí)間-時(shí)間戳ttm,所述當(dāng)前時(shí)間為服務(wù)器解密成功時(shí)的時(shí)間,則服務(wù)器驗(yàn)證終端設(shè)備成功;
c14、如果服務(wù)器驗(yàn)證終端設(shè)備身份失敗,則向終端設(shè)備返回錯(cuò)誤信息并要求終端設(shè)備再一次驗(yàn)證終端設(shè)備身份,然后按照流程c11~c13依次重新執(zhí)行一次;
c2、待服務(wù)器驗(yàn)證終端設(shè)備身份成功后,終端設(shè)備需要驗(yàn)證服務(wù)器身份,終端設(shè)備驗(yàn)證服務(wù)器身份方法如下:
c21、服務(wù)器通過tid獲取終端設(shè)備對(duì)應(yīng)的sid信息,再獲取當(dāng)前時(shí)間stm,同時(shí)獲取終端設(shè)備的指紋信息;
c22、服務(wù)器使用國密對(duì)稱加密算法sm4對(duì)當(dāng)前時(shí)間stm加密,國密對(duì)稱加密算法sm4加密的密鑰為sid信息與指紋信息的組合密鑰,服務(wù)器對(duì)當(dāng)前時(shí)間stm加密后為ssm4數(shù)據(jù),同時(shí)服務(wù)器回傳ssm4數(shù)據(jù)與sid信息給終端設(shè)備;
c23、終端設(shè)備利用sdk包中國密對(duì)稱加密算法sm4將服務(wù)器回傳的ssm4數(shù)據(jù)與sid信息進(jìn)行解密;若解密成功,終端設(shè)備記錄當(dāng)前時(shí)間及本次回傳時(shí)間的時(shí)間差值stmv,時(shí)間差值stmv=當(dāng)前時(shí)間-stm,所述當(dāng)前時(shí)間為終端設(shè)備解密成功時(shí)的時(shí)間,則驗(yàn)證服務(wù)器成功;
c24、若果終端設(shè)備驗(yàn)證服務(wù)器失敗,則向服務(wù)器返回錯(cuò)誤信息,要求服務(wù)器再一次驗(yàn)證服務(wù)器身份,然后按照流程c21~c23依次重新執(zhí)行一次;
d、服務(wù)器與終端設(shè)備之間獨(dú)立安全的會(huì)話:包括如下步驟:
d1、服務(wù)器與終端設(shè)備之間加密算法密鑰協(xié)商:如果服務(wù)器與終端設(shè)備均認(rèn)證成功,那么終端設(shè)備與服務(wù)器就確認(rèn)本次會(huì)話的安全性,此時(shí)雙方需要協(xié)商密鑰;協(xié)商密鑰采用雙向?qū)ΨQ密鑰加密,雙向?qū)ΨQ密鑰加密即服務(wù)器向終端設(shè)備發(fā)送的數(shù)據(jù)采用一套密鑰,終端設(shè)備向服務(wù)器采用另外一套密鑰,也就是一次會(huì)話期間加解密采用兩套密鑰,雙方解密數(shù)據(jù)時(shí)采用對(duì)方的加密密鑰進(jìn)行解密;
d11、服務(wù)器根據(jù)終端設(shè)備的sdk包的版本vtsdk確定加密算法alg;
d12、服務(wù)器根據(jù)指紋信息、sid信息、時(shí)間戳ttm通過該加密算法alg產(chǎn)生密鑰skey,利用通過rsa數(shù)字證書私鑰(prk)簽名生成skey',并發(fā)送給終端設(shè)備;終端設(shè)備根據(jù)指紋信息、sid信息、時(shí)間戳ttm通過該加密算法alg產(chǎn)生密鑰tkey,利用通過rsa數(shù)字證書(puk)簽名生成tkey',并發(fā)送給服務(wù)器;
d13、終端設(shè)備收到skey',利用rsa數(shù)字證書(puk)成功獲取skey,并返回確認(rèn)消息給服務(wù)器;服務(wù)器收到tkey',利用rsa數(shù)字證書私鑰(prk)成功獲取tkey,并返回確認(rèn)消息給終端;
d14、若服務(wù)器解密失敗,則返回失敗消息給終端設(shè)備,并且兩者再次請(qǐng)求協(xié)商加密算法alg,然后重復(fù)步驟d11~d13;若終端設(shè)備解密失敗,則返回失敗消息給服務(wù)器,并且兩者再次請(qǐng)求協(xié)商加密算法alg,然后重復(fù)步驟d11~d13;
d15、服務(wù)器與終端設(shè)備之間的本次會(huì)話期間,服務(wù)器將一直使用該密鑰skey進(jìn)行加密,同時(shí)服務(wù)器一直使用tkey進(jìn)行解密;終端設(shè)備將一直采用tkey進(jìn)行加密,同時(shí)終端設(shè)備一直使用skey進(jìn)行解密;并直到本次會(huì)話結(jié)束。
本發(fā)明較現(xiàn)有技術(shù)相比,具有以下優(yōu)點(diǎn)及有益效果:
本發(fā)明保證了終端設(shè)備與服務(wù)器在整個(gè)會(huì)話過程的數(shù)據(jù)安全,同時(shí)保證了指紋身份認(rèn)證、數(shù)據(jù)的完整性、準(zhǔn)確性,采用對(duì)稱加密算法同時(shí)也保證了響應(yīng)時(shí)間的及時(shí)性、可靠性。
附圖說明
圖1為本發(fā)明終端設(shè)備激活的原理示意圖;
圖2為本發(fā)明終端設(shè)備指紋激活的原理示意圖;
圖3為本發(fā)明服務(wù)器與終端設(shè)備認(rèn)證的原理示意圖;
圖4為本發(fā)明服務(wù)器與終端設(shè)備之間安全會(huì)話的原理示意圖。
具體實(shí)施方式
下面結(jié)合實(shí)施例對(duì)本發(fā)明作進(jìn)一步地詳細(xì)說明:
實(shí)施例
如圖1~圖4所示,一種物聯(lián)網(wǎng)信息安全傳輸方法,包括終端設(shè)備和服務(wù)器,所述終端設(shè)備內(nèi)部存儲(chǔ)有rsa數(shù)字證書公鑰(puk)、終端sn號(hào)、廠家名稱、終端型號(hào)、sdk包以及sdk包md5值,所述sdk包md5值為sdk包的md5值,所述服務(wù)器內(nèi)部存儲(chǔ)有rsa數(shù)字證書私鑰(prk),所述終端設(shè)備與服務(wù)器構(gòu)成一個(gè)物聯(lián)網(wǎng),其方法步驟如下:
a、終端設(shè)備向服務(wù)器發(fā)起激活請(qǐng)求:終端設(shè)備向服務(wù)器上傳經(jīng)過rsa數(shù)字證書公鑰(puk)簽名的終端相關(guān)信息,所述終端相關(guān)信息包括終端sn號(hào)、廠家名稱、終端型號(hào)、sdk包以及sdk包md5值;服務(wù)器通過rsa數(shù)字證書私鑰(prk)驗(yàn)簽終端相關(guān)信息,當(dāng)服務(wù)器驗(yàn)簽成功后,服務(wù)器對(duì)終端設(shè)備上傳的終端相關(guān)信息進(jìn)行審核,當(dāng)服務(wù)器審核通過后,則生成終端設(shè)備的唯一標(biāo)簽識(shí)別號(hào)tid與對(duì)應(yīng)服務(wù)器真實(shí)身份的sid,然后通過服務(wù)器的rsa數(shù)字證書私鑰(prk)將tid和sid簽名后回傳給終端設(shè)備;終端設(shè)備獲取到服務(wù)器回傳的tid與sid信息后經(jīng)過puk驗(yàn)簽,當(dāng)終端設(shè)備驗(yàn)簽成功后,終端設(shè)備旋即獲取到tid與sid信息,然后終端設(shè)備再次采用rsa數(shù)字證書公鑰(puk)簽名后上傳激活tof值至服務(wù)器,服務(wù)器即可完成該終端設(shè)備的tid的激活,同時(shí)服務(wù)器與終端設(shè)備均存儲(chǔ)相關(guān)數(shù)據(jù),該相關(guān)數(shù)據(jù)包括終端相關(guān)信息、激活tof值、tid與sid信息;
b、終端設(shè)備指紋激活流程:終端設(shè)備錄入使用人的指紋信息,該指紋信息包括不超過使用人的三個(gè)指紋數(shù)據(jù);當(dāng)終端設(shè)備錄入指紋信息成功后,然后終端設(shè)備將最新的指紋信息與tid關(guān)聯(lián)后通過rsa數(shù)字證書(puk)簽名上傳給服務(wù)器,服務(wù)器獲取終端設(shè)備上傳的指紋信息保存后并返回經(jīng)rsa數(shù)字證書(prk)簽名的tof值與sid值,tof值為步驟a的激活tof值,sid值為步驟a的sid信息,終端設(shè)備獲取返回的tof值與sid值;若服務(wù)器成功錄入,則終端設(shè)備保存指紋信息,在指紋激活完成后,終端設(shè)備即可正常使用;在每次重啟終端設(shè)備后,需先通過指紋認(rèn)證后才能正常進(jìn)行物聯(lián)網(wǎng)信息安全傳輸使用;
c、身份認(rèn)證:包括服務(wù)器驗(yàn)證終端設(shè)備身份與終端設(shè)備驗(yàn)證服務(wù)器身份;
c1、終端第一次向服務(wù)器發(fā)起會(huì)話連接請(qǐng)求時(shí),服務(wù)器需要驗(yàn)證終端設(shè)備的身份,服務(wù)器驗(yàn)證終端設(shè)備身份方法如下:
c11、終端設(shè)備獲取當(dāng)前時(shí)間的時(shí)間戳ttm;
c12、終端設(shè)備將時(shí)間戳ttm通過sdk包中的國密對(duì)稱加密算法sm4進(jìn)行加密后tsm4數(shù)據(jù)與tid一起上傳至服務(wù)器,國密對(duì)稱加密算法sm4加密的密鑰為sid信息與指紋信息的組合密鑰;
c13、服務(wù)器收到tid后,服務(wù)器獲取相關(guān)的指紋信息與sid信息,采用國密對(duì)稱加密算法sm4解密方法進(jìn)行解密;當(dāng)解密成功后,服務(wù)器記錄時(shí)間戳ttm及終端設(shè)備上傳時(shí)間的時(shí)間差值ttmv,時(shí)間差值ttmv=當(dāng)前時(shí)間-時(shí)間戳ttm,所述當(dāng)前時(shí)間為服務(wù)器解密成功時(shí)的時(shí)間,則服務(wù)器驗(yàn)證終端設(shè)備成功;
c14、如果服務(wù)器驗(yàn)證終端設(shè)備身份失敗,則向終端設(shè)備返回錯(cuò)誤信息并要求終端設(shè)備再一次驗(yàn)證終端設(shè)備身份,然后按照流程c11~c13依次重新執(zhí)行一次;
c2、待服務(wù)器驗(yàn)證終端設(shè)備身份成功后,終端設(shè)備需要驗(yàn)證服務(wù)器身份,終端設(shè)備驗(yàn)證服務(wù)器身份方法如下:
c21、服務(wù)器通過tid獲取終端設(shè)備對(duì)應(yīng)的sid信息,再獲取當(dāng)前時(shí)間stm,同時(shí)獲取終端設(shè)備的指紋信息;
c22、服務(wù)器使用國密對(duì)稱加密算法sm4對(duì)當(dāng)前時(shí)間stm加密,國密對(duì)稱加密算法sm4加密的密鑰為sid信息與指紋信息的組合密鑰,服務(wù)器對(duì)當(dāng)前時(shí)間stm加密后為ssm4數(shù)據(jù),同時(shí)服務(wù)器回傳ssm4數(shù)據(jù)與sid信息給終端設(shè)備;
c23、終端設(shè)備利用sdk包中國密對(duì)稱加密算法sm4將服務(wù)器回傳的ssm4數(shù)據(jù)與sid信息進(jìn)行解密;若解密成功,終端設(shè)備記錄當(dāng)前時(shí)間及本次回傳時(shí)間的時(shí)間差值stmv,時(shí)間差值stmv=當(dāng)前時(shí)間-stm,所述當(dāng)前時(shí)間為終端設(shè)備解密成功時(shí)的時(shí)間,則驗(yàn)證服務(wù)器成功;
c24、若果終端設(shè)備驗(yàn)證服務(wù)器失敗,則向服務(wù)器返回錯(cuò)誤信息,要求服務(wù)器再一次驗(yàn)證服務(wù)器身份,然后按照流程c21~c23依次重新執(zhí)行一次;
d、服務(wù)器與終端設(shè)備之間獨(dú)立安全的會(huì)話:如圖4所示,包括如下步驟:
d1、服務(wù)器與終端設(shè)備之間加密算法密鑰協(xié)商:如果服務(wù)器與終端設(shè)備均認(rèn)證成功,那么終端設(shè)備與服務(wù)器就確認(rèn)本次會(huì)話的安全性,此時(shí)雙方需要協(xié)商密鑰;協(xié)商密鑰采用雙向?qū)ΨQ密鑰加密,雙向?qū)ΨQ密鑰加密即服務(wù)器向終端設(shè)備發(fā)送的數(shù)據(jù)采用一套密鑰,終端設(shè)備向服務(wù)器采用另外一套密鑰,也就是一次會(huì)話期間加解密采用兩套密鑰,雙方解密數(shù)據(jù)時(shí)采用對(duì)方的加密密鑰進(jìn)行解密;
d11、服務(wù)器根據(jù)終端設(shè)備的sdk包的版本vtsdk確定加密算法alg;
d12、服務(wù)器根據(jù)指紋信息、sid信息、時(shí)間戳ttm通過該加密算法alg產(chǎn)生密鑰skey,利用通過rsa數(shù)字證書私鑰(prk)簽名生成skey',并發(fā)送給終端設(shè)備;終端設(shè)備根據(jù)指紋信息、sid信息、時(shí)間戳ttm通過該加密算法alg產(chǎn)生密鑰tkey,利用通過rsa數(shù)字證書(puk)簽名生成tkey',并發(fā)送給服務(wù)器;
d13、終端設(shè)備收到skey',利用rsa數(shù)字證書(puk)成功獲取skey,并返回確認(rèn)消息給服務(wù)器;服務(wù)器收到tkey',利用rsa數(shù)字證書私鑰(prk)成功獲取tkey,并返回確認(rèn)消息給終端;
d14、若服務(wù)器解密失敗,則返回失敗消息給終端設(shè)備,并且兩者再次請(qǐng)求協(xié)商加密算法alg,然后重復(fù)步驟d11~d13;若終端設(shè)備解密失敗,則返回失敗消息給服務(wù)器,并且兩者再次請(qǐng)求協(xié)商加密算法alg,然后重復(fù)步驟d11~d13;
d15、服務(wù)器與終端設(shè)備之間的本次會(huì)話期間,服務(wù)器將一直使用該密鑰skey進(jìn)行加密,同時(shí)服務(wù)器一直使用tkey進(jìn)行解密;終端設(shè)備將一直采用tkey進(jìn)行加密,同時(shí)終端設(shè)備一直使用skey進(jìn)行解密;并直到本次會(huì)話結(jié)束。
本發(fā)明如果服務(wù)器與終端設(shè)備雙方需要檢測數(shù)據(jù)完整性校驗(yàn),可以采用sdk包中數(shù)據(jù)完整性算法,在獲取數(shù)據(jù)的時(shí)候?qū)?shù)據(jù)完整性進(jìn)行校驗(yàn),防止數(shù)據(jù)傳輸?shù)倪^程中被第三方截取篡改。
本發(fā)明保證了終端與服務(wù)器在整個(gè)會(huì)話過程的數(shù)據(jù)安全,包括指紋身份認(rèn)證、數(shù)據(jù)的完整性、準(zhǔn)確性,采用對(duì)稱加密算法同時(shí)也保證響應(yīng)時(shí)間的及時(shí)性、可靠性。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。