基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

物聯(lián)網(wǎng)技術(shù)在迅速發(fā)展且逐漸擴大應(yīng)用范闈的時候,安全問題也逐漸暴露出來。其中一方面包括EPC標簽讀取出現(xiàn)的安令問題,另一方面則是如何保證信息在EPCglobal網(wǎng)絡(luò)中安今地傳輸,包括對象名稱服務(wù)信息劫持等,其中第一二方面的安全問題隨著物聯(lián)網(wǎng)的廣泛應(yīng)用已成為重要課題。目前的現(xiàn)有的研究中提出了一些研究方案,但大多與VPN技術(shù)結(jié)合緊密或無法保證ONS與EPC系統(tǒng)中其他組件交互是的安傘性,而其加密算法難以滿足帶的標簽讀取和查詢所帶來的效率問題。為此,我們將橢圓曲線加密算法應(yīng)用與EPCglobal網(wǎng)絡(luò)安全相結(jié)合,來解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全問題的方案。

一、EPCglobal網(wǎng)絡(luò)的體系結(jié)構(gòu)

EPCglobal網(wǎng)絡(luò)主要組成部件包括3個層次的系統(tǒng),如圖1所示。

一種基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

其中包括:EPC編碼體系、射頻識別系統(tǒng)、信息網(wǎng)絡(luò)系統(tǒng)。

其中的信息網(wǎng)絡(luò)系統(tǒng)包含EPC中間件,應(yīng)用層事件,EPC信息服務(wù),和ONS。EPC中間件讓用戶可以根據(jù)某種應(yīng)用需求定制和集成EPC中間件中的不同功能部件;ALE用于處理應(yīng)用層相火的事件;EPCIS存儲EPC中間件處理的信息,以及查詢相關(guān)的信息:ONS,類似于域名服務(wù)器(DNS),其中的信息可用于指I句某個存放EPC中間件信息的EPCIS器。這些都是EPC系統(tǒng)的軟件支持系統(tǒng)。

二、橢圓曲線加密體制

橢圓曲線加密體制(ECC)是被實踐證明安全有效的三類公鑰密碼體制之一,以高效性著稱。ECC的依據(jù)是定義在橢惻曲線點群上的離散對數(shù)問題的解雌性,它用少得多的比特大小能夠取得和RSA同等強度的安全性,因此減少了處理開銷,具有存儲效率、計算效牢和通信帶寬的節(jié)約等方面的優(yōu)勢。橢圓曲線上的密碼算法速度很快,分別在32位的PC機上和16位微處理器上實現(xiàn)了快速的橢圓曲線加密算法,其中16位微處理器上的EDSA數(shù)字簽名不足500ms。

其安全等方面的比較如表1所示。

一種基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

三、EPCglobal網(wǎng)絡(luò)的安全協(xié)議設(shè)計

1、針對EPCglobal網(wǎng)絡(luò)安全和效率問題的設(shè)計

EPCglobal網(wǎng)絡(luò)中存在的安全問題主要體現(xiàn)在ONS與客戶端應(yīng)用程序在通信時所存在的安全隱患以及ONS內(nèi)部的安全。

ONS的查詢步驟如圖2所示。

一種基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

其中,(1)、(6)是客戶端應(yīng)用程序和ONS進行信息交互,即客戶端應(yīng)用程序產(chǎn)生食詢請求發(fā)送給ONS。而ONS再查詢相關(guān)的EPCIS地址信息等返網(wǎng)給客戶端。

(2)、(3)是ONS和域名系統(tǒng)進行信息交互,主要是由于物聯(lián)網(wǎng)網(wǎng)絡(luò)依賴于互聯(lián)網(wǎng),ONS首先在本地查詢是否存在該EPC編碼對成的EPCIS地址信息。如果是,即立即返回EPCIS地址如步驟(6);如
果否,在DNS巾搜索相應(yīng)的根ONS地址,并將其返網(wǎng)給,ONS。

(4)、(5)則是子ONS和根ONS之間的信息交互。

(7)是客戶端應(yīng)用程序在得到EPCIS地址之后對由此可見ONS的A詢過程會存在ONS信息劫持。

首先,ONS與客戶端應(yīng)用程序n:請求和返回答復(fù)的時候數(shù)據(jù)容易被劫持,一些敏感信息將披泄漏,從圖2可見,其中的,第(1)、(6)步均被牽涉到:而這些泄漏的信息將仃可能會被篡改并重新發(fā)送,導(dǎo)致整個系統(tǒng)出現(xiàn)錯誤。再來如果攻擊者獲取了一個EPC標簽,則可通過偽裝身份的方式,從ONS查詢這個產(chǎn)品的詳細信息,導(dǎo)致更多的敏感信息放泄露。同時在ONS內(nèi)部,還需要保征ONS予服務(wù)器與根服務(wù)器的通信安全及可信。

