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