【技術領域】
本發(fā)明涉及計算機應用技術領域,特別涉及一種設備標識的分配方法和裝置。
背景技術:
隨著計算機技術的迅猛發(fā)展,為用戶的生活提供了越來越多的便利,用戶能夠利用用戶設備上的app(應用軟件)通過云端對與該用戶綁定的終端設備進行數(shù)據(jù)交互。例如在物聯(lián)網(wǎng)中,用戶能夠通過手機app與物聯(lián)設備綁定后,通過云端對物聯(lián)設備進行數(shù)據(jù)交互,獲取物聯(lián)設備采集的私密數(shù)據(jù)。理想狀況是,物聯(lián)設備采集的數(shù)據(jù)通過物聯(lián)網(wǎng)僅發(fā)送給與該物聯(lián)設備綁定的用戶。如圖1中所示,物聯(lián)設備a采集的數(shù)據(jù)發(fā)送給物聯(lián)設備a的用戶,物聯(lián)設備b采集的數(shù)據(jù)發(fā)送給物聯(lián)設備b的用戶。
為了實現(xiàn)上述目的,物聯(lián)網(wǎng)云端的服務器首先為物聯(lián)設備及用戶注冊,生成物聯(lián)網(wǎng)全局內唯一的設備身份id及用戶身份id,然后應用戶請求建立設備身份id和用戶身份id之間的綁定關系。其流程大致如圖2中所示,用戶首先通過手機app注冊并獲取用戶身份id;在201中物聯(lián)設備向物聯(lián)網(wǎng)云端的服務器發(fā)送注冊請求,在202中由服務器給物聯(lián)設備分配設備身份id;在203中用戶通過手機app對設備查詢或掃碼,并在204中獲取物聯(lián)設備的設備身份id;在205中用戶向服務器發(fā)出綁定請求,請求綁定設備身份id,在206中服務器在本地存儲設備身份id和用戶身份id之間的綁定關系,并向用戶返回綁定成功響應。至此完成綁定。在207中若物聯(lián)設備將采集到的數(shù)據(jù)發(fā)送給服務器,在208中服務器依據(jù)綁定關系將該數(shù)據(jù)轉發(fā)給用戶。
目前用戶身份注冊流程是有比較成熟的技術方案的,比如短信核對、 email核對甚至實名注冊審核等,用戶身份注冊是比較安全可靠的。但現(xiàn)有的設備身份注冊流程是通過提供物聯(lián)設備的原始物理信息,例如設備型號、設備mac地址以及產(chǎn)品序列號,然后由物聯(lián)網(wǎng)云端的服務器通過一定算法生成的設備身份id。但這種方案存在明顯的安全漏洞:由于設備身份id來源于物聯(lián)設備的原始物理信息,一旦原始物理信息被假冒,就會出現(xiàn)克隆設備和隨之而來的數(shù)據(jù)攻擊。例如克隆設備偽造了物聯(lián)設備的原始物理信息進行注冊,得到真實的設備身份id,并以此設備身份id向與該設備身份id綁定的用戶發(fā)送虛假信息。
技術實現(xiàn)要素:
有鑒于此,本發(fā)明提供了一種設備標識的分配方法和裝置,以便于防止設備身份被假冒,提高安全性。
具體技術方案如下:
本發(fā)明提供了一種設備標識的分配方法,該方法包括:
接收第一請求,所述第一請求中包括終端設備信息和用戶認證口令;所述用戶認證口令是根據(jù)在所述第一請求之前發(fā)送的第二請求生成的;
利用所述用戶認證口令,生成所述終端設備對應的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一請求由所述終端設備或用戶終端發(fā)送;
所述第二請求由所述終端設備或所述用戶終端發(fā)送。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
將所述第一設備標識發(fā)送給所述終端設備和/或所述用戶終端。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
保存用戶的身份信息與所述第一設備身份標識之間的綁定關系。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述用戶認證口令采用以下方式生成:
接收所述第二請求;
確定用戶的身份信息,并利用所述用戶的身份信息生成用戶認證口令;
保存所述用戶的身份信息對應的用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,利用所述用戶的身份信息生成用戶認證口令包括:
將所述用戶的身份信息和隨機信息按預設的順序進行拼接后,對拼接得到的信息進行加密處理,得到用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,若接收到的第一請求中不包含用戶認證口令,則該方法還包括:
利用接收到的第一請求中包含的終端設備信息,生成第二設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
將生成的第二設備身份標識返回給所述終端設備和/或用戶終端。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述終端設備信息包括設備型號、設備mac地址和設備的產(chǎn)品序列號中的至少一種。
根據(jù)本發(fā)明一優(yōu)選實施方式,利用所述用戶認證口令,生成第一設備身份標識包括:
將用戶認證口令采用安全哈希算法進行處理,得到第一設備身份標識;或者,
將所述終端設備信息和用戶認證口令按預設的順序進行拼接后,采用安全哈希算法對所述拼接得到的信息進行處理,得到第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
接收攜帶所述第一設備身份標識的注銷請求;
解除所述第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
接收攜帶所述第一設備身份標識的注銷請求;
刪除所述用戶的身份信息與所述第一設備身份標識之間的綁定關系。
根據(jù)本發(fā)明一優(yōu)選實施方式,利用所述用戶認證口令,生成所述終端設備對應的第一設備身份標識之前,該方法還包括:
判斷所述第一請求包含的用戶認證口令是否超出有效期,如果是,則返回 注冊失敗的響應;否則,執(zhí)行利用所述用戶認證口令,生成所述終端設備對應的第一設備身份標識的步驟。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
接收登錄請求;
判斷所述登錄請求包含的第一設備身份標識是否被解除,如果是,則登錄失??;否則登錄成功。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
接收包含第一設備身份標識的數(shù)據(jù)請求,判斷本地是否存在與所述第一設備身份標識存在綁定關系的用戶的身份信息;如果是,則將所述數(shù)據(jù)請求轉發(fā)至所述用戶的身份信息對應的用戶終端,否則拒絕所述數(shù)據(jù)請求;或者,
接收包含用戶的身份信息的數(shù)據(jù)請求,判斷本地是否存在與所述用戶的身份信息存在綁定關系的第一設備身份標識,如果是,則將所述數(shù)據(jù)請求轉發(fā)至所述第一設備身份標識對應的終端設備;否則,拒絕所述數(shù)據(jù)請求。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一請求為身份注冊請求;
所述第二請求為獲取認證口令的請求。
本發(fā)明還提供了一種設備標識的分配方法,該方法包括:
從服務器端獲取用戶認證口令;
將所述用戶認證口令發(fā)送給終端設備以觸發(fā)所述終端設備利用所述用戶認證口令從服務器端獲取所述終端設備對應的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
接收所述終端設備返回的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述從服務器端獲取用戶認證口令包括:
向所述服務器端發(fā)送獲取認證口令的請求;
接收所述服務器端利用用戶的身份信息生成并返回的用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,將所述用戶認證口令發(fā)送給終端設備包括:
利用局域網(wǎng)或者近距離通信方式將所述用戶認證口令發(fā)送給終端設備。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
向所述服務器端發(fā)送攜帶所述第一設備身份標識的注銷請求。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
向所述服務器端發(fā)送包含所述第一設備身份標識的數(shù)據(jù)請求。
本發(fā)明還提供了一種設備標識的分配方法,該方法包括:
從用戶終端接收用戶認證口令;
向服務器端發(fā)送包含終端設備信息和用戶認證口令的第一請求;
接收并保存所述服務器端返回的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
將所述第一設備身份標識返回給所述用戶終端。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
向所述服務器端發(fā)送包含所述第一設備身份標識的登錄請求;
如果登錄失敗,則向所述服務器端發(fā)送包含終端設備信息的第一請求;
利用接收到的第二設備身份標識替換本地保存的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述從用戶終端接收用戶認證口令包括:
通過局域網(wǎng)或近距離通信方式從用戶終端接收用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
向所述服務器端發(fā)送數(shù)據(jù)請求,所述數(shù)據(jù)請求包含本地保存的設備身份標識,該設備身份標識包括第一設備身份標識或第二設備身份標識。
本發(fā)明還提供了一種設備標識的分配裝置,設置于服務器端,該裝置包括:
第二交互單元,用于接收第一請求,所述第一請求中包括終端設備信息和用戶認證口令;所述用戶認證口令是根據(jù)在所述第一請求之前發(fā)送的第二請求生成的;
標識維護單元,用于利用所述用戶認證口令,生成第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一請求由所述終端設備或用戶終端發(fā)送;
所述第二請求由所述終端設備或所述用戶終端發(fā)送。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:第一交互單元,用于將所述 第一設備標識發(fā)送給所述用戶終端;和/或,
所述第一交互單元,用于將所述第一設備標識發(fā)送給所述終端設備。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:
綁定處理單元,用于保存用戶的身份信息與所述第一設備身份標識之間的綁定關系。
根據(jù)本發(fā)明一優(yōu)選實施方式,第一交互單元和口令維護單元;
所述第一交互單元,用于接收所述第二請求;
所述口令維護單元,用于確定發(fā)送所述第二請求的用戶的身份信息,并利用所述用戶的身份信息生成用戶認證口令;保存所述用戶的身份信息對應的用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述口令維護單元在利用所述用戶的身份信息生成用戶認證口令時,具體執(zhí)行:
將所述用戶的身份信息和隨機信息按預設的順序進行拼接后,對拼接得到的信息進行加密處理,得到用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述標識維護單元,還用于在所述第一請求中不包含用戶認證口令時,利用所述第一請求中包含的終端設備信息,生成第二設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:第一交互單元,用于將所述第二設備身份標識返回給用戶終端;和/或,
所述第二交互單元,還用于將所述第二設備身份標識返回給所述終端設備。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述終端設備信息包括設備型號、設備mac地址和設備的產(chǎn)品序列號中的至少一種。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述標識維護單元,具體用于:
將用戶認證口令采用安全哈希算法進行處理,得到第一設備身份標識;或者,
將所述終端設備信息和用戶認證口令按預設的順序進行拼接后,采用安全哈希算法對所述拼接得到的信息進行處理,得到第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:第一交互單元,用于接收攜帶第一設備身份標識的注銷請求;
所述標識維護單元,還用于依據(jù)注銷請求,解除所述第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:第一交互單元,用于接收攜帶第一設備身份標識的注銷請求;
所述綁定處理單元,還用于依據(jù)所述注銷請求,刪除所述用戶的身份信息與所述第一設備身份標識之間的綁定關系。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:口令驗證單元,用于在所述第二交互單元接收到所述第一請求后,判斷所述第一請求包含的用戶認證口令是否超出有效期,如果是,則觸發(fā)所述第二交互單元返回注冊失敗的響應;否則,觸發(fā)所述標識維護單元執(zhí)行利用所述用戶認證口令,生成所述終端設備對應的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:登錄處理單元;
所述第二交互單元,還用于接收所述終端設備的登錄請求;
所述登錄處理單元,用于判斷所述登錄請求包含的第一設備身份標識是否被解除,如果是,則登錄失敗;否則登錄成功。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:
轉發(fā)處理單元,用于在所述第二交互單元接收到所述終端設備發(fā)送的包含第一設備身份標識的數(shù)據(jù)請求時,判斷本地是否存在與所述第一設備身份標識存在綁定關系的用戶的身份信息,如果是,則將所述數(shù)據(jù)請求轉發(fā)至所述用戶的身份信息對應的用戶終端,否則拒絕所述數(shù)據(jù)請求;或者,
在第一交互單元接收到包含用戶的身份信息的數(shù)據(jù)請求時,判斷本地是否存在與所述用戶的身份信息存在綁定關系的第一設備身份標識,如果是,則通過所述第二交互單元將所述數(shù)據(jù)請求轉發(fā)至所述第一設備身份標識對應的終端設備;否則,拒絕所述數(shù)據(jù)請求。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一請求為身份注冊請求;
所述第二請求為獲取認證口令的請求。
本發(fā)明提供了一種設備標識的分配裝置,該裝置設置于用戶終端,該裝置包括:
服務端交互單元,用于從服務器端獲取用戶認證口令;
終端交互單元,用于將所述用戶認證口令發(fā)送給終端設備以觸發(fā)所述終端設備利用所述用戶認證口令從服務器端獲取所述終端設備對應的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述終端交互單元,還用于接收所述終端設備返回的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述服務端交互單元,具體用于向所述服務器端發(fā)送獲取認證口令的請求;接收所述服務器端利用用戶的身份信息生成并返回的用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述終端交互單元,具體利用局域網(wǎng)或者近距離通信方式將所述用戶認證口令發(fā)送給終端設備。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述服務端交互單元,還用于向所述服務器端發(fā)送攜帶所述第一設備身份標識的注銷請求。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述服務端交互單元,還用于向所述服務器端發(fā)送包含所述第一設備身份標識的數(shù)據(jù)請求。
本發(fā)明還提供了一種設備標識的分配裝置,該裝置設置于終端設備,該裝置包括:
用戶端交互單元,用于從用戶終端接收用戶認證口令;
服務端交互單元,用于向服務器端發(fā)送包含終端設備信息和用戶認證口令的第一請求;接收所述服務器端返回的第一設備身份標識;
標識保存單元,用于保存所述服務端交互單元接收到的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述用戶端交互單元,還用于將所述第一設備身份標識返回給所述用戶終端。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述服務端交互單元,還用于向所述服務器端發(fā)送包含所述第一設備身份標識的登錄請求;如果登陸失敗,則向所述服務 器端發(fā)送包含終端設備信息的第一請求;接收所述服務器端返回的第二設備身份標識;
所述標識保存單元,還用于利用所述第二設備身份標識替換本地保存的第一設備身份標識。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述用戶端交互單元,具體用于通過局域網(wǎng)或近距離通信方式從用戶端接收用戶認證口令。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述服務端交互單元,還用于向所述服務器端發(fā)送數(shù)據(jù)請求,所述數(shù)據(jù)請求包含所述標識保存單元保存的設備身份標識,該設備身份標識包括第一設備身份標識或第二設備身份標識。
由以上技術方案可以看出,在本發(fā)明中,服務器端依據(jù)用戶認證口令生成終端設備對應的第一設備身份標識,而并非單純依據(jù)終端設備信息來生成第一設備身份標識。這種方式即便終端設備被克隆,由于其無法得到用戶認證口令,因此無法假冒終端設備的身份,提高了安全性。
【附圖說明】
圖1為物聯(lián)網(wǎng)中物聯(lián)設備與用戶之間的數(shù)據(jù)交互示意圖;
圖2為現(xiàn)有技術中物聯(lián)設備和用戶之間的綁定流程示意圖;
圖3為本發(fā)明實施例提供的身份注冊的主要方法流程圖;
圖4為本發(fā)明實施例提供的解除物聯(lián)設備認證的方法流程圖;
圖5為本發(fā)明實施例提供的另一種身份注冊的方法流程圖;
圖6為本發(fā)明實施例提供的設置于服務器端的裝置結構圖;
圖7為本發(fā)明實施例提供的設置于用戶終端的裝置結構圖;
圖8為本發(fā)明實施例提供的設置于終端設備的裝置結構圖。
【具體實施方式】
為了使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面結合附圖和具體實施例對本發(fā)明進行詳細描述。
首先需要說明的是,本發(fā)明所提供的方法和裝置并不限于物聯(lián)網(wǎng)下的物聯(lián)設備身份認證,對于任意通過服務器與用戶終端進行互通的終端設備,本發(fā)明均適用。這里的用戶終端可以包括但不限于手機、平板電腦、筆記本電腦、pda(個人數(shù)字助理)等能夠運行app的智能用戶設備。與用戶終端互通的終端設備可以包括但不限于智能家電設備、網(wǎng)絡設備、可穿戴式設備、智能醫(yī)療設備、pc(個人計算機)等。其中智能移動設備可以包括諸如手機、平板電腦、筆記本電腦、pda(個人數(shù)字助理)等。智能家電設備可以包括諸如智能電視、智能空調、智能熱水器、智能冰箱、智能空氣凈化器等等。網(wǎng)絡設備可以包括諸如交換機、無線ap、服務器等??纱┐魇皆O備可以包括諸如智能手表、智能眼鏡、智能手環(huán)等等。智能醫(yī)療設備可以包括諸如智能體溫計、智能血壓儀、智能血糖儀等等。為了方便描述,本發(fā)明均以手機與物聯(lián)設備為例進行描述。
圖3為本發(fā)明實施例提供的身份注冊的主要方法流程圖,如圖3中所示,該方法可以包括以下步驟:
在301中,用戶通過手機app向服務器端發(fā)送獲取認證口令的請求。
在本發(fā)明實施例中,由用戶端觸發(fā)物聯(lián)設備的身份注冊和綁定。當用戶想要通過手機與某物聯(lián)設備實現(xiàn)綁定時,登錄手機app,通過該手機app向服務器端發(fā)送獲取認證口令的請求,在該請求中包含用戶的身份信息。其中用戶的身份信息可以是用戶的登錄賬號,也可以是服務器端為用戶分配的用戶標識(userid),也可以是用戶向服務器端注冊獲取的用戶身份id等。
在302中,服務器端利用用戶的身份信息生成用戶認證口令。
若獲取認證口令的請求中包含的是用戶的登錄賬號,則可以利用用戶的登錄賬號確定對應的userid,然后利用userid生成用戶認證口令。若獲取認證口令的請求中包含的是userid,則可以直接利用該userid生成用戶認證口令。當然也可以利用用戶身份id等其他用戶的身份信息來生成用戶認證口令,在本實施例中僅以利用userid生成用戶認證口令為例。
生成用戶認證口令的過程可以包括:將userid和隨機信息按順序進行 拼接后,對得到的信息進行加密處理,得到用戶認證口令。例如,可以將userid、當前時間以及服務器端隨機生成的十進制3位隨機數(shù)進行一次拼接后,對拼接得到的字符串計算md5值,將得到的值作為用戶認證口令。
上述方式生成的用戶認證口令具備如下特點:1)可回溯性,即可以由用戶認證口令回溯到用戶的身份信息;2)隨機性,即服務器端針對同一用戶的多次認證請求,生成各不相同的用戶認證口令;3)唯一性,即任何一個用戶認證口令在服務器端均是唯一的,用戶認證口令不可重復。
用戶認證口令生成后,將用戶的身份信息與用戶認證口令之間的對應關系存儲于本地。另外,每個用戶認證口令可以存在有效期,當超出有效期后,用戶認證口令失效。用戶認證口令在服務器端存儲的形式可以如表1中所示。
表1
一旦用戶認證口令被使用,即在后續(xù)利用用戶認證口令生成并下發(fā)了設備身份標識,則該用戶認證口令失效。另外,對于超出有效期的用戶認證口令,也被設置為無效。
在303中,服務器端將生成的用戶認證口令返回給用戶端的手機app。
在304中,手機app將用戶認證口令發(fā)送給物聯(lián)設備。
獲取用戶認證口令后,用戶可以通過手機app向該用戶認證口令提供給要綁定的物聯(lián)設備。在本步驟中若手機和物聯(lián)設備處于同一局域網(wǎng),則手機app可以通過局域網(wǎng)將用戶認證口令發(fā)送給物聯(lián)設備。或者也可以通過近距離通信方式將用戶認證口令發(fā)送給物聯(lián)設備,例如通過藍牙、紅外傳輸、nfc(近場通信)等方式。
在305中,物聯(lián)設備向服務器端發(fā)送包含終端設備信息和用戶認證口令的注冊請求。
其中,終端設備信息可以包括但不限于設備型號、設備mac地址和設備的sn(serialnumber,產(chǎn)品序列號)中的至少一種。
在306中,服務器端利用注冊請求包含的終端設備信息和用戶認證口令,生成第一設備身份標識,保存用戶的身份信息與第一設備身份標識之間的綁定關系。
其中生成第一設備身份標識所采用的算法需保證生成的第一設備身份標識唯一,在本發(fā)明實施例中可以采用安全哈希算法(sha,securehashalgorithm)。例如,可以將設備型號、設備mac地址和設備的sn按預設的順序進行拼接,然后采用諸如sha-256算法對拼接后得到的信息進行處理,得到第一設備身份標識。
除了本步驟中所提供的利用終端設備信息和用戶認證口令生成第一設備身份標識之外,還可以采用僅利用用戶認證口令生成第一設備身份標識的方式,例如采用sha-256算法對用戶認證口令進行處理,得到第一設備身份標識。甚至可以直接將用戶認證口令作為第一設備身份標識。然后在服務器端存儲終端設備信息和用戶認證口令之間的對應關系。
另外,在本步驟中,服務器可以首先對接收到的注冊請求中包含的用戶認證口令進行驗證,即驗證本地是否保存有該用戶認證口令且該用戶認證口令是有效的,如果是,則驗證通過,生成第一設備身份標識。否則,驗證失敗。可以向物聯(lián)設備返回注冊失敗的響應。
在保存綁定關系時,可以保存諸如userid與第一設備身份標識之間的對應關系,從而實現(xiàn)用戶與物聯(lián)設備之間的綁定。
在307中,服務器端將第一設備身份標識返回給物聯(lián)設備。
本步驟可以將第一設備身份標識攜帶在注冊成功的響應中返回給物聯(lián)設備。
在308中,物聯(lián)設備在本地保存第一設備身份標識。
在本發(fā)明實施例中,一個物聯(lián)設備可以允許僅與一個用戶綁定,也可以允許與多個用戶綁定。當與多個用戶綁定時,該物聯(lián)設備具有多個第一設備 身份標識,在服務器端存儲有該多個第一設備身份標識與不同用戶之間的綁定關系。但考慮到物聯(lián)設備的數(shù)據(jù)私密性,優(yōu)選前一種方式,即僅允許一個物聯(lián)設備與一個用戶綁定。
若僅允許一個物聯(lián)設備與一個用戶綁定,那么物聯(lián)設備可以利用接收到的第一設備身份標識替換本地已保存的設備身份標識。也就是說,一個物聯(lián)設備在同一時間僅能夠具有一個設備身份標識。
在309中,物聯(lián)設備將第一設備身份標識返回給手機app。
通過圖3所示流程就可以完成物聯(lián)設備的身份注冊以及用戶與物聯(lián)設備的綁定。
對于物聯(lián)設備發(fā)送給用戶端的數(shù)據(jù)請求,服務器端判斷本地是否存在該數(shù)據(jù)請求所包含第一設備身份標識的綁定關系,如果否,則可以拒絕該數(shù)據(jù)請求。如果是,則將數(shù)據(jù)請求轉發(fā)至第一設備身份標識存在綁定關系的用戶。
對于用戶端發(fā)送給物聯(lián)設備的數(shù)據(jù)請求,服務器端判斷本地是否存在與該用戶的身份標識存在綁定關系的第一設備身份標識,如果是,則將該數(shù)據(jù)請求轉發(fā)至該第一設備身份標識對應的物聯(lián)設備;否則,拒絕該數(shù)據(jù)請求。
通過本實施例可以看出,物聯(lián)設備一旦被用戶認證后,就需要更新使用新的第一設備身份標識,物聯(lián)設備和用戶端的綁定關系隱藏于第一設備身份標識中。當物聯(lián)設備被某個用戶認證后,該物聯(lián)設備的數(shù)據(jù)僅歸屬于該用戶,并接受該用戶的訪問控制。
需要說明的是,在上述實施例中是終端設備進行身份注冊為例進行的描述,但本發(fā)明并不限于身份注冊,也可以適用于除了身份注冊之外任意需要進行設備標識分配的過程,相應地,上述的注冊請求替換為其他相應類型的業(yè)務請求。
另外,圖3所示流程中的步驟也可以存在其他可替換的實現(xiàn)方式,例如步驟304~305可以替換為:用戶終端通過諸如掃描設備二維碼等方式從物聯(lián)設備獲取終端設備信息,然后由手機app將用戶認證口令和終端設備信息發(fā)送給服務器端,然后服務器端執(zhí)行306為物聯(lián)設備分配第一設備身份標識。
再例如,步驟307~309也可以替換為:服務器端將第一設備身份標識返回給手機app,由手機app將該第一設備身份標識提供給物聯(lián)設備,物聯(lián)設備保存該第一設備身份標識?;蛘叻掌鞫藢⒌谝辉O備身份標識返回給手機app和物聯(lián)設備,物聯(lián)設備保存該第一設備身份標識。
若用戶想要解除物聯(lián)設備認證,可以通過圖4所示流程實現(xiàn)。圖4為本發(fā)明實施例提供的解除物聯(lián)設備認證的方法流程圖,如圖4所示,該方法可以包括以下步驟:
在401中,用戶通過手機app向服務器端發(fā)送注銷請求,該注銷請求攜帶要解除的第一設備身份標識。
在402中,服務器端依據(jù)注銷請求中攜帶的第一設備身份標識,解除該第一設備身份標識,并刪除用戶的身份信息與第一設備身份標識之間的綁定關系。
本步驟中所述解除第一設備身份標識可以是將該第一設備身份標識設置為無效/非法,或者將該第一設備身份標識從服務器端刪除等。
在403中,服務器端向手機app返回注銷成功的響應。
服務器解除該第一設備身份標識后,后續(xù)利用該第一設備身份標識進行的登錄和數(shù)據(jù)請求均會被拒絕。例如,用戶端向服務器端解除物聯(lián)設備的身份標識后,該物聯(lián)設備又向服務器端發(fā)送登錄請求,該登錄請求中包含該物聯(lián)設備的第一設備身份標識;服務器端判斷該第一設備身份標識已被解除,則拒絕該物聯(lián)設備的登錄,向物聯(lián)設備返回登錄失敗響應。
再例如,用戶端向服務器端解除物聯(lián)設備的第一設備身份標識后,該物聯(lián)設備又向服務器端發(fā)送數(shù)據(jù)請求,該數(shù)據(jù)請求中包含該物聯(lián)設備的第一設備身份標識;服務器端判斷該第一設備身份標識已被解除,則拒絕該物聯(lián)設備的數(shù)據(jù)請求。
在互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等網(wǎng)絡下,會存在多種多樣的設備。同樣以物聯(lián)網(wǎng)為例,有一些網(wǎng)絡設備,例如設置于公共場所的溫度計,溫度計采集的數(shù)據(jù)是需要服務器端收集后存儲于數(shù)據(jù)庫的,并不與特定的用戶綁定。再例如路由 器,通常也不經(jīng)由服務器端與特定的用戶綁定。這類設備可以稱為“無主設備”,對于無主設備其身份注冊還是需要采用現(xiàn)有的注冊方式,即在服務器端僅依據(jù)終端設備的終端設備信息生成第二設備身份標識。其流程可以如圖5所示,包括以下步驟:
在501中,物聯(lián)設備向服務器端發(fā)送注冊請求,該注冊請求中包含終端設備信息。
其中終端設備信息可以包括諸如設備型號、設備mac地址和設備的sn。
對于無主物聯(lián)設備可以由其主動發(fā)起注冊請求。或者無主物聯(lián)設備在向服務器端發(fā)送登錄請求時,由于在服務器端并沒有該無主物聯(lián)設備的設備身份標識以及綁定關系,則在拒絕其登錄的同時,會通知其采用終端設備信息進行身份注冊。終端設備信息接收到該通知后,主動發(fā)起注冊請求,其中包含終端設備信息。還有一種情況,即已被解除身份認證的物聯(lián)設備,其向服務器端發(fā)送登錄請求時,由于服務器端確定該物聯(lián)設備的第一身份認證標識已被解除,并返回登錄失敗響應。物聯(lián)設備接收到該登錄失敗響應后,可以主動發(fā)起注冊請求,其中僅包含終端設備信息。
在502中,服務器端利用終端設備信息,生成第二設備身份標識。
這種情況下,服務器端僅利用諸如設備型號、設備mac地址和設備的sn這些原始物理信息,生成第二設備身份標識。這種方式與現(xiàn)有技術中的方式相同,在此不再詳述。
在503中,服務器端向物聯(lián)設備返回第二設備身份標識。
在504中,物聯(lián)設備保存接收到的第二設備身份標識。
如果物聯(lián)設備僅允許同時具有一個設備身份標識,且在物聯(lián)設備本地已經(jīng)存儲有第一設備身份標識,則可以利用接收到的第二設備身份標識更新本地已經(jīng)存儲的第一設備身份標識。
對于無主物聯(lián)設備發(fā)送的數(shù)據(jù)請求,服務器端接收到該數(shù)據(jù)請求后,確定其包含的是第二設備身份標識,則可以按照預設的處理方式對該數(shù)據(jù)請求進行處理,例如將該數(shù)據(jù)請求攜帶的數(shù)據(jù)送入數(shù)據(jù)庫。
以上是對本發(fā)明所提供方法進行的詳細描述,下面結合實施例對本發(fā)明提供的裝置進行詳細描述。
圖6為本發(fā)明實施例提供的設置于服務器端的裝置結構圖,如圖6中所示,該裝置包括:第二交互單元03和標識維護單元04,還可以包括口令維護單元01、第一交互單元02、綁定處理單元05、口令驗證單元06、登錄處理單元07和轉發(fā)處理單元08。各組成單元的主要功能如下:
第二交互單元03負責接收第一請求,該第一請求中包括終端設備信息和用戶認證口令;該用戶認證口令是根據(jù)在第一請求之前發(fā)送的第二請求生成的。
其中第一請求可以由終端設備或用戶終端發(fā)送;第二請求可以由終端設備或用戶終端發(fā)送。
第一交互單元02可以將第一設備標識發(fā)送給用戶終端;和/或,將第一設備標識發(fā)送給終端設備。
口令維護單元01負責針對用戶生成用戶認證口令。具體地,第一交互單元02從用戶端接收第二請求;再由口令維護單元01確定發(fā)送第一請求的用戶的身份信息,并利用用戶的身份信息生成用戶認證口令;保存用戶的身份信息對應的用戶認證口令。
其中口令維護單元01在利用用戶的身份信息生成用戶認證口令時,可以將用戶的身份信息和隨機信息按預設的順序進行拼接后,對拼接得到的信息進行加密處理,得到用戶認證口令。
第一交互單元02負責將生成的用戶認證口令發(fā)送給用戶終端。
標識維護單元04利用用戶認證口令,生成第一設備身份標識后,再由第二交互單元03將標識維護單元04生成的第一設備身份標識返回給終端設備,并由綁定處理單元05保存用戶的身份信息與第一設備身份標識之間的綁定關系。
其中標識維護單元04可以僅利用用戶認證口令生成第一設備身份標識,例如將用戶認證口令采用安全哈希算法進行處理,得到第一設備身份標識,甚至可以直接將用戶認證口令作為第一設備身份標識。
標識維護單元04也可以利用終端設備信息和用戶認證口令,生成第一設備 身份標識。例如將終端設備信息和用戶認證口令按預設的順序進行拼接后,采用安全哈希算法對拼接得到的信息進行處理,得到第一設備身份標識。
另外,用戶認證口令可以存在一定的有效期,在第二交互單元03接收到第一請求后,口令驗證單元06可以判斷第一請求包含的用戶認證口令是否超出有效期,如果是,則觸發(fā)第二交互單元03向終端設備返回注冊失敗的響應;否則,觸發(fā)標識維護單元04執(zhí)行上述利用第一請求包含的終端設備信息和用戶認證口令,生成第一設備身份標識的操作。
若第二交互單元03接收到的第一請求中不包含用戶認證口令,則標識維護單元04可以利用接收到的第一請求中包含的終端設備信息,生成第二設備身份標識。第二交互單元03將第二設備身份標識返回給終端設備和/或用戶終端。
上述第一交互單元02會接收到攜帶第一設備身份標識的注銷請求。標識維護單元04依據(jù)注銷請求中攜帶的第一設備身份標識,解除第一設備身份標識。綁定處理單元05依據(jù)注銷請求中攜帶的第一設備身份標識,刪除用戶的身份信息與第一設備身份標識之間的綁定關系。
第二交互單元03接收到終端設備的登錄請求后,登錄處理單元07可以判斷登錄請求包含的第一設備身份標識是否被解除,如果是,則登錄失敗;否則登錄成功。
對于用戶終端和終端設備之間的數(shù)據(jù)交互,可以由轉發(fā)處理單元08處理。即在第二交互單元03接收到終端設備發(fā)送的包含第一設備身份標識的數(shù)據(jù)請求時,轉發(fā)處理單元08判斷本地是否存在數(shù)據(jù)請求所包含第一設備身份標識的綁定關系,如果是,則將數(shù)據(jù)請求通過第一交互單元02轉發(fā)至與第一設備身份標識存在綁定關系的用戶身份信息對應的用戶終端,否則拒絕數(shù)據(jù)請求。
在第一交互單元02接收到用戶發(fā)送的數(shù)據(jù)請求時,轉發(fā)處理單元08判斷本地是否存在與用戶的身份信息存在綁定關系的第一設備身份標識,如果是,則通過第二交互單元03將數(shù)據(jù)請求轉發(fā)至第一設備身份標識對應的終端設備;否則,拒絕數(shù)據(jù)請求。
上述裝置可以應用于終端設備的身份注冊流程中,在這種應用場景下,上 述的第一請求為身份注冊請求,第二請求為獲取認證口令的請求。
圖7為本發(fā)明實施例提供的設置于用戶終端的裝置結構圖,如圖7中所示,該裝置包括:服務端交互單元11和終端交互單元12。各組成單元的主要功能如下:
服務端交互單元11負責從服務器端獲取用戶認證口令。具體地,服務端交互單元11可以向服務器端發(fā)送獲取認證口令的請求;接收服務器端利用用戶的身份信息生成并返回的用戶認證口令。
終端交互單元12負責將用戶認證口令發(fā)送給終端設備以觸發(fā)終端設備從服務器端獲取所述終端設備對應的第一設備身份標識。還可以進一步接收終端設備返回的第一設備身份標識。
具體地,終端交互單元12可以利用局域網(wǎng)或者近距離通信方式將用戶認證口令發(fā)送給終端設備。其中近距離通信方式可以包括但不限于藍牙、紅外、nfc等。
當用戶希望解除某終端設備的認證以及綁定關系時,可以由服務端交互單元11向服務器端發(fā)送注銷請求,該注銷請求中攜帶第一設備身份標識。
另外,當用戶希望向與其綁定的終端設備發(fā)送數(shù)據(jù)時,可以將該數(shù)據(jù)攜帶在數(shù)據(jù)請求中向服務器端發(fā)送,或者,當用戶希望獲取與其綁定的終端設備的數(shù)據(jù)時,也可以將所請求數(shù)據(jù)的信息攜帶在數(shù)據(jù)請求中向服務器端發(fā)送。即由服務端交互單元11向服務器端發(fā)送包含第一設備身份標識的數(shù)據(jù)請求。
圖8為本發(fā)明實施例提供的設置于終端設備的裝置結構圖,如圖8中所示,該裝置可以包括:用戶端交互單元21、服務端交互單元22和標識保存單元23,各組成單元的主要功能如下:
用戶端交互單元21負責從用戶終端接收用戶認證口令。
服務端交互單元22負責向服務器端發(fā)送包含終端設備信息和用戶認證口令的第一請求;接收服務器端返回的第一設備身份標識。
標識保存單元23負責保存服務端交互單元22接收到的第一設備身份標識。
再由用戶端交互單元21將服務端交互單元22接收到的第一設備身份標識 返回給用戶終端。
另外,服務端交互單元22可以向服務器端發(fā)送包含第一設備身份標識的登錄請求;如果登陸失敗,則向服務器端發(fā)送包含終端設備信息的第一請求;接收服務器端返回的第二設備身份標識。由標識保存單元23利用第二設備身份標識替換本地保存的第一設備身份標識。
上述第一設備身份標識是服務器端利用終端設備信息和用戶認證口令生成的,第二設備身份標識是服務器端僅利用終端設備信息生成的。
當該裝置應用于終端設備的身份注冊時,上述第一請求可以為注冊請求。
用戶端交互單元21可以通過局域網(wǎng)或近距離通信方式從用戶端接收用戶認證口令。其中近距離通信方式可以包括但不限于藍牙、紅外、nfc等。
服務端交互單元22后續(xù)向服務器端發(fā)送數(shù)據(jù)請求時,在數(shù)據(jù)請求中攜帶標識保存單元23保存的設備身份標識。
本發(fā)明提供的上述方法和裝置能夠被廣泛地應用于物聯(lián)網(wǎng)中,例如用戶通過手機app采用上述方式觸發(fā)設置于固定地點的火警探頭進行身份注冊,并成功與該火警探頭綁定。當該火警探頭探測到異常數(shù)據(jù)時,就能夠向服務器端發(fā)送包含該異常數(shù)據(jù)的數(shù)據(jù)請求,由服務器端根據(jù)身份注冊過程中保存的用戶的身份信息與該火警探頭的身份標識之間的綁定關系,將異常數(shù)據(jù)轉發(fā)給用戶的手機app。由于是手機app從服務器端獲取用戶認證口令后,將用戶認證口令提供給火警探頭并觸發(fā)火警探頭向服務器請求的身份注冊,在身份注冊過程中服務器端需要利用用戶認證口令針對火警探頭生成設備身份標識,即便存在克隆設備獲取了該火警探頭的原始物理信息,但由于無法獲取用戶認證口令,因此無法仿冒火警探頭的身份而產(chǎn)生攻擊數(shù)據(jù)或虛假數(shù)據(jù)。
在本發(fā)明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作 為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟件功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質包括:u盤、移動硬盤、只讀存儲器(read-onlymemory,rom)、隨機存取存儲器(randomaccessmemory,ram)、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內。