吳飛燕
(江西師范高等專科學校物聯(lián)網(wǎng)學院,江西 鷹潭335000)
物聯(lián)網(wǎng)云平臺是基于傳感器,ZigBee,Wi-Fi,NB-IoT,LoRa無線通信技術(shù),大數(shù)據(jù)技術(shù)和遠程控制系統(tǒng)集成的平臺[1-2]。它具有實時數(shù)據(jù)收集、實時監(jiān)控、遠程控制、設備上線、發(fā)布報警信息、決策控制執(zhí)行等特征功能。物聯(lián)網(wǎng)云平臺為高職院校物聯(lián)網(wǎng)應用技術(shù)專業(yè)的教育、科研提供了一個開放的教學平臺,主要應用于物聯(lián)網(wǎng)課程綜合實訓和職業(yè)技能大賽的技術(shù)展示,讓學生能夠快速地了解物聯(lián)網(wǎng)行業(yè)的應用并掌握物聯(lián)網(wǎng)相關(guān)技術(shù)。
隨著科學技術(shù)的快速發(fā)展,智能家居已成為服務社會的新興產(chǎn)業(yè)。那么如何便捷、高效地對家居設備和數(shù)據(jù)進行智能化、科學化管理是當前研究的熱點話題。文章對智能家居監(jiān)測物聯(lián)網(wǎng)云平臺進行了研究,用戶可以使用臺式/筆記本電腦、手機、iPad等設備實時查看傳感器數(shù)據(jù),并自動或手動控制相關(guān)設備,從而可以輕松、高效地管理設備和數(shù)據(jù)。
智能家居監(jiān)測物聯(lián)網(wǎng)云平臺使用瀏覽器/服務器(B/S)MVC模式[3]和客戶端/服務器(C/S)MVVM模式[4]來處理不同模塊之間的數(shù)據(jù)傳輸。平臺的物理架構(gòu)包含4個區(qū)域,即設備區(qū)域、網(wǎng)關(guān)區(qū)域、云平臺區(qū)域和用戶使用區(qū)域,見圖1。
圖1 智能家居監(jiān)測物聯(lián)網(wǎng)云平臺物理架構(gòu)圖
設備區(qū)域主要是存放各種智能設備,例如傳感器、LED顯示屏、攝像頭、RFID等物聯(lián)網(wǎng)硬件設備;網(wǎng)關(guān)區(qū)域主要功能是解析CoAP/TCP/HTTP/MQTT多種協(xié)議[5-6],具備遠程控制、數(shù)據(jù)傳輸?shù)裙δ?;平臺區(qū)域中每臺服務器的磁盤空間連接網(wǎng)絡,運用云計算和大數(shù)據(jù)處理技術(shù),將分散的存儲資源虛擬化為一個存儲設備,以分布式方式存儲數(shù)據(jù),該區(qū)域支持多種協(xié)議的多個網(wǎng)關(guān)設備接入,還具有終端移動云平臺物聯(lián)網(wǎng)應用的能力;用戶使用區(qū)域通過手機、PC等設備進行管理,支持用戶隨時隨地在線訪問。
在設備接入過程中,主要實現(xiàn)數(shù)據(jù)收集、終端設備與云平臺之間的連接以及數(shù)據(jù)交互。在完成開發(fā)人員注冊、項目創(chuàng)建、設備創(chuàng)建和傳感器創(chuàng)建之后,可以根據(jù)創(chuàng)建設備的協(xié)議類型選擇相應的設備接入開發(fā)以及應用開發(fā)。當設備接入新大陸網(wǎng)關(guān)設備之后,在系統(tǒng)文件中修改連接云的IP地址和端口。通過應用設計器在線拖拽設計和一鍵發(fā)布,使用瀏覽器訪問生成的統(tǒng)一網(wǎng)址。
安全認證技術(shù)的主要作用是在直接網(wǎng)絡傳輸中防止核心密鑰泄露,并且該認證是使用不可逆算法生成的簽名Token執(zhí)行身份驗證。若Token被盜取,則攻擊者無法通過Token反向獲得核心密鑰。Token認證參數(shù)具有用戶定義的時間到期屬性,可以從時間維度上降低遭受攻擊/篡改的風險。
Token由clientId,projectId,method,timestamp,sign 5個參數(shù)組成。clientId類型是string,表示客戶端ID,建議使用設備的序列號;projectId類型是int,表示項目ID,是平臺創(chuàng)建項目時的唯一ID,非設備ID;method類型是string,支持md5,sha1,sha256簽名方法;timestamp類型是string,表示訪問過期時間戳timestamp,當訪問參數(shù)中的timestamp時間小于當前時間時,平臺會認為訪問參數(shù)過期從而拒絕該訪問;sign是string類型,表示簽名結(jié)果字符串signature。
上述的5個參數(shù)值之間通過"&"字符相接。在Token組成中,參數(shù)sign的生成算法為:需將clientId,projectId,method,timestamp 4個參數(shù)值按固定順序依次相連,然后接上由平臺申請的核心秘鑰SecretKey,使用method支持的簽名方法加簽。假設clientId=iotdevice,projectId=51800,method=sha256,timestamp=1567266623128,SecretKey=a4526687647040c4a89cc61deb526bde。那么使用生成的sign參數(shù)如下:sign=sha256("iotdevice51800 sha2561567266623128a4526687647040c4a89cc61deb 526bde")。Token="iotdevice&51800&sha256&15672 66623128&"+sign。
在TCP協(xié)議中加入SSL/TLS協(xié)議,為物聯(lián)網(wǎng)設備與云平臺之間的通信提供了安全保障。并且設備具有由云平臺提供的根證書,設備客戶端在使用端口8601建立TLS連接時,對NLEcloud執(zhí)行單向驗證。因此,對中間人的攻擊提出了更高的要求。
TCP協(xié)議接入以記錄的傳輸密鑰和設備標識作為參數(shù),使用相應的SDK函數(shù)來組織TCP握手連接報文,并將其發(fā)送給平臺以建立握手連接。若握手連接成功,云平臺則發(fā)送響應成功消息,同時在設備管理中會看到一個在線標記。
當網(wǎng)關(guān)設備連接正確之后,顯示在線狀態(tài)。這時云平臺就可以接收終端設備的數(shù)據(jù),并將其直接存儲到數(shù)據(jù)庫和服務器中,實現(xiàn)24 h實時監(jiān)控。打開采集數(shù)據(jù)監(jiān)控頁面,點擊開發(fā)者中心—智能家居—設備管理—傳感器管理,能夠查看傳感器、執(zhí)行器、攝像頭以及其他配置信息。點擊編輯設備按鈕可以對當前設備進行編輯操作,若當前設備處于在線狀態(tài),則不能對設備進行編輯操作,需要將設備下線后,才能進行編輯操作。點擊刪除設備按鈕可以刪除當前選擇的設備,若當前設備處于在線狀態(tài),那么需要將設備下線后才能刪除。
智能家居監(jiān)測物聯(lián)網(wǎng)云平臺采用B/S MVC模式、C/S MVVM模式開發(fā)。利用大數(shù)據(jù)技術(shù)、云計算虛擬化技術(shù)、分布式數(shù)據(jù)庫等技術(shù)整合軟硬件資源和存儲傳感數(shù)據(jù),實現(xiàn)傳感數(shù)據(jù)實時監(jiān)控,方便物聯(lián)網(wǎng)應用的科學化、智能化統(tǒng)一管理,具有可推廣的應用前景。