本發(fā)明涉及家居設備批量組網,具體為智能家居設備批量預組網方法及系統(tǒng)。
背景技術:
1、酒店客房等場景的智能家居部署通常以目標網關對應多個目標設備形成一張局域網狀網絡。現(xiàn)有做法多依賴現(xiàn)場交互式入網:目標網關與目標設備在安裝點位上電后,通過無線掃描、配對、入網、分配地址、下發(fā)密鑰等步驟完成組網。該流程在單房間設備數(shù)量較多、房間數(shù)量成批時,現(xiàn)場工時與調試時間明顯上升,且容易出現(xiàn)設備與房間綁定關系錯誤、重復入網、漏入網等問題。
2、另外一種就是在工廠組網,現(xiàn)場直接安裝方式,在工廠就將對應房間的設備和網關在桌面進行上電入網操作,在工廠組網時,大多是網關和設備同時到工廠的情況下。
3、但是,由于市場管控銷售地區(qū)防串貨,保證產品一致性防二次拆卸等原因,網關不發(fā)往工廠直接發(fā)到現(xiàn)場的情況下,工廠側難以在缺少目標網關的情況下完成最終組網。需要一種面向批量交付的預組網方法,使工廠側能夠在代理網關參與下完成網狀入網并形成可搬運結果,目標網關在現(xiàn)場接收后可在受控校驗條件下完成導入與激活,從而減少現(xiàn)場交互式入網負擔并提升組網一致性與安全性。
技術實現(xiàn)思路
1、鑒于上述存在的問題,提出了本發(fā)明。
2、為解決上述技術問題,本發(fā)明提供如下技術方案:智能家居設備批量預組網方法,包括:步驟s1:在工廠為目標客房建立tcp網絡基礎信息,生成簽名私鑰、簽名公鑰和無線藍牙網關密鑰,將簽名公鑰和無線藍牙網關密鑰上傳至服務器;
3、步驟s2:代理網關對目標設備執(zhí)行網狀入網,獲得目標設備的無線網絡配置數(shù)據,代理網關將無線網絡配置數(shù)據和tcp網絡基礎信息編碼為憑證包,使用無線藍牙網關密鑰對憑證包執(zhí)行加密獲得憑證包密文;
4、步驟s3:代理網關基于憑證包生成指令序列,對指令序列和憑證包密文執(zhí)行數(shù)字簽名,將指令序列、憑證包密文和數(shù)字簽名發(fā)送至服務器存儲;
5、步驟s4:目標網關現(xiàn)場上電后,從服務器獲取簽名公鑰、無線藍牙網關密鑰、指令序列、憑證包密文和數(shù)字簽名,驗證數(shù)字簽名并檢查指令序列,解密憑證包密文并登記目標設備,目標設備現(xiàn)場上電并進行激活,完成與目標設備通訊。
6、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述建立tcp網絡基礎信息包括:
7、調用隨機數(shù)生成器生成16字節(jié)的隨機數(shù)a,將隨機數(shù)a作為網絡密鑰;
8、再次調用隨機數(shù)生成器生成16字節(jié)的隨機數(shù)b,將隨機數(shù)b作為應用密鑰;
9、獲取目標網關的識別碼,對目標網關的識別碼執(zhí)行哈希摘要計算,得到網關標識;
10、將網絡密鑰、應用密鑰和網關標識和作為tcp網絡基礎信息。
11、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述生成簽名私鑰、簽名公鑰和無線藍牙網關密鑰包括:
12、在工廠的密鑰生成環(huán)境中啟動密鑰生成程序,調用隨機數(shù)生成器生成32字節(jié)隨機種子;
13、采用密鑰生成算法對隨機種子執(zhí)行密鑰生成計算,得到簽名私鑰;
14、基于簽名私鑰執(zhí)行公鑰推導計算,得到簽名公鑰;
15、調用隨機數(shù)生成器輸出16字節(jié)隨機數(shù)c,把隨機數(shù)c作為無線藍牙網關密鑰。
16、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述獲得目標設備的無線網絡配置數(shù)據包括:
17、代理網關在本地維護單播地址池,單播地址池記錄當前可分配單播地址與已分配地址集合,代理網關從單播地址池取出一個未被占用的單播地址作為目標設備的單播地址,并把該單播地址寫入已分配地址集合;
18、代理網關與目標設備在網狀入網交互中進行密鑰協(xié)商得到共享密鑰,根據共享密鑰進行派生計算獲得設備密鑰;
19、將網絡密鑰和應用密鑰直接寫入目標設備;
20、將目標設備的單播地址、設備密鑰、網絡密鑰和應用密鑰作為目標設備的無線網絡配置數(shù)據。
21、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述代理網關基于憑證包生成指令序列包括:
22、代理網關在憑證包內定位網關標識、單播地址、設備密鑰、網絡密鑰、應用密鑰對應的字段區(qū)段,對每個字段區(qū)段計算起始偏移與字段長度;
23、生成檢查類指令并寫入指令序列起始位置,檢查類指令包含網關標識檢查指令和單播地址邊界檢查指令;
24、網關標識檢查指令的指令參數(shù)取網關標識的起始偏移與字段長度;
25、單播地址邊界檢查指令的指令參數(shù)取單播地址的起始偏移與字段長度;
26、生成登記類指令,并按固定登記順序寫入指令序列,固定登記順序為:寫入單播地址指令、寫入設備密鑰指令、寫入網絡密鑰指令、寫入應用密鑰指令;
27、登記類指令的指令參數(shù)均取對應字段區(qū)段的起始偏移與字段長度;
28、生成激活指令并寫入指令序列末尾,激活指令的指令參數(shù)取單播地址的起始偏移與字段長度;
29、將指令順序固定為檢查類指令位于指令序列起始位置,登記類指令位于檢查類指令之后,激活指令位于指令序列末尾;
30、在指令序列末尾追加指令類型范圍和字段位置范圍上限作為靜態(tài)檢查信息。
31、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述目標網關驗證數(shù)字簽名并檢查指令序列包括:
32、目標網關接收代理網關發(fā)送的指令序列、憑證包密文和數(shù)字簽名,將指令序列與憑證包密文拼接為待簽名字節(jié)串,執(zhí)行哈希摘要計算得到簽名輸入;
33、目標網關使用簽名公鑰對簽名輸入與數(shù)字簽名執(zhí)行驗證,驗證失敗則終止處理;
34、驗證通過后,目標網關從指令序列末尾讀取靜態(tài)檢查信息,得到指令類型范圍和字段位置范圍上限,并檢查指令序列:
35、檢查每條指令的類型是否落入指令類型范圍;
36、檢查起始偏移與字段長度之和是否不超過字段位置范圍上限;
37、檢查指令順序是否正確;
38、檢查登記類指令的順序是否和固定登記順序相同;
39、任一檢查結果為否,則檢查不通過則終止處理;
40、檢查通過后,目標網關再解密憑證包密文。
41、作為本發(fā)明所述的智能家居設備批量預組網方法的一種優(yōu)選方案,其中:所述解密憑證包密文并登記目標設備包括:
42、目標網關讀取指令序列中每條指令攜帶的起始偏移與字段長度,按起始偏移從小到大排序,得到需要解密的字段區(qū)段;
43、使用無線藍牙網關密鑰對憑證包密文執(zhí)行解密,將解密范圍限定為字段區(qū)段,按順序輸出各字段區(qū)段對應的憑證包內容,不輸出完整憑證包內容;
44、當任一字段區(qū)段解密失敗,目標網關終止解密;
45、目標網關按檢查類指令檢查解密得到的憑證包內容;
46、按檢查類指令檢查通過后,按登記類指令寫入目標設備的無線網絡配置數(shù)據,寫入時,目標網關對每條登記類指令按其起始偏移與字段長度從憑證包字節(jié)段取出對應字段值,寫入一份待登記記錄;
47、當待登記記錄中的四項登記類指令全部寫入成功后,將待登記記錄一次性寫入目標網關的登記記錄,當任一登記類指令寫入失敗,終止處理且不寫入目標網關的登記記錄;
48、目標網關執(zhí)行激活指令,按激活指令的起始偏移與字段長度從憑證包字節(jié)段取出單播地址字段,將該單播地址登記為待激活狀態(tài),完成目標設備的登記。
49、一種采用本發(fā)明任一所述方法的智能家居設備批量預組網系統(tǒng),其中:
50、準備模塊,在工廠為目標客房建立tcp網絡基礎信息,生成簽名私鑰、簽名公鑰和無線藍牙網關密鑰,將簽名公鑰和無線藍牙網關密鑰上傳至服務器;
51、預組網模塊,代理網關對目標設備執(zhí)行網狀入網,獲得目標設備的無線網絡配置數(shù)據,代理網關將無線網絡配置數(shù)據和tcp網絡基礎信息編碼為憑證包,使用無線藍牙網關密鑰對憑證包執(zhí)行加密獲得憑證包密文;
52、加密模塊,代理網關基于憑證包生成指令序列,對指令序列和憑證包密文執(zhí)行數(shù)字簽名,將指令序列、憑證包密文和數(shù)字簽名發(fā)送至服務器;
53、激活模塊,目標網關現(xiàn)場上電后,從服務器獲取簽名公鑰、無線藍牙網關密鑰、指令序列、憑證包密文和數(shù)字簽名,驗證數(shù)字簽名并檢查指令序列,解密憑證包密文并登記目標設備,目標設備現(xiàn)場上電并進行激活,完成與目標設備通訊。
54、本發(fā)明的有益效果:本發(fā)明方法通過指令序列與憑證包密文的聯(lián)合簽名,使導入對象在進入解密與寫入前即可完成完整性校驗,降低異常數(shù)據觸發(fā)后續(xù)處理的概率;通過靜態(tài)檢查信息約束指令類型與起始偏移、字段長度引用,使指令序列僅能落在預設登記范圍內運行,減少越界引用與順序篡改引發(fā)的登記記錄污染;通過按字段區(qū)段解密僅輸出必需字段內容,使密鑰類字段在不滿足檢查條件時不進入明文態(tài),縮小敏感信息暴露面并降低失敗路徑的計算負擔。