同時,由于物聯(lián)網(wǎng)的特點,往往客戶端程序的在一個較短的時間內(nèi)有大量的查詢請求,每次加密將帶來巨人的傳輸延遲,信息交互效率、存儲效率等大大降低,所以需要有一種高效且安全的協(xié)議性支持。

本文設(shè)計了一個基于橢圓曲線加密算法的方案,解決物聯(lián)網(wǎng)l網(wǎng)絡(luò)安全和效率問題,進一步針對ONS,應(yīng)用于ONS與客戶端應(yīng)用程序交互中,以防止這一環(huán)節(jié)可能遭受的安全威脅。系統(tǒng)設(shè)計包括:

(1)客戶端應(yīng)用程序與ONS之間的通信協(xié)議

該協(xié)議利用橢圓曲線加密算法的安全性,和多次握手的協(xié)議,協(xié)議先要針對系統(tǒng)中如圖2中(1)、(6)的步驟,避免攻擊者可能截獲ONS與客戶端應(yīng)用程序通信的數(shù)據(jù),其中包括EPC編碼等敏感信息;同時,協(xié)議中包含ONS針對客戶端的身份驗證過程,橢圓曲線加密算法的密鑰是用ONS隨機產(chǎn)生的整數(shù)計算得到,而客戶端在加密過程中也使用隨機數(shù)進行加密,使用一次即丟棄作廢,每次的加密密鑰都不相同。這些機制都防止了攻擊耆利用非法得到的信息進行偽裝攻擊。避免攻擊者利用偽裝,以偽裝的身份欺騙ONS。從而進行查詢服務(wù);

另外,協(xié)議中包含客戶端對每一次完整的通信成功性的驗證,以及對獲取的信息的驗證,保證企業(yè)的身份的正確性。

整個系統(tǒng)設(shè)計中,包含安全套接協(xié)議層安傘隧道協(xié)議,當出現(xiàn)任何錯誤,如密鑰錯誤而無法解密客戶端加密的數(shù)據(jù),客戶端ID錯誤,客戶端退出等事件,狀念機自動進入初始狀態(tài),即等待連接狀態(tài)。這有效地避免了攻擊者可以篡改截獲的信息并發(fā)送,或者進行拒絕服務(wù)(DoS.Denial ofServicc)攻擊以導(dǎo)致的ONS與客戶端應(yīng)用程序交互出現(xiàn)錯誤,避免給氽業(yè)的信息交互帶來損失。

另外由于橢圓曲線加密算法減少了處理開銷,具有存儲效率、計算等效率和通信帶寬的節(jié)約等方面的優(yōu)勢,且協(xié)議中將客戶端應(yīng)用程序的請求批量操作,以解決效率問題。

(2)在ONS上引入DNSScc

利用了ONS與DNS的相似性,引入了DNSSec安全機制,在ONS內(nèi)部,還需保證ONS子服務(wù)器與根服務(wù)器通信的安全性和可信度。

在設(shè)計中除了,下述安全的通信系統(tǒng)協(xié)議和DNSSec安全機制等核心的設(shè)計之外,還可引入其他安全防范,以保證接個ONS咨詢系統(tǒng)安全,包括物理安全、系統(tǒng)平臺安全、數(shù)據(jù)安全、通信安全、應(yīng)用安全、運行安全及管理安全等等。

2、安全的客戶端與ONS間的通信協(xié)議

本文提出的基于橢圓曲線加密算法解決EPCglobal網(wǎng)絡(luò)安全的設(shè)計主要應(yīng)用在ONS與客戶端應(yīng)用程序交互中。其流程如圖3所示。

一種基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

 

具體的協(xié)議步驟如下:

(1)客戶端應(yīng)用程序產(chǎn)生查詢請求,請求中包含客戶端應(yīng)用程序ID號,并發(fā)送給ONS。

(2) ONS根據(jù)獲取的客戶端應(yīng)用程序ID號,根據(jù)ID在后臺數(shù)據(jù)庫中選取有限域GF(p)上的一條橢圓曲線E:y2=x3+ax+b.給出一組參數(shù)(a,b,p,g)。a.beGF(p)定義了一條曲線,整數(shù)p表示有限域GF(p)t的特征;g∈E表示一個基點。各參數(shù)滿足:p>216o,4a2+27b2(modp)#0。這些參數(shù)事先都與客戶端協(xié)商好,并公布在橢圓曲線參數(shù)文件之中,可以披指定ID的客戶端應(yīng)用程序使用。

