本發(fā)明涉及物聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)及其實(shí)現(xiàn)方法。
背景技術(shù):
物聯(lián)網(wǎng)網(wǎng)關(guān)主要作用是解決感知層與網(wǎng)絡(luò)層的通信問題。首先整合多種接入方式,統(tǒng)一接入目標(biāo)網(wǎng)絡(luò)的關(guān)鍵設(shè)備,實(shí)現(xiàn)局域及廣域互聯(lián)。其次起到感知網(wǎng)絡(luò)與通信網(wǎng)絡(luò)之間數(shù)據(jù)傳輸?shù)臉屑~作用,實(shí)現(xiàn)感知網(wǎng)絡(luò)與通信網(wǎng)絡(luò)之間以及不同類型感知網(wǎng)絡(luò)之間的協(xié)議轉(zhuǎn)換。再次具備設(shè)備管理功能,用戶通過網(wǎng)絡(luò)平臺(tái)對(duì)網(wǎng)關(guān)設(shè)備進(jìn)行配置與管理。最后用戶可以獲取感知層各節(jié)點(diǎn)的實(shí)時(shí)狀態(tài)信息,并實(shí)現(xiàn)遠(yuǎn)程控制。
隨著傳感器技術(shù)、網(wǎng)絡(luò)技術(shù)、移動(dòng)互聯(lián)技術(shù)以及云計(jì)算技術(shù)的發(fā)展,物聯(lián)網(wǎng)在智能建筑、智慧小區(qū)、建筑節(jié)能、公共安全、智慧城市等各領(lǐng)域都得到了廣泛的應(yīng)用。目前市場(chǎng)上的物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備存在如下缺點(diǎn):(1)協(xié)議擴(kuò)展性差:主要表現(xiàn)在設(shè)備與應(yīng)用領(lǐng)域相關(guān)性、專用性太強(qiáng),對(duì)行業(yè)主流通訊協(xié)議和新協(xié)議快速接入支持不足;(2)數(shù)據(jù)可用性差:對(duì)接入物聯(lián)網(wǎng)設(shè)備或子系統(tǒng)的原始數(shù)據(jù)缺少進(jìn)一步的計(jì)算分析和存儲(chǔ)處理,不能獲取實(shí)際需要的整理后數(shù)據(jù)。(3)適用性差:設(shè)備大多僅作為上位機(jī)的數(shù)據(jù)采集單一目的使用,不能適應(yīng)于小型內(nèi)網(wǎng)應(yīng)用、大型分布式應(yīng)用的多用途組合目的使用;(4)系統(tǒng)安全性差:普遍對(duì)數(shù)據(jù)通訊缺少加密處理和遠(yuǎn)程控制的授權(quán)管理,存在數(shù)據(jù)泄露和非法控制隱患,降低了整個(gè)系統(tǒng)的安全性。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)及其實(shí)現(xiàn)方法,以解決設(shè)備接入快速、支持多客戶端使用以及提高系統(tǒng)安全性的技術(shù)問題。
為了解決上述技術(shù)問題,本發(fā)明提供了一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng),包括網(wǎng)關(guān)設(shè)備,該網(wǎng)關(guān)設(shè)備包括通信協(xié)議插件單元、主控單元,以及與主控單元相連的網(wǎng)關(guān)服務(wù)器;其中所述通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接,用于對(duì)外提供各種物聯(lián)網(wǎng)設(shè)備、第三方系統(tǒng)通訊接口的協(xié)議處理插件;所述網(wǎng)關(guān)服務(wù)器包括數(shù)據(jù)采集服務(wù)模塊、數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊、數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊;所述主控單元控制數(shù)據(jù)采集服務(wù)模塊根據(jù)連接的物聯(lián)網(wǎng)設(shè)備的配置文件,按通信協(xié)議進(jìn)行通信交互和數(shù)據(jù)解析采集;所述主控單元控制數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊對(duì)數(shù)據(jù)采集服務(wù)模塊獲取的數(shù)據(jù)進(jìn)行計(jì)算和存儲(chǔ)處理;所述控制單元控制數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊對(duì)經(jīng)計(jì)算和存儲(chǔ)后的數(shù)據(jù)進(jìn)行加密處理后對(duì)外進(jìn)行傳輸。
進(jìn)一步,所述的物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)還包括一服務(wù)總線,以及通過所述的服務(wù)總線與所述網(wǎng)關(guān)服務(wù)器相連的管理工具單元;所述服務(wù)總線采用多種跨平臺(tái)的服務(wù)接口,用于對(duì)外提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的功能服務(wù);所述的管理工工具單元包括配置管理工具模塊、Web管理工具模塊和開發(fā)管理工具模塊;其中所述配置管理工具模塊,用于用戶通過本地或遠(yuǎn)程方式對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行參數(shù)配置、項(xiàng)目下載的管理;所述Web管理工具模塊,用于用戶通過HTTPS協(xié)議對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行整體的運(yùn)行監(jiān)控;所述開發(fā)管理工具模塊,用于用戶對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行通信協(xié)議插件的模板式開發(fā)、組裝管理和協(xié)議庫(kù)管理。
進(jìn)一步,所述通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接包括提供RS232/RS485串行接口的各類物聯(lián)網(wǎng)設(shè)備進(jìn)行連接,以及與提供RJ45以太網(wǎng)接口的各類物聯(lián)網(wǎng)設(shè)備進(jìn)行連接。
進(jìn)一步,所述的網(wǎng)關(guān)服務(wù)器還包括一項(xiàng)目配置服務(wù)模塊,用于提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的各項(xiàng)參數(shù)配置;包括:協(xié)議庫(kù)配置、數(shù)據(jù)采集配置、數(shù)據(jù)計(jì)算配置、數(shù)據(jù)存儲(chǔ)配置、數(shù)據(jù)加密配置、數(shù)據(jù)上傳配置和數(shù)據(jù)庫(kù)配置。
進(jìn)一步,所述的網(wǎng)關(guān)服務(wù)器還包括一設(shè)備監(jiān)控模塊,用于提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)設(shè)備的運(yùn)行數(shù)據(jù)參數(shù)監(jiān)視和控制,包括CPU、內(nèi)存、網(wǎng)絡(luò)和硬盤使用參數(shù)。
進(jìn)一步,所述主控單元包括主控制芯片、嵌入在主控制芯片中的嵌入式系統(tǒng),以及運(yùn)行于嵌入式系統(tǒng)的安全無(wú)線短程通信模塊、應(yīng)用通信模塊以及安全接入客戶端模塊;其中主控制芯片,用于數(shù)據(jù)安全處理和存儲(chǔ);嵌入式系統(tǒng),用于對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)實(shí)現(xiàn)系統(tǒng)管理;安全無(wú)線短程通信模塊,用于實(shí)現(xiàn)網(wǎng)關(guān)與無(wú)線短程通信終端的信息交互;以及應(yīng)用通信模塊,用于實(shí)現(xiàn)物聯(lián)網(wǎng)網(wǎng)關(guān)與總線式終端的信息交互;安全接入客戶端模塊,用于實(shí)現(xiàn)物聯(lián)網(wǎng)網(wǎng)關(guān)與接入應(yīng)用網(wǎng)絡(luò)的以太網(wǎng)絡(luò)可信通信功能。應(yīng)用網(wǎng)絡(luò)連接部分包括以太網(wǎng)模塊、WiFi模塊以及移動(dòng)互聯(lián)網(wǎng)通信模塊。
進(jìn)一步,所述數(shù)據(jù)加密服務(wù)模塊采用的加密方法為將KLEIN算法中的移位操作設(shè)計(jì)為移動(dòng)隨機(jī)位r,16≤r≤63。
進(jìn)一步,所述加密方法中,第一個(gè)加解密隨機(jī)數(shù)在密鑰協(xié)商階段產(chǎn)生,以后加解密的隨機(jī)數(shù)是上次加密產(chǎn)生的密文的第8個(gè)字節(jié)映射為一個(gè)16至63之間的數(shù)。
又一方面,本發(fā)明還提供了一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的實(shí)現(xiàn)方法,采用所述的物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng),包括如下步驟:步驟S1,物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備通過以太網(wǎng)接口連接到網(wǎng)絡(luò)交換機(jī);步驟S2,通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接;步驟S3,采集服務(wù)模塊根據(jù)連接的物聯(lián)網(wǎng)設(shè)備的配置文件,按通信協(xié)議進(jìn)行通信交互和數(shù)據(jù)解析采集;步驟S4,數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊對(duì)數(shù)據(jù)采集服務(wù)模塊獲取的數(shù)據(jù)進(jìn)行計(jì)算和存儲(chǔ)處理;步驟S5,數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊對(duì)經(jīng)計(jì)算和存儲(chǔ)后的數(shù)據(jù)進(jìn)行加密處理后對(duì)外進(jìn)行傳輸。
本發(fā)明的一種物聯(lián)網(wǎng)網(wǎng)關(guān)及其實(shí)現(xiàn)方法的有益效果是,通過設(shè)置的通信協(xié)議插件單元,實(shí)現(xiàn)內(nèi)置行業(yè)主流通訊協(xié)議插件,提供開發(fā)管理工具和插件模塊化開發(fā)包,實(shí)現(xiàn)以支持新設(shè)備的快速接入。又通過設(shè)置的開放的服務(wù)總線,服務(wù)總線采用多種跨平臺(tái)的服務(wù)接口,支持多客戶端使用。再通過設(shè)置的數(shù)據(jù)加密模塊,對(duì)數(shù)據(jù)信息進(jìn)行加密處理,提高了網(wǎng)關(guān)系統(tǒng)在局域及廣域互聯(lián)環(huán)境的安全性和可靠性。
附圖說(shuō)明
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步說(shuō)明。
圖1是本發(fā)明的物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的結(jié)構(gòu)示意圖;
圖2是本發(fā)明的數(shù)據(jù)加密服務(wù)模塊的加密算法中的輪加密改進(jìn)示意圖;
圖3是本發(fā)明的數(shù)據(jù)加密服務(wù)模塊的加密算法中的輪密鑰擴(kuò)展改進(jìn)示意圖。
具體實(shí)施方式
現(xiàn)在結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。這些附圖均為簡(jiǎn)化的示意圖,僅以示意方式說(shuō)明本發(fā)明的基本結(jié)構(gòu),因此其僅顯示與本發(fā)明有關(guān)的構(gòu)成。
實(shí)施例1
如圖1所示,本發(fā)明提供了一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng),包括網(wǎng)關(guān)設(shè)備,該網(wǎng)關(guān)設(shè)備包括通信協(xié)議插件單元、主控單元,以及與主控單元相連的網(wǎng)關(guān)服務(wù)器;其中所述通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接,用于對(duì)外提供各種物聯(lián)網(wǎng)設(shè)備、第三方系統(tǒng)通訊接口的協(xié)議處理插件;所述網(wǎng)關(guān)服務(wù)器包括數(shù)據(jù)采集服務(wù)模塊、數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊、數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊;所述主控單元控制數(shù)據(jù)采集服務(wù)模塊根據(jù)連接的物聯(lián)網(wǎng)設(shè)備的配置文件,按通信協(xié)議進(jìn)行通信交互和數(shù)據(jù)解析采集;所述主控單元控制數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊對(duì)數(shù)據(jù)采集服務(wù)模塊獲取的數(shù)據(jù)進(jìn)行計(jì)算和存儲(chǔ)處理;所述控制單元控制數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊對(duì)經(jīng)計(jì)算和存儲(chǔ)后的數(shù)據(jù)進(jìn)行加密處理后對(duì)外進(jìn)行傳輸。
所述的網(wǎng)關(guān)服務(wù)器選擇C++方式設(shè)計(jì)一種C/C++跨平臺(tái)的插件架構(gòu),以動(dòng)態(tài)庫(kù)(例如win32DLL)的形式部署。新的通信協(xié)議插件,需要按照網(wǎng)關(guān)通信插件標(biāo)準(zhǔn)接口定義的方式,完成功能性API的定制開發(fā),包括初始化(Init)、打開(Open)、關(guān)閉(Close)、設(shè)置活動(dòng)狀態(tài)(SetActive)、檢測(cè)活動(dòng)狀態(tài)(IsAlive)、讀取數(shù)據(jù)(Read)、接收下發(fā)數(shù)據(jù)(Write)、接收主動(dòng)上報(bào)數(shù)據(jù)(OnReceive)等。其中在插件初始化(Init)方法中,需要加載相應(yīng)的“通道-設(shè)備-點(diǎn)”采集參數(shù)配置。一條通道代表一條通信鏈路,對(duì)于串口,一個(gè)串口就是一條通道,對(duì)于TCP/UDP,一個(gè)端口就是一條通道。網(wǎng)關(guān)服務(wù)器可以同時(shí)有多條通道。通道設(shè)置如下表所示:
一條通道下連接的一個(gè)數(shù)據(jù)體集合即為一個(gè)設(shè)備。一條通道下可以有多個(gè)設(shè)備,每個(gè)設(shè)備都有自己獨(dú)立的數(shù)據(jù)體集合。設(shè)備配置下表所示:
設(shè)備是數(shù)據(jù)體集合,集合中的每一個(gè)數(shù)據(jù)項(xiàng)就是一個(gè)點(diǎn)。點(diǎn)是最終需要的數(shù)據(jù)。點(diǎn)配置下表所示:
配置完成后,先下載配置到網(wǎng)關(guān)數(shù)據(jù)庫(kù)中,再重新啟動(dòng)網(wǎng)關(guān)系統(tǒng)的網(wǎng)關(guān)服務(wù)器程序,首先進(jìn)行配置的加載,加載完成后,網(wǎng)關(guān)進(jìn)入正常的運(yùn)行狀態(tài)。
所述數(shù)據(jù)采集服務(wù)模塊利用配置數(shù)據(jù)對(duì)接入的各個(gè)物聯(lián)網(wǎng)設(shè)備按通訊協(xié)議進(jìn)行插件接口調(diào)用、插件調(diào)度處理。數(shù)據(jù)采集配置的基本步驟就是:新建通道->新建設(shè)備->新建點(diǎn),并根據(jù)通道、設(shè)備、點(diǎn)的數(shù)量重復(fù)上述過程。數(shù)據(jù)采集配置與實(shí)施項(xiàng)目是否支持當(dāng)前接入的物聯(lián)網(wǎng)設(shè)備的通訊協(xié)議有關(guān)。如物聯(lián)網(wǎng)設(shè)備的通訊協(xié)議不支持,則需要開發(fā)新的插件協(xié)議。
所述物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備設(shè)有VGA接口、USB接口、RJ45以太網(wǎng)接口和RS232/RS485串行接口。其中VGA接口和USB接口用于用戶通過本地對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行參數(shù)配置、項(xiàng)目下載的管理;RJ45以太網(wǎng)接口用于通信協(xié)議插件單元與提供RJ45以太網(wǎng)接口的各類物聯(lián)網(wǎng)設(shè)備進(jìn)行連接;所述RS485串行接口用于通信協(xié)議插件單元與提供RS485串行接口的各類物聯(lián)網(wǎng)設(shè)備進(jìn)行連接,以及RS485串行接口還用于與外部測(cè)試裝置相連,以定期對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行測(cè)試。例如,當(dāng)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)需要進(jìn)行測(cè)試的時(shí)候,將網(wǎng)關(guān)系統(tǒng)通過RS485串口與工程師站相連接,工程師站上運(yùn)行專用軟件與網(wǎng)關(guān)進(jìn)行通訊。測(cè)試人員可以通過軟件選擇監(jiān)視網(wǎng)關(guān)系統(tǒng)正常運(yùn)行過程中的指定信號(hào)數(shù)據(jù),還可以向網(wǎng)關(guān)系統(tǒng)發(fā)送強(qiáng)制修改信號(hào)指令來(lái)改變指定的信號(hào)數(shù)據(jù),借此查看運(yùn)行結(jié)果是否符合,從而實(shí)現(xiàn)測(cè)試的功能。
具體的,所述的通信協(xié)議插件單元采用插件模塊化開發(fā)包,包括包括OPC、BACNet、Modbus、SNMP、ODBC等通訊協(xié)議。插件模塊化開發(fā)包實(shí)現(xiàn)內(nèi)置行業(yè)主流通訊協(xié)議插件的模塊化開發(fā),便于支持新設(shè)備的快速接入,支持串口、TCP/IP、WebAPI、ODBC等接口形式快速開發(fā),提高了網(wǎng)關(guān)系統(tǒng)的協(xié)議擴(kuò)展性,豐富了設(shè)備的選擇范圍,解決了傳統(tǒng)的互聯(lián)網(wǎng)網(wǎng)關(guān)的協(xié)議擴(kuò)展性差,設(shè)備與應(yīng)用領(lǐng)域相關(guān)性、專用性太強(qiáng),對(duì)行業(yè)主流通訊協(xié)議和新協(xié)議快速接入支持不足的問題。OPC:是開放組織OPC基金會(huì)發(fā)布的自動(dòng)化領(lǐng)域軟件接口標(biāo)準(zhǔn)。OPC技術(shù)提供了多種系統(tǒng)間通信的標(biāo)準(zhǔn)接口,實(shí)現(xiàn)了異構(gòu)環(huán)境中控制網(wǎng)絡(luò)數(shù)據(jù)的統(tǒng)一集成。OPC訪問方式有三種:同步訪問、異步訪問和訂閱訪問。BACnet:是用于智能建筑的通信協(xié)議,是國(guó)際標(biāo)準(zhǔn)化組織(ISO)、美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)及美國(guó)采暖、制冷與空調(diào)工程師學(xué)會(huì)(ASHRAE)定義的通信協(xié)議。BACnet針對(duì)智能建筑及控制系統(tǒng)的應(yīng)用所設(shè)計(jì)的通信,可用在暖通空調(diào)系統(tǒng)(HVAC,包括暖氣、通風(fēng)、空氣調(diào)節(jié))也可以用在照明控制、門禁系統(tǒng)、火警偵測(cè)系統(tǒng)及其相關(guān)的設(shè)備。優(yōu)點(diǎn)在于降低維護(hù)系統(tǒng)所需成本,提供有五種業(yè)界常用的標(biāo)準(zhǔn)協(xié)議,增加系統(tǒng)擴(kuò)充性與兼容性。Modbus:是開放組織分布式自動(dòng)化接口組織的開放接口,是全球第一個(gè)真正用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議。標(biāo)準(zhǔn)Modbus是使用RS232/RS485串行接口進(jìn)行傳輸,也可以使用TCP/UDP傳輸。ODBC:是數(shù)據(jù)庫(kù)訪問接口的統(tǒng)稱,目前市場(chǎng)上有多種數(shù)據(jù)庫(kù)提供訪問接口存在差異,ODBC標(biāo)準(zhǔn)約定以通用接口訪問各種數(shù)據(jù)庫(kù)獲得數(shù)據(jù)。
具體的,所述的數(shù)據(jù)計(jì)算服務(wù)模塊對(duì)數(shù)據(jù)采集服務(wù)模塊獲取的數(shù)據(jù)進(jìn)行二次計(jì)算,包括常規(guī)、累加、時(shí)間類型。數(shù)據(jù)存儲(chǔ)服務(wù)模塊,包括對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行實(shí)時(shí)和數(shù)據(jù)存儲(chǔ),系統(tǒng)數(shù)據(jù)包括配置數(shù)據(jù)、實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、統(tǒng)計(jì)分析數(shù)據(jù)、日志數(shù)據(jù),存儲(chǔ)方式包括內(nèi)存實(shí)時(shí)存儲(chǔ)和介質(zhì)永久存儲(chǔ)兩類。通過數(shù)據(jù)計(jì)算服務(wù)模塊,對(duì)接入物聯(lián)網(wǎng)設(shè)備的原始數(shù)據(jù)按需進(jìn)行整理加工和存儲(chǔ)訪問,提高數(shù)據(jù)整體的可用性,減少用戶的使用成本。
所述的物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)還包括一服務(wù)總線,以及通過所述的服務(wù)總線與所述網(wǎng)關(guān)服務(wù)器相連的管理工具單元;所述服務(wù)總線采用多種跨平臺(tái)的服務(wù)接口,用于對(duì)外提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的功能服務(wù),包括:REST、WebSocket、XMPP和數(shù)據(jù)庫(kù)服務(wù),支持桌面端、Web端和移動(dòng)端的使用,可靈活運(yùn)用于小型內(nèi)網(wǎng)應(yīng)用、大型分布式應(yīng)用的多用途組合場(chǎng)景,提高網(wǎng)關(guān)系統(tǒng)的適應(yīng)范圍,減少用戶的使用成本。所述的管理工工具單元包括配置管理工具模塊、Web管理工具模塊和開發(fā)管理工具模塊;其中所述配置管理工具模塊,用于用戶通過本地或遠(yuǎn)程方式對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行參數(shù)配置、項(xiàng)目下載的管理,其中參數(shù)配置包括:(1)項(xiàng)目名稱和數(shù)據(jù)庫(kù)連接串;(2)協(xié)議庫(kù)配置:協(xié)議插件的配置項(xiàng):ID、協(xié)議名稱、插件名稱、插件描述、版本號(hào)、引擎版本號(hào);(3)數(shù)據(jù)采集配置:用于配置獲得項(xiàng)目的原始數(shù)據(jù),外部與數(shù)據(jù)收集有關(guān)的“通道-設(shè)備-點(diǎn)”配置信息;(4)數(shù)據(jù)計(jì)算配置:標(biāo)準(zhǔn)的采集數(shù)據(jù)項(xiàng)很有可能在項(xiàng)目中是無(wú)法直接采集到的,需要通過多個(gè)數(shù)據(jù)項(xiàng)計(jì)算得到。內(nèi)部與數(shù)據(jù)計(jì)算有關(guān)的“通道-設(shè)備-點(diǎn)”配置信息;(5)數(shù)據(jù)存儲(chǔ)配置:數(shù)據(jù)存儲(chǔ)的配置策略以“任務(wù)--點(diǎn)”方式組織,存儲(chǔ)記錄方式和時(shí)間間隔或變化靈敏度;(6)數(shù)據(jù)加密配置:包括是否加密和加密方法選擇;(7)數(shù)據(jù)上傳配置:包括上傳方式、數(shù)據(jù)更新時(shí)間、是否啟用下發(fā)控制。所述Web管理工具模塊,用于用戶通過HTTPS協(xié)議對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行整體的運(yùn)行監(jiān)控;所述開發(fā)管理工具模塊,用于用戶對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)進(jìn)行通信協(xié)議插件的模板式開發(fā)、組裝管理和協(xié)議庫(kù)管理。
所述通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接包括提供RS232/RS485串行接口的各類物聯(lián)網(wǎng)設(shè)備(例如實(shí)際應(yīng)用中的能耗采集儀表、變配電監(jiān)控系統(tǒng)等)進(jìn)行連接,以及與提供RJ45以太網(wǎng)接口的各類物聯(lián)網(wǎng)(例如實(shí)際應(yīng)用中的暖通空調(diào)控制系統(tǒng)、給排水控制系統(tǒng)、照明控制系統(tǒng)等)設(shè)備進(jìn)行連接。
所述的網(wǎng)關(guān)服務(wù)器還包括一項(xiàng)目配置服務(wù)模塊,用于提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的各項(xiàng)參數(shù)配置;包括:協(xié)議庫(kù)配置、數(shù)據(jù)采集配置、數(shù)據(jù)計(jì)算配置、數(shù)據(jù)存儲(chǔ)配置、數(shù)據(jù)加密配置、數(shù)據(jù)上傳配置和數(shù)據(jù)庫(kù)配置。
所述的網(wǎng)關(guān)服務(wù)器還包括一設(shè)備監(jiān)控模塊,用于提供物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)設(shè)備的運(yùn)行數(shù)據(jù)參數(shù)監(jiān)視和控制,包括CPU、內(nèi)存、網(wǎng)絡(luò)和硬盤使用參數(shù)。
所述主控單元包括主控制芯片、嵌入在主控制芯片中的嵌入式系統(tǒng),以及運(yùn)行于嵌入式系統(tǒng)的安全無(wú)線短程通信模塊、應(yīng)用通信模塊以及安全接入客戶端模塊;其中主控制芯片,用于數(shù)據(jù)安全處理和存儲(chǔ);嵌入式系統(tǒng),用于對(duì)物聯(lián)網(wǎng)網(wǎng)關(guān)實(shí)現(xiàn)系統(tǒng)管理;安全無(wú)線短程通信模塊,用于實(shí)現(xiàn)網(wǎng)關(guān)與無(wú)線短程通信終端的信息交互;以及應(yīng)用通信模塊,用于實(shí)現(xiàn)物聯(lián)網(wǎng)網(wǎng)關(guān)與總線式終端的信息交互;安全接入客戶端模塊,用于實(shí)現(xiàn)物聯(lián)網(wǎng)網(wǎng)關(guān)與接入應(yīng)用網(wǎng)絡(luò)的以太網(wǎng)絡(luò)可信通信功能。應(yīng)用網(wǎng)絡(luò)連接部分包括以太網(wǎng)模塊、WiFi模塊以及移動(dòng)互聯(lián)網(wǎng)通信模塊。具體的,所述的主控制芯片可采用X86或ARM主控制芯片??蛇x的,所述應(yīng)用通信模塊采用例如但不限于RS-485/RS-232應(yīng)用通信模塊。
可選的,所述數(shù)據(jù)加密服務(wù)模塊采用的加密方法例如但不限于為將KLEIN算法中的移位操作設(shè)計(jì)為移動(dòng)隨機(jī)位r,16≤r≤63。所述加密方法中,第一個(gè)加解密隨機(jī)數(shù)在密鑰協(xié)商階段產(chǎn)生,以后加解密的隨機(jī)數(shù)是上次加密產(chǎn)生的密文的第8個(gè)字節(jié)映射為一個(gè)16至63之間的數(shù)。
具體的,KLEIN算法的結(jié)構(gòu)是典型的替代置換網(wǎng)絡(luò),分組長(zhǎng)度為64位,支持64/80/90位3種密鑰長(zhǎng)度,分別對(duì)應(yīng)12/16/20輪加密,每輪由輪密鑰加、Nibble代換、Nibble移位、Nibble混淆順序組成,末輪進(jìn)行白化操作。以分組長(zhǎng)度為64位,迭代輪數(shù)為12的KLEIN-64為例,說(shuō)明KLEIN輪函數(shù)設(shè)計(jì)細(xì)節(jié):(1)輪密鑰加(AddRoundKey):將64位輸入狀態(tài)同擴(kuò)展密鑰進(jìn)行逐位異或;(2)Nibble代換(SubNibbles):將AK輸出執(zhí)行16次查找4*4的S盒操作,S盒具有可逆特性;(3)Nibble移位(RotateNibbles):將SN的64位輸出左移2個(gè)字節(jié);(4)Nibble混淆(MixNibbles):將8個(gè)字節(jié)輸入組成的4*2矩陣乘以AES的列混淆矩陣M[45],得到64位輸出。同AES不同,KLEIN的最后一輪沒有刪除列混淆操作。
KLEIN密鑰擴(kuò)展由移位、異或、查找S盒部件組成。64位初始密鑰按左右分為32比特兩部分,分別執(zhí)行左移1個(gè)字節(jié)操作;左移操作右半部分輸出第3個(gè)字節(jié)異或密鑰擴(kuò)展輪常量,得到輪密鑰輸出左32位;左移操作左右兩部分輸出相異或的結(jié)果第2、3字節(jié)查找4次4*4的S盒,得到輪密鑰輸出右32位。
在KLEIN算法的輪加密和密鑰擴(kuò)展中,都涉及到移位操作,其中輪加密循環(huán)左移2字節(jié),輪密鑰擴(kuò)展循環(huán)左移1字節(jié),是一種面向字節(jié)型的移位操作。這樣的移位操作,軟件實(shí)現(xiàn)是非常高效的。針對(duì)現(xiàn)有的代數(shù)旁路攻擊和選擇明文差分攻擊,本發(fā)明提出一種對(duì)KLEIN算法的保護(hù)措施,稱作R-KLEIN算法,加強(qiáng)KLEIN算法的安全性,如圖2和圖3所示。
對(duì)原始KLEIN算法中的移位操作,不再是固定的2字節(jié),而是移動(dòng)隨機(jī)位r(16≤r≤63)。但這樣的操作帶來(lái)一個(gè)通信雙方隨機(jī)數(shù)同步的問題,有以下3種解決方案:(a)通信一方預(yù)先產(chǎn)生隨機(jī)數(shù)序列,通過安全信道發(fā)送給通信另一方,每加解密一次就刪去一個(gè)隨機(jī)數(shù),但這個(gè)方案在實(shí)際應(yīng)用中不夠現(xiàn)實(shí);(b)第一個(gè)加解密隨機(jī)數(shù)在密鑰協(xié)商階段產(chǎn)生,每次加解密實(shí)際上只有7個(gè)字節(jié)是有效數(shù)據(jù),第8個(gè)字節(jié)是插入的加密方預(yù)先生成一個(gè)的隨機(jī)數(shù),用于下一次加解密,但這樣導(dǎo)致有效數(shù)據(jù)傳輸率只有87.5%;(c)第一個(gè)加解密隨機(jī)數(shù)在密鑰協(xié)商階段產(chǎn)生,以后加解密的隨機(jī)數(shù)就是上次加密產(chǎn)生的密文的第8個(gè)字節(jié)映射為一個(gè)16——63的數(shù),其映射方法可以由用戶自己定義。
上述方案中第三個(gè)方案是最好的,移位操作就位而言,仍然是置換操作;但就字節(jié)而言,當(dāng)移位操作是整數(shù)字節(jié)時(shí),相當(dāng)于是置換操作;當(dāng)移位操作不是整數(shù)字節(jié)時(shí),相當(dāng)于替換操作。在這個(gè)操作過程中,既有可能存在置換操作,也有可能存在替換操作,是一種不確定的狀態(tài)。同理,在密鑰擴(kuò)展操作中,密鑰移位操作不是一個(gè)字節(jié)而是加密移位操作位數(shù)r的一半,即r/2。
移位操作用軟件實(shí)現(xiàn),是比較耗時(shí)的。原始的KLEIN算法,移位操作是整數(shù)字節(jié)的原因,就是為了保障軟件運(yùn)行的效率。目前針對(duì)KLEIN-64算法的攻擊,最多出現(xiàn)對(duì)8輪加密有效,因此,在安全性要求較低,實(shí)時(shí)性要求較高的場(chǎng)合,可以減少加密迭代次數(shù)來(lái)達(dá)到實(shí)時(shí)性的要求。
對(duì)分組密碼的分析,主要是分析非線性操作S盒變換,要求線性操作部分的是明確具體的,對(duì)KLEIN算法的改進(jìn),在線性操作的移位操作中使用了隨機(jī)數(shù)的方法,使得目前對(duì)分組密碼進(jìn)行分析的方法失去了效力。該方法不但是對(duì)KLEIN算法可以使用,對(duì)于一般的分組密碼同樣有效。
實(shí)施例2
在實(shí)施例1的基礎(chǔ)上,本發(fā)明還提供了一種物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng)的實(shí)現(xiàn)方法,采用所述的物聯(lián)網(wǎng)網(wǎng)關(guān)系統(tǒng),包括如下步驟:步驟S1,物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備通過以太網(wǎng)接口連接到網(wǎng)絡(luò)交換機(jī);步驟S2,通信協(xié)議插件單元與物聯(lián)網(wǎng)設(shè)備物理連接;步驟S3,采集服務(wù)模塊根據(jù)連接的物聯(lián)網(wǎng)設(shè)備的配置文件,按通信協(xié)議進(jìn)行通信交互和數(shù)據(jù)解析采集;步驟S4,數(shù)據(jù)計(jì)算服務(wù)模塊、數(shù)據(jù)存儲(chǔ)服務(wù)模塊對(duì)數(shù)據(jù)采集服務(wù)模塊獲取的數(shù)據(jù)進(jìn)行計(jì)算和存儲(chǔ)處理;步驟S5,數(shù)據(jù)加密服務(wù)模塊和數(shù)據(jù)上傳服務(wù)模塊對(duì)經(jīng)計(jì)算和存儲(chǔ)后的數(shù)據(jù)進(jìn)行加密處理后對(duì)外進(jìn)行傳輸。
本發(fā)明的物聯(lián)網(wǎng)網(wǎng)關(guān)及其實(shí)現(xiàn)方法,在具體的內(nèi)網(wǎng)應(yīng)用中,本發(fā)明可作為本地監(jiān)控管理上位機(jī)的通信服務(wù)器使用,將系統(tǒng)內(nèi)各類物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)自動(dòng)采集到網(wǎng)關(guān),提供到監(jiān)控管理上位機(jī)使用。當(dāng)網(wǎng)絡(luò)異常時(shí),可按上位機(jī)的要求重新上傳系統(tǒng)數(shù)據(jù),提高系統(tǒng)數(shù)據(jù)傳輸?shù)陌踩院头€(wěn)定性。
在具體的小型內(nèi)網(wǎng)應(yīng)用中,本發(fā)明可作為本地的監(jiān)控管理主機(jī)使用,將系統(tǒng)內(nèi)各類物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)自動(dòng)采集到網(wǎng)關(guān)內(nèi)部進(jìn)行計(jì)算和存儲(chǔ),接受監(jiān)控系統(tǒng)的控制指令發(fā)送到物聯(lián)網(wǎng)設(shè)備上來(lái)實(shí)際執(zhí)行。
在具體的大型分布式應(yīng)用中,本發(fā)明可作為多網(wǎng)段網(wǎng)關(guān)路由器使用,即作為本地網(wǎng)關(guān)、上傳網(wǎng)關(guān)使用,對(duì)網(wǎng)關(guān)的網(wǎng)絡(luò)地址進(jìn)行不同設(shè)置,對(duì)網(wǎng)關(guān)的采集數(shù)據(jù)可以做不同篩選、加密和上傳。
以上述依據(jù)本發(fā)明的理想實(shí)施例為啟示,通過上述的說(shuō)明內(nèi)容,相關(guān)工作人員完全可以在不偏離本項(xiàng)發(fā)明技術(shù)思想的范圍內(nèi),進(jìn)行多樣的變更以及修改。本項(xiàng)發(fā)明的技術(shù)性范圍并不局限于說(shuō)明書上的內(nèi)容,必須要根據(jù)權(quán)利要求范圍來(lái)確定其技術(shù)性范圍。