使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法_第1頁
使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法_第2頁
使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法_第3頁
使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法_第4頁
使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、使用不重?cái)?shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)通信鑒別機(jī)制的方法陳富強(qiáng)中煤科工集團(tuán)重慶研究院有限公司 重慶 400037摘要:控制網(wǎng)絡(luò)由于受帶寬的限制和實(shí)時性的要求,希望在其上實(shí)現(xiàn)的通信鑒別機(jī)制能夠簡單有效。文中通過時間服務(wù)器,使用一種不重?cái)?shù)數(shù)的方法實(shí)現(xiàn)了應(yīng)用層的鑒別。認(rèn)證系統(tǒng)中使用報(bào)文摘要(Digest)實(shí)現(xiàn)認(rèn)證,該算法將發(fā)送或接收的數(shù)據(jù)經(jīng)消化后產(chǎn)生消化值。該方法不僅能夠滿足大部分場景下控制網(wǎng)絡(luò)鑒別的需求,而且能夠利用時間服務(wù)器的信息用于鑒別,能夠大大減少網(wǎng)絡(luò)的數(shù)據(jù)流量。關(guān)鍵詞:不重?cái)?shù) 控制網(wǎng)絡(luò) 鑒別 LonWorksUse Nonce as Authentication in Control Networks C

2、ommunicationAbstract:Control Networks are narrow band and real time networks, so the communication authentication mechanism should simple and effective. A Nonce method using time server was presented in the paper, it applies the authentication on application layer. Digest was used as system Authenti

3、cation and that use received or sent data as digest data. This method should meet most cases requirement of control networks, and can use the time server information as authentication as well and can reduce the throughput of the control networks.Key Words:Nonce; Control Networks; Authentication; Lon

4、Works1.引言近年來,工業(yè)控制系統(tǒng)(尤其是煤炭工業(yè))、建筑物智能化控制系統(tǒng)和控制網(wǎng)絡(luò)的安全性越來越受到重視??刂凭W(wǎng)絡(luò)的安全涉及設(shè)備、網(wǎng)絡(luò)、系統(tǒng)、信息等各個方面??刂凭W(wǎng)絡(luò)有別于計(jì)算機(jī)網(wǎng)絡(luò),主要應(yīng)用于工業(yè)的信息化和建筑的智能及節(jié)能等領(lǐng)域。LonWorks總線技術(shù)是美國Echelon公司于1991年推出的局部操作網(wǎng)絡(luò)(LON網(wǎng),Local Operating Network),其主要特色是將通信協(xié)議嵌入到一個芯片(Neuron chip,神經(jīng)元芯片)內(nèi),用戶采用該芯片及相關(guān)的配件即可設(shè)計(jì)出需要的應(yīng)用節(jié)點(diǎn),將應(yīng)用節(jié)點(diǎn)與路由器/中繼器等組成LonWorks控制網(wǎng)絡(luò)。LonWorks總線支持不同的網(wǎng)絡(luò)

5、結(jié)構(gòu)和通訊介質(zhì)。2006年,LonWorks技術(shù)被采納為中國控制聯(lián)網(wǎng)標(biāo)準(zhǔn)、中國商業(yè)樓宇和住宅建設(shè)的國家標(biāo)準(zhǔn)。2008年12月,LonWorks被批準(zhǔn)為國際標(biāo)準(zhǔn)ISO/IEC 14908。目前LonWorks技術(shù)的產(chǎn)品廣泛應(yīng)用在工業(yè)、樓宇、能源及交通等領(lǐng)域。本文主要研究了基于LonWorks控制網(wǎng)絡(luò)的通信安全的鑒別方法,并設(shè)計(jì)了一種基于Host CPU的時間服務(wù)器,以實(shí)現(xiàn)LonWorks網(wǎng)絡(luò)的安全鑒別功能。2.控制網(wǎng)絡(luò)的安全鑒別控制網(wǎng)絡(luò)與數(shù)據(jù)網(wǎng)絡(luò)一樣,存在數(shù)據(jù)安全性問題??刂凭W(wǎng)絡(luò)的數(shù)據(jù)安全主要包括下列幾個方面:(1)防止對監(jiān)控?cái)?shù)據(jù)的未經(jīng)授權(quán)的訪問和更改;(2)監(jiān)控命令和數(shù)據(jù)的安全可靠傳輸;(3)