(3)ONS在[1,P-1]中選取一個隨機整數(shù)x,作為私鑰,并由基點得到公鑰X=xg。ONS將X發(fā)送給客戶端應(yīng)用程序。

(4)查詢信息中包含EPC編碼等敏感信息,常用的EPC編碼為64位、96位或者256位。將客戶端應(yīng)用程序ID號+EPC編碼得到M。如果批量查詢EPC編碼,可將ID號放在信息首部,將批量查詢的EPC編碼接在ID號之后。M將被嵌入到橢圓曲線上一點P。

(5)客戶端程序選取隨機數(shù),在[1,P-1]中的yg,P+yX,并向ONS發(fā)送yg,P+yX。

(6) ONS接收到客戶端應(yīng)用程序發(fā)送過來的密文,使用私鑰x進行解密解密,即(P+yX)-xyg=P+yxg-xyg=P得到的P,經(jīng)過轉(zhuǎn)換可得到M。由于客戶端應(yīng)用程序ID號位數(shù)已知,可直接對數(shù)據(jù)截斷得到客戶端應(yīng)用程序ID號和EPC編碼等敏感信息,并可以對ID號和先前獲取的ID號進行比對。

(7)ONS將客戶端ID號和杏詢結(jié)果發(fā)送給用戶。查詢結(jié)果即EPCIS的地址信息,在ONS上引入DNSSec進行數(shù)據(jù)管理,保證安全性。

(8)客戶端將接收到的ID號和自己的ID號進行對比驗證,如果匹配這表示收到的是自己需要的查詢結(jié)果,否則丟棄。

3、在ONSE引入DNSSec

DNSScc是在DNS協(xié)議中增加的一種安全機制,其主要內(nèi)容包括:密鑰的分發(fā)和管理、原始數(shù)據(jù)的認證和完整性檢驗、傳輸和請求的認證。這些服務(wù)能夠防止大部分針對DNS的安全威脅。

由于ONS層次結(jié)構(gòu)與DNS十分相似,因此在DNS中存在的安全問題在ONS中也存在,于是本文的設(shè)計引入DNSSec到ONS上。

利用DNSSec安全機制,依靠橢圓曲線加密算法對包含在ONS中的EPCIS的地址信息和EPC信息創(chuàng)建密碼簽名。密碼簽名通過計算出一個密碼hash數(shù)來提供ONS中數(shù)據(jù)的完整性,并將該hash數(shù)封裝進行保護。利用橢圓曲線加密算法中的私/公鑰對中的私鑰來封裝hash數(shù),然后可以用公鑰把hash數(shù)譯出來。如果這個譯出的hash值匹配接受這剛剛計算出來的hash數(shù),那么表明數(shù)據(jù)是完整的。

在ONS內(nèi)部,還需保證ONS子服務(wù)器與根服務(wù)器通信的安全性和可信度。從DNSScc機制中,可看到,當本地ONS在本地的緩存之中未查詢到相關(guān)的記錄的時候,向根ONS發(fā)送百俐請求,進向根據(jù)根ONS返回的相關(guān)ONS地址和訪問權(quán)限,去訪問相關(guān)的ONS。這個機制的關(guān)鍵在于,所有相關(guān)ONS的訪問必須經(jīng)過根ONS,需由根ONS提供相關(guān)的ONS查詢地址,并且提供訪問權(quán)限。而根ONS中需要預(yù)先保存好所有待查詢的ONS的地址,并具有授權(quán)權(quán)限。

四、系統(tǒng)設(shè)計實驗示例及分析

1、實驗示例及系統(tǒng)可行性分析

常見的EPC編碼有64bit、96bit、256bit乏種。本實驗中,假設(shè)客戶端應(yīng)用程序向ONS查詢EPC編碼為EPC-641型,即64bit。假設(shè)客戶端ID為4bit。實現(xiàn)算法的編程工具為Iava JDK l.6.實驗按照方案,實驗數(shù)據(jù)如表2所示。

一種基于橢圓曲線加密算法解決物聯(lián)網(wǎng)網(wǎng)絡(luò)安全和效率問題的設(shè)計

