本技術(shù)涉及物聯(lián)網(wǎng)安全訪問,具體涉及一種分布式iot的安全認(rèn)證方法、系統(tǒng)及智慧終端設(shè)備。
背景技術(shù):
1、iot(物聯(lián)網(wǎng),internet?of?things)是一個基于互聯(lián)網(wǎng)、傳統(tǒng)電信網(wǎng)等信息承載體,讓所有能夠被獨(dú)立尋址的普通物理對象實(shí)現(xiàn)互聯(lián)互通的網(wǎng)絡(luò)。在物聯(lián)網(wǎng)中數(shù)據(jù)采取分布式存儲方式存儲在各個節(jié)點(diǎn)內(nèi),在物聯(lián)網(wǎng)的節(jié)點(diǎn)相互通信時,需要進(jìn)行身份驗(yàn)證,避免信息泄露。
2、基于屬性加密的加密方式是一種能夠自定義訪問細(xì)粒度的加密方式,加密方在加密時可以自定義一組屬性,解密方只有擁有該組屬性中的所有屬性時,才能對密文進(jìn)行解密。在物聯(lián)網(wǎng)的數(shù)據(jù)傳輸時,節(jié)點(diǎn)可以通過定義傳輸數(shù)據(jù)的加密屬性,使數(shù)據(jù)只能被目標(biāo)節(jié)點(diǎn)所解密,在數(shù)據(jù)傳輸時達(dá)到安全認(rèn)證的效果。
3、在屬性加密使用到分布式iot上時,由于物聯(lián)網(wǎng)中節(jié)點(diǎn)眾多,因此需要考慮如何為當(dāng)前節(jié)點(diǎn)的明文分配正確的屬性,使目標(biāo)節(jié)點(diǎn)能夠解密而其它節(jié)點(diǎn)無法解密。傳統(tǒng)的屬性分配方法是找到當(dāng)前節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)的所有共同屬性,用共同屬性作為分配的屬性。但共同屬性所涉及到的屬性過多,過多的屬性會使節(jié)點(diǎn)在加密解密時花費(fèi)更多的計(jì)算資源,導(dǎo)致系統(tǒng)通信效率下降。
技術(shù)實(shí)現(xiàn)思路
1、為了解決上述技術(shù)問題,本技術(shù)的目的在于提供一種分布式iot的安全認(rèn)證方法、系統(tǒng)及智慧終端設(shè)備,所采用的技術(shù)方案具體如下:
2、第一方面,本技術(shù)實(shí)施例提供了一種分布式iot的安全認(rèn)證方法,該方法包括以下步驟:
3、通過物聯(lián)網(wǎng)終端獲取當(dāng)前節(jié)點(diǎn)與所有目標(biāo)節(jié)點(diǎn)共同擁有的屬性信息,組合得到共同屬性集合,獲取其它節(jié)點(diǎn)中的已知節(jié)點(diǎn);基于各已知節(jié)點(diǎn)向當(dāng)前節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)確定各已知節(jié)點(diǎn)的最近通信時刻、已知屬性集合及數(shù)字指紋;基于節(jié)點(diǎn)接收信息的頻率確定節(jié)點(diǎn)的安全等級;
4、基于所述最近通信時刻與當(dāng)前時刻之間的距離,結(jié)合對應(yīng)的安全等級,構(gòu)建各已知節(jié)點(diǎn)的可信度;基于所述已知屬性集合中的屬性在共同屬性集合中的出現(xiàn)情況構(gòu)建各已知節(jié)點(diǎn)的屬性分布向量,結(jié)合所述可信度構(gòu)建其它屬性分布向量;
5、通過指紋生成算法獲取當(dāng)前節(jié)點(diǎn)需要傳輸?shù)臄?shù)據(jù)的數(shù)字指紋;基于當(dāng)前節(jié)點(diǎn)與已知節(jié)點(diǎn)的數(shù)字指紋之間的相似度,結(jié)合所述可信度,構(gòu)建當(dāng)前節(jié)點(diǎn)與各已知節(jié)點(diǎn)之間的數(shù)據(jù)相似性;基于所述屬性分布向量及所述數(shù)據(jù)相似性,采用與其它屬性分布向量相同的獲取方式得到參考屬性分布向量;
6、基于其它屬性分布向量及參考屬性分布向量中元素大小,結(jié)合所有目標(biāo)節(jié)點(diǎn)的安全等級,獲取當(dāng)前節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸時用于加密的屬性;基于所述用于加密的屬性通過屬性加密進(jìn)行物聯(lián)網(wǎng)安全認(rèn)證。
7、在其中一種實(shí)施例中,所述已知節(jié)點(diǎn)為:
8、將需要傳輸數(shù)據(jù)的節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),將接收數(shù)據(jù)的節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),將除當(dāng)前節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)外的節(jié)點(diǎn)作為其它節(jié)點(diǎn),將向當(dāng)前節(jié)點(diǎn)傳輸過數(shù)據(jù)的其它節(jié)點(diǎn)作為已知節(jié)點(diǎn)。
9、在其中一種實(shí)施例中,所述各已知節(jié)點(diǎn)的最近通信時刻、已知屬性集合及數(shù)字指紋為:
10、將各已知節(jié)點(diǎn)最近一次向當(dāng)前節(jié)點(diǎn)傳輸數(shù)據(jù)的時刻記為最近通信時刻,將對應(yīng)的傳輸數(shù)據(jù)所涉及的屬性組成的集合作為各已知節(jié)點(diǎn)的已知屬性集合;通過指紋生成算法獲取各已知節(jié)點(diǎn)最近通信時刻傳輸?shù)臄?shù)據(jù)的數(shù)字指紋。
11、在其中一種實(shí)施例中,所述安全等級的獲取過程為:
12、將物聯(lián)網(wǎng)中各節(jié)點(diǎn)接收信息的頻率的歸一化值,乘以預(yù)設(shè)的最高安全等級再向上取整,得到各節(jié)點(diǎn)的安全等級。
13、在其中一種實(shí)施例中,所述各已知節(jié)點(diǎn)的可信度的獲取過程為:
14、將各已知節(jié)點(diǎn)的最近通信時刻與當(dāng)前時間之間的差值記為第一差值;
15、各已知節(jié)點(diǎn)的可信度與各已知節(jié)點(diǎn)的安全等級成正相關(guān)關(guān)系,與所述第一差值成負(fù)相關(guān)關(guān)系。
16、在其中一種實(shí)施例中,所述其它屬性分布向量的獲取過程為:
17、設(shè)共同屬性集合中元素個數(shù)為k;設(shè)置長度為k的初始向量,其中各元素的初始值為0;
18、對于各已知節(jié)點(diǎn),遍歷已知節(jié)點(diǎn)的已知屬性集合中所有屬性,若遍歷到的屬性與共同屬性集合中第k種屬性一致,則將初始向量的第k個元素加1;將遍歷完已知節(jié)點(diǎn)的已知屬性集合中所有屬性后得到的初始向量記為已知節(jié)點(diǎn)的屬性分布向量;將已知節(jié)點(diǎn)的可信度與所述屬性分布向量相乘,得到的向量記為加權(quán)屬性分布向量;
19、將所有已知節(jié)點(diǎn)的加權(quán)屬性分布向量求和得到的向量記為屬性和向量;將所有已知節(jié)點(diǎn)的屬性分布向量的可信度的和值記為第一和值;將屬性和向量中各元素與第一和值的比值記為第一比值,將屬性和向量中所有元素的所述第一比值組成的向量記為其它屬性分布向量。
20、在其中一種實(shí)施例中,所述數(shù)據(jù)相似性的獲取過程為:
21、通過相似度算法獲取當(dāng)前節(jié)點(diǎn)與各已知節(jié)點(diǎn)的數(shù)字指紋之間的相似度,將所述相似度與各已知節(jié)點(diǎn)的可信度的融合值作為各已知節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)之間的數(shù)據(jù)相似性。
22、在其中一種實(shí)施例中,所述用于加密的屬性的獲取過程為:
23、將所述其它屬性分布向量中所有元素取相反數(shù),再與所述參考屬性分布向量求和,得到的向量記為分配參考向量;將分配參考向量中各元素作為對應(yīng)的共同屬性的分配參考值;
24、計(jì)算所有目標(biāo)節(jié)點(diǎn)的安全等級的均值,將所述均值與最高安全等級的比值作為當(dāng)前節(jié)點(diǎn)需要傳輸?shù)臄?shù)據(jù)的安全等級;將所述需要傳輸?shù)臄?shù)據(jù)的安全等級與共同屬性總數(shù)相乘再向下取整,將向下取整結(jié)果記為第一數(shù)目;
25、將所有共同屬性按分配參考值從大到小排列,將其中前第一數(shù)量個共同屬性作為所述用于加密的屬性。
26、第二方面,本技術(shù)實(shí)施例還提供了一種分布式iot的安全認(rèn)證系統(tǒng),包括:
27、數(shù)據(jù)采集及預(yù)處理模塊:通過物聯(lián)網(wǎng)終端獲取當(dāng)前節(jié)點(diǎn)與所有目標(biāo)節(jié)點(diǎn)共同擁有的屬性信息,組合得到共同屬性集合,獲取其它節(jié)點(diǎn)中的已知節(jié)點(diǎn);基于各已知節(jié)點(diǎn)向當(dāng)前節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)確定各已知節(jié)點(diǎn)的最近通信時刻、已知屬性集合及數(shù)字指紋;基于節(jié)點(diǎn)接收信息的頻率確定節(jié)點(diǎn)的安全等級;
28、其他屬性分析模塊:基于所述最近通信時刻與當(dāng)前時刻之間的距離,結(jié)合對應(yīng)的安全等級,構(gòu)建各已知節(jié)點(diǎn)的可信度;基于所述已知屬性集合中的屬性在共同屬性集合中的出現(xiàn)情況構(gòu)建各已知節(jié)點(diǎn)的屬性分布向量,結(jié)合所述可信度構(gòu)建其它屬性分布向量;
29、參考屬性生成模塊:通過指紋生成算法獲取當(dāng)前節(jié)點(diǎn)需要傳輸?shù)臄?shù)據(jù)的數(shù)字指紋;基于當(dāng)前節(jié)點(diǎn)與已知節(jié)點(diǎn)的數(shù)字指紋之間的相似度,結(jié)合所述可信度,構(gòu)建當(dāng)前節(jié)點(diǎn)與各已知節(jié)點(diǎn)之間的數(shù)據(jù)相似性;基于所述屬性分布向量及所述數(shù)據(jù)相似性,采用與其它屬性分布向量相同的獲取方式得到參考屬性分布向量;
30、安全認(rèn)證模塊:基于其它屬性分布向量及參考屬性分布向量中元素大小,結(jié)合所有目標(biāo)節(jié)點(diǎn)的安全等級,獲取當(dāng)前節(jié)點(diǎn)用于加密的屬性;基于所述用于加密的屬性通過屬性加密進(jìn)行安全認(rèn)證。
31、第三方面,本技術(shù)實(shí)施例還提供了一種分布式iot的安全認(rèn)證智慧終端設(shè)備,包括存儲器、處理器以及存儲在所述存儲器中并在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時實(shí)現(xiàn)上述任意一項(xiàng)所述方法的步驟。
32、本技術(shù)實(shí)施例至少具有如下有益效果:
33、本技術(shù)通過獲取當(dāng)前節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)所共同具有的屬性構(gòu)建共同屬性集合,獲取其它節(jié)點(diǎn)中的已知節(jié)點(diǎn)向當(dāng)前節(jié)點(diǎn)傳送的數(shù)據(jù)信息;基于節(jié)點(diǎn)接收信息的頻率、已知節(jié)點(diǎn)的最近通信時刻構(gòu)建各已知節(jié)點(diǎn)的可信度,將可信度作為權(quán)重,提高了可靠已知節(jié)點(diǎn)的數(shù)據(jù)信息的占比,有利于提高后續(xù)獲取區(qū)分性差的屬性時的準(zhǔn)確性;基于已知節(jié)點(diǎn)的屬性在共同屬性集合中的出現(xiàn)情況構(gòu)建各已知節(jié)點(diǎn)的屬性分布向量,結(jié)合所述可信度構(gòu)建其它屬性分布向量,評估了共同屬性集合中每種屬性選為加密所用屬性的適合程度;基于當(dāng)前節(jié)點(diǎn)需要傳輸?shù)臄?shù)據(jù)與已知節(jié)點(diǎn)向當(dāng)前節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)之間的相似度,結(jié)合所述可信度及所述屬性分布向量構(gòu)建參考屬性分布向量,進(jìn)一步評估了每種共同屬性的適合程度,有利于提高加密用屬性的選擇準(zhǔn)確性;基于其它屬性分布向量及參考屬性分布向量及所有目標(biāo)節(jié)點(diǎn)的安全等級獲取當(dāng)前節(jié)點(diǎn)傳輸數(shù)據(jù)時用于加密的屬性;基于所述用于加密的屬性通過屬性加密進(jìn)行安全認(rèn)證;由于分配參考排序中排序靠前的屬性是區(qū)分性好的屬性,選擇這些屬性能夠在保證傳輸?shù)拿芪闹挥心繕?biāo)節(jié)點(diǎn)能解密,其它節(jié)點(diǎn)無法解密,保證了安全認(rèn)證的可靠性;同時,相比于傳統(tǒng)的屬性加密,減少了加密時所使用到的屬性,提高了通信效率。