6、防止傳輸過程的泄密(非法竊聽);(4)防止控制網(wǎng)絡(luò)被惡意攻擊。在高級別機(jī)密的數(shù)據(jù)傳輸中采用加密的方法。加密解密方法主要用于對付被動的攻擊,且需要復(fù)雜的設(shè)備,不適合在控制網(wǎng)絡(luò)中使用。對付主動攻擊的主要方法是鑒別,特別是發(fā)送源的鑒別。報(bào)文鑒別使得通信的接收方能夠驗(yàn)證所收到的報(bào)文(報(bào)文內(nèi)容、發(fā)送時間、序列等)的真?zhèn)?。采用鑒別機(jī)制實(shí)現(xiàn)控制網(wǎng)絡(luò)的信息安全是一種常用的方法。2.1報(bào)文摘要(Message Digest)兩個通信節(jié)點(diǎn)A和B之間要進(jìn)行信息傳遞。A將報(bào)文T經(jīng)過報(bào)文摘要算法運(yùn)算后得出很短的報(bào)文摘要M。然后用它的私鑰對M進(jìn)行J運(yùn)算,即進(jìn)行數(shù)字簽名。得出已簽名的報(bào)文摘要J(M)后,將其追加在報(bào)文T后再

7、發(fā)送給B。B收到報(bào)文后首先把已簽名的J(M)和報(bào)文T分離。然后用A的公鑰對J(M)進(jìn)行K運(yùn)算,得出報(bào)文摘要 M。再對報(bào)文T進(jìn)行報(bào)文摘要運(yùn)算,判斷是否能夠得出同樣的報(bào)文摘要M。如果得到的報(bào)文摘要相同,則以極高的概率斷定收到的報(bào)文是A產(chǎn)生的。否則就不是。如下圖所示。圖12.2存在的問題報(bào)文鑒別是對每一個收到的報(bào)文都要鑒別報(bào)文的發(fā)送者,而實(shí)體認(rèn)證是在系統(tǒng)接入的全部持續(xù)時間內(nèi)對和自己通信的對方實(shí)體只需驗(yàn)證一次。A發(fā)送給B的報(bào)文被加密,使用的是對稱密鑰TAB。B收到此報(bào)文后,用共享對稱密鑰TAB進(jìn)行解密,因而鑒別了實(shí)體A的身份。如下圖所示。圖2但是,這種加密與鑒別方式存在明顯的漏洞。假設(shè),入侵者D可以從

8、網(wǎng)絡(luò)上截獲A發(fā)給B的報(bào)文。D并不需要破譯這個報(bào)文,因?yàn)檫@可能需要耗費(fèi)很多時間,而把這個由A加密的報(bào)文直接發(fā)送給B,使B誤認(rèn)為D就是A。然后B就向偽裝是A的D發(fā)送應(yīng)發(fā)給A的報(bào)文。這是一種重放攻擊(Replay Attack)。C甚至還可以截獲A的IP地址,然后把A的IP地址冒充為自己的IP地址(即IP欺騙),使B更加容易受騙。2.3不重復(fù)數(shù)實(shí)現(xiàn)控制網(wǎng)絡(luò)應(yīng)用層鑒別有兩種解決方案:完全采用軟件的方法;采用時間服務(wù)器硬件加軟件的方法。第一種方法雖然實(shí)現(xiàn)起來比較簡單,系統(tǒng)也不需要增加硬件設(shè)備,但要實(shí)現(xiàn)發(fā)送方鑒別,需要4個數(shù)據(jù)包在網(wǎng)上傳送,大大增加了網(wǎng)絡(luò)信息交通和帶寬消耗,及發(fā)送到接收的響應(yīng)時間。采用時間

9、服務(wù)器的方案,可使發(fā)送到接收響應(yīng)時間減低40%左右,網(wǎng)絡(luò)信息交通量和帶寬消耗減少一半。采用時間服務(wù)器方案對于加強(qiáng)系統(tǒng)管理控制提供了很好的工具。時間服務(wù)器的主要功能是實(shí)現(xiàn)并保證整個系統(tǒng)內(nèi)各節(jié)點(diǎn)間的時間同步。其主要工作是實(shí)現(xiàn)系統(tǒng)計(jì)時,并在一定的時間內(nèi)向各節(jié)點(diǎn)分發(fā)時間信息。為了對付重放攻擊,可以使用不重?cái)?shù)(Nonce)。不重?cái)?shù)就是一個不重復(fù)使用的大隨機(jī)數(shù),即“一次一數(shù)”。最簡單并常見的實(shí)現(xiàn)方法是使用時間服務(wù)器。如下圖所示。圖33.基于時間服務(wù)器(Time Server)的安全鑒別時間服務(wù)器的主要功能是實(shí)現(xiàn)并保證整個系統(tǒng)內(nèi)各節(jié)點(diǎn)間的時間同步。其主要工作是實(shí)現(xiàn)系統(tǒng)計(jì)時,并在一定的時間內(nèi)(如一天)向各節(jié)點(diǎn)