加密信息時間開銷為0.472s,解密時間為0.488s。如增加處理數(shù)據(jù)量,即同時處理105個EPC編碼數(shù)據(jù)請求,加密整個過程的時間開銷為3.314s,解密的時間為3.340s。本實驗是一臺普通的PC機上完成,而如果硬件條件進一步提高,將大大提高此方案設(shè)計的效率。滿足傳輸效率、存儲成本、傳輸可靠性等設(shè)計需求。解決加密協(xié)議的效率問題。

2、系統(tǒng)安全性的分析

(1)防偽裝攻擊

即防止傳送數(shù)據(jù)被中間人偽造,且避免重放攻擊等安全威脅。此方案中,客戶端數(shù)據(jù)將自己的客戶端ID嵌入在傳輸信息中,并用橢圓曲線加密算法進行加密。同時采用了DNSSec機制后臺的數(shù)據(jù)庫管理密鑰信息,ONS根據(jù)客戶端ID在后臺數(shù)據(jù)庫中查找相應(yīng)的公鑰和加密算法,包括橢圓曲線函數(shù)等加密參數(shù),并對接收到的信息進行解密。如果客戶端的ID不正確或者相應(yīng)的密鑰無法成功解密數(shù)據(jù),則說明用戶非法。

同時,由于傳輸?shù)牟樵冃畔⑹峭ㄟ^橢圓函數(shù)加密算法進行加密的,而密鑰又是用ONS隨機產(chǎn)生的整數(shù)計算得到,而客戶端在加密過程中也使用隨機數(shù)進行加密,使用一次即丟棄作廢,每次的加密密鑰都不相同。這些機制都防止了攻擊者利用非法得到的信息進行偽裝攻擊,綜上所述,可防止中間人攻擊。

(2)防篡改攻擊

即保障數(shù)據(jù)完整性,防止數(shù)據(jù)被篡改。此協(xié)議中,數(shù)據(jù)傳輸中進行密鑰加密,加密密鑰由通信雙方每次會話協(xié)商獲得,每次的加密密鑰都不相同,第三方不可知。同時利用DNSSec機制通過計算出一個密碼hash數(shù)來提供ONS中數(shù)據(jù)的完整性,防止篡改攻擊。

(3)防DoS攻擊

此方案采用安全套接協(xié)議層安全隧道協(xié)議,當出現(xiàn)任何錯誤,如密鑰錯誤而無法解密客戶端加密的數(shù)據(jù),客戶端ID錯誤,客戶端退出等事件,狀態(tài)機自動進入初始狀態(tài),即等待連接狀態(tài)。避免DoS攻擊ONS造成的損害。

(4)其他安全防范

保證整個ONS查詢系統(tǒng)安全,包括物理安全、系統(tǒng)平臺安全、數(shù)據(jù)安全、通信安全、應(yīng)用安全、運行安全及管理安全等,需采用其他安全防范措施,如檢查設(shè)備可靠,防火墻,以及如IDS(入侵檢測系統(tǒng),IntrusionDetection Sy8tcm)等被動式安全防范等措施。

小知識之物聯(lián)網(wǎng)

物聯(lián)網(wǎng)是新一代信息技術(shù)的重要組成部分。其英文名稱是“The Internet of things”。由此,顧名思義,“物聯(lián)網(wǎng)就是物物相連的互聯(lián)網(wǎng)”。這有兩層意思:第一,物聯(lián)網(wǎng)的核心和基礎(chǔ)仍然是互聯(lián)網(wǎng),是在互聯(lián)網(wǎng)基礎(chǔ)上的延伸和擴展的網(wǎng)絡(luò);第二,其用戶端延伸和擴展到了任何物品與物品之間,進行信息交換和通信。物聯(lián)網(wǎng)就是“物物相連的互聯(lián)網(wǎng)”。物聯(lián)網(wǎng)通過智能感知、識別技術(shù)與普適計算、泛在網(wǎng)絡(luò)的融合應(yīng)用,被稱為繼計算機、互聯(lián)網(wǎng)之后世界信息產(chǎn)業(yè)發(fā)展的第三次浪潮。物聯(lián)網(wǎng)是互聯(lián)網(wǎng)的應(yīng)用拓展,與其說物聯(lián)網(wǎng)是網(wǎng)絡(luò),不如說物聯(lián)網(wǎng)是業(yè)務(wù)和應(yīng)用。因此,應(yīng)用創(chuàng)新是物聯(lián)網(wǎng)發(fā)展的核心,以用戶體驗為核心的創(chuàng)新2.0是物聯(lián)網(wǎng)發(fā)展的靈魂。