基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種通信方法及系統(tǒng),尤其涉及一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著國內(nèi)外物聯(lián)網(wǎng)浪潮的興起,各種物聯(lián)網(wǎng)智能硬件如雨后春筍般涌現(xiàn),小到日常使用的智能牙刷,以及各種前端傳感器,大到企業(yè)級或工業(yè)級的智能終端,智能機(jī)器人,形形色色的各種物聯(lián)網(wǎng)設(shè)備正以前所未有的速度互聯(lián)互通,但隨之而來的數(shù)據(jù)通信的安全性卻無法得到及時的保障。不像互聯(lián)網(wǎng)時代,大部分的聯(lián)網(wǎng)設(shè)備都具有高性能的處理器,可以運(yùn)行功能復(fù)雜的通信加解密算法以及復(fù)雜的身份ID識別。物聯(lián)網(wǎng)中的很多設(shè)備或者前端節(jié)點(diǎn)都是微型處理器,資源和1性能都很弱,無法運(yùn)行龐雜的數(shù)據(jù)通信加解密算法,從而導(dǎo)致數(shù)據(jù)安全遭到極大威脅。本發(fā)明就是在這種背景下提出一種高效高可靠的物聯(lián)網(wǎng)設(shè)備通信加密方法。本方法普遍適用于當(dāng)前物聯(lián)網(wǎng)主流的微型處理器及前端傳感器節(jié)點(diǎn)。
[0003]專利201010155350.7公開了一種物聯(lián)網(wǎng)應(yīng)用模塊及物聯(lián)網(wǎng)應(yīng)用與物聯(lián)網(wǎng)終端的通信方法。解決了相關(guān)技術(shù)中通信方式加重了 M2M平臺的負(fù)荷、增加了系統(tǒng)時延的問題,實(shí)現(xiàn)了降低M2M平臺的負(fù)荷、簡化整個系統(tǒng)的處理環(huán)節(jié)、減少系統(tǒng)時延。
[0004]專利201410681691.6公開了一種物聯(lián)網(wǎng)設(shè)備與物聯(lián)網(wǎng)服務(wù)器通信方法及裝置,將不同通信規(guī)范的數(shù)據(jù)轉(zhuǎn)換為統(tǒng)一通信規(guī)范的數(shù)據(jù),使得物聯(lián)網(wǎng)服務(wù)器不需要關(guān)心不同物聯(lián)網(wǎng)設(shè)備的通信差異,大大提高了物聯(lián)網(wǎng)服務(wù)器的工作效率。
[0005]專利201210066318.0公開了一種物聯(lián)網(wǎng)通信方法和裝置,可以使物聯(lián)網(wǎng)通信系統(tǒng)在資源浪費(fèi)較少的同時降低設(shè)備的處理復(fù)雜度。
[0006]但上述發(fā)明實(shí)現(xiàn)的各種解決方案,都是側(cè)重于物聯(lián)網(wǎng)中設(shè)備和節(jié)點(diǎn)的簡化通信報文,或者簡化通信中的差異,從而降低物聯(lián)網(wǎng)中設(shè)備或節(jié)點(diǎn)通信的難度和復(fù)雜度,都無法實(shí)現(xiàn)在高效通信的同時保證通信的安全性。
【發(fā)明內(nèi)容】
[0007]本發(fā)明解決的技術(shù)問題是:構(gòu)建一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法及系統(tǒng),克服現(xiàn)有技術(shù)無法實(shí)現(xiàn)在高效通信的同時保證通信的安全性的技術(shù)問題。
[0008]本發(fā)明的技術(shù)方案是:提供一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法,包括如下步驟:
建立通信鏈路:第一節(jié)點(diǎn)設(shè)備向第二節(jié)點(diǎn)設(shè)備發(fā)送連接請求,所述第二節(jié)點(diǎn)設(shè)備為所述連接請求預(yù)分配活動資源并監(jiān)聽所述連接請求的后續(xù)動作;
安全握手:所述第二節(jié)點(diǎn)設(shè)備接收到所述第一節(jié)點(diǎn)設(shè)備的連接請求后向所述第一節(jié)點(diǎn)設(shè)備推送隨機(jī)消息,所述第一節(jié)點(diǎn)設(shè)備在接收的所述隨機(jī)消息后追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號并預(yù)存的公鑰加密,然后發(fā)送到所述第二節(jié)點(diǎn)設(shè)備,所述第二節(jié)點(diǎn)設(shè)備用預(yù)存的私鑰還原接收的所述隨機(jī)消息和追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號,確認(rèn)還原的所述隨機(jī)消息真實(shí)后將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備,所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù),提取并保存所述第二節(jié)點(diǎn)設(shè)備的通信密鑰;
加密通信:所述第一節(jié)點(diǎn)設(shè)備通過保存的所述第二節(jié)點(diǎn)設(shè)備的通信密鑰與所述第二節(jié)點(diǎn)設(shè)備進(jìn)行通信。
[0009]本發(fā)明的進(jìn)一步技術(shù)方案是:在確認(rèn)還原的所述隨機(jī)消息真實(shí)后,將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰以及有效簽名通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備。
[0010]本發(fā)明的進(jìn)一步技術(shù)方案是:所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù)后驗(yàn)證所述第二節(jié)點(diǎn)設(shè)備的通信密鑰以及有效簽名的有效性。
[0011]本發(fā)明的進(jìn)一步技術(shù)方案是:所述第一節(jié)點(diǎn)設(shè)備將接收的所述隨機(jī)消息和追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號用RSA加密并發(fā)送到所述第二節(jié)點(diǎn)設(shè)備。
[0012]本發(fā)明的進(jìn)一步技術(shù)方案是:所述第二節(jié)點(diǎn)設(shè)備將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰以及有效簽名通過RSA加密生成報文數(shù)據(jù)。
[0013]本發(fā)明的進(jìn)一步技術(shù)方案是:所述第二節(jié)點(diǎn)設(shè)備生成AES通信密鑰。
[0014]本發(fā)明的技術(shù)方案是:構(gòu)建一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信系統(tǒng),包括通信鏈路建立模塊、握手模塊、通信模塊、握手加解密模塊、通信加解密模塊、密鑰存儲模塊,所述密鑰存儲模塊存儲用于加密的公鑰以及用于解密的私鑰;第一節(jié)點(diǎn)設(shè)備通過所述通信鏈路建立模塊向第二節(jié)點(diǎn)設(shè)備發(fā)送連接請求,所述第二節(jié)點(diǎn)設(shè)備為所述連接請求預(yù)分配活動資源并通過所述通信鏈路建立模塊監(jiān)聽所述連接請求的后續(xù)動作;所述握手模塊通過以下過程完成握手:所述第二節(jié)點(diǎn)設(shè)備接收到所述第一節(jié)點(diǎn)設(shè)備的連接請求后向所述第一節(jié)點(diǎn)設(shè)備推送隨機(jī)消息,所述第一節(jié)點(diǎn)設(shè)備在接收的所述隨機(jī)消息后追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號并預(yù)存的公鑰加密,然后發(fā)送到所述第二節(jié)點(diǎn)設(shè)備,所述第二節(jié)點(diǎn)設(shè)備用預(yù)存的私鑰還原接收的所述隨機(jī)消息和追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號,確認(rèn)還原的所述隨機(jī)消息真實(shí)后將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備,所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù),提取并保存所述第二節(jié)點(diǎn)設(shè)備的通信密鑰;所述通信模塊使所述第一節(jié)點(diǎn)設(shè)備通過所述通信密鑰與所述第二節(jié)點(diǎn)設(shè)備進(jìn)行通信,通信過程中由所述通信密鑰加解密模塊進(jìn)行通信密鑰的加密和解密。
[0015]本發(fā)明的進(jìn)一步技術(shù)方案是:所述握手模塊還包括驗(yàn)證模塊,所述握手模塊將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰以及有效簽名通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備,所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù)后由所述驗(yàn)證模塊驗(yàn)證所述第二節(jié)點(diǎn)設(shè)備的通信密鑰以及有效簽名的有效性。
[0016]本發(fā)明的進(jìn)一步技術(shù)方案是:所述握手加解密模塊還包括RSA (Ron Rivest、AdiShamir、Leonard Adleman,簡稱 RSA)加解密模塊。
[0017]本發(fā)明的進(jìn)一步技術(shù)方案是:所述通信加解密模塊包括用于通信加密的AES(Advanced Encrypt1n Standard,簡稱 AES)通信加解密模塊。
[0018]本發(fā)明的技術(shù)效果是:構(gòu)建一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法及系統(tǒng),第一節(jié)點(diǎn)設(shè)備向第二節(jié)點(diǎn)設(shè)備發(fā)送連接請求,所述第二節(jié)點(diǎn)設(shè)備為所述連接請求預(yù)分配活動資源并監(jiān)聽所述連接請求的后續(xù)動作;所述第二節(jié)點(diǎn)設(shè)備接收到所述第一節(jié)點(diǎn)設(shè)備的連接請求后向所述第一節(jié)點(diǎn)設(shè)備推送隨機(jī)消息,所述第一節(jié)點(diǎn)設(shè)備在接收的所述隨機(jī)消息后追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號并預(yù)存的公鑰加密,然后發(fā)送到所述第二節(jié)點(diǎn)設(shè)備,所述第二節(jié)點(diǎn)設(shè)備用預(yù)存的私鑰還原接收的所述隨機(jī)消息和追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號,確認(rèn)還原的所述隨機(jī)消息真實(shí)后將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備,所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù),提取并保存所述第二節(jié)點(diǎn)設(shè)備的通信密鑰;所述第一節(jié)點(diǎn)設(shè)備通過保存的所述第二節(jié)點(diǎn)設(shè)備的通信密鑰與所述第二節(jié)點(diǎn)設(shè)備進(jìn)行通信。在高效通信的前提下獨(dú)創(chuàng)的提出安全通信的建立通信鏈路、安全握手、加密通信3個步驟,實(shí)現(xiàn)物聯(lián)網(wǎng)中設(shè)備或節(jié)點(diǎn)的安全通信,保證通信數(shù)據(jù)不會被“破解”,“偽造”。
【附圖說明】
[0019]圖1為本發(fā)明的步驟示意圖。
[0020]圖2為本發(fā)明的建立通信鏈路步驟示意圖。
[0021]圖3為本發(fā)明的安全握手步驟示意圖。
[0022]圖4為本發(fā)明的加密通信步驟示意圖。
[0023]圖5為本發(fā)明的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0024]下面結(jié)合具體實(shí)施例,對本發(fā)明技術(shù)方案進(jìn)一步說明。
[0025]如圖1、圖2、圖3、圖4本發(fā)明的技術(shù)方案是:提供一種基于物聯(lián)網(wǎng)設(shè)備的安全高效通信方法,包括如下步驟:
建立通信鏈路:第一節(jié)點(diǎn)設(shè)備向第二節(jié)點(diǎn)設(shè)備發(fā)送連接請求,所述第二節(jié)點(diǎn)設(shè)備為所述連接請求預(yù)分配活動資源并監(jiān)聽所述連接請求的后續(xù)動作。
[0026]如圖2所示,具體實(shí)施過程如下:第一節(jié)點(diǎn)設(shè)備如果想發(fā)起和第二節(jié)點(diǎn)設(shè)備的安全通信,則第一節(jié)點(diǎn)設(shè)備必須向第二節(jié)點(diǎn)設(shè)備發(fā)起一個普通的連接請求,該請求不包含任何的業(yè)務(wù)數(shù)據(jù),只是一個普通的鏈接請求,所以此時的報文數(shù)據(jù)可以公開并透明傳輸。此時如果第二節(jié)點(diǎn)設(shè)備收到該鏈接請求后,則需要為該鏈接請求預(yù)分配活動資源,并監(jiān)聽該請求的后續(xù)動作。
[0027]安全握手:系統(tǒng)中存儲用于加密的公鑰以及用于解密的私鑰。所述第二節(jié)點(diǎn)設(shè)備接收到所述第一節(jié)點(diǎn)設(shè)備的連接請求后向所述第一節(jié)點(diǎn)設(shè)備推送隨機(jī)消息,所述第一節(jié)點(diǎn)設(shè)備在接收的所述隨機(jī)消息后追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號并預(yù)存的公鑰加密,然后發(fā)送到所述第二節(jié)點(diǎn)設(shè)備,所述第二節(jié)點(diǎn)設(shè)備用預(yù)存的私鑰還原接收的所述隨機(jī)消息和追加所述第一節(jié)點(diǎn)設(shè)備的設(shè)備ID號,確認(rèn)還原的所述隨機(jī)消息真實(shí)后將所述第二節(jié)點(diǎn)設(shè)備的通信密鑰通過加密生成報文數(shù)據(jù)并發(fā)送到所述第一節(jié)點(diǎn)設(shè)備,所述第一節(jié)點(diǎn)設(shè)備接收并解密所述報文數(shù)據(jù),提取并保存所述第二節(jié)點(diǎn)設(shè)備的通信密鑰。
[0028]如圖3所示,具體實(shí)施過程如下:第二節(jié)點(diǎn)設(shè)備在收到第一節(jié)點(diǎn)設(shè)備的鏈接請求后,會向第一節(jié)點(diǎn)設(shè)備推送一條包含40字節(jié)隨機(jī)數(shù)據(jù)的消息,第一節(jié)點(diǎn)設(shè)備收到消息后就在收到的40字節(jié)隨機(jī)數(shù)尾部追加12字節(jié)的設(shè)備ID號,總共52字節(jié),其中40字節(jié)的隨機(jī)數(shù)用于第二節(jié)點(diǎn)設(shè)備節(jié)點(diǎn)用于核對握手請求的唯一性,設(shè)備ID號用于識別聯(lián)網(wǎng)設(shè)備中唯一一臺設(shè)備。第一節(jié)點(diǎn)設(shè)備將這52字節(jié)的數(shù)據(jù)用第二節(jié)點(diǎn)設(shè)備的公鑰加密后會生成256字節(jié)的密文數(shù)據(jù),第一節(jié)點(diǎn)設(shè)備將這256字節(jié)的密文數(shù)據(jù)通過步驟I中的鏈路發(fā)送給第二節(jié)點(diǎn)設(shè)備,第二節(jié)點(diǎn)設(shè)備在收到這256字節(jié)的數(shù)據(jù)后用自己的私鑰解密還