10、分發(fā)時間信息。時間服務(wù)器的軟件功能主要有兩個,一是定期向全網(wǎng)廣播時間消息,實(shí)現(xiàn)全網(wǎng)內(nèi)節(jié)點(diǎn)的時間同步;二是接受節(jié)點(diǎn)的時間同步請求,如節(jié)點(diǎn)重新啟動、重新安裝等,則需要向Time Server發(fā)出時間同步請求。 3.1時間服務(wù)器的時間服務(wù)流程(1)時間廣播 時間廣播的間隔由系統(tǒng)參數(shù)而定,該參數(shù)可以通過軟件編程或通過系統(tǒng)級鑒別的方式修改。廣播報(bào)文的格式如下。報(bào)文序號Date/TimeDigest (8)時間廣播報(bào)文格式 報(bào)文序號的目的是使節(jié)點(diǎn)能夠在一定程度上對接收到的時間進(jìn)行驗(yàn)證,防止時間服務(wù)器被假冒。(2)接受節(jié)點(diǎn)時間同步請求 時間服務(wù)器的另一個功能是接受節(jié)點(diǎn)的時間同步請求。在安裝一個新節(jié)點(diǎn)、或節(jié)點(diǎn)

11、復(fù)位重啟等情況發(fā)生時,節(jié)點(diǎn)須向時間服務(wù)器發(fā)出節(jié)點(diǎn)時間同步請求,該請求的報(bào)文格式如下。SubnetNode時間同步請求標(biāo)志Digest (8)節(jié)點(diǎn)時間同步請求報(bào)文格式時間服務(wù)器接收到該請求并通過鑒別后,將響應(yīng)一時間報(bào)文給指定節(jié)點(diǎn),使該節(jié)點(diǎn)的時鐘可以與系統(tǒng)時鐘同步。響應(yīng)報(bào)文的格式如下。SubnetNodeDate/TimeDigest (8)時間同步請求響應(yīng)格式 節(jié)點(diǎn)接收到該響應(yīng)報(bào)文并經(jīng)過報(bào)文鑒別后,從報(bào)文中取出時間信息,計(jì)時開始,這樣就保證了系統(tǒng)中失步節(jié)點(diǎn)與系統(tǒng)時鐘的同步。3.2節(jié)點(diǎn)間通信認(rèn)證流程(1)發(fā)送方發(fā)送數(shù)據(jù) 發(fā)送方按照一定的數(shù)據(jù)格式發(fā)送數(shù)據(jù),數(shù)據(jù)格式如下。Message Data為Me

12、ssage code and Data兩個部分。Date/Time與前一致。Digest (8)為摘要值。Message DataDate/TimeDigest (8)(2)接收方接收數(shù)據(jù) 接收方根據(jù)收到的數(shù)據(jù)計(jì)算出一個摘要值,與收到的摘要值進(jìn)行比較。接收方根據(jù)己方的時間與發(fā)送方的時間進(jìn)行對比,找出數(shù)據(jù)包的源地址,然后用它自己的算法功能來消化數(shù)據(jù),并對摘要值進(jìn)行比較。為防止重放攻擊,接收節(jié)點(diǎn)應(yīng)設(shè)置一時間窗口。若接收到的時間與本節(jié)點(diǎn)時間的差超過時間窗口,則丟棄該報(bào)文。時間窗口是由節(jié)點(diǎn)的時鐘誤差、時間服務(wù)器的時間廣播間隔、報(bào)文傳輸時延等因素決定的。該窗口應(yīng)是可設(shè)置的。例如,時間窗口的缺省值可設(shè)為1

13、0秒。 4.LonWorks安全鑒別系統(tǒng)實(shí)現(xiàn)4.1系統(tǒng)組成LonWorks安全鑒別系統(tǒng)主要由三部分組成:時間服務(wù)器硬件和軟件、控制DDC安全鑒別模塊(或固件)、共享密鑰分發(fā)及系統(tǒng)級鑒別軟件。(1)時間服務(wù)器 主要包括時鐘發(fā)生器、單片機(jī)及其接口、LonWorks智能收發(fā)器及PC接口。時間服務(wù)器主要實(shí)現(xiàn)時間廣播、接受時間同步請求、實(shí)現(xiàn)鑒別算法。(2)控制器安全鑒別模塊 主要包括神經(jīng)元芯片與通信收發(fā)器(或智能收發(fā)器)、存儲器(存放控制程序及鑒別算法)、與DDC的通信接口。該模塊主要實(shí)現(xiàn)現(xiàn)場可編譯的鑒別算法模塊、可現(xiàn)場配置的插件程序。(3)共享密鑰發(fā)放及系統(tǒng)級鑒別軟件這部分實(shí)現(xiàn)基于LNS 的Syste

