具有用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的工業(yè)控制系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明的實施例涉及工業(yè)控制系統(tǒng)(ICS)中的通信。具體地,建立了用于ICS的安全網(wǎng)絡(luò)通信。
【背景技術(shù)】
[0002]在聯(lián)網(wǎng)的ICS環(huán)境中,ICS網(wǎng)絡(luò)的每個成員都可能需要保證所接收到的消息的管理方和/或完整性。還可能要求消息內(nèi)容的機密性。為了建立這種級別的安全,使用了公鑰/私鑰對,如使用公鑰基礎(chǔ)設(shè)施(PKI)系統(tǒng)。第三方認(rèn)證管理方通過注冊和發(fā)出證書將用于通信的設(shè)備結(jié)合。注冊管理方保證進(jìn)行將證書結(jié)合到設(shè)備。然而,該途徑通常需要復(fù)雜的基礎(chǔ)設(shè)施和管理開銷用于使用第三方的認(rèn)證和密鑰管理。
【發(fā)明內(nèi)容】
[0003]通過介紹,下面描述的優(yōu)選實施例包括用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的方法、系統(tǒng)、指令和計算機可讀介質(zhì)。ICS在連接到另一網(wǎng)絡(luò)之前在已知良好的環(huán)境中組裝。在在已知良好的環(huán)境中時,ICS的一個或多個組件與其他組件自動協(xié)商,分配安全性令牌。這些證書用來在ICS的投入使用期間在連接到任何其他設(shè)備之前并在不依賴外部提供安全性令牌的情況下在組件之間的內(nèi)部安全通信。
[0004]在第一方面,提供了一種用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的方法。投入使用工業(yè)控制系統(tǒng)。該工業(yè)控制系統(tǒng)包括在已知良好的環(huán)境中的多個聯(lián)網(wǎng)組件。在已知良好的環(huán)境中的聯(lián)網(wǎng)組件之間交換加密密鑰,而不需要下載加密密鑰到投入使用的工業(yè)控制系統(tǒng)。使用加密密鑰保護聯(lián)網(wǎng)組件之間的通信。
[0005]在第二方面,提供一種用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的系統(tǒng)。工業(yè)控制網(wǎng)絡(luò)包括一個或多個可編程邏輯控制器、一個或多個人機界面設(shè)備以及一個或多個操作員站。工程站被配置為建立工業(yè)控制網(wǎng)絡(luò)中的一個或多個可編程邏輯控制器、一個或多個人機界面設(shè)備以及一個或多個操作員站之間的對等體(peer)。對等體組的成員被配置為分配安全性令牌給工業(yè)控制網(wǎng)絡(luò)中的對等體組的對等體,以基于安全性令牌在對等體組內(nèi)的對等體之間通信,并基于安全性令牌限制對等體組外部的通信。
[0006]在第三方面,非臨時計算機可讀存儲器介質(zhì)具有存儲于其中表示可由編程的處理器執(zhí)行的用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的指令的數(shù)據(jù)。存儲器介質(zhì)包括用于以下的指令:向工業(yè)控制網(wǎng)絡(luò)的第一組件提供標(biāo)識,接收對等體和工程的身份,在不訪問工業(yè)控制網(wǎng)絡(luò)外部的情況下運行密鑰交換算法,作為密鑰交換算法的輸出而將安全性令牌分配給對等體,以及作為安全性令牌的函數(shù)根據(jù)工程進(jìn)行通信。
[0007]本發(fā)明由所附權(quán)利要求限定,這部分中的任何記載都不應(yīng)該作為對這些權(quán)利要求的限制。本發(fā)明的更多方面和優(yōu)點下面結(jié)合優(yōu)選實施例討論,并且可以在獨立地或組合地請求保護。
【附圖說明】
[0008]組件和附圖不一定成比例,而將重點放在示例本發(fā)明的原理。而且,在附圖中,相同的附圖標(biāo)記指代所有不同視圖中對應(yīng)的部分。
[0009]圖1是用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的系統(tǒng)的一個實施例的框圖。
[0010]圖2是圖1系統(tǒng)的工作控制網(wǎng)絡(luò)中的設(shè)備的一個實施例的框圖。
[0011]圖3是用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的方法的一個實施例的流程圖。
[0012]圖4是具有用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的分配的對等體的圖1系統(tǒng)的框圖。
【具體實施方式】
[0013]通過允許網(wǎng)絡(luò)設(shè)備以分布方式維持和自動協(xié)商它們自己的密鑰/證書的存儲,可以在ICS中提供安全通信。由于ICS在已知良好的環(huán)境中投入使用,所以內(nèi)部自協(xié)商在不使用外部驗證的情況下提供安全。該方法不要求任何基礎(chǔ)設(shè)施和與PKI相關(guān)聯(lián)的任何管理開銷。因此,從用戶的角度看,過程可以簡單得多。ICS的工程師可以很少涉及或不涉及建立該安全性(security)。
[0014]網(wǎng)絡(luò)提供在已知良好的環(huán)境中,如在新的或新形成的工業(yè)控制系統(tǒng)的情況下。當(dāng)投入使用完成時,在網(wǎng)絡(luò)上廣播命令以開始自協(xié)商過程。一旦該過程完成,網(wǎng)絡(luò)消息就使用加密方法以保證完整性和真實性。還可以提供機密性。然后,所有跨網(wǎng)絡(luò)設(shè)備(inter-networked devices)以足夠的(例如,相同的)信任級別工作。
[0015]圖1示出了用于安全網(wǎng)絡(luò)通信的內(nèi)部生成的系統(tǒng)。該系統(tǒng)是使用工業(yè)控制網(wǎng)絡(luò)的工業(yè)控制系統(tǒng)。該工業(yè)控制網(wǎng)絡(luò)使用現(xiàn)場設(shè)備實現(xiàn)工業(yè)過程。例如,該系統(tǒng)可以使用與現(xiàn)場設(shè)備(例如,可編程邏輯控制器或遠(yuǎn)程終端單元)的通信來監(jiān)測并控制制造過程。該系統(tǒng)提供控制功能和用于與控制和該過程的數(shù)據(jù)采集交互的用戶界面。
[0016]現(xiàn)場設(shè)備是面板、可編程邏輯控制器和/或遠(yuǎn)程終端單元。在圖1的示例中,示出了三個可編程邏輯控制器20A-C、人機界面設(shè)備22和操作員站24??梢蕴峁└嗟?、不同的或更少的現(xiàn)場設(shè)備??梢允褂糜糜诒O(jiān)測物理過程或特性和/或控制制造或生產(chǎn)的其他的控制器、監(jiān)視器或設(shè)備。
[0017]人機界面設(shè)備22是面板、個人計算機、便攜式手持控制器、安全開關(guān)、用戶輸入、顯示器設(shè)備和/或用于人與系統(tǒng)交互的其他組件。例如,人機界面設(shè)備22是用于操作員關(guān)閉機器人組件的操作的按鈕(例如,安全或緊急觸發(fā)器)。可以提供一個以上的人機界面設(shè)備22。
[0018]操作員站24是面板、計算機、顯示器、監(jiān)測器站(例如,具有或不具有相關(guān)聯(lián)輸入端的一組燈)和/或用于監(jiān)測工業(yè)控制過程的工作情況或一部分的其他設(shè)備。例如,操作員站24包括指示一個或多個可編程邏輯控制器20A-C的操作和/或人機界面設(shè)備22的任何激活的一個或多個狀態(tài)顯示器??梢燥@示傳感器和/或致動器狀態(tài)??梢蕴峁┮粋€以上的操作站24。
[0019]可編程邏輯控制器20A-C是面板、計算機、處理器、電路或用于機電、化學(xué)、氣動、液體、電氣、機械或其他過程的自動化的其他可編程設(shè)備。例如,可編程邏輯控制器20A-C控制組裝線上的機器、加熱通風(fēng)空調(diào)(HVAC)、精煉流程、混合或其他設(shè)備或過程。可編程邏輯控制器20A-C在有限時間內(nèi)響應(yīng)于輸入條件輸出。
[0020]為了工作,可編程邏輯控制器20A-C可以包括傳感器和/或致動器。這些傳感器可以是溫度、壓力、速率、電流、電壓、電感、電容、化學(xué)、流量或其他傳感器。可以使用任何數(shù)量的傳感器。致動器可以是磁的、電的、氣動的或用于修改、移動、鉆孔、焊接、混合、旋轉(zhuǎn)、改變或以其他方式驅(qū)動的其他設(shè)備。傳感器和致動器與現(xiàn)場設(shè)備通信,或是現(xiàn)場設(shè)備的一部分,以進(jìn)行控制和測量。
[0021]可編程邏輯控制器20A-C可以被配置為基于編程工作??梢詫?zhí)行的動作和/或用于何時執(zhí)行動作的設(shè)定點進(jìn)行編程??梢詫ぷ髁鞒袒蛞幌盗袆幼鬟M(jìn)行配置?;谟脩艚缑嫣幍妮斎牒?或通過網(wǎng)絡(luò)提供的工程,可編程邏輯控制器20A-C被配置為基于觸發(fā)器和/或與工業(yè)過程相關(guān)聯(lián)的報告事件控制工業(yè)過程的一個或多個方面。
[0022]工業(yè)控制網(wǎng)絡(luò)的系統(tǒng)包括一個或多個控制器站。在圖1的示例中,控制集中在工程站26??梢允褂孟到y(tǒng)的分布式控制。工程站26是監(jiān)督控制和數(shù)據(jù)采集(SCADA)系統(tǒng)或用于配置、診斷或以其他方式布置以操作工業(yè)控制網(wǎng)絡(luò)的其他組件。
[0023]圖2示出了一個或多個可編程邏輯控制器20A-C、人機界面設(shè)備22、操作員站24和工程站26的一個實施例。每個設(shè)備是相同或是不同的。例如,可編程邏輯控制器20A-C被特別構(gòu)建為承受工業(yè)環(huán)境中的應(yīng)力和壓力,和/或是計算機。人機界面設(shè)備22是具有通信功能的開關(guān)或按鈕、計算機或現(xiàn)場控制面板(field panel) ο操作員站24是現(xiàn)場控制面板或計算機。工程站26是具有用于與其他組件接口連接或通信的一個或多個卡的個人計算機。
[0024]這些組件包括處理器12、存儲器14和網(wǎng)絡(luò)接口 16。這些部件提供以保護ICS中的通信??梢蕴峁└嗟?、不同的或更少的部件。例如,存儲器14或處理器12不提供在人機界面24