14、m Plug-in插件程序、向網(wǎng)絡(luò)各節(jié)點(diǎn)分發(fā)共享密鑰、向各節(jié)點(diǎn)發(fā)送時間窗口信息、向Time Server發(fā)送時間廣播的間隔信息、可以用打包的方式發(fā)布給用戶。4.2LonWorks時間服務(wù)器設(shè)計(jì)基于Neuron Chip/FT3150單個處理器芯片的節(jié)點(diǎn)日益不能適應(yīng)如今對電子設(shè)備的功能要求。首先,CPU工作頻率不高(通常在10MHz),數(shù)據(jù)處理能力不夠強(qiáng)大。其次,存儲容量也顯不足。導(dǎo)致在某些場合達(dá)不到實(shí)時性要求,而且存儲空間只有58K,并且其中低16K還要預(yù)留給LonWorks System Image系統(tǒng)固件使用,真正可以供給用戶自主使用的應(yīng)用空間只有42K。如果用戶的應(yīng)用中需要使用大量數(shù)據(jù),

15、則要在這42K空間中再劃出一部分分配給RAM使用,這樣導(dǎo)致用戶能夠使用的程序空間就更加小了。再次,F(xiàn)T3150提供的外部接口資源也非常有限:只有11個IO口,且不提供諸如LAN、USB等當(dāng)今的主流通信接口功能。為了提高LonWorks產(chǎn)品的響應(yīng)速度,增強(qiáng)實(shí)時性,滿足復(fù)雜、高級應(yīng)用場合的需要,并附加上諸如LAN、USB等更多通信接口能力,增強(qiáng)靈活性,本文提出一種基于Host主CPU(32位ARM單片機(jī))+ Neuron Chip FT3150 從CPU的架構(gòu)方式。這種架構(gòu)模式下,Neuron Chip僅實(shí)現(xiàn)了物理層、數(shù)據(jù)鏈路層底層協(xié)議,而ISO/OSI中其他層,包括網(wǎng)絡(luò)層、傳輸層、會話層、表示層

16、、應(yīng)用層,全部由Host CPU完成。Host CPU通過8Bit數(shù)據(jù)線,輔助以握手信號方式與Neuron Chip進(jìn)行數(shù)據(jù)傳輸。Host CPU采用ST意法半導(dǎo)體公司的32位ARM STM32F103增強(qiáng)型系列芯片。Host CPU 通過8位線寬數(shù)據(jù)線、片選CS、讀寫使能R/W、握手信號HS的并行(Parallel)傳輸方式與Neuron Chip進(jìn)行通信。為提高Host CPU和Neuron Chip之間的通信效率,使用中斷請求機(jī)制,讓Host CPU總是具有寫總線令牌;僅當(dāng)?shù)讓覰euron Chip有數(shù)據(jù)要上傳的時候,通過Up Link IRQ中斷請求告知Host CPU,Host CP

17、U將寫令牌傳給Neuron Chip,然后進(jìn)行Data Up Link傳輸,一旦Up Link完成,則寫Token從新返回給Host CPU。圖4由于Parallel的通信方式已經(jīng)占用了FT3150的所有11個IO口。中斷請求信號輸出只能另辟巧徑,通過軟件上訪問映射到內(nèi)存空間的某一地址,硬件上對該地址輸出進(jìn)行解碼產(chǎn)生。如下圖所示。圖5當(dāng)A15、A14同為1,而A13為0的時候M74HC74的CLK腳才出現(xiàn)低電平,低電平過后在CLK的上升沿Q端輸出D的狀態(tài)0,在Q端產(chǎn)生高電平中斷請求IRQ輸出給Host,在Host響應(yīng)該IRQ進(jìn)入服務(wù)程序后,通過CLR_IRQ端輸出一個低電平給M74HC74的P

18、R腳讓Q輸出低電平清除IRQ中斷請求。通過以下函數(shù)來實(shí)現(xiàn)在Host CPU軟件的最底層訪問Parallel口。int read_hs(void) /讀取HS的狀態(tài),0表示數(shù)據(jù)已準(zhǔn)備好(正確輸出到總線上)BOOLEAN wait_for_hs(void)/ 等待Neuron Chip將數(shù)據(jù)準(zhǔn)備好byte pio_read(void)/Single byte data read.void pio_write(byte pdata)/Single byte data write.void interrupt mip_isr(void)/Up Link中斷服務(wù)程序int mip_reset_service(void)/MIP復(fù)位服務(wù)程序,完成IO口的初始化,設(shè)置中斷向量5.結(jié)論隨著產(chǎn)業(yè)技術(shù)的不斷進(jìn)步,控制網(wǎng)絡(luò)的安全日益受到重視???/p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論