概括地說,本公開內(nèi)容涉及工業(yè)控制,更具體地說,涉及用于基于完整性來控制工業(yè)企業(yè)系統(tǒng)中的端點(diǎn)(endpoint)的通信的方法和裝置。
背景技術(shù):
過程控制系統(tǒng)(如,化工,石油或者其它工業(yè)企業(yè)中使用的那些過程控制系統(tǒng))通常包括一個(gè)或多個(gè)過程控制器,該一個(gè)或多個(gè)過程控制器經(jīng)由模擬、數(shù)字或組合的模擬/數(shù)字總線來通信地耦合到一個(gè)或多個(gè)現(xiàn)場設(shè)備?,F(xiàn)場設(shè)備(其可以例如是閥、閥定位器、開關(guān)和發(fā)送器(例如,溫度、壓力和流速傳感器))在過程中執(zhí)行過程控制功能,例如,打開或關(guān)閉閥和測量過程控制參數(shù)。過程控制器接收用于指示現(xiàn)場設(shè)備所執(zhí)行的過程測量值的信號,隨后對該信息進(jìn)行處理和/或?qū)⒃撔畔鬏斀o其它控制器、工作站或者控制系統(tǒng)中的其它部件。此外,多個(gè)控制系統(tǒng)可以是較高層級企業(yè)系統(tǒng)的子系統(tǒng),其中來自這些單獨(dú)子系統(tǒng)的信息可以由監(jiān)控系統(tǒng)進(jìn)行交叉?zhèn)鬏敽?或監(jiān)視。
技術(shù)實(shí)現(xiàn)要素:
公開了用于基于完整性來控制工業(yè)企業(yè)系統(tǒng)中的端點(diǎn)的通信的方法和裝置。一種示例性裝置包括:完整性測量比較器,其用于將完整性測量值與參考值進(jìn)行比較。該完整性測量值是由工業(yè)企業(yè)系統(tǒng)的網(wǎng)絡(luò)中的端點(diǎn)基于該端點(diǎn)的狀態(tài)來生成的。參考值對應(yīng)于該端點(diǎn)的受信任狀態(tài)。該示例性裝置還包括:授權(quán)控制器,其用于基于完整性測量值與參考值的比較結(jié)果,來啟用該端點(diǎn)在該網(wǎng)絡(luò)上的通信訪問。
一種示例性方法包括:從工業(yè)企業(yè)系統(tǒng)的網(wǎng)絡(luò)中的端點(diǎn)接收完整性測量值。該完整性測量值是由端點(diǎn)基于該端點(diǎn)的狀態(tài)來生成的。該示例性方 法還包括:將該完整性測量值與和該端點(diǎn)的受信任狀態(tài)相對應(yīng)的參考值進(jìn)行比較。該示例性方法還包括:基于比較結(jié)果,來啟用該端點(diǎn)對于該網(wǎng)絡(luò)的通信訪問。
一種示例性制品包括指令,當(dāng)所述指令被執(zhí)行時(shí),使得機(jī)器至少從工業(yè)企業(yè)系統(tǒng)的網(wǎng)絡(luò)中的端點(diǎn)接收完整性測量值。該完整性測量值是由端點(diǎn)基于該端點(diǎn)的狀態(tài)來生成的。所述指令還使得所述機(jī)器將該完整性測量值與和該端點(diǎn)的受信任狀態(tài)相對應(yīng)的參考值進(jìn)行比較。所述指令還使得所述機(jī)器基于比較結(jié)果來啟用該端點(diǎn)對于該網(wǎng)絡(luò)的通信訪問。
附圖說明
圖1是工業(yè)企業(yè)系統(tǒng)中的組件的示例性層次結(jié)構(gòu)的框圖。
圖2是與圖1的示例性層次結(jié)構(gòu)的控制系統(tǒng)層級相對應(yīng)的示例性控制系統(tǒng)的框圖。
圖3是與圖1的示例性層次結(jié)構(gòu)的監(jiān)控系統(tǒng)層級相對應(yīng)的示例性監(jiān)控系統(tǒng)的框圖。
圖4示出了實(shí)現(xiàn)圖2的示例性配置模塊的示例性方式。
圖5示出了實(shí)現(xiàn)圖2和/或圖3的示例性完整性測量模塊的示例性方式。
圖6示出了實(shí)現(xiàn)圖2和/或圖3的示例性系統(tǒng)完整性監(jiān)測的示例性方式。
圖7是表示可以執(zhí)行,以實(shí)現(xiàn)圖2和/或圖4的示例性配置模塊的示例性方法的流程圖。
圖8-圖10是表示可以執(zhí)行,以實(shí)現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊的示例性方法的流程圖。
圖11-圖16是表示可以執(zhí)行,以實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測的示例性方法的流程圖。
圖17是可以被使用和/或編程,以執(zhí)行圖7的示例性方法和/或(更一般地說)實(shí)現(xiàn)圖2和/或圖4的示例性配置模塊的示例性處理器平臺的示意性視圖。
圖18是可以被使用和/或編程,以執(zhí)行圖8-圖10的示例性方法和/或(更一般地說)實(shí)現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊的示例性處理器平臺的示意性視圖。
圖19是可以被使用和/或編程,以執(zhí)行圖11-圖16的示例性方法和/或(更一般地說)實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測的示例性處理器平臺的示意性視圖。
具體實(shí)施方式
如本文所使用的,工業(yè)企業(yè)系統(tǒng)指代原始材料和相關(guān)聯(lián)的物理過程、與這些過程進(jìn)行交互的現(xiàn)場設(shè)備、控制這些過程的相應(yīng)控制系統(tǒng)、以及工業(yè)企業(yè)的較高級別管理系統(tǒng)。因此,工業(yè)企業(yè)系統(tǒng)是通常經(jīng)由相應(yīng)的網(wǎng)絡(luò)進(jìn)行互連的有層次結(jié)構(gòu)的相關(guān)系統(tǒng)(即,存在多個(gè)層級)。如本文所使用的,工業(yè)系統(tǒng)計(jì)算端點(diǎn)(或者端點(diǎn))指代在工業(yè)企業(yè)系統(tǒng)中充當(dāng)網(wǎng)絡(luò)上的節(jié)點(diǎn)(位于任何層級)的任何計(jì)算組件,以便與其它這種組件進(jìn)行通信。因此,如本文所使用的,端點(diǎn)包括單獨(dú)的計(jì)算設(shè)備(例如,現(xiàn)場設(shè)備、控制器、I/O設(shè)備、用于控制器和/或I/O設(shè)備的自包含插件卡、工作站、服務(wù)器等等),以及從屬于某個(gè)較高層級系統(tǒng)(例如,更大控制系統(tǒng)中的模塊化控制系統(tǒng)、監(jiān)控系統(tǒng)中的控制系統(tǒng)等等)而操作成一個(gè)綜合整體的系統(tǒng)或者這些設(shè)備組合。通常,工業(yè)企業(yè)系統(tǒng)中的端點(diǎn)基于其配置信息(對于具備更多能力的端點(diǎn)來說)或者其物理連接(對于具備更少能力的端點(diǎn)來說)來彼此之間建立通信。在計(jì)算機(jī)和數(shù)據(jù)安全的背景下,這些端點(diǎn)之間的通信的建立是基于某種形式的隱含信任,這是由于沒有任何端點(diǎn)真實(shí)地知道來自其它端點(diǎn)的通信是否是安全和可靠的,或者已經(jīng)被某種安全漏洞或其它故障進(jìn)行了損害。更具體而言,在端點(diǎn)之間建立通信以操作工業(yè)企業(yè),取決于每一個(gè)端點(diǎn)信任其它端點(diǎn)是:(a)合法的(即,其它端點(diǎn)是如它所說的);(b)運(yùn)行有完整的完整性(即,其它端點(diǎn)正常工作,發(fā)送的通信以及針對這些通信所產(chǎn)生的數(shù)據(jù)沒有受到損害)。
一些已知的工業(yè)系統(tǒng)端點(diǎn)將通信的安全和/或可靠性的信任基于:識別與每一個(gè)端點(diǎn)相關(guān)聯(lián)的信息(例如,序列號、硬件地址或者IP地址)以及進(jìn)行通信所使用的通信協(xié)議的知識。雖然這用來對特定端點(diǎn)的合法性進(jìn)行確認(rèn)(例如,端點(diǎn)是否是如它所說的),但這些方法并不足以提供對于每一個(gè)端點(diǎn)的完整性的任何可靠指示(例如,端點(diǎn)是如所期望的進(jìn)行操作,還是其已經(jīng)被損害了,從而其操作的可靠性將成問題)。在過去,很大程度上 基于在通信中所涉及的計(jì)算端點(diǎn)的制造商對于產(chǎn)品質(zhì)量的保證,來假定基于完整性的信任。也就是說,制造商通常遵循用于規(guī)定質(zhì)量保證過程的標(biāo)準(zhǔn)(例如,國際標(biāo)準(zhǔn)化組織(ISO)9000),來開發(fā)和測試軟件、固件和/或硬件。結(jié)果,某種程度地信任這些制造商所制造的設(shè)備(例如,端點(diǎn))將按照它們所設(shè)計(jì)的進(jìn)行工作(即,具有值得信任的完整性)。
雖然制造商的質(zhì)量保證提供關(guān)于這些制造商所制造的計(jì)算設(shè)備的完整性的某種程度的信任,但這樣的保證隨著時(shí)間將變得具有更少權(quán)重,這是由于在該設(shè)備離開制造商的控制之后,可能會存在安全漏洞或其它發(fā)生故障的原因。例如,在設(shè)備從制造商處運(yùn)輸和發(fā)送給終端用戶的時(shí)間之間,存在計(jì)算設(shè)備被篡改的可能性。此外,即使終端用戶收到計(jì)算設(shè)備,也存在該設(shè)備被惡意代碼進(jìn)行黑客攻擊和改變的可能性。雖然通常設(shè)置安全措施來減少和/或檢測這些攻擊,但如果沒有識別特定的攻擊,則惡意軟件可能影響計(jì)算設(shè)備的操作。結(jié)果,可能錯(cuò)誤地信任該設(shè)備的完整性和/或從該設(shè)備發(fā)送的通信。因此,需要在新獲取、配置端點(diǎn)和使其進(jìn)行操作時(shí),對端點(diǎn)的完整性進(jìn)行驗(yàn)證,以及隨時(shí)地對工業(yè)企業(yè)系統(tǒng)中的端點(diǎn)的完整性進(jìn)行監(jiān)測,以檢測對于這些端點(diǎn)的完整性的任何潛在威脅或者其缺陷,并基于對于來自這些端點(diǎn)的通信所給出的信任程度的任何相應(yīng)改變,來實(shí)現(xiàn)適當(dāng)?shù)捻憫?yīng)。
本文所公開的例子通過下面的方式來克服上面所標(biāo)識的問題:在允許網(wǎng)絡(luò)上的端點(diǎn)在相應(yīng)的網(wǎng)絡(luò)上進(jìn)行通信之前,使這些端點(diǎn)提供用于指示它們當(dāng)前狀態(tài)的某些方面的計(jì)算值或測量值,以便與和該端點(diǎn)處于受信任狀態(tài)(即,完整性的狀態(tài))時(shí)的狀態(tài)相對應(yīng)的已知良好值進(jìn)行比較。本文將端點(diǎn)關(guān)于其自己狀態(tài)所生成的測量值稱為完整性測量值。在一些例子中,通過計(jì)算端點(diǎn)的各個(gè)方面的一個(gè)或多個(gè)校驗(yàn)和(其可以提供該端點(diǎn)的操作、安全和/或可靠性的指示),來生成完整性測量值。因此,在一些例子中,本文將完整性測量值描述成是計(jì)算得到的。也就是說,將與端點(diǎn)的各個(gè)方面相關(guān)聯(lián)的數(shù)據(jù)傳送到密碼校驗(yàn)和算法,以產(chǎn)生可以用作完整性測量值或者用于構(gòu)建完整性測量值的值(連同針對該端點(diǎn)的其它方面所計(jì)算的校驗(yàn)和)。在一些例子中,基于端點(diǎn)的軟件棧來生成完整性測量值。在一些例子中,基于控制系統(tǒng)中的端點(diǎn)的配置來生成完整性測量值。在一些例子中, 基于與端點(diǎn)相關(guān)聯(lián)的外圍設(shè)備,來生成完整性測量值。在一些例子中,通過與端點(diǎn)相關(guān)聯(lián)的獨(dú)立的安全芯片來生成完整性測量值。此外,在一些例子中,在端點(diǎn)的啟動時(shí)間期間,生成完整性測量值。在其它例子中,在端點(diǎn)的運(yùn)行時(shí)間期間,生成完整性測量值。在一些例子中,當(dāng)端點(diǎn)對應(yīng)于多個(gè)計(jì)算設(shè)備的子系統(tǒng)(例如,端點(diǎn))時(shí),完整性測量值是與該子系統(tǒng)中的每一個(gè)單獨(dú)設(shè)備相關(guān)聯(lián)的多個(gè)較低層級完整性測量值的組合。
可以將端點(diǎn)所生成的每一個(gè)完整性測量值與已知對應(yīng)于該端點(diǎn)的受信任狀態(tài)的相應(yīng)參考值進(jìn)行比較。在一些例子中,這些參考值是基于第一次獲得、安裝和/或配置該端點(diǎn)時(shí)所生成的完整性測量值。在一些例子中,這些參考值是基于該端點(diǎn)的制造商所提供的值來規(guī)定的。當(dāng)完整性測量值和參考值的比較結(jié)果指示匹配時(shí),下游端點(diǎn)確認(rèn)成處于受信任狀態(tài)。也就是說,該端點(diǎn)的軟件/固件、硬件/外圍設(shè)備、配置和/或其它測量方面是預(yù)期的,使得來自該端點(diǎn)的通信可以被信任和/或依賴。在這些情形下,可以基于其驗(yàn)證的完整性,準(zhǔn)許該端點(diǎn)以完全通信來進(jìn)入相應(yīng)的網(wǎng)絡(luò)。但是,如果完整性測量值與相應(yīng)的參考值不匹配,則該端點(diǎn)的完整性變得可疑,故可以實(shí)現(xiàn)適當(dāng)?shù)捻憫?yīng)。在一些這種例子中,可以限制該端點(diǎn)的通信訪問的類型和/或程度,并將其規(guī)定成比完全通信訪問差一些。在一些例子中,向端點(diǎn)提供的通信訪問的程度或類型,是基于上游端點(diǎn)所提供的授權(quán)信息來建立的,其中上游端點(diǎn)用于生成或規(guī)定在完成端點(diǎn)之間的通信時(shí)使用的秘密值和/或公開值或密鑰。可以針對添加到網(wǎng)絡(luò)的新端點(diǎn),來實(shí)現(xiàn)這種基于完整性的驗(yàn)證過程(以確保該端點(diǎn)在該網(wǎng)絡(luò)上進(jìn)行注冊和/或配置之前,其是合法的,并如所期望地進(jìn)行操作),和/或這種基于完整性的驗(yàn)證過程可以應(yīng)用于已經(jīng)在操作的端點(diǎn)(用于驗(yàn)證先前配置的端點(diǎn)是否以某種方式受到損害,將其完整性置于疑問之中)。
圖1是典型的工業(yè)企業(yè)系統(tǒng)中的層級102、104、106、108、110、112的示例性層次結(jié)構(gòu)100的框圖。圖1的示例性層次結(jié)構(gòu)遵循ISA95(國際自動化協(xié)會95)所概述的Purdue參考模型。在最低層級,層次結(jié)構(gòu)100開始于制造/處理企業(yè)的物理過程102。例如,工業(yè)企業(yè)系統(tǒng)中的物理過程102對應(yīng)于正在進(jìn)行處理的材料和/或產(chǎn)品,以及管道、罐體、加熱器、輸送機(jī)和/或直接與正在進(jìn)行處理的材料和/或產(chǎn)品進(jìn)行交互的其它設(shè)備資產(chǎn)。該層 次結(jié)構(gòu)中的下一個(gè)上級層級是設(shè)備層級104。設(shè)備層級104對應(yīng)于對該物理過程進(jìn)行感測、監(jiān)測和/或操縱的智能和/或非智能現(xiàn)場設(shè)備。例如,設(shè)備層級104包括閥、致動器、溫度傳感器、壓力傳感器等等。
此外,設(shè)備層級104可以包括與這些現(xiàn)場設(shè)備進(jìn)行交互和/或?qū)@些現(xiàn)場設(shè)備進(jìn)行控制的控制器和/或I/O設(shè)備。這些控制器和I/O設(shè)備充當(dāng)在設(shè)備層級104與層次結(jié)構(gòu)100中緊接著之上的控制系統(tǒng)層級106之間的接口??刂葡到y(tǒng)層級106用于直接對這些現(xiàn)場設(shè)備進(jìn)行監(jiān)控和控制,從而對物理過程進(jìn)行控制。位于控制系統(tǒng)層級106的控制系統(tǒng)可以是分布式控制系統(tǒng)(DCS)、監(jiān)控和數(shù)據(jù)采集(SCADA)系統(tǒng)和/或其它過程控制系統(tǒng)。通常,控制系統(tǒng)層級106包括與和設(shè)備層級104相關(guān)聯(lián)的現(xiàn)場設(shè)備直接連接的一個(gè)或多個(gè)控制器和/或I/O設(shè)備。此外,控制系統(tǒng)層級106通常包括用于提供人機(jī)界面(HMI)的一個(gè)或多個(gè)服務(wù)器和/或工作站,利用HMI,操作員可以配置、監(jiān)測和/或調(diào)整物理過程的控制??梢越?jīng)由該控制系統(tǒng)的網(wǎng)絡(luò)(本文將其稱為控制系統(tǒng)的控制網(wǎng)絡(luò)),連接特定的控制系統(tǒng)中的控制器、I/O設(shè)備、工作站和/或服務(wù)器中的每一個(gè)。
監(jiān)控系統(tǒng)層級108是層次結(jié)構(gòu)100中的下一個(gè)上級層級,其表示對企業(yè)的制造/處理進(jìn)行監(jiān)督的操作。因此,監(jiān)控系統(tǒng)層級108通常包括子系統(tǒng)(例如,對應(yīng)于與控制系統(tǒng)層級106相關(guān)聯(lián)的一個(gè)或多個(gè)控制系統(tǒng))和一個(gè)或多個(gè)工作站和/或服務(wù)器的系統(tǒng),該一個(gè)或多個(gè)工作站和/或服務(wù)器用于與這些子系統(tǒng)進(jìn)行交互。本文將這種系統(tǒng)稱為監(jiān)控系統(tǒng)。在一些例子中,監(jiān)控系統(tǒng)可以對企業(yè)中的特定工廠的制造/過程操作進(jìn)行監(jiān)督??梢越?jīng)由用于該監(jiān)控系統(tǒng)的網(wǎng)絡(luò)(本文將其稱為工廠網(wǎng)絡(luò)或者監(jiān)控系統(tǒng)的監(jiān)控網(wǎng)絡(luò)),來連接工作站、服務(wù)器和其它子系統(tǒng)(例如,與控制系統(tǒng)層級106相關(guān)聯(lián)的不同控制系統(tǒng))中的每一個(gè)。
在監(jiān)控系統(tǒng)層級108之上是商業(yè)系統(tǒng)層級110,商業(yè)系統(tǒng)層級110對應(yīng)于用于對企業(yè)的所有方面進(jìn)行指導(dǎo)和監(jiān)督的與商業(yè)有關(guān)的活動和決策。所示出的例子的層次結(jié)構(gòu)100中的最高層級對應(yīng)于互聯(lián)網(wǎng)112。雖然互聯(lián)網(wǎng)在技術(shù)上不是特定企業(yè)中的一個(gè)層級,但通?;诮?jīng)由互聯(lián)網(wǎng)所完成的通信來實(shí)現(xiàn)企業(yè)。因此,為了便于在討論計(jì)算機(jī)安全和完整性時(shí)進(jìn)行解釋起見,表示了互聯(lián)網(wǎng)112(由于其涉及工業(yè)企業(yè)系統(tǒng))。
沿著圖1的示例性層次結(jié)構(gòu)100的長度延伸是完整性尺度114,其表示在該層次結(jié)構(gòu)100中的各個(gè)層級的計(jì)算機(jī)端點(diǎn)的完整性或值得信任的重要性,以完成企業(yè)的預(yù)期目的。如所示出的例子中所示,在更靠近物理過程的層次結(jié)構(gòu)層級,需要更高程度的完整性,而越遠(yuǎn)離實(shí)現(xiàn)計(jì)算設(shè)備的物理過程,完整性變得不那么重要。例如,如果位于企業(yè)的很低層級的操作(其對應(yīng)于物理過程102)不能被信任成如所期望地進(jìn)行操作,則不能對于正在進(jìn)行處理和/或制造的最終產(chǎn)品產(chǎn)生信任,這是首先建立該企業(yè)的主要目的。但是,作為物理過程102的一部分而處理的物理設(shè)備資產(chǎn)和材料,通常對應(yīng)于管道、罐體、料斗等等以及相關(guān)聯(lián)的原始材料。因此,雖然物理過程102的正確操作對于工業(yè)企業(yè)系統(tǒng)來說是關(guān)鍵的,但從計(jì)算機(jī)和數(shù)據(jù)完整性的觀點(diǎn)來看,最重要的層級是設(shè)備層級104。設(shè)備層級104是最重要的(即,相應(yīng)設(shè)備(例如,現(xiàn)場設(shè)備、控制器、I/O設(shè)備等等)的完整性是最關(guān)鍵的),這是由于其對應(yīng)于最接近物理過程102并與物理過程102進(jìn)行直接交互的計(jì)算設(shè)備或端點(diǎn)。
對于完整性目的而言,層次結(jié)構(gòu)100中的下一個(gè)最關(guān)鍵層級是控制系統(tǒng)層級106,這是由于控制系統(tǒng)規(guī)定在設(shè)備層級104的控制器、I/O設(shè)備和現(xiàn)場設(shè)備的配置和實(shí)現(xiàn)。在監(jiān)控系統(tǒng)層級108處進(jìn)行的決定,通常并不直接地影響物理過程,使得該層級就完整性而言并不那么重要。隨著遠(yuǎn)離物理過程102的每一個(gè)連續(xù)層級所需要的完整性的程度持續(xù)地降低,直到達(dá)到互聯(lián)網(wǎng)為止,其中在互聯(lián)網(wǎng)處,互聯(lián)網(wǎng)是不重要的或者至少是不能預(yù)期的,這是由于互聯(lián)網(wǎng)112是開放的網(wǎng)絡(luò),實(shí)質(zhì)上任何人都可以連接到該網(wǎng)絡(luò),并且任何人都可以通過該網(wǎng)絡(luò)進(jìn)行通信。為了確保和維持在層次結(jié)構(gòu)100中的較低層級實(shí)現(xiàn)的端點(diǎn)的完整性,同時(shí)啟用這些層級之間的通信,對于處于層次結(jié)構(gòu)100中的較低層級的端點(diǎn)和處于較高層級的端點(diǎn)之間的通信施加一些限制。具體而言,可以嚴(yán)格地控制通信訪問的本質(zhì)或類型以及通信的范圍(例如,第一端點(diǎn)通信到的其它端點(diǎn)的數(shù)量和類型),以減小特定的端點(diǎn)變得被損害(例如,由于安全漏洞而丟失完整性)的機(jī)率。同樣,對通信進(jìn)行限制和專門控制,以降低系統(tǒng)中的潛在受損害端點(diǎn)影響其它端點(diǎn)的可能性。
除了對端點(diǎn)之間的通信進(jìn)行控制,以保護(hù)端點(diǎn)和降低端點(diǎn)被損害的可 能性之外,如下面所更全面描述的,在一些例子中,在不同的時(shí)間點(diǎn)對端點(diǎn)的完整性或值得信賴性進(jìn)行測試,以專門地識別被損害的任何端點(diǎn),從而通過限制和/或完全地拒絕來自這些端點(diǎn)的通信來進(jìn)行主動地響應(yīng)。簡而言之,在一些例子中,示例性層次結(jié)構(gòu)100中的給定層級里的端點(diǎn)請求注冊和/或準(zhǔn)許進(jìn)入該層次結(jié)構(gòu)100中的上一級的網(wǎng)絡(luò)。為了被準(zhǔn)許使得啟用和/或允許完全通信訪問,在一些例子中,每一個(gè)端點(diǎn)所提供的用于指示其當(dāng)前狀態(tài)的測量值,需要與該端點(diǎn)處于已知的受信任狀態(tài)(例如,完整性的狀態(tài))時(shí)所對應(yīng)的參考值相匹配。如果測量值與相應(yīng)的參考值不匹配,則完全地拒絕通信許可,或者使該端點(diǎn)處于補(bǔ)救模式,其中在此模式下,顯著地限制通信的本質(zhì)和/或范圍(例如,限制于軟件/固件更新)。在本文所公開的一些例子中,在對處于層次結(jié)構(gòu)100的不同層級的端點(diǎn)之間的通信進(jìn)行授權(quán)之前,實(shí)現(xiàn)基于完整性的測量。具體而言,在使較低層次結(jié)構(gòu)層級的端點(diǎn)與較高層次結(jié)構(gòu)層級進(jìn)行通信之前,針對完整性,對較低層次結(jié)構(gòu)層級的端點(diǎn)進(jìn)行測試。例如,如圖1的箭頭116所表示的,在處于設(shè)備層級104的現(xiàn)場設(shè)備或者相應(yīng)控制器和/或I/O設(shè)備能夠在處于控制系統(tǒng)層級106的控制系統(tǒng)的控制網(wǎng)絡(luò)上進(jìn)行通信之前,該現(xiàn)場設(shè)備或者相應(yīng)控制器和/或I/O設(shè)備可能需要提供其當(dāng)前狀態(tài)的完整性測量值(其中該完整性測量值與相應(yīng)的參考值相匹配)。同樣,如圖1的箭頭118所表示的,在處于控制系統(tǒng)層級106的控制系統(tǒng)能夠在處于監(jiān)控系統(tǒng)層級108的監(jiān)控系統(tǒng)的監(jiān)控網(wǎng)絡(luò)上進(jìn)行通信之前,該控制系統(tǒng)需要提供其當(dāng)前狀態(tài)的完整性測量值(其中該完整性測量值與相應(yīng)的參考值相匹配)。這種較高層級組件(此處,完整性是不那么重要的)對于較低層級組件(此處,完整性是關(guān)鍵的)的驗(yàn)證過程,用來確保最靠近物理過程102的端點(diǎn)如所預(yù)期地進(jìn)行操作(即,具有完整性)。
圖2是與圖1的層次結(jié)構(gòu)100中的控制系統(tǒng)層級106相對應(yīng)的示例性控制系統(tǒng)200的示意性視圖。圖2的示例性控制系統(tǒng)200包括與對應(yīng)于圖1的層次結(jié)構(gòu)100的設(shè)備層級104的現(xiàn)場設(shè)備206、208、210、212、214進(jìn)行連接(interface)的一個(gè)或多個(gè)過程控制器202和一個(gè)或多個(gè)I/O設(shè)備204。另外,圖2的示例性控制系統(tǒng)200包括一個(gè)或多個(gè)服務(wù)器216和一個(gè)或多個(gè)操作者站、應(yīng)用站和/或其它工作站(本文統(tǒng)稱為工作站)。在所示出的例 子中,控制系統(tǒng)200中的一個(gè)工作站指定成或者充當(dāng)配置工作站218,而另一個(gè)工作站充當(dāng)主工作站220(其它工作站用附圖標(biāo)記222來表示)。在所示出的例子中,示例性控制器202、示例性I/O設(shè)備204、示例性服務(wù)器216和示例性工作站218、220、222經(jīng)由通信總線和/或局域網(wǎng)224(通常,本文稱為控制系統(tǒng)200的控制網(wǎng)絡(luò))來通信地耦合。
示例性配置工作站218包括配置模塊(CM)226,以基于工程師、操作員和/或其它人員所提供的配置數(shù)據(jù)(其規(guī)定該控制系統(tǒng)200中的設(shè)備(例如,端點(diǎn))的實(shí)現(xiàn)中所期望的所有參數(shù)和邏輯)來生成配置文件。一旦生成了配置文件,則配置工作站218向控制系統(tǒng)200中的控制網(wǎng)絡(luò)224的每一個(gè)端點(diǎn)發(fā)送該配置文件,從而對每一個(gè)端點(diǎn)進(jìn)行配置。
示例性主工作站220包括系統(tǒng)完整性監(jiān)測器(SIM)228,以監(jiān)督、授權(quán)和/或控制每一個(gè)端點(diǎn)在控制系統(tǒng)200的控制網(wǎng)絡(luò)224上的通信訪問。也就是說,如下面所更全面描述的,圖2的示例性主工作站220的SIM 228對控制系統(tǒng)200中的其它端點(diǎn)的完整性進(jìn)行確認(rèn)和/或驗(yàn)證,以允許通信訪問或者限制這種訪問。具體而言,在一些例子中,SIM 228從每一個(gè)端點(diǎn)接收由與各個(gè)端點(diǎn)相關(guān)聯(lián)的完整性測量模塊(IMM)230所生成的一個(gè)或多個(gè)完整性測量值。由于完整性測量值是在SIM 228處接收的,因此SIM 228將這些完整性測量值與參考值數(shù)據(jù)庫進(jìn)行比較。如果這些測量值與參考值相匹配,則準(zhǔn)許相應(yīng)的端點(diǎn)通過控制網(wǎng)絡(luò)224,進(jìn)入與其它端點(diǎn)的完全通信。另一方面,如果這些完整性測量值與參考值不匹配,則SIM 228可以實(shí)現(xiàn)補(bǔ)救措施,以限制或者拒絕針對控制網(wǎng)絡(luò)224的通信的訪問。在一些例子中,主工作站220的SIM 228對控制網(wǎng)絡(luò)224上的其它端點(diǎn)的完整性進(jìn)行監(jiān)測,以檢測任何改變并進(jìn)行相應(yīng)地響應(yīng)。雖然將主工作站220和配置工作站218表示成單獨(dú)的工作站,但在一些例子中,單一的工作站可以服務(wù)兩個(gè)功能(例如,實(shí)現(xiàn)CM 226和SIM 228二者)。
可以使用任何期望的通信介質(zhì)和協(xié)議來實(shí)現(xiàn)圖2的示例性控制網(wǎng)絡(luò)224。例如,示例性控制網(wǎng)絡(luò)224可以是基于硬連線和/或無線以太網(wǎng)通信方案。但是,可以使用任何其它適當(dāng)?shù)耐ㄐ沤橘|(zhì)和/或協(xié)議。
圖2的示例性I/O設(shè)備204經(jīng)由數(shù)字?jǐn)?shù)據(jù)總線232來耦合到多個(gè)智能現(xiàn)場設(shè)備210、212、214。智能現(xiàn)場設(shè)備210、212、214可以是遵循現(xiàn)場總線 的閥、致動器、傳感器等等,在該情況下,智能現(xiàn)場設(shè)備210、212、214使用公知的Foundation Fieldbus協(xié)議,經(jīng)由數(shù)字?jǐn)?shù)據(jù)總線232進(jìn)行通信。當(dāng)然,可以替代地使用其它類型的智能現(xiàn)場設(shè)備和通信協(xié)議。例如,智能現(xiàn)場設(shè)備210、212、214可以是使用公知的Profibus和HART通信協(xié)議,經(jīng)由數(shù)據(jù)總線232進(jìn)行通信的遵循Profibus和/或HART的設(shè)備。除了示例性智能現(xiàn)場設(shè)備210、212、214之外,一個(gè)或多個(gè)非智能現(xiàn)場設(shè)備206、208可以通信地耦合到示例性控制器202。例如,圖2的示例性非智能現(xiàn)場設(shè)備206、208可以是經(jīng)由相應(yīng)的硬連線鏈路,與控制器202進(jìn)行通信的傳統(tǒng)的4-20毫安(mA)或0-10伏直流(VDC)設(shè)備。通常,將現(xiàn)場設(shè)備206、208、210、212、214設(shè)計(jì)為具有特定于實(shí)現(xiàn)它們的指定功能的、相對有限的處理能力。因此,現(xiàn)場設(shè)備可能不實(shí)現(xiàn)IMM 230,其中IMM 230生成用于指示該現(xiàn)場設(shè)備的當(dāng)前狀態(tài)的完整性測量值。但是,在一些例子中,現(xiàn)場設(shè)備206、208、210、212、214中的一個(gè)或多個(gè)可以以與上面所描述的其它設(shè)備相同的方式來實(shí)現(xiàn)IMM 230。在一些這種例子中,相應(yīng)的控制器202或I/O設(shè)備204可以實(shí)現(xiàn)單獨(dú)的SIM,該單獨(dú)的SIM用于對現(xiàn)場設(shè)備206、208、210、212、214和相應(yīng)的控制器202和/或I/O設(shè)備204之間的通信進(jìn)行管理。在其它這種例子中,主工作站220所實(shí)現(xiàn)的SIM 228可以對這些現(xiàn)場設(shè)備的通信訪問進(jìn)行控制。
雖然圖2示出了可以在其中有利地使用下面進(jìn)一步詳細(xì)描述的用于基于完整性測量來控制通信準(zhǔn)許的方法和裝置的示例性控制系統(tǒng)200,但本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)容易地理解,本文所公開的教導(dǎo)內(nèi)容可以(如果期望的話)有利地用于與圖2所示出的例子相比具有更多或者更小復(fù)雜度(例如,具有一個(gè)以上的控制器,跨越一個(gè)以上的地理位置等等)的其它控制系統(tǒng)。
圖3是與圖1的層次結(jié)構(gòu)100中的監(jiān)控系統(tǒng)層級108相對應(yīng)的示例性監(jiān)控系統(tǒng)300的示意性視圖。圖3的示例性監(jiān)控系統(tǒng)300包括圖2的控制系統(tǒng)200以及與圖1的層次結(jié)構(gòu)100的控制系統(tǒng)層級106相對應(yīng)的另一個(gè)控制系統(tǒng)302。另外,圖3的示例性監(jiān)控系統(tǒng)300包括一個(gè)或多個(gè)服務(wù)器304和一個(gè)或多個(gè)工作站306、308。在所示出的例子中,控制系統(tǒng)200、302、服務(wù)器304和工作站306、308經(jīng)由通信總線和/或局域網(wǎng)310(本文通常稱 為用于監(jiān)控系統(tǒng)300的監(jiān)控網(wǎng)絡(luò))來通信地耦合。
在所示出的例子中,工作站306中的一個(gè)操作成主工作站,以與圖2的控制系統(tǒng)200中的主工作站210相同或相類似的方式,對連接到監(jiān)控網(wǎng)絡(luò)310的其它端點(diǎn)(例如,各個(gè)服務(wù)器304和工作站308、或者作為監(jiān)控系統(tǒng)300的子系統(tǒng)的控制系統(tǒng)200、302)的通信訪問進(jìn)行監(jiān)督和/或控制。也就是說,在所示出的例子中,主工作站306提供有SIM 228,以接收用于指示其它端點(diǎn)的當(dāng)前狀態(tài)的完整性測量值,并將這些測量值與參考值進(jìn)行比較。在所示出的例子中,與服務(wù)器304和/或工作站308相關(guān)聯(lián)的完整性測量值,經(jīng)由服務(wù)器304和工作站308中的每一個(gè)中的相應(yīng)IMM來生成。雖然可以將每一個(gè)控制系統(tǒng)200、302視作為一個(gè)端點(diǎn)(從監(jiān)控系統(tǒng)300的觀點(diǎn)來看),但由于控制系統(tǒng)200、302表示多個(gè)設(shè)備的子系統(tǒng),沒有任何單一IMM可以生成用于由主工作站306的SIM 228進(jìn)行分析的完整性測量值。因此,在一些例子中,每一個(gè)控制系統(tǒng)中的主工作站306(例如,圖2的控制系統(tǒng)200的主工作站220)的SIM 228生成用于指示該整個(gè)子系統(tǒng)的狀態(tài)的一個(gè)或多個(gè)完整性測量值,以便提供給監(jiān)控系統(tǒng)300的主工作站306的SIM 228。在一些例子中,針對整個(gè)控制系統(tǒng)(作為監(jiān)控網(wǎng)絡(luò)中的一個(gè)端點(diǎn))的完整性測量值是基于:從該控制系統(tǒng)的控制網(wǎng)絡(luò)的每一個(gè)端點(diǎn)上實(shí)現(xiàn)的IMM 230中的每一個(gè)IMM 230所獲得的完整性測量值的組合。
雖然圖3示出了可以有利地使用本文所公開的教導(dǎo)內(nèi)容的示例性監(jiān)控系統(tǒng)300,但本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)容易理解,本文所公開的教導(dǎo)內(nèi)容可以(如果期望的話)有利地用于與圖3所示出的例子相比具有更多或者更小復(fù)雜度(例如,具有一個(gè)以上的控制系統(tǒng),跨越一個(gè)以上的地理位置等等)的其它系統(tǒng)。
圖4示出了實(shí)現(xiàn)圖2的示例性配置模塊(CM)226的示例性方式。在所示出的例子中,CM 226包括示例性用戶接口402、示例性配置文件生成器404、示例性參考值生成器406、示例性配置數(shù)據(jù)庫408和示例性通信接口410。
圖4的示例性CM 226提供有示例性用戶接口402,以實(shí)現(xiàn)CM 226和配置工程師和/或其它用戶之間的交互。具體而言,通過用戶接口402,系統(tǒng)工程師可以分配參數(shù),規(guī)定控制邏輯,指定IP地址,指定用于物理卡的 名稱和/或提供為了對控制系統(tǒng)200中的每一個(gè)端點(diǎn)進(jìn)行配置所需要的任何其它有關(guān)的配置數(shù)據(jù)。所示出的例子的示例性配置文件生成器404采用所輸入的配置數(shù)據(jù),針對該配置數(shù)據(jù)將應(yīng)用于的項(xiàng)目或者控制系統(tǒng)來生成配置文件。在一些例子中,將該配置數(shù)據(jù)和所獲得的配置文件存儲在示例性配置數(shù)據(jù)庫408中。
在圖4所示出的例子中,CM 226提供有示例性參考值生成器406,以基于配置文件,針對將進(jìn)行完整性監(jiān)測的控制系統(tǒng)200中的每一個(gè)端點(diǎn)(例如,完整性測量模塊(IMM)),來計(jì)算配置參考值。也就是說,基于圖2的所示出的例子,CM 226的示例性配置參考值生成器406生成用于控制器202、I/O設(shè)備204、服務(wù)器216和工作站218、220、222中的每一個(gè)的參考值。在一些例子中,將參考值生成或者計(jì)算為與感興趣的特定端點(diǎn)相關(guān)聯(lián)的配置數(shù)據(jù)的密碼校驗(yàn)和。在這些例子中,所計(jì)算的這些校驗(yàn)和的值對應(yīng)于每一個(gè)端點(diǎn)的適當(dāng)配置,這是由于這些校驗(yàn)和是基于(系統(tǒng)工程師所開發(fā)的)原始的配置文件來計(jì)算的。因此,可以將這些校驗(yàn)和值(完整性測量值)使用成用于在稍后的時(shí)間點(diǎn),對這些端點(diǎn)的實(shí)際配置進(jìn)行比較的基線或者基準(zhǔn)。因此,當(dāng)特定的端點(diǎn)在稍后的時(shí)間點(diǎn),生成其自己的配置的完整性測量值(計(jì)算校驗(yàn)和)時(shí),所生成的完整性測量值應(yīng)當(dāng)與參考值相匹配。如果稍后生成的完整性測量值與相應(yīng)的參考值不匹配時(shí),存在著該端點(diǎn)的某些事情發(fā)生錯(cuò)誤(損害了其完整性)的可能性,這是由于其配置的狀態(tài)不是所預(yù)期的或者原始規(guī)定的。另外地或替代地,參考值生成器406可以基于配置數(shù)據(jù),計(jì)算與各個(gè)端點(diǎn)相關(guān)聯(lián)的硬件(外圍設(shè)備)的狀態(tài)相對應(yīng)的參考規(guī)則。
在圖4所示出的例子中,CM 226提供有示例性通信接口402,以實(shí)現(xiàn)CM 226和控制系統(tǒng)200中的其它端點(diǎn)之間的通信。在一些例子中,一旦生成了配置文件,則經(jīng)由通信接口410來將其發(fā)送給每一個(gè)端點(diǎn),以使每一個(gè)設(shè)備能夠根據(jù)系統(tǒng)工程師的設(shè)計(jì)方案來進(jìn)行配置。此外,在一些例子中,使用通信接口410來向主工作站220的系統(tǒng)完整性監(jiān)測器(SIM)228提供所生成的參考值,以便與在稍后的時(shí)間點(diǎn)獲得的端點(diǎn)的完整性測量值進(jìn)行比較。
雖然在圖4中示出了實(shí)現(xiàn)圖2的CM 226的示例性方式,但可以以任何 其它方式來組合、劃分、重新排列、省略、消除和/或?qū)崿F(xiàn)圖4中所示出的元件、過程和/或設(shè)備中的一個(gè)或多個(gè)。此外,示例性用戶接口402、示例性配置文件生成器404、示例性參考值生成器406、示例性配置數(shù)據(jù)庫408、示例性通信接口410和/或更一般地說圖4的示例性CM 226,可以通過硬件、軟件、固件和/或硬件、軟件和/或固件的任意組合來實(shí)現(xiàn)。因此,例如,示例性用戶接口402、示例性配置文件生成器404、示例性參考值生成器406、示例性配置數(shù)據(jù)庫408、示例性通信接口410和/或更一般地說示例性CM 226,可以通過一個(gè)或多個(gè)模擬或數(shù)字電路、邏輯電路、可編程處理器、專用集成電路(ASIC)、可編程邏輯器件(PLD和/或現(xiàn)場可編程邏輯器件(FPLD))來實(shí)現(xiàn)。當(dāng)閱讀本專利的裝置或系統(tǒng)權(quán)利要求中的任何一個(gè)方面以覆蓋純粹的軟件和/或固件實(shí)現(xiàn)時(shí),故明確地規(guī)定示例性用戶接口402、示例性配置文件生成器404、示例性參考值生成器406、示例性配置數(shù)據(jù)庫408和/或示例性通信接口410包括用于存儲該軟件和/或固件的有形計(jì)算機(jī)可讀存儲設(shè)備或者存儲盤(例如,存儲器、數(shù)字多功能光盤(DVD)、壓縮盤(CD)、藍(lán)光光盤等等)。此外,除了圖4中所示出的之外或者替代這些元件、過程和/或設(shè)備,圖2的示例性CM 226還可以包括一個(gè)或多個(gè)元件、過程和/或設(shè)備,和/或可以包括所示出的任何或全部的元件、過程和設(shè)備中的一個(gè)以上的元件、過程和設(shè)備。
圖5示出了實(shí)現(xiàn)圖2和/或圖3的示例性完整性測量模塊(IMM)230的示例性方式。在所示出的例子中,IMM 230包括示例性完整性測量生成器502、示例性完整性測量自測試器504、示例性完整性測量控制器506、示例性通信認(rèn)證器508、示例性通信接口510、示例性軟件測量值寄存器512、示例性配置測量值寄存器514、示例性硬件測量值寄存器516、示例性授權(quán)信息數(shù)據(jù)庫518和示例性配置數(shù)據(jù)庫520。
在圖5所示出的例子中,IMM 230提供有示例性完整性測量生成器502,以計(jì)算或生成與實(shí)現(xiàn)IMM 230的特定端點(diǎn)相關(guān)聯(lián)的完整性測量值。在一些例子中,該完整性測量值對應(yīng)于實(shí)現(xiàn)IMM 230的端點(diǎn)的軟件和/或固件,本文稱為軟件完整性測量值。在一些例子中,當(dāng)裝載相應(yīng)端點(diǎn)的軟件棧時(shí),在啟動時(shí)間期間生成軟件完整性測量值。在一些這種例子中,隨著裝載每一個(gè)軟件,完整性測量生成器502計(jì)算用于該軟件的密碼校驗(yàn)和,并且該 密碼校驗(yàn)和被增加到示例性軟件測量值寄存器512中(例如,附加到先前計(jì)算的校驗(yàn)和值)。在一些例子中,一旦裝載了所有軟件(或者在所有軟件被裝載之前),則可以使所計(jì)算的校驗(yàn)和的最終串傳送通過哈希算法,以使軟件完整性測量更加可管理(例如,使用更少的存儲器)。在一些例子中,將IMM 230實(shí)現(xiàn)成硬件設(shè)備(例如,受信任的平臺模塊),以獨(dú)立于該端點(diǎn)實(shí)現(xiàn)的軟件的其余部分。替代地,在一些例子中,當(dāng)單獨(dú)的安全設(shè)備是不可用時(shí)(例如,在預(yù)先存在的設(shè)備中),可以將IMM 230實(shí)現(xiàn)成裝載到相應(yīng)的端點(diǎn)的軟件。
在一些例子中,這些完整性測量值可以替代地或另外地對應(yīng)于實(shí)現(xiàn)IMM 230的端點(diǎn)的配置,本文將其稱為配置完整性測量值。如上所述,系統(tǒng)工程師或其它人員可以在配置工作站218處生成配置文件,隨后將其提供給控制系統(tǒng)200中的每一個(gè)端點(diǎn)。在一些例子中,使用該系統(tǒng)的配置文件中與各個(gè)特定的端點(diǎn)有關(guān)的部分,來配置該端點(diǎn)。在一些例子中,一旦對端點(diǎn)進(jìn)行了配置,則將向這些端點(diǎn)配置的參數(shù)、邏輯和/或其它配置數(shù)據(jù)存儲在IMM 230的示例性配置數(shù)據(jù)庫520中。因此,在一些例子中,通過計(jì)算配置數(shù)據(jù)庫520中分配給相應(yīng)端點(diǎn)的配置數(shù)據(jù)的每一個(gè)部分的密碼校驗(yàn)和,來生成配置完整性測量值。隨著完整性測量生成器502計(jì)算得到配置數(shù)據(jù)的每一個(gè)部分的校驗(yàn)和,將該校驗(yàn)和附加到相應(yīng)的配置測量值寄存器514中的先前計(jì)算的校驗(yàn)和上。在一些例子中,針對向端點(diǎn)分配的完整配置文件,來計(jì)算單一的校驗(yàn)和。在其它例子中,針對該配置數(shù)據(jù)的不同部分來計(jì)算多個(gè)校驗(yàn)和,并隨后進(jìn)行組合(例如,彼此附加在一個(gè)串中)。在一些例子中,單獨(dú)的配置文件可以應(yīng)用于軟件棧中的單獨(dú)層,和/或端點(diǎn)可以存儲多個(gè)配置文件(例如,不同的版本)。在這些例子中,針對與每一個(gè)配置文件相關(guān)聯(lián)的配置數(shù)據(jù),來計(jì)算單獨(dú)的校驗(yàn)和,隨后將所獲得的值附加到彼此之上。在一些例子中,一旦針對所有配置數(shù)據(jù)都計(jì)算了校驗(yàn)和(或者在對所有配置數(shù)據(jù)進(jìn)行分析之前),則可以使所計(jì)算的校驗(yàn)和的最終串傳送通過哈希算法,以使配置完整性測量更加可管理。
在一些例子中,這些完整性測量值可以替代地或另外地對應(yīng)于與實(shí)現(xiàn)IMM 230的端點(diǎn)相關(guān)聯(lián)的硬件,本文將其稱為硬件完整性測量值。在一些例子中,與端點(diǎn)相關(guān)聯(lián)的硬件對應(yīng)于插入到或者耦合到該端點(diǎn)的外圍設(shè)備 (例如,插入在控制器中的I/O卡)。在一些例子中,通過計(jì)算針對與本端點(diǎn)相關(guān)聯(lián)的每一個(gè)外圍設(shè)備的密碼校驗(yàn)和,來生成硬件完整性測量值。在一些例子中,基于配置數(shù)據(jù)庫520中存儲的配置數(shù)據(jù),來識別將生成其測量值的外圍設(shè)備。在一些這種例子中,基于與外圍設(shè)備相關(guān)聯(lián)的配置文件,來生成這些完整性測量值。在其它例子中,響應(yīng)于來自端點(diǎn)的請求,外圍設(shè)備提供用于指示其狀態(tài)的校驗(yàn)和值。隨著完整性測量生成器502生成針對每一個(gè)外圍設(shè)備的校驗(yàn)和,將每一個(gè)校驗(yàn)和附加到相應(yīng)的硬件測量值寄存器516中的先前計(jì)算的校驗(yàn)和中。在一些例子中,一旦針對與端點(diǎn)相關(guān)聯(lián)的所有硬件(或者其任何部分)來計(jì)算了校驗(yàn)和,則可以使所計(jì)算的校驗(yàn)和的最終串傳送通過哈希算法,以使硬件完整性測量更加可管理。
在圖5所示出的例子中,IMM 230提供有示例性完整性測量自測試器504,以關(guān)于在生成完整性測量值時(shí)使用的功能進(jìn)行初步測試。也就是說,在一些例子中,完整性測量自測試器504執(zhí)行完整性測量生成器502的能力的內(nèi)部測試,以適當(dāng)?shù)赜?jì)算與這些完整性測量值相對應(yīng)的值。例如,完整性測量自測試器504可以基于已知的輸入,對于完整性測量生成器502產(chǎn)生預(yù)期的輸出所實(shí)現(xiàn)的哈希算法和校驗(yàn)和算法進(jìn)行驗(yàn)證。
在圖5所示出的例子中,IMM 230提供有示例性完整性測量控制器506,以控制IMM 230的各種操作。在一些例子中,完整性測量控制器506向示例性IMM 230的其它部分傳輸指令或命令,以控制這些部分的操作。例如,完整性測量控制器506指示完整性測量生成器502何時(shí)生成完整性測量值,以及這些值何時(shí)被添加到相應(yīng)的寄存器512、514、516;何時(shí)經(jīng)由通信接口510來報(bào)告這些完整性測量值;寄存器512、514、516何時(shí)被清空所存儲的完整性測量值;等等。
在圖5所示出的例子中,IMM 230提供有示例性通信認(rèn)證器508,以便在給予對相應(yīng)的控制網(wǎng)絡(luò)的完全通信訪問之后,對于與其它端點(diǎn)的通信進(jìn)行認(rèn)證和/或驗(yàn)證。在一些例子中,提供授權(quán)信息的SIM 228來啟用完全通信訪問,其中端點(diǎn)使用該授權(quán)信息來生成用于數(shù)字簽名、加密/解密、認(rèn)證等等的秘密值和/或公開值。
在一些例子中,在對該端點(diǎn)的完整性進(jìn)行確認(rèn)或驗(yàn)證之后,將通信認(rèn)證器508所使用的授權(quán)信息提供給IMM 230以啟用完全通信訪問。例如, 初始配置的一部分以及端點(diǎn)在接收到新的配置文件時(shí)的啟動,涉及該端點(diǎn)重新啟動。在一些例子中,在重新啟動期間,完整性測量生成器502生成如上所述的軟件完整性測量值。在一些例子中,還可以生成配置和/或硬件完整性測量值。這些完整性測量值用于指示端點(diǎn)的當(dāng)前狀態(tài)(即,在重新啟動的時(shí)間)。在根據(jù)配置文件進(jìn)行配置之后,新啟動的端點(diǎn)可以請求注冊和準(zhǔn)許進(jìn)入該控制系統(tǒng)。在準(zhǔn)許通過控制網(wǎng)絡(luò)進(jìn)行通信之前,將完整性測量值與參考值進(jìn)行比較。如果完整性測量值與參考值相匹配,則通過提供授權(quán)信息(根據(jù)該授權(quán)信息,生成秘密值和/或相關(guān)聯(lián)的公開值)來向該端點(diǎn)提供完全通信訪問。在一些例子中,向相應(yīng)的網(wǎng)絡(luò)中的其它端點(diǎn)提供相應(yīng)的授權(quán)信息,以使得每一個(gè)端點(diǎn)可以與新接納的端點(diǎn)進(jìn)行通信(以及彼此之間進(jìn)行通信)。
在初始配置之后,以及在接收到授權(quán)信息(其向端點(diǎn)提供完全通信訪問)之后,存在著特定的端點(diǎn)以某種方式受到損害的可能性。因此,在一些例子中,隨時(shí)間對端點(diǎn)的完整性進(jìn)行監(jiān)測,或者在不同的時(shí)間點(diǎn)來對端點(diǎn)的完整性進(jìn)行驗(yàn)證,以檢測用于指示已丟失完整性的這些端點(diǎn)的狀態(tài)的任何改變(例如,不再處于受信任狀態(tài))。在一些例子中,一旦檢測到受損害的端點(diǎn),則向所有其它端點(diǎn)分發(fā)新的授權(quán)信息,以便在未來通信中使用。用此方式,拒絕受損害的端點(diǎn)繼續(xù)進(jìn)行完全通信訪問,這是由于先前接收的授權(quán)信息不再有效。此外,在一些這種例子中,向受損害的端點(diǎn)提供獨(dú)特的授權(quán)信息,以使該端點(diǎn)置于補(bǔ)救模式和/或啟用有限本質(zhì)的通信訪問。
在一些例子中,通過通信認(rèn)證器508以下面的方式對初始接收的授權(quán)信息進(jìn)行加密,來解決使用先前提供的授權(quán)信息來關(guān)注具有可疑的完整性的端點(diǎn)的問題:僅僅當(dāng)該端點(diǎn)處于與第一次接收到該授權(quán)信息時(shí)相同的狀態(tài)時(shí),才能夠隨后進(jìn)行解密和使用。因此,如果一個(gè)端點(diǎn)以某種方式變得受損害,影響其當(dāng)前狀態(tài)(如通過完整性測量值的改變所指示的),則該端點(diǎn)不再能夠訪問(解密)為了與其它端點(diǎn)進(jìn)行通信而所需要的授權(quán)信息。結(jié)果,在一些例子中,在無需SIM 228對變得受損害的端點(diǎn)的完整性的丟失進(jìn)行檢測的情況下,可以阻止來自該端點(diǎn)的通信。
端點(diǎn)發(fā)送的一些消息包括針對該端點(diǎn)的完整性測量值的報(bào)告。網(wǎng)絡(luò)安全性的挑戰(zhàn)在于撒謊的端點(diǎn)。例如,因?yàn)橥ㄟ^將完整性測量值與對應(yīng)于已 知受信任狀態(tài)的參考值進(jìn)行比較,來驗(yàn)證一個(gè)端點(diǎn)的完整性,因此存在著受感染的端點(diǎn)僅僅重復(fù)先前確定的完整性測量值的可能性,這時(shí)其與參考值相匹配,而沒有提供根據(jù)該端點(diǎn)的實(shí)際狀態(tài)和/或當(dāng)前狀態(tài)所生成的完整性測量值(其可能指示該端點(diǎn)是受感染的)。為了解決該問題,在一些例子中,在每一次請求完整性測量時(shí),都向IMM 230提供一個(gè)隨機(jī)數(shù)(只使用一次的唯一值)。在一些這種例子中,通信認(rèn)證器508將該隨機(jī)數(shù)與響應(yīng)于本請求的完整性測量值進(jìn)行組合,使得可以檢測出只報(bào)告該完整性測量值的預(yù)先存在值(其不具有該隨機(jī)數(shù))的端點(diǎn)。
雖然在圖5中示出了實(shí)現(xiàn)圖2和/或圖3的IMM 230的示例性方式,但可以以任何其它方式來組合、劃分、重新排列、省略、消除和/或?qū)崿F(xiàn)圖5中所示出的元件、過程和/或設(shè)備中的一個(gè)或多個(gè)。此外,示例性完整性測量生成器502、示例性完整性測量自測試器504、示例性完整性測量控制器506、示例性通信認(rèn)證器508、示例性通信接口510、示例性軟件測量值寄存器512、示例性配置測量值寄存器514、示例性硬件測量值寄存器516、示例性授權(quán)信息數(shù)據(jù)庫518、示例性配置數(shù)據(jù)庫520和/或更一般地說圖5的示例性IMM 230,可以通過硬件、軟件、固件和/或硬件、軟件和/或固件的任意組合來實(shí)現(xiàn)。因此,例如,示例性完整性測量生成器502、示例性完整性測量自測試器504、示例性完整性測量控制器506、示例性通信認(rèn)證器508、示例性通信接口510、示例性軟件測量值寄存器512、示例性配置測量值寄存器514、示例性硬件測量值寄存器516、示例性授權(quán)信息數(shù)據(jù)庫518、示例性配置數(shù)據(jù)庫520和/或更一般地說圖5的示例性IMM 230,可以通過一個(gè)或多個(gè)模擬或數(shù)字電路、邏輯電路、可編程處理器、專用集成電路(ASIC)、可編程邏輯器件(PLD和/或現(xiàn)場可編程邏輯器件(FPLD))來實(shí)現(xiàn)。當(dāng)閱讀本專利的裝置或系統(tǒng)權(quán)利要求中的任何一個(gè)方面以覆蓋純粹的軟件和/或固件實(shí)現(xiàn)時(shí),故明確地規(guī)定示例性完整性測量生成器502、示例性完整性測量自測試器504、示例性完整性測量控制器506、示例性通信認(rèn)證器508、示例性通信接口510、示例性軟件測量值寄存器512、示例性配置測量值寄存器514、示例性硬件測量值寄存器516、示例性授權(quán)信息數(shù)據(jù)庫518和/或示例性配置數(shù)據(jù)庫520包括用于存儲該軟件和/或固件的有形的計(jì)算機(jī)可讀存儲設(shè)備或者存儲盤(例如,存儲器、數(shù)字多功能光盤(DVD)、 壓縮盤(CD)、藍(lán)光光盤等等)。此外,除了圖5中所示出的之外或者替代這些元件、過程和/或設(shè)備,圖2和/或圖3的示例性IMM 230還可以包括一個(gè)或多個(gè)元件、過程和/或設(shè)備,和/或可以包括所示出的任何或全部的元件、過程和設(shè)備中的一個(gè)以上的元件、過程和設(shè)備。
圖6示出了實(shí)現(xiàn)圖2和/或圖3的示例性系統(tǒng)完整性監(jiān)測器(SIM)228的示例性方式。在所示出的例子中,SIM 228包括示例性通信接口602、示例性完整性測量比較器604、示例性授權(quán)控制器606、示例性完整性測量生成器608、示例性完整性測量自檢測器610、示例性完整性監(jiān)測控制器612、示例性用戶接口614、示例性參考值數(shù)據(jù)庫616、示例性完整性測量數(shù)據(jù)庫618、示例性授權(quán)信息數(shù)據(jù)庫620、示例性軟件測量值寄存器622、示例性硬件測量值寄存器624和示例性配置測量值寄存器626。
在圖6所示出的例子,SIM 228提供有示例性通信接口602,以便與相應(yīng)網(wǎng)絡(luò)中的其它端點(diǎn)進(jìn)行通信。例如,SIM 228的通信接口602發(fā)送出針對其它端點(diǎn)的完整性測量值的請求。類似地,示例性通信接口602從其它端點(diǎn)的IMM 230和/或子系統(tǒng)的主工作站的SIM 228(例如,控制系統(tǒng)200作為監(jiān)控系統(tǒng)300中的端點(diǎn))接收完整性測量值的報(bào)告。因此,在一些例子中,控制系統(tǒng)的主工作站的SIM 228可以向監(jiān)控系統(tǒng)的主工作站的SIM 228傳輸完整性測量值。
圖6的示例性SIM 228提供有示例性完整性測量比較器604,以將完整性測量值與示例性參考值數(shù)據(jù)庫616中存儲的參考值進(jìn)行比較。在一些例子中,這些參考值是基于利用配置工作站218的配置模塊226所生成的配置文件來接收和/或生成的。在一些例子中,通過用戶基于相應(yīng)的端點(diǎn)的原始設(shè)備制造商所提供的值(例如,其包括在隨設(shè)備附帶的文檔中和/或在線提供),手工地經(jīng)由示例性用戶接口614輸入?yún)⒖贾担瑏斫邮者@些參考值。用此方式,這些值在制造的時(shí)間是值得信賴的,使得可以檢測到在運(yùn)送期間對于設(shè)備的任何篡改。另外地或替代地,在一些例子中,這些參考值中的一些或全部是基于相應(yīng)的端點(diǎn)的IMM 230在這些端點(diǎn)被初始配置、啟動和/或添加到相應(yīng)的網(wǎng)絡(luò)時(shí)所生成的完整性測量值。在一些這種例子中,工程師和/或其它用戶批準(zhǔn)將這些完整性測量值使用成參考值。用此方式,給予工程師驗(yàn)證下面情形的機(jī)會:每一個(gè)特定端點(diǎn)是否進(jìn)行了正確配置并且 如所預(yù)期地運(yùn)行,因?yàn)檫@些值將是在稍后的時(shí)間點(diǎn)對該端點(diǎn)的完整性進(jìn)行測試時(shí)所使用的。
在圖6所示出的例子中,SIM 228提供有示例性授權(quán)控制器606,以基于將所報(bào)告的完整性測量值與所存儲的參考值進(jìn)行比較的結(jié)果,建立用于每一個(gè)端點(diǎn)的適當(dāng)?shù)耐ㄐ攀跈?quán)或者訪問。在一些例子中,如果完整性測量值與參考值相匹配,則授權(quán)控制器606向該端點(diǎn)和所有其它授權(quán)的端點(diǎn)提供授權(quán)信息,以使它們之間能夠進(jìn)行通信。在一些例子中,分發(fā)給其它端點(diǎn)的授權(quán)信息也存儲在SIM 228的示例性授權(quán)信息數(shù)據(jù)庫620中,以便隨后引用。
在一些例子中,如果完整性測量值與相應(yīng)的參考值不匹配,則授權(quán)控制器606采取補(bǔ)救措施。在一些例子中,該補(bǔ)救措施包括:向該端點(diǎn)拒絕通信訪問(例如,通過向其它端點(diǎn)提供新的授權(quán)信息)。在其它例子中,不是完全地拒絕該端點(diǎn)的通信訪問,而是以某些方式進(jìn)行限制。例如,可以向該端點(diǎn)提供獨(dú)特的授權(quán)信息,將該端點(diǎn)限制于固件更新通信訪問(例如,僅僅能夠執(zhí)行與更新該端點(diǎn)的固件相關(guān)聯(lián)的通信)。在一些例子中,可以向該端點(diǎn)提供獨(dú)特的授權(quán)信息,將該端點(diǎn)限制于配置通信訪問(例如,僅僅能夠執(zhí)行與更新該端點(diǎn)的配置相關(guān)聯(lián)的通信)。在一些例子中,可以準(zhǔn)許來自該端點(diǎn)的通信,但對這些通信做標(biāo)記。在一些例子中,授權(quán)控制器606發(fā)起報(bào)警和/或告警,以向用戶通知完整性的潛在損失。在一些例子中,連同阻止來自受損害的端點(diǎn)的通信,授權(quán)控制器606向冗余或故障轉(zhuǎn)移端點(diǎn)提供授權(quán)信息,以接管該受損端點(diǎn)的角色。在一些例子中,授權(quán)控制器606可以實(shí)現(xiàn)上面的補(bǔ)救措施的任意組合。
另外,在一些例子中,授權(quán)控制器606生成連同針對完整性測量值的請求一起提供的隨機(jī)數(shù)值,以便由相應(yīng)的IMM 230在響應(yīng)時(shí)進(jìn)行使用,使得可以將來自端點(diǎn)的響應(yīng)驗(yàn)證成合法的。
在圖6所示出的例子中,SIM 228提供有示例性完整性測量生成器608以生成完整性測量值,其指示該SIM 228正在監(jiān)測的整個(gè)系統(tǒng)的端點(diǎn)的完整性的狀態(tài)。在一些例子中,通過將從該SIM 228正在監(jiān)測的相關(guān)聯(lián)的網(wǎng)絡(luò)中的每一個(gè)端點(diǎn)收集的完整性測量值進(jìn)行組合,來生成這種系統(tǒng)范圍的完整性測量值??梢韵蚺c圖1的層次結(jié)構(gòu)100中的較高層級相關(guān)聯(lián)的工作 站處的另一個(gè)SIM 228,報(bào)告該組合的完整性測量值。在一些例子中,完整性測量生成器608通過將網(wǎng)絡(luò)中的每一個(gè)端點(diǎn)所報(bào)告的每一個(gè)完整性測量值附加到相應(yīng)的軟件、硬件和配置寄存器622、624、626中,隨后計(jì)算最終的字符串值的校驗(yàn)和,來生成該組合的完整性測量值。在一些例子中,SIM 228在生成該組合的完整性測量值之前,從每一個(gè)端點(diǎn)請求完整性測量值。另外地或替代地,可以基于完整性測量數(shù)據(jù)庫618中所存儲的先前報(bào)告的完整性測量值,來生成該組合的完整性測量值。
在圖6所示出的例子中,SIM 228提供有示例性完整性測量自測試器610,以對于在生成完整性測量值時(shí)使用的功能進(jìn)行初步測試。也就是說,在一些例子中,完整性測量自測試器610執(zhí)行完整性測量生成器608的能力的內(nèi)部測試,以適當(dāng)?shù)赜?jì)算與這些完整性測量值相對應(yīng)的值(例如,校驗(yàn)和)。例如,完整性測量自測試器610可以基于已知輸入,驗(yàn)證完整性測量生成器608所實(shí)現(xiàn)的哈希算法和校驗(yàn)和算法產(chǎn)生預(yù)期的輸出。
在圖6所示出的例子中,SIM 228提供有示例性完整性監(jiān)測控制器612,以控制SIM 228的各種操作。在一些例子中,完整性監(jiān)測控制器612向示例性SIM 228的其它部分傳輸指令或命令,以控制這些部分的操作。例如,完整性監(jiān)測控制器612可以維持何時(shí)將從其它端點(diǎn)的IMM 230請求完整性測量值的調(diào)度表。在一些例子中,完整性監(jiān)測控制器612控制和/或規(guī)定對來自不同端點(diǎn)的不同完整性測量值進(jìn)行組合,以生成組合的完整性測量值的順序,這是由于該順序影響整個(gè)串的最終校驗(yàn)和值。
雖然在圖6中示出了實(shí)現(xiàn)圖2和/或圖3的SIM 228的示例性方式,但可以以任何其它方式來組合、劃分、重新排列、省略、消除和/或?qū)崿F(xiàn)圖6中所示出的元件、過程和/或設(shè)備中的一個(gè)或多個(gè)。此外,示例性通信接口602、示例性完整性測量比較器604、示例性授權(quán)控制器606、示例性完整性測量生成器608、示例性完整性測量自測試器610、示例性完整性監(jiān)測控制器612、示例性用戶接口614、示例性參考值數(shù)據(jù)庫616、示例性完整性測量數(shù)據(jù)庫618、示例性授權(quán)信息數(shù)據(jù)庫620、示例性軟件測量值寄存器622、示例性硬件測量值寄存器624、示例性配置測量值寄存器626和/或更一般地說圖6的示例性SIM 228,可以通過硬件、軟件、固件和/或硬件、軟件和/或固件的任意組合來實(shí)現(xiàn)。因此,例如,示例性通信接口602、示例性 完整性測量比較器604、示例性授權(quán)控制器606、示例性完整性測量生成器608、示例性完整性測量自測試器610、示例性完整性監(jiān)測控制器612、示例性用戶接口614、示例性參考值數(shù)據(jù)庫616、示例性完整性測量數(shù)據(jù)庫618、示例性授權(quán)信息數(shù)據(jù)庫620、示例性軟件測量值寄存器622、示例性硬件測量值寄存器624、示例性配置測量值寄存器626和/或更一般地說示例性SIM 228,可以通過一個(gè)或多個(gè)模擬或數(shù)字電路、邏輯電路、可編程處理器、專用集成電路(ASIC)、可編程邏輯器件(PLD和/或現(xiàn)場可編程邏輯器件(FPLD))來實(shí)現(xiàn)。當(dāng)閱讀本專利的裝置或系統(tǒng)權(quán)利要求中的任何一個(gè)方面以覆蓋純粹的軟件和/或固件實(shí)現(xiàn)時(shí),故明確地規(guī)定示例性通信接口602、示例性完整性測量比較器604、示例性授權(quán)控制器606、示例性完整性測量生成器608、示例性完整性測量自測試器610、示例性完整性監(jiān)測控制器612、示例性用戶接口614、示例性參考值數(shù)據(jù)庫616、示例性完整性測量數(shù)據(jù)庫618、示例性授權(quán)信息數(shù)據(jù)庫620、示例性軟件測量值寄存器622、示例性硬件測量值寄存器624和/或示例性配置測量值寄存器626包括用于存儲該軟件和/或固件的有形計(jì)算機(jī)可讀存儲設(shè)備或者存儲盤(例如,存儲器、數(shù)字多功能光盤(DVD)、壓縮盤(CD)、藍(lán)光光盤等等)。此外,除了圖6中所示出的之外或者替代這些元件、過程和/或設(shè)備,圖2和/或圖3的示例性SIM 228還可以包括一個(gè)或多個(gè)元件、過程和/或設(shè)備,和/或可以包括所示出的任何或全部的元件、過程和設(shè)備中的一個(gè)以上的元件、過程和設(shè)備。
在圖7中,示出了表示用于實(shí)現(xiàn)圖2的示例性CM 226的示例性方法的流程圖。在圖8-圖10中,示出了表示用于實(shí)現(xiàn)圖2和/或圖3的示例性IMM230的示例性方法的流程圖。在圖11-圖16中,示出了表示用于實(shí)現(xiàn)圖2和/或圖3的示例性SIM 228的示例性方法的流程圖。這些方法可以使用機(jī)器可讀指令來實(shí)現(xiàn),其中這些機(jī)器可讀指令包括用于由處理器(例如,下面結(jié)合圖17-圖19所討論的示例性處理器平臺1700、1800、1900中所示出的處理器1712、1812、1910)執(zhí)行的程序。這些程序可以利用有形計(jì)算機(jī)可讀存儲介質(zhì)(例如,CD-ROM、軟盤、硬盤驅(qū)動器、數(shù)字多功能光盤(DVD)、藍(lán)光光盤或者與處理器1712、1812、1910相關(guān)聯(lián)的存儲器)上存儲的軟件來體現(xiàn),但整個(gè)程序和/或其一部分可以替代地由不同于處理器1712、1812、1910的設(shè)備來執(zhí)行,和/或利用固件或?qū)S糜布眢w現(xiàn)。此外,雖然參照圖 7-圖16中所示出的流程圖來描述這些示例性程序,但也可以替代地使用實(shí)現(xiàn)示例性CM 226、示例性IMM 230和示例性SIM 228的很多其它方法。例如,可以改變這些方框的執(zhí)行順序,和/或可以改變、消除或者組合所描述的這些方框中的一些。
如上所述,可以使用諸如硬盤驅(qū)動器、閃存、只讀存儲器(ROM)、壓縮盤(CD)、數(shù)字多功能光盤(DVD)、高速緩存、隨機(jī)存取存儲器(RAM)之類的有形計(jì)算機(jī)可讀存儲介質(zhì),和/或?qū)⑿畔⒋鎯θ魏纬掷m(xù)時(shí)間的任何其它存儲器件或者存儲盤(例如,其用于延長的時(shí)間周期、永久性地、用于簡短的實(shí)例、用于暫時(shí)緩沖和/或用于信息的高速緩存)上存儲的編碼指令(例如,計(jì)算機(jī)和/或機(jī)器可讀指令),來實(shí)現(xiàn)圖7-圖16的示例性方法。如本文所使用的,明確地規(guī)定術(shù)語有形計(jì)算機(jī)可讀存儲介質(zhì)包括任何類型的計(jì)算機(jī)可讀存儲設(shè)備和/或存儲盤,其排除傳播信號,并排除傳輸介質(zhì)。如本文所使用的,可互換地使用“有形計(jì)算機(jī)可讀存儲介質(zhì)”和“有形機(jī)器可讀存儲介質(zhì)”。另外地或替代地,可以使用諸如硬盤驅(qū)動器、閃存、只讀存儲器、壓縮盤、數(shù)字多功能光盤、高速緩存、隨機(jī)存取存儲器之類的非臨時(shí)計(jì)算機(jī)可讀存儲介質(zhì)和/或機(jī)器可讀介質(zhì),和/或?qū)⑿畔⒋鎯θ魏纬掷m(xù)時(shí)間的任何其它存儲器件或者存儲盤(例如,其用于延長的時(shí)間周期、永久性地、用于簡短的實(shí)例、用于暫時(shí)緩沖和/或用于信息的緩存)上存儲的編碼指令(例如,計(jì)算機(jī)和/或機(jī)器可讀指令),來實(shí)現(xiàn)圖7-圖16的示例性方法。如本文所使用的,明確地規(guī)定術(shù)語非臨時(shí)計(jì)算機(jī)可讀存儲介質(zhì)包括任何類型的計(jì)算機(jī)可讀存儲設(shè)備和/或存儲盤,其排除傳播信號,并排除傳輸介質(zhì)。如本文所使用的,當(dāng)將短語“至少”使用成權(quán)利要求書的前序中的過渡詞語時(shí),它是開放性的,如同術(shù)語“包括”是開放性的一樣。
具體地轉(zhuǎn)到附圖,圖7是表示用于實(shí)現(xiàn)圖2和/或圖4的示例性配置模塊(CM)226的示例性方法的流程圖。該示例性方法開始于方框700,其中在方框700處,示例性用戶接口接收針對控制系統(tǒng)(例如,圖2的控制系統(tǒng)200)的配置數(shù)據(jù)。在一些例子中,配置數(shù)據(jù)對應(yīng)于工程師為了配置控制系統(tǒng)而提供的所有的配置參數(shù)、邏輯和輸入。在方框702處,示例性用戶接口接收針對該控制系統(tǒng)中的端點(diǎn)的軟件和/或硬件參考值。在一些例子中,軟件參考值和硬件參考值對應(yīng)于工程師基于這些端點(diǎn)設(shè)備的制造商所 指定的值而輸入的值。在一些例子中,這些軟件和/或硬件值是在與配置數(shù)據(jù)相同的時(shí)間進(jìn)行收集的。在其它例子中,與配置數(shù)據(jù)相比,單獨(dú)地收集軟件和/或硬件數(shù)據(jù)。在一些例子中,不收集任何軟件和/或硬件參考值。在這些例子中,可以在稍后的時(shí)間,收集和/或生成這些軟件和/或硬件參考值,如下所述。
在方框704處,示例性配置文件生成器404基于配置數(shù)據(jù)來生成配置文件。在方框706處,示例性參考值生成器406基于配置文件,來生成用于控制系統(tǒng)中的端點(diǎn)的參考值。在一些例子中,通過針對分配給該端點(diǎn)的配置文件和/或其一部分,計(jì)算一個(gè)或多個(gè)校驗(yàn)和,來生成這些參考值。在一些例子中,當(dāng)在方框702處接收到軟件和硬件參考值時(shí),所生成的參考值對應(yīng)于針對相應(yīng)的端點(diǎn)的配置參考值。在一些例子中,所生成的參考值包括硬件參考值(例如,當(dāng)這些值不是在方框702處由用戶規(guī)定的時(shí))。在方框708處,配置參考生成器406判斷是否存在具有相應(yīng)的配置數(shù)據(jù)的另一個(gè)端點(diǎn)。如果有,則控制返回到方框706,計(jì)算用于該端點(diǎn)的相應(yīng)配置參考值。否則,控制轉(zhuǎn)到方框710處,示例性通信接口410向控制系統(tǒng)中的端點(diǎn)發(fā)送配置文件。基于該傳輸,每一個(gè)端點(diǎn)可以接收和/或下載并實(shí)例化該配置文件(或者其相關(guān)的部分),隨后重新啟動以完成該配置過程,如下面所進(jìn)一步詳細(xì)描述的。在方框712處,示例性通信接口410向系統(tǒng)完整性監(jiān)測器(SIM)(例如,圖2的SIM 228)發(fā)送這些參考值(例如,配置參考值、軟件參考值和/或硬件參考值)。其后,圖7的示例性方法結(jié)束。
圖8是表示用于實(shí)現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊(IMM)230,以生成用于端點(diǎn)的啟動時(shí)間完整性測量值的示例性方法的流程圖。當(dāng)實(shí)現(xiàn)IMM 230的端點(diǎn)啟動時(shí)(例如,在接收到上面結(jié)合圖7的方框710所描述的配置文件之后),圖8的示例性方法執(zhí)行。在其它例子中,端點(diǎn)可以基于SIM 228所提供的用于進(jìn)行重新啟動的請求來這樣做。在其它例子中,可以手動地重新啟動端點(diǎn)。在方框802處,示例性完整性測量自測試器504測試IMM 230的完整性測量功能。例如,完整性測量自測試器504測試在基于已知輸入和已知輸出來生成完整性測量值時(shí)將使用的校驗(yàn)和算法、哈希算法等等。在方框804處,示例性完整性測量控制器506判斷完整性測量功能是否正常地工作(例如,輸出是所預(yù)期的)。如果沒有, 則圖8的示例性方法結(jié)束。在一些例子中,在該方法結(jié)束之前,完整性測量控制器506生成用于指示該測試失敗的錯(cuò)誤消息。如果示例性完整性測量控制器506確定完整性測量功能正常地工作(方框804),則控制轉(zhuǎn)到方框806處。
在方框806處,示例性完整性測量控制器506清空所有的完整性測量值寄存器512、514、516。在方框808處,示例性完整性測量生成器502針對該端點(diǎn)上裝載的一個(gè)軟件(和/或固件),生成一個(gè)完整性測量值。例如,完整性測量生成器502計(jì)算該件軟件的密碼校驗(yàn)和。在方框810處,示例性完整性測量控制器506將該完整性測量值增加到示例性軟件測量值寄存器512中。在方框812處,示例性完整性測量控制器判斷在啟動過程期間,是否存在將裝載的另一個(gè)軟件。如果有,則控制返回到方框808處,生成用于該軟件的完整性測量值,隨后添加到軟件測量值寄存器512中(方框810)。在一些例子中,與后續(xù)的軟件相關(guān)聯(lián)的完整性測量值附加到與先前針對軟件棧中更低的其它軟件(例如,在啟動時(shí)間期間,先前裝載的)所生成的完整性測量值相關(guān)聯(lián)的完整性測量值中。在一些例子中,如果附加后的字符串值對于軟件測量值寄存器512來說變得太長,則示例性完整性測量生成器502可以關(guān)于組合后的值執(zhí)行哈希算法,以便將它們減小到更加可管理的量。如果示例性完整性測量控制器確定在啟動過程期間沒有更多的軟件要進(jìn)行裝載(方框812),則控制轉(zhuǎn)到方框814處。針對所有的軟件的組合的完整性測量值(例如,在任何哈希運(yùn)算之后),對應(yīng)于針對該端點(diǎn)的最終軟件完整性測量值,其可以隨后在被請求時(shí)報(bào)告給SIM 228。
在方框814處,示例性完整性測量生成器502針對分配給該端點(diǎn)的配置數(shù)據(jù)來生成完整性測量值。例如,完整性測量生成器502針對在該端點(diǎn)中存儲的配置文件或者其一部分,來計(jì)算密碼校驗(yàn)和。在方框816處,示例性完整性測量控制器506將該完整性測量值增加到示例性配置測量值寄存器514中。在方框818處,示例性完整性測量控制器判斷是否存在更多的配置數(shù)據(jù)。如果有,則控制返回到方框814處,針對該配置數(shù)據(jù)來生成完整性測量值,并隨后添加到配置測量值寄存器514中(方框816)。在一些例子中,通過將與隨后分析的配置數(shù)據(jù)相關(guān)聯(lián)的完整性測量值附加到與先前針對其它配置數(shù)據(jù)所生成的完整性測量值相關(guān)聯(lián)的完整性測量值中, 來將其添加到寄存器514中。在一些例子中,如果附加后的字符串值對于配置測量值寄存器514來說變得太長,則示例性完整性測量生成器502可以關(guān)于組合后的值執(zhí)行哈希算法,以便將它們減小到更加可管理的量。如果示例性完整性測量控制器確定不存在更多的配置數(shù)據(jù)(方框818),則控制轉(zhuǎn)到方框820處。針對所有配置數(shù)據(jù)的組合的完整性測量值(例如,在任何哈希運(yùn)算之后),對應(yīng)于針對該端點(diǎn)的最終配置完整性測量值,其可以隨后在被請求時(shí)報(bào)告給SIM 228。
在方框820處,示例性完整性測量生成器502針對該端點(diǎn)的外圍設(shè)置,來生成完整性測量值。例如,完整性測量生成器502針對在相應(yīng)的配置文件中為該端點(diǎn)所設(shè)計(jì)的外圍設(shè)備,來計(jì)算密碼校驗(yàn)和。在方框822處,示例性完整性測量控制器506將該完整性測量值增加到示例性硬件測量值寄存器516中。在方框824處,示例性完整性測量控制器判斷是否存在另一個(gè)外圍設(shè)備。如果有,則控制返回到方框820處,針對該外圍設(shè)備來生成完整性測量值,并隨后添加到硬件測量值寄存器516中(方框816)。在一些例子中,通過將與后續(xù)的外圍設(shè)備相關(guān)聯(lián)的完整性測量值附加到與先前針對其它外圍設(shè)備所生成的完整性測量值相關(guān)聯(lián)的完整性測量值中,來將其添加到寄存器516中。在一些例子中,如果附加后的字符串值對于硬件測量值寄存器516來說變得太長,則示例性完整性測量生成器502可以關(guān)于組合后的值執(zhí)行哈希算法,以便將它們減小到更加可管理的量(例如,使用更少存儲器的更短的字符串)。針對所有外圍設(shè)備的組合的完整性測量值(例如,在任何哈希運(yùn)算之后),對應(yīng)于針對該端點(diǎn)的最終硬件完整性測量值,其可以隨后在被請求時(shí)報(bào)告給SIM 228。如果示例性完整性測量控制器確定不存在更多的外圍設(shè)備(方框818),則圖8的示例性方法結(jié)束。
圖9是表示用于實(shí)現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊(IMM)230,以生成用于端點(diǎn)的運(yùn)行時(shí)間完整性測量值的示例性方法的流程圖。也就是說,在配置并許可端點(diǎn)進(jìn)入網(wǎng)絡(luò)之后,并在操作時(shí),發(fā)生圖9的示例性方法。圖9的示例性方法開始于方框902處,示例性通信接口510從系統(tǒng)完整性監(jiān)測器(例如,圖2、圖3和/或圖6的示例性SIM 228)接收針對運(yùn)行時(shí)間完整性測量的請求。在一些例子中,該請求包括在生成響應(yīng)時(shí)將使用的隨機(jī)數(shù)值。下面將結(jié)合圖11-圖13來描述關(guān)于SIM 228的另外 細(xì)節(jié)以及接收到該請求時(shí)的場景。在方框904處,完整性測量自測試器504測試IMM 230的完整性測量功能。在方框906處,示例性完整性測量控制器506判斷完整性測量功能是否正常地工作(例如,輸出是所預(yù)期的)。如果沒有,則圖9的示例性方法結(jié)束。在一些例子中,在該方法結(jié)束之前,完整性測量控制器506生成用于指示該測試失敗的錯(cuò)誤消息。如果示例性完整性測量控制器506確定完整性測量功能正常地工作(方框906),則控制轉(zhuǎn)到方框908處。
在方框908處,示例性完整性測量控制器506清空配置和硬件完整性測量值寄存器514、516。在一些例子中,如在圖9的示例性方法中所實(shí)現(xiàn)的,并不清空結(jié)合運(yùn)行時(shí)間完整性測量值使用的軟件測量值寄存器512,這是由于在端點(diǎn)在啟動時(shí)間期間裝載軟件時(shí),生成了軟件完整性測量值。用此方式,先前收集的在端點(diǎn)的上一次啟動期間生成的存儲在軟件測量值寄存器512中的軟件完整性測量值,仍然可用于進(jìn)行報(bào)告。
在方框910處,示例性完整性測量生成器502針對分配給該端點(diǎn)的配置數(shù)據(jù)來生成完整性測量值。在一些例子中,分配給該端點(diǎn)的配置數(shù)據(jù)是基于在該端點(diǎn)上存儲的配置文件和/或其一部分。在方框912處,示例性完整性測量控制器506將該完整性測量值增加到示例性配置測量值寄存器514中。在方框914處,示例性完整性測量控制器判斷是否存在更多的配置數(shù)據(jù)。如果有,則控制返回到方框910處,針對該配置數(shù)據(jù)來生成完整性測量值,并隨后添加到配置測量值寄存器514中(方框912)。在一些例子中,通過將與隨后分析的配置數(shù)據(jù)相關(guān)聯(lián)的完整性測量值附加到與先前針對其它配置數(shù)據(jù)所生成的完整性測量值相關(guān)聯(lián)的完整性測量值中,來將其添加到寄存器514中。在一些例子中,如果附加后的字符串值對于配置測量值寄存器514來說變得太長,則示例性完整性測量生成器502可以關(guān)于組合后的值執(zhí)行哈希算法,以便將它們減小到更加可管理的量。如果示例性完整性測量控制器確定不存在更多的配置數(shù)據(jù)(方框914),則控制轉(zhuǎn)到方框916處。針對所有配置數(shù)據(jù)的組合的完整性測量值(例如,在任何哈希運(yùn)算之后),對應(yīng)于針對該端點(diǎn)的最終配置完整性測量值。
在方框916處,示例性完整性測量生成器502針對該端點(diǎn)的外圍設(shè)置,來生成完整性測量值。在方框918處,示例性完整性測量控制器506將該 完整性測量值增加到示例性硬件測量值寄存器516中。在方框920處,示例性完整性測量控制器判斷是否存在另一個(gè)外圍設(shè)備。如果有,則控制返回到方框916處,針對該外圍設(shè)備來生成完整性測量值,并隨后添加到硬件測量值寄存器516中(方框918)。在一些例子中,通過將與后續(xù)的外圍設(shè)備相關(guān)聯(lián)的完整性測量值附加到與先前針對其它外圍設(shè)備所生成的完整性測量值相關(guān)聯(lián)的完整性測量值中,來將其添加到寄存器516中。在一些例子中,如果附加后的字符串值對于硬件測量值寄存器516來說變得太長,則示例性完整性測量生成器502可以關(guān)于組合后的值執(zhí)行哈希算法,以便將它們減小到更加可管理的量。針對所有外圍設(shè)備的組合的完整性測量值(例如,在任何哈希運(yùn)算之后),對應(yīng)于針對該端點(diǎn)的最終硬件完整性測量值。
如果示例性完整性測量控制器確定不存在更多的外圍設(shè)備(方框920),則控制轉(zhuǎn)到方框922處,示例性通信接口510發(fā)送完整性測量值的報(bào)告。在一些例子中,所報(bào)告的完整性測量值包括在軟件測量值寄存器512中存儲的軟件完整性測量值(先前在該端點(diǎn)的上一次啟動期間生成的)、在配置測量值寄存器514中存儲的配置完整性測量值(在方框912處生成的)、以及在硬件測量值寄存器516中存儲的硬件完整性測量值(在方框918處生成的)。在一些例子中,將完整性測量值的該報(bào)告連同針對這些測量值的請求所提供的隨機(jī)數(shù)值進(jìn)行一起提供。在報(bào)告完整性測量值之后,圖9的示例性方法結(jié)束。
圖10是表示用于實(shí)現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊(IMM)230,以限制在端點(diǎn)處于受信任狀態(tài)時(shí)的環(huán)境,向該端點(diǎn)提供的授權(quán)信息的使用的示例性方法的流程圖。如上所述,通過提供給端點(diǎn)的授權(quán)信息來啟用通信,其中該端點(diǎn)根據(jù)該授權(quán)信息來生成秘密值和/或公開值或密鑰。在一些例子中,端點(diǎn)以加密的形式來存儲該授權(quán)信息,僅僅當(dāng)該端點(diǎn)處于與對該授權(quán)信息進(jìn)行加密時(shí)相同的狀態(tài),才能夠訪問(解密)該授權(quán)信息。在一些例子中,在驗(yàn)證端點(diǎn)的完整性之后,才向端點(diǎn)提供授權(quán)信息,使得當(dāng)對該授權(quán)信息進(jìn)行加密時(shí),該端點(diǎn)處于受信任狀態(tài)。因此,在一些例子中,如果端點(diǎn)受到損害以至于不再處于受信任狀態(tài)(例如,完整性測量值不再與參考值相匹配),則該端點(diǎn)將不能夠使用該授權(quán)信息,這是 由于該端點(diǎn)將不能夠?qū)υ撌跈?quán)信息進(jìn)行解密。用此方式,可以阻止來自潛在受損害端點(diǎn)的通信,而無需SIM 228專門對該端點(diǎn)進(jìn)行測試,如下面所更全面描述的。
當(dāng)實(shí)現(xiàn)IMM 230的端點(diǎn)啟動時(shí),圖10的示例性方法開始。在所示出的例子中,在IMM 230已經(jīng)進(jìn)行配置和接收授權(quán)信息(其以加密的形式存儲在授權(quán)信息數(shù)據(jù)庫518中)之后,發(fā)生啟動。圖10的示例性方法開始于方框1002,示例性完整性測量生成器502收集啟動時(shí)間完整性測量值(例如,通過實(shí)現(xiàn)圖8的示例性方法)。在方框1004處,示例性通信認(rèn)證器508從授權(quán)信息數(shù)據(jù)庫518獲取加密的授權(quán)信息。在方框1006處,示例性通信認(rèn)證器508嘗試基于啟動時(shí)間完整性測量值,對該授權(quán)信息進(jìn)行解密。也就是說,在一些例子中,通信認(rèn)證器508使用這些完整性測量值所指示的該端點(diǎn)的狀態(tài),對加密的授權(quán)信息進(jìn)行解密。
在方框1008處,示例性通信認(rèn)證器508判斷是否對該授權(quán)信息進(jìn)行了成功地解密。如果是,則這指示該端點(diǎn)的狀態(tài)處于預(yù)期的完整性狀態(tài)(例如,受信任狀態(tài)),該端點(diǎn)能夠訪問,并因此使用該授權(quán)信息來進(jìn)行通信。因此,在方框1010處,示例性通信接口510使用解密后的授權(quán)信息,在控制系統(tǒng)中進(jìn)行通信。其后,圖10的示例性方法結(jié)束。
如果示例性通信認(rèn)證器508確定沒有對該授權(quán)信息進(jìn)行成功地解密(方框1008),則控制轉(zhuǎn)到方框1012。對加密的授權(quán)信息進(jìn)行解密的不成功嘗試,指示關(guān)于該端點(diǎn)的狀態(tài)的某些情況(如完整性測量值所指示的)與該端點(diǎn)的期望的狀態(tài)(例如,完整性)不一致。在方框1012處,示例性完整性測量控制器506判斷配置文件是否是可用的。如果可用,則控制轉(zhuǎn)到方框1014處,示例性通信接口510發(fā)出針對準(zhǔn)許進(jìn)入該控制網(wǎng)絡(luò)的請求。在一些例子中,該請求可以發(fā)起下面所描述的圖12的示例性方法。其后,圖10的示例性方法結(jié)束。返回到方框1012,如果示例性完整性測量控制器506確定該配置文件是不可用的,則在圖10的示例性方法結(jié)束之前,控制轉(zhuǎn)到方框1016處。在方框1016處,示例性通信接口510發(fā)出在控制網(wǎng)絡(luò)上進(jìn)行注冊的請求。在一些例子中,該請求對應(yīng)于下面所描述的圖11的示例性方法的開始。
圖11是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器 228,以檢查初始時(shí)在相關(guān)聯(lián)的控制網(wǎng)絡(luò)上注冊的端點(diǎn)的完整性的示例性方法的流程圖。該示例性方法開始于方框1102,示例性通信接口602從端點(diǎn)接收注冊的請求。端點(diǎn)的注冊指代將該端點(diǎn)識別成與該控制系統(tǒng)相對應(yīng)的控制網(wǎng)絡(luò)上的節(jié)點(diǎn)或端點(diǎn),其中該端點(diǎn)被實(shí)現(xiàn)為先前沒有在該網(wǎng)絡(luò)中連接,或者不具有有效的配置數(shù)據(jù)(例如,圖10的方框1016處的請求)。在方框1104處,示例性通信接口602向該端點(diǎn)發(fā)送隨機(jī)數(shù)(例如,由示例性授權(quán)控制器606來生成)以及針對該端點(diǎn)的軟件完整性測量的請求。在一些例子中,該隨機(jī)數(shù)用來檢測“撒謊的端點(diǎn)”(例如,簡單地重復(fù)先前生成的值的端點(diǎn))。在所示出的例子中,假定該端點(diǎn)是沒有進(jìn)行過配置的新實(shí)現(xiàn)的設(shè)備(或者不再具有有效的配置數(shù)據(jù)的設(shè)備),使得相應(yīng)的配置和/或硬件完整性測量不會產(chǎn)生與相應(yīng)的參考值相匹配的有效結(jié)果。因此,在所示出的例子中,當(dāng)不存在其它類型的完整性測量值(例如,硬件和/或配置完整性測量值)時(shí),請求軟件完整性測量值。但是,在一些例子中,在方框1104處,還是與軟件完整性測量值一起請求硬件和/或配置完整性測量值。
在方框1106處,示例性通信接口602接收軟件完整性測量值的報(bào)告。在一些例子中,所報(bào)告的軟件完整性測量值對應(yīng)于:如先前在該端點(diǎn)初始啟動時(shí)所生成的存儲在軟件測量值寄存器512中的那些值,如上面結(jié)合圖8所描述的。在方框1108處,示例性完整性測量數(shù)據(jù)庫618存儲所報(bào)告的軟件完整性測量值。在一些例子中,對這些完整性測量值進(jìn)行存儲,以便后續(xù)與參考值進(jìn)行比較,和/或用于整個(gè)控制系統(tǒng)(作為一個(gè)綜合整體)與監(jiān)控系統(tǒng)的完整性驗(yàn)證,如下面結(jié)合圖16所更全面描述的。
在方框1110處,示例性完整性測量比較器604將軟件完整性測量值與軟件參考值進(jìn)行比較。在一些例子中,軟件參考值是用戶先前基于該端點(diǎn)設(shè)備的制造商所提供的數(shù)據(jù)而經(jīng)由用戶接口614已輸入的。用此方式,可以獨(dú)立于來自端點(diǎn)的直接反饋來設(shè)置參考值,從而去除在該端點(diǎn)設(shè)備離開制造商的占有之后,但在該端點(diǎn)連接到網(wǎng)絡(luò)之前(例如,在運(yùn)送期間),該端點(diǎn)被篡改的可能性。在一些例子中,工程師或其它人員也可以輸入硬件和/或配置參考值。在其它例子中,基于在方框1106處接收的初始軟件完整性測量值,來獲得軟件參考值,如下面所更全面描述的。同樣,在一些例子中,可以通過計(jì)算相應(yīng)的完整性測量值,來獲得用于設(shè)置硬件和/或配置 參考值的初始數(shù)據(jù)。
在方框1112處,示例性完整性測量比較器604判斷所報(bào)告的完整性測量值是否與參考值相匹配。如果用戶先前已手動地輸入了參考值,并且自從端點(diǎn)離開制造商之后沒有發(fā)生改變,則軟件完整性測量值應(yīng)當(dāng)與參考值相匹配。如果匹配,則控制轉(zhuǎn)到方框1114處,示例性授權(quán)控制器606授權(quán)該端點(diǎn)進(jìn)行配置通信訪問。在一些例子中,配置通信訪問使端點(diǎn)能夠接收配置數(shù)據(jù),以用于對該端點(diǎn)進(jìn)行配置(例如,基于上面結(jié)合圖7所描述的配置文件)。
如果完整性測量值與參考值不匹配(方框1112),則控制轉(zhuǎn)到方框1116處,示例性完整性監(jiān)測控制器612提示管理員覆蓋這種差異。在一些例子中,當(dāng)端點(diǎn)在初始實(shí)現(xiàn)時(shí)(例如,新獲得和/或安裝的設(shè)備),并且先前沒有經(jīng)由用戶接口614來手動地輸入?yún)⒖贾禃r(shí),完整性測量值可能與參考值不匹配。因此,在方框1116處提供的提示使管理員能夠?qū)⒊跏紙?bào)告的完整性測量值接受成新的參考值(如果它們對應(yīng)于期望的值的話)。因此,在方框1118處,示例性完整性監(jiān)測控制器612判斷是否批準(zhǔn)該覆蓋。如果批準(zhǔn),則控制轉(zhuǎn)到方框1120處,示例性完整性監(jiān)測控制器612將該報(bào)告的完整性測量值分配成新的參考值。用此方式,可以基于端點(diǎn)的完整性測量值,來初始設(shè)置軟件參考值,而無需如上所述地手動輸入這些值。在這些例子中,由于在方框1120處將所報(bào)告的完整性測量值分配成參考值,因此完整性測量值和參考值需要進(jìn)行匹配,使得控制轉(zhuǎn)到方框1114,以授權(quán)該端點(diǎn)進(jìn)行配置通信訪問。
一旦授權(quán)端點(diǎn)進(jìn)行配置通信訪問(方框1114),則可以從配置模塊226向該端點(diǎn)發(fā)送配置文件,如上面結(jié)合圖7所描述的。其后,端點(diǎn)可以重新啟動以完成配置過程。用此方式,端點(diǎn)可以獲得有效的配置數(shù)據(jù),使得軟件、硬件和配置完整性測量值中的每一個(gè)應(yīng)當(dāng)反映該端點(diǎn)的適當(dāng)狀態(tài),以便驗(yàn)證該端點(diǎn)的完整性。在方框1122處,在配置重新啟動之后,示例性通信接口602從端點(diǎn)接收針對準(zhǔn)許進(jìn)入的請求。端點(diǎn)的準(zhǔn)許進(jìn)入指代準(zhǔn)許該端點(diǎn)與該控制系統(tǒng)(在其中實(shí)現(xiàn)該端點(diǎn)以及該端點(diǎn)已經(jīng)在其上注冊(例如,在方框1114處,響應(yīng)于在方框1102處針對注冊的請求)的控制系統(tǒng))相關(guān)聯(lián)的控制網(wǎng)絡(luò)中的其它端點(diǎn)進(jìn)行通信(例如,啟動通信)。在方框1124處, 示例性完整性監(jiān)測控制器612對完全配置的端點(diǎn)的完整性進(jìn)行驗(yàn)證。下面在圖12中更詳細(xì)地描述對完全配置的端點(diǎn)的完整性進(jìn)行驗(yàn)證的示例性方法。在方框1126處,示例性完整性監(jiān)測控制器612判斷是否存在另一個(gè)端點(diǎn)要準(zhǔn)許進(jìn)入該控制系統(tǒng)的控制網(wǎng)絡(luò)。如果有,則控制轉(zhuǎn)到方框1102處。否則,圖11的示例性方法結(jié)束。
返回到方框1118,如果示例性完整性監(jiān)測控制器612確定沒有批準(zhǔn)該覆蓋(例如,管理員并不想將端點(diǎn)報(bào)告的軟件完整性測量值使用成新的參考值),則控制轉(zhuǎn)到方框1128處,示例性授權(quán)控制器606將該端點(diǎn)限制于固件更新通信訪問。在一些例子中,固件更新通信訪問將該端點(diǎn)限制于接收固件更新,但并不允許與該端點(diǎn)進(jìn)行通信。在限制了端點(diǎn)的通信訪問之后(方框1128),控制轉(zhuǎn)到方框1126處,示例性完整性監(jiān)測控制器判斷該示例性方法是將結(jié)束,還是針對另一個(gè)端點(diǎn)進(jìn)行重復(fù)。
圖12是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器228,以檢查尋求控制系統(tǒng)的控制網(wǎng)絡(luò)中的通信訪問的端點(diǎn)的完整性的示例性方法的流程圖。具體而言,圖12的示例性方法對應(yīng)于圖11的方框1124。圖12的示例性方法開始于方框1202,示例性通信接口602向端點(diǎn)發(fā)送隨機(jī)數(shù)(例如,由示例性授權(quán)控制器606來生成)以及針對該端點(diǎn)的完整性測量的請求。與圖11的方框1104(此處只是請求軟件完整性測量)相比,示例性通信接口602可以請求針對軟件、硬件和配置完整性測量中的每一個(gè)的值,這是由于在該時(shí)間點(diǎn),該端點(diǎn)是完全配置的,參考值數(shù)據(jù)庫616具有用于與這些完整性測量值進(jìn)行比較的所有相關(guān)參考值。在一些例子中,在針對該端點(diǎn)將用于的特定應(yīng)用,驗(yàn)證已對該端點(diǎn)進(jìn)行適當(dāng)?shù)嘏渲?圖12)之前,首先完成軟件的驗(yàn)證(圖11),以確保如制造商所提供的該端點(diǎn)如所預(yù)期地進(jìn)行操作。在一些例子中,可以對圖11和圖12的示例性方法進(jìn)行組合,使得一次就驗(yàn)證該端點(diǎn)的軟件、硬件和配置完整性。
在方框1204處,示例性通信接口602接收完整性測量值的報(bào)告。在一些例子中,這些完整性測量值是基于在運(yùn)行時(shí)間期間進(jìn)行的計(jì)算。在一些這種例子中,所報(bào)告的軟件完整性測量值對應(yīng)于:如先前在軟件測量值寄存器512中存儲的值,這是由于該端點(diǎn)并沒有進(jìn)行重新啟動來獲得新的測量值。也就是說,軟件完整性測量值可以對應(yīng)于該端點(diǎn)上一次啟動時(shí)先前 所生成的值(例如,圖11中的緊接的前一方框1122)。相比而言,在一些例子中,硬件和配置完整性測量值是在運(yùn)行時(shí)間期間新生成的。在方框1206處,示例性完整性測量數(shù)據(jù)庫618存儲所報(bào)告的完整性測量值。
在方框1208處,示例性完整性測量比較器604將所報(bào)告的完整性測量值與參考值進(jìn)行比較。在一些例子中,這些參考值對應(yīng)于在方框1102處接收的值和/或在圖11的方框1120處分配的值。在方框1210處,示例性完整性測量比較器604判斷所報(bào)告的完整性測量值是否與參考值相匹配。如果不匹配,則控制轉(zhuǎn)到方框1212處,示例性完整性監(jiān)測控制器612提示管理員覆蓋該差異。在一些例子中,該提示使管理員能夠?qū)⒃搱?bào)告的完整性測量值接受成新的參考值。在方框1214處,示例性完整性監(jiān)測控制器612判斷是否批準(zhǔn)該覆蓋。如果批準(zhǔn),則控制轉(zhuǎn)到方框1216處,示例性完整性監(jiān)測控制器612將該報(bào)告的完整性測量值分配成新的參考值,其中控制轉(zhuǎn)到方框1218處。
在方框1218處,示例性授權(quán)控制器606通過向該端點(diǎn)提供授權(quán)信息,來授權(quán)該端點(diǎn)進(jìn)行完全通信訪問。在一些例子中,完全通信訪問使該端點(diǎn)能夠與實(shí)現(xiàn)該端點(diǎn)的控制網(wǎng)絡(luò)中的其它端點(diǎn)進(jìn)行完全地通信。在一些例子中,通過向端點(diǎn)提供授權(quán)信息來啟用完全通信訪問,其中端點(diǎn)使用該授權(quán)信息來生成秘密值和/或公開值。返回到方框1210處,如果示例性完整性測量比較器604確定所報(bào)告的完整性測量值與參考值相匹配,則控制直接轉(zhuǎn)到方框1218處。一旦授權(quán)端點(diǎn)進(jìn)行完全通信訪問(方框1218),則圖12的示例性方法結(jié)束,并返回到完成圖11的示例性方法。
返回到方框1214,如果示例性完整性監(jiān)測控制器612確定沒有批準(zhǔn)該覆蓋(例如,管理員并不想將該報(bào)告的完整性測量值使用成新的參考值),則控制轉(zhuǎn)到方框1220處,示例性完整性測量比較器604判斷該報(bào)告的軟件完整性測量值是否與軟件參考值相匹配。如果不匹配,則該端點(diǎn)上的軟件是可疑的。因此,控制轉(zhuǎn)到方框1222處,示例性授權(quán)控制器606將該端點(diǎn)限制于固件更新通信訪問。在限制了端點(diǎn)的通信訪問之后(方框1222),圖12的示例性方法結(jié)束,并返回到完成圖11的示例性方法。返回到方框1220處,如果示例性完整性測量比較器604確定該報(bào)告的軟件完整性測量值與軟件參考值相匹配,則控制轉(zhuǎn)到方框1224處。在方框1224處,示例性授 權(quán)控制器606將該端點(diǎn)限制于配置通信訪問。其后,圖12的示例性方法結(jié)束,并返回到完成圖11的示例性方法。
圖13是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器228,以在運(yùn)行時(shí)間期間檢查控制系統(tǒng)的控制網(wǎng)絡(luò)中的端點(diǎn)的完整性的示例性方法的流程圖。也就是說,圖11和圖12表示用于對控制網(wǎng)絡(luò)上初始設(shè)置和配置的端點(diǎn)的完整性進(jìn)行驗(yàn)證的示例性方法,圖13表示在稍后的時(shí)間點(diǎn)(當(dāng)該端點(diǎn)在操作時(shí)和/或在服務(wù)時(shí)),對該端點(diǎn)的完整性進(jìn)行的驗(yàn)證。用此方式,可以檢測出在已經(jīng)獲得、安裝和配置端點(diǎn)進(jìn)行使用之后所發(fā)生的潛在安全漏洞,并進(jìn)行相應(yīng)地響應(yīng)。
圖13的示例性方法開始于方框1302,示例性完整性監(jiān)測控制器612判斷是否到了對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間??刂葡到y(tǒng)中的很多計(jì)算設(shè)備(端點(diǎn))可以仍然在延長的時(shí)間周期(例如,數(shù)月或數(shù)年)都處于運(yùn)行之中,而不會進(jìn)行關(guān)閉或者重新啟動。因此,雖然在啟動時(shí)間期間,對端點(diǎn)的完整性進(jìn)行驗(yàn)證以確認(rèn)(在啟動期間裝載的)軟件棧的狀態(tài)是有用的,但這些測試可能沒有按照足夠的粒度來進(jìn)行,以檢測該端點(diǎn)的潛在改變。因此,在一些例子中,用戶可以按照周期性或者非周期性調(diào)度,來規(guī)定運(yùn)行時(shí)間完整性(其是更定期的和/或頻繁的)。在一些例子中,針對網(wǎng)絡(luò)中的每一個(gè)端點(diǎn),一天執(zhí)行一次運(yùn)行時(shí)間完整性測量。但是,可以按照任何適當(dāng)?shù)恼{(diào)度,來實(shí)現(xiàn)運(yùn)行時(shí)間完整性測試。此外,在一些例子中,可以例如基于端點(diǎn)對于其所操作的控制系統(tǒng)的關(guān)鍵性,與其它端點(diǎn)相比,對某些端點(diǎn)進(jìn)行更頻繁地測試(例如,關(guān)鍵性端點(diǎn)進(jìn)行小時(shí)級測試)。另外地或替代地,在一些例子中,在特定的時(shí)間點(diǎn),只請求某些類型的完整性測量(軟件、硬件或配置)。在一些例子中,可以針對軟件、硬件和配置完整性測量中的每一種的監(jiān)測,應(yīng)用單獨(dú)的調(diào)度表。如果示例性完整性監(jiān)測控制器612確定還沒有到對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間(方框1302),則示例性完整性監(jiān)測控制器612進(jìn)行等待,直到該時(shí)間為止。
一旦到了對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間,則控制轉(zhuǎn)到方框1304處,示例性通信接口602向端點(diǎn)發(fā)送隨機(jī)數(shù)(例如,由示例性授權(quán)控制器606來生成)以及針對該端點(diǎn)的完整性測量的請求。在方框1306處,示例性通信接口602接收完整性測量值的報(bào)告。在一些例子中,這些完整 性測量值是基于在運(yùn)行時(shí)間期間進(jìn)行的計(jì)算。但是,在一些例子中,軟件完整性測量值是基于在該端點(diǎn)上一次啟動時(shí)所生成的完整性測量值,使得在運(yùn)行時(shí)間期間不生成新的軟件完整性測量值。相反,在這些例子中,軟件完整性測量值對應(yīng)于該端點(diǎn)上一次啟動時(shí)所先前生成的值。相比而言,在一些例子中,硬件和配置完整性測量值是在運(yùn)行時(shí)間期間新生成的。在方框1308處,示例性完整性測量數(shù)據(jù)庫618存儲所報(bào)告的完整性測量值。
在方框1310處,示例性完整性測量比較器604將所報(bào)告的完整性測量值與參考值進(jìn)行比較。在方框1312處,示例性完整性測量比較器604判斷所報(bào)告的完整性測量值是否與參考值相匹配。如果不匹配,則控制轉(zhuǎn)到方框1314處,示例性完整性監(jiān)測控制器612基于失敗的完整性測量,來實(shí)現(xiàn)響應(yīng)。在一些例子中,該特定的響應(yīng)取決于什么類型的完整性測量值(例如,軟件、硬件和/或配置)沒有與參考值相匹配。在一些例子中,響應(yīng)的本質(zhì)依賴于端點(diǎn)的本質(zhì)和/或其配置以及與相應(yīng)網(wǎng)絡(luò)中的其它端點(diǎn)的關(guān)系。在一些例子中,該響應(yīng)包括:生成報(bào)警(方框1316),將來自該端點(diǎn)的未來數(shù)據(jù)標(biāo)記成可疑的(方框1318),將該端點(diǎn)限制于固件更新通信訪問和/或配置通信訪問(方框1320),和/或切換到冗余端點(diǎn)(方框1322)。在一些例子中,該響應(yīng)包括方框1316、1318、1320、1322中的一個(gè)以上方框的組合。在一些例子中,當(dāng)對端點(diǎn)進(jìn)行配置時(shí),由用戶規(guī)定所實(shí)現(xiàn)的響應(yīng)。在實(shí)現(xiàn)了適當(dāng)?shù)捻憫?yīng)之后(方框1314),控制轉(zhuǎn)到方框1324處。返回到方框1312,如果示例性完整性測量比較器604確定完整性測量值與參考值相匹配,則對該端點(diǎn)的完整性進(jìn)行了驗(yàn)證,故不需要進(jìn)一步的動作。在這些例子中,控制直接轉(zhuǎn)到方框1324。
在方框1324處,示例性完整性監(jiān)測控制器612判斷是否存在另一個(gè)端點(diǎn)要進(jìn)行驗(yàn)證。如果有,則控制返回到方框1302處。否則,控制轉(zhuǎn)到方框1326處,示例性完整性監(jiān)測控制器612判斷是否繼續(xù)。如果繼續(xù),則控制返回到方框1302。否則,圖13的示例性方法結(jié)束。
上面所描述的圖11-圖13對應(yīng)于實(shí)現(xiàn)控制系統(tǒng)(例如,圖2的控制系統(tǒng)200)的主工作站中的SIM 228,其中該控制系統(tǒng)位于圖1的層次結(jié)構(gòu)100的控制系統(tǒng)層級106。因此,圖11-圖13涉及在與層次結(jié)構(gòu)100的控制系統(tǒng)層級106相關(guān)聯(lián)的控制網(wǎng)絡(luò)上,在層次結(jié)構(gòu)100的設(shè)備層級104處,進(jìn)行 針對過程控制設(shè)備(例如,控制器、I/O設(shè)備、現(xiàn)場設(shè)備等等)的通信訪問的配置和基于完整性的授權(quán)。另外地或替代地,圖11-圖13涉及在與控制系統(tǒng)層級106相關(guān)聯(lián)的控制網(wǎng)絡(luò)上,在控制系統(tǒng)層級106處,進(jìn)行不同端點(diǎn)(例如,工作站、服務(wù)器等等)之間的通信的配置和基于完整性的授權(quán)。因此,在一些例子中,在被設(shè)計(jì)用于對通信進(jìn)行授權(quán)的控制網(wǎng)絡(luò)的主工作站(例如,圖2的主工作站220)中,實(shí)現(xiàn)與圖11-圖13相關(guān)聯(lián)的SIM 228。此外,在這些例子中,在與通信地耦合到控制網(wǎng)絡(luò)的特定設(shè)備相對應(yīng)的端點(diǎn)中實(shí)現(xiàn)IMM 230。
相比而言,下面所描述的圖14-圖15對應(yīng)于實(shí)現(xiàn)監(jiān)控系統(tǒng)(例如,圖3的監(jiān)控系統(tǒng)300)的主工作站中的SIM 228,其中該監(jiān)控系統(tǒng)位于圖1的層次結(jié)構(gòu)100的監(jiān)控系統(tǒng)層級108。因此,圖14-圖15涉及在控制系統(tǒng)層級106和監(jiān)控系統(tǒng)層級108處的其它端點(diǎn)處,針對于與圖1的監(jiān)控系統(tǒng)層級108相關(guān)聯(lián)的監(jiān)控系統(tǒng)(例如,圖3的監(jiān)控系統(tǒng)300)中的端點(diǎn)的通信訪問和/或從屬系統(tǒng)(例如,圖3的控制系統(tǒng)200、302)之間的通信訪問的基于完整性的授權(quán)。因此,在一些例子中,在被設(shè)計(jì)用于對通信進(jìn)行授權(quán)的監(jiān)控網(wǎng)絡(luò)的主工作站(例如,圖3的主工作站306)中,實(shí)現(xiàn)與圖14-圖15相關(guān)聯(lián)引用的SIM 228。此外,在這些例子中,準(zhǔn)許進(jìn)入監(jiān)控網(wǎng)絡(luò)310的端點(diǎn)對應(yīng)于實(shí)現(xiàn)IMM 230的個(gè)體計(jì)算設(shè)備(例如,工作站308、服務(wù)器304等等)。另外地或替代地,準(zhǔn)許進(jìn)入監(jiān)控網(wǎng)絡(luò)310的端點(diǎn)對應(yīng)于控制系統(tǒng)層級106(例如,控制系統(tǒng)200)的該監(jiān)控系統(tǒng)的從屬系統(tǒng)。在一些這種例子中,在與從屬系統(tǒng)相關(guān)聯(lián)的主工作站(例如,控制系統(tǒng)200的主工作站220)中實(shí)現(xiàn)的SIM 228,提供在監(jiān)控系統(tǒng)的工作站中實(shí)現(xiàn)的SIM 228所請求的完整性測量,如下面結(jié)合圖16所描述的。
圖14是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器228,以驗(yàn)證尋求許可進(jìn)入監(jiān)控系統(tǒng)的端點(diǎn)的完整性的示例性方法。在所示出的例子中,SIM 228對應(yīng)于在監(jiān)控系統(tǒng)的主工作站(例如,監(jiān)控系統(tǒng)300的主工作站306)中實(shí)現(xiàn)的SIM。圖14的示例性方法開始于方框1400,其中在方框1400處,示例性用戶接口602從監(jiān)控系統(tǒng)中的端點(diǎn)接收連接請求。在一些例子中,該請求來自于通信地耦合到監(jiān)控系統(tǒng)的監(jiān)控網(wǎng)絡(luò)的特定端點(diǎn)(例如,工作站308、服務(wù)器304等等)。在一些例子中,該請求來自于 從屬系統(tǒng)的主工作站(例如,控制系統(tǒng)200的主工作站220)。在方框1402處,示例性通信接口602向該端點(diǎn)發(fā)送隨機(jī)數(shù)(例如,由示例性授權(quán)控制器606來生成)與用于針對該端點(diǎn)的完整性測量的請求。
在方框1404處,示例性通信接口602接收完整性測量值的報(bào)告。在一些例子中,以上面針對于控制系統(tǒng)層級106的端點(diǎn)所實(shí)現(xiàn)的IMM來描述的相同或相似方式,監(jiān)控系統(tǒng)層級108的端點(diǎn)所實(shí)現(xiàn)的IMM,生成針對該端點(diǎn)的完整性測量值。但是,監(jiān)控系統(tǒng)通常并不如在控制系統(tǒng)的情況下具有專門設(shè)計(jì)的配置。因此,在一些例子中,報(bào)告的完整性測量值并不包括配置完整性測量值。另一方面,在一些例子中,當(dāng)端點(diǎn)對應(yīng)于控制系統(tǒng)時(shí),完整性測量值可以包括與來自該控制系統(tǒng)中的所有端點(diǎn)的配置完整性測量值的組合相對應(yīng)的值,如下面結(jié)合圖16所更全面描述的。在方框1406處,示例性完整性測量數(shù)據(jù)庫618對這些報(bào)告的完整性測量值進(jìn)行存儲。
在方框1408處,示例性完整性測量比較器604將這些報(bào)告的完整性測量值與參考值進(jìn)行比較。在方框1410處,示例性完整性測量比較器604判斷這些報(bào)告的完整性測量值是否與參考值相匹配。如果不匹配,則控制轉(zhuǎn)到方框1412處,示例性完整性監(jiān)測控制器612提示管理員對該差異進(jìn)行覆蓋。在方框1414處,示例性完整性監(jiān)測控制器612判斷是否批準(zhǔn)該覆蓋。如果批準(zhǔn),則控制轉(zhuǎn)到方框1416處,示例性完整性監(jiān)測控制器612將這些報(bào)告的完整性測量值分配成新的參考值。在方框1418處,示例性授權(quán)控制器606通過向該端點(diǎn)提供授權(quán)信息,來授權(quán)該端點(diǎn)進(jìn)行完全通信訪問。返回到方框1410,如果示例性完整性測量比較器604確定這些報(bào)告的完整性測量值與參考值相匹配,則控制直接轉(zhuǎn)到方框1418處。在方框1420處,示例性完整性監(jiān)測控制器612判斷是否存在另一個(gè)端點(diǎn)。如果存在,則控制返回到方框1400。否則,圖14的示例性方法結(jié)束。
返回到方框1414,如果示例性完整性監(jiān)測控制器612確定該覆蓋沒有被批準(zhǔn)(例如,管理員并不想將該報(bào)告的完整性測量值使用成新的參考值),則控制轉(zhuǎn)到方框1422處。在方框1422處,示例性授權(quán)控制器606限制該端點(diǎn)的通信訪問。在一些例子中,對通信訪問進(jìn)行拒絕(即,不提供通信訪問)。在一些例子中,將該端點(diǎn)限制于固件更新通信訪問。在其它例子中,可以啟用通信,但將來自該特定節(jié)點(diǎn)的數(shù)據(jù)標(biāo)記或標(biāo)簽成可疑的。在一些 例子中,可以向監(jiān)控系統(tǒng)上的某些端點(diǎn)提供通信訪問,而阻止其它端點(diǎn)的通信。在限制該端點(diǎn)的通信訪問之后(方框1422),控制轉(zhuǎn)到方框1420,示例性完整性監(jiān)測控制器612判斷是否存在另一個(gè)端點(diǎn),如上所述。
圖13是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器228,以在運(yùn)行時(shí)間期間檢查監(jiān)控系統(tǒng)的監(jiān)控網(wǎng)絡(luò)中的端點(diǎn)的完整性的示例性方法的流程圖。也就是說,圖14表示用于對初始準(zhǔn)許進(jìn)入監(jiān)控網(wǎng)絡(luò)的端點(diǎn)的完整性進(jìn)行驗(yàn)證的示例性方法,圖15表示在稍后的時(shí)間點(diǎn)(當(dāng)該端點(diǎn)在操作時(shí)和/或在服務(wù)時(shí)),對該端點(diǎn)的完整性進(jìn)行的驗(yàn)證。用此方式,可以檢測出在已經(jīng)獲得、安裝和配置端點(diǎn)進(jìn)行使用之后所發(fā)生的潛在安全漏洞,并進(jìn)行相應(yīng)地響應(yīng)。如上所述,在圖15所示出的例子中,SIM 228對應(yīng)于在監(jiān)控系統(tǒng)的主工作站中實(shí)現(xiàn)的SIM(例如,監(jiān)控系統(tǒng)300的主工作站306)。
圖15的示例性方法開始于方框1502,示例性完整性監(jiān)測控制器612判斷是否到了對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間。在一些例子中,按照任何適當(dāng)?shù)闹芷谛曰蛘叻侵芷谛哉{(diào)度,來執(zhí)行運(yùn)行時(shí)間完整性測量。例如,針對網(wǎng)絡(luò)中的每一個(gè)端點(diǎn),可以一天請求一次運(yùn)行時(shí)間完整性測量。此外,在一些例子中,可以例如基于端點(diǎn)對于其所操作的監(jiān)控系統(tǒng)的關(guān)鍵性,與其它端點(diǎn)相比,對某些端點(diǎn)進(jìn)行更頻繁地測試。如果示例性完整性監(jiān)測控制器612確定還沒有到對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間(方框1502),則示例性完整性監(jiān)測控制器612進(jìn)行等待,直到該時(shí)間為止。
一旦到了對端點(diǎn)的運(yùn)行時(shí)間完整性進(jìn)行驗(yàn)證的時(shí)間,則控制轉(zhuǎn)到方框1504處,示例性通信接口602向端點(diǎn)發(fā)送隨機(jī)數(shù)(例如,由示例性授權(quán)控制器606來生成)以及針對該端點(diǎn)的完整性測量的請求。在方框1506處,示例性通信接口602接收完整性測量值的報(bào)告。在一些例子中,以上面針對于控制系統(tǒng)層級106的端點(diǎn)所實(shí)現(xiàn)的IMM來描述的相同或相似方式,監(jiān)控系統(tǒng)層級108的端點(diǎn)所實(shí)現(xiàn)的IMM,生成針對該端點(diǎn)的完整性測量值。但是,在一些例子中,這些完整性測量值并不包括配置完整性測量值,這是由于監(jiān)控系統(tǒng)通常并不具有用于規(guī)定如何對該系統(tǒng)進(jìn)行配置的配置文件。另一方面,在一些例子中,當(dāng)端點(diǎn)對應(yīng)于控制系統(tǒng)時(shí),完整性測量值可以包括與來自控制系統(tǒng)中的所有端點(diǎn)的配置完整性測量值的組合相對應(yīng)的值,如下面結(jié)合圖16所更全面描述的。在方框1508處,示例性完整性 測量數(shù)據(jù)庫618存儲所報(bào)告的完整性測量值。
在方框1510處,示例性完整性測量比較器604將所報(bào)告的完整性測量值與參考值進(jìn)行比較。在方框1512處,示例性完整性測量比較器604判斷所報(bào)告的完整性測量值是否與參考值相匹配。如果不匹配,則控制轉(zhuǎn)到方框1514處,示例性完整性監(jiān)測控制器612基于失敗的完整性測量,來實(shí)現(xiàn)響應(yīng)。在一些例子中,該特定的響應(yīng)取決于什么類型的完整性測量值(例如,軟件、硬件和/或配置)沒有與參考值相匹配。在一些例子中,響應(yīng)的本質(zhì)依賴于端點(diǎn)的本質(zhì)和/或其配置以及與相應(yīng)網(wǎng)絡(luò)中的其它端點(diǎn)的關(guān)系。在一些例子中,該響應(yīng)包括:生成報(bào)警(方框1516),將來自該端點(diǎn)的未來數(shù)據(jù)標(biāo)記成可疑的(方框1518),和/或限制該端點(diǎn)的通信訪問(方框1520)。在一些例子中,對通信訪問進(jìn)行拒絕(即,不提供通信訪問)。在一些例子中,將該端點(diǎn)限制于固件更新通信訪問。在其它例子中,可以啟用通信,但將來自該特定節(jié)點(diǎn)的數(shù)據(jù)標(biāo)記或標(biāo)簽成可疑的。在一些例子中,可以向監(jiān)控系統(tǒng)上的某些端點(diǎn)提供通信訪問,而阻止其它端點(diǎn)的通信。在一些例子中,該響應(yīng)包括方框1516、1518、1520、1522中的一個(gè)以上方框的組合。在一些例子中,當(dāng)對端點(diǎn)進(jìn)行配置時(shí),由用戶規(guī)定所實(shí)現(xiàn)的響應(yīng)。
在實(shí)現(xiàn)了適當(dāng)?shù)捻憫?yīng)之后(方框1514),控制轉(zhuǎn)到方框1522處。返回到方框1512,如果示例性完整性測量比較器604確定完整性測量值與參考值相匹配,則對該端點(diǎn)的完整性進(jìn)行了驗(yàn)證,故不需要進(jìn)一步的動作。在這些例子中,控制直接轉(zhuǎn)到方框1522。在方框1522處,示例性完整性監(jiān)測控制器612判斷是否存在另一個(gè)端點(diǎn)要進(jìn)行驗(yàn)證。如果有,則控制返回到方框1502處。否則,控制轉(zhuǎn)到方框1526處,示例性完整性監(jiān)測控制器612判斷是否繼續(xù)。如果繼續(xù),則控制返回到方框1502。否則,圖15的示例性方法結(jié)束。
圖16是表示用于實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器(SIM)228,以針對與較低層級系統(tǒng)的端點(diǎn)(例如,作為圖3的監(jiān)控系統(tǒng)300中的端點(diǎn)的控制系統(tǒng)200)相對應(yīng)的端點(diǎn)來生成組合的完整性測量值的示例性方法的流程圖。也就是說,在圖16所示出的例子中,SIM 228對應(yīng)于與監(jiān)控網(wǎng)絡(luò)的主工作站(例如,監(jiān)控系統(tǒng)300的主工作站306)進(jìn)行通信的控制系統(tǒng)的主工作站(例如,控制系統(tǒng)200的主工作站220)中實(shí)現(xiàn)的 SIM。換句話說,從監(jiān)控系統(tǒng)300的主工作站306的角度來看,圖6中實(shí)現(xiàn)的SIM 228用于以與上面所描述的IMM 230相同或相似的方式來報(bào)告完整性測量值。但是,如下面所更全面描述的,為了生成這些完整性測量值,SIM 228需要首先從該SIM 228正在監(jiān)測的較低層級端點(diǎn)中實(shí)現(xiàn)的IMM 230獲得或者收集完整性測量值。
圖16的示例性方法開始于方框1602,示例性通信接口602從監(jiān)控系統(tǒng)的系統(tǒng)完整性監(jiān)測器接收隨機(jī)數(shù)與針對與從屬系統(tǒng)(例如,監(jiān)控系統(tǒng)中的控制系統(tǒng))相對應(yīng)的端點(diǎn)的完整性測量值的請求。在一些例子中,雖然該端點(diǎn)指代整個(gè)子系統(tǒng),但通過實(shí)現(xiàn)SIM 228(其接收該請求)的子系統(tǒng)中的主工作站來有效地表示該端點(diǎn)。在一些例子中,利用該請求所提供的隨機(jī)數(shù)值將在生成響應(yīng)時(shí)進(jìn)行使用。在方框1604處,示例性完整性測量自測試504對SIM的完整性測量功能進(jìn)行測試。在方框1606處,示例性完整性監(jiān)測控制器612判斷完整性測量功能是否正常地工作(例如,輸出是所預(yù)期的)。如果沒有,則圖16的示例性方法結(jié)束。在一些例子中,在該方法結(jié)束之前,完整性監(jiān)測控制器612生成用于指示該測試失敗的錯(cuò)誤消息。如果示例性完整性監(jiān)測控制器612確定完整性測量功能正常地工作(方框1606),則控制轉(zhuǎn)到方框1608處。
在方框1608處,示例性完整性監(jiān)測控制器612清空所有的完整性測量值寄存器622、624、626。在方框1610處,示例性完整性監(jiān)測控制器612將來自從屬系統(tǒng)中的端點(diǎn)的軟件完整性測量值添加到示例性軟件測量值寄存器622中。在一些例子中,軟件完整性測量值是從完整性測量數(shù)據(jù)庫618獲得的,其中對相應(yīng)的端點(diǎn)進(jìn)行監(jiān)測的SIM 228先前請求了該完整性測量數(shù)據(jù)庫618。在其它例子中,響應(yīng)于在方框1602處接收的請求,SIM 228請求軟件完整性測量值。在方框1612處,示例性完整性監(jiān)測控制器612將來自從屬系統(tǒng)中的端點(diǎn)的硬件完整性測量值添加到示例性硬件測量值寄存器624中。在一些例子中,硬件完整性測量值是從完整性測量數(shù)據(jù)庫618獲得的,其中對相應(yīng)的端點(diǎn)進(jìn)行監(jiān)測的SIM 228先前請求了該完整性測量數(shù)據(jù)庫618。在其它例子中,響應(yīng)于在方框1602處接收的請求,SIM 228請求硬件完整性測量值。在方框1614處,示例性完整性監(jiān)測控制器612將來自從屬系統(tǒng)中的端點(diǎn)的配置完整性測量值添加到示例性配置測量值寄存 器626中。在一些例子中,配置完整性測量值是從完整性測量數(shù)據(jù)庫618獲得的,其中對相應(yīng)的端點(diǎn)進(jìn)行監(jiān)測的SIM 228先前請求了該完整性測量數(shù)據(jù)庫618。在其它例子中,響應(yīng)于在方框1602處接收的請求,SIM 228請求配置完整性測量值。
在方框1616處,示例性完整性監(jiān)測控制器612判斷在從屬系統(tǒng)中是否存在另一個(gè)端點(diǎn)。如果有,則控制返回到方框1610、1612和1614,以便將來自該端點(diǎn)的相應(yīng)完整性測量值添加到相應(yīng)的寄存器622、624、626中。在一些例子中,通過將這些完整性測量值附加到先前增加的完整性測量值中,來將它們添加到相應(yīng)的寄存器中。如果示例性完整性監(jiān)測控制器612確定在從屬系統(tǒng)中不存在更多的端點(diǎn)(方框1616),則控制轉(zhuǎn)到方框1618處,示例性完整性測量生成器608生成針對該從屬系統(tǒng)的組合的完整性測量值。在一些例子中,通過計(jì)算軟件、硬件和配置寄存器622、624、626的每一個(gè)中的字符串值的校驗(yàn)和,來生成該組合的完整性測量值。在方框1620處,示例性通信接口602向監(jiān)控系統(tǒng)的SIM發(fā)送該組合的完整性測量值的報(bào)告,在該點(diǎn),圖16的示例性方法結(jié)束。
圖17是可以進(jìn)行使用和/或編程來執(zhí)行圖7的示例性方法,以實(shí)現(xiàn)圖2和/或圖4的示例性配置模塊226的示例性處理器平臺1700的框圖。例如,該處理器平臺1700可以是服務(wù)器、個(gè)人計(jì)算機(jī)、移動設(shè)備(例如,蜂窩電話、智能電話、諸如iPadTM之類的平板設(shè)備)、個(gè)人數(shù)字助理(PDA)、互聯(lián)網(wǎng)設(shè)備、DVD播放器、CD播放器、數(shù)字視頻錄像機(jī)、藍(lán)光播放器、游戲控制臺、個(gè)人視頻錄像機(jī)、機(jī)頂盒或者任何其它類型的計(jì)算設(shè)備。
所示出的例子的處理器平臺1700包括處理器1712。所示出的例子的處理器1712是硬件。例如,處理器1712可以通過來自任何期望的系列或者制造商的一個(gè)或多個(gè)集成電路、邏輯電路、微處理器或控制器來實(shí)現(xiàn)。
所示出的例子的處理器1712包括本地存儲器1713(例如,高速緩存)。在所示出的例子中,處理器1712實(shí)現(xiàn)示例性配置文件生成器404和/或示例性參考值生成器406。所示出的例子的處理器1712經(jīng)由總線1718,與包括易失性存儲器1714和非易失性存儲器1716的主存儲器進(jìn)行通信。易失性存儲器1714可以通過同步動態(tài)隨機(jī)存取存儲器(SDRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、RAMBUS動態(tài)隨機(jī)存取存儲器(RDRAM)和/或任何 其它類型的隨機(jī)存取存儲器設(shè)備來實(shí)現(xiàn)。非易失性存儲器1716可以通過閃存和/或任何其它期望類型的存儲器設(shè)備來實(shí)現(xiàn)。對于主存儲器1714、1716的訪問,由存儲器控制器來控制。
所示出的例子的處理器平臺1700還包括接口電路1720。接口電路1720可以通過任何類型的接口標(biāo)準(zhǔn)(例如,以太網(wǎng)接口、通用串行總線(USB)和/或PCI快速接口)來實(shí)現(xiàn)。
在所示出的例子中,一個(gè)或多個(gè)輸入設(shè)備1722連接到接口電路1720。輸入設(shè)備1722準(zhǔn)許用戶向處理器1712輸入數(shù)據(jù)和命令。例如,輸入設(shè)備可以通過音頻傳感器、麥克風(fēng)、照相機(jī)(靜態(tài)或視頻)、鍵盤、按鍵、鼠標(biāo)、觸摸屏、跟蹤板、跟蹤球、等位點(diǎn)裝置(isopoint)和/或語音識別系統(tǒng)來實(shí)現(xiàn)。
此外,一個(gè)或多個(gè)輸出設(shè)備1724也連接到所示出的例子的接口電路1720。例如,輸出設(shè)備1724可以通過顯示設(shè)備(例如,發(fā)光二極管(LED)、有機(jī)發(fā)光二極管(OLED)、液晶顯示器、陰極射線管顯示器(CRT)、觸摸屏、觸覺輸出裝置、發(fā)光二級管(LED)、打印機(jī)和/或揚(yáng)聲器)來實(shí)現(xiàn)。因此,所示出的例子的接口電路1720通常包括圖形驅(qū)動卡、圖形驅(qū)動芯片或者圖形驅(qū)動處理器。
此外,所示出的例子的接口電路1720還包括通信設(shè)備,比如發(fā)射器、接收器、收發(fā)器、調(diào)制解調(diào)器和/或有助于經(jīng)由網(wǎng)絡(luò)1726(例如,以太網(wǎng)連接、數(shù)字用戶線路(DSL)、電話線、同軸線、蜂窩電話系統(tǒng)等等)與外部機(jī)器(例如,任何類型的計(jì)算設(shè)備)交換數(shù)據(jù)的網(wǎng)絡(luò)接口卡。
所示出的例子的處理器平臺1700還包括用于存儲軟件和/或數(shù)據(jù)的一個(gè)或多個(gè)大容量存儲設(shè)備1728。例如,大容量存儲設(shè)備1728可以包括圖4的示例性配置數(shù)據(jù)庫408。該大容量存儲設(shè)備1728的例子包括軟盤驅(qū)動器、硬盤磁盤、壓縮盤驅(qū)動器、藍(lán)光光盤驅(qū)動器、RAID系統(tǒng)和數(shù)字多功能光盤(DVD)驅(qū)動器。
用于實(shí)現(xiàn)圖7的方法的編碼指令1732可以存儲在大容量存儲設(shè)備1728、易失性存儲器1714、非易失性存儲器1716和/或諸如CD或DVD之類的移動的有形計(jì)算機(jī)可讀存儲介質(zhì)中。
圖18是可以進(jìn)行使用和/或編程來執(zhí)行圖8-圖10的示例性方法,以實(shí) 現(xiàn)圖2、圖3和/或圖5的示例性完整性測量模塊230的示例性處理器平臺1800的框圖。例如,該處理器平臺1800可以是服務(wù)器、個(gè)人計(jì)算機(jī)、移動設(shè)備(例如,蜂窩電話、智能電話、諸如iPadTM之類的平板設(shè)備)、個(gè)人數(shù)字助理(PDA)、互聯(lián)網(wǎng)設(shè)備、DVD播放器、CD播放器、數(shù)字視頻錄像機(jī)、藍(lán)光播放器、游戲控制臺、個(gè)人視頻錄像機(jī)、機(jī)頂盒或者任何其它類型的計(jì)算設(shè)備。
所示出的例子的處理器平臺1800包括處理器1812。所示出的例子的處理器1812是硬件。例如,處理器1812可以通過來自任何期望的系列或者制造商的一個(gè)或多個(gè)集成電路、邏輯電路、微處理器或控制器來實(shí)現(xiàn)。
所示出的例子的處理器1812包括本地存儲器1813(例如,高速緩存)。在所示出的例子中,處理器1812實(shí)現(xiàn)示例性完整性測量生成器502、示例性完整性測量自測試器504、示例性完整性測量控制器506和/或示例性通信認(rèn)證器508。所示出的例子的處理器1812經(jīng)由總線1818,與包括易失性存儲器1814和非易失性存儲器1816的主存儲器進(jìn)行通信。易失性存儲器1814可以通過同步動態(tài)隨機(jī)存取存儲器(SDRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、RAMBUS動態(tài)隨機(jī)存取存儲器(RDRAM)和/或任何其它類型的隨機(jī)存取存儲器設(shè)備來實(shí)現(xiàn)。非易失性存儲器1816可以通過閃存和/或任何其它期望類型的存儲器設(shè)備來實(shí)現(xiàn)。對于主存儲器1814、1816的訪問,由存儲器控制器來控制。
所示出的例子的處理器平臺1800還包括接口電路1820。接口電路1820可以通過任何類型的接口標(biāo)準(zhǔn)(例如,以太網(wǎng)接口、通用串行總線(USB)和/或PCI快速接口)來實(shí)現(xiàn)。
在所示出的例子中,一個(gè)或多個(gè)輸入設(shè)備1822連接到接口電路1820。輸入設(shè)備1822準(zhǔn)許用戶向處理器1812輸入數(shù)據(jù)和命令。例如,輸入設(shè)備可以通過音頻傳感器、麥克風(fēng)、照相機(jī)(靜態(tài)或視頻)、鍵盤、按鍵、鼠標(biāo)、觸摸屏、跟蹤板、跟蹤球、等位點(diǎn)裝置(isopoint)和/或語音識別系統(tǒng)來實(shí)現(xiàn)。
此外,一個(gè)或多個(gè)輸出設(shè)備1824也連接到所示出的例子的接口電路1820。例如,輸出設(shè)備1824可以通過顯示設(shè)備(例如,發(fā)光二極管(LED)、有機(jī)發(fā)光二極管(OLED)、液晶顯示器、陰極射線管顯示器(CRT)、觸摸 屏、觸覺輸出裝置、發(fā)光二級管(LED)、打印機(jī)和/或揚(yáng)聲器)來實(shí)現(xiàn)。因此,所示出的例子的接口電路1820通常包括圖形驅(qū)動卡、圖形驅(qū)動芯片或者圖形驅(qū)動處理器。
此外,所示出的例子的接口電路1820還包括通信設(shè)備,比如發(fā)射器、接收器、收發(fā)器、調(diào)制解調(diào)器和/或有助于經(jīng)由網(wǎng)絡(luò)1826(例如,以太網(wǎng)連接、數(shù)字用戶線路(DSL)、電話線、同軸線、蜂窩電話系統(tǒng)等等)與外部機(jī)器(例如,任何類型的計(jì)算設(shè)備)交換數(shù)據(jù)的網(wǎng)絡(luò)接口卡。
所示出的例子的處理器平臺1800還包括用于存儲軟件和/或數(shù)據(jù)的一個(gè)或多個(gè)大容量存儲設(shè)備1828。例如,大容量存儲設(shè)備1928可以包括圖5的示例性軟件測量值寄存器512、示例性配置測量值寄存器514、示例性硬件測量值寄存器516、示例性授權(quán)信息數(shù)據(jù)庫518和/或示例性配置數(shù)據(jù)庫520。該大容量存儲設(shè)備1828的例子包括軟盤驅(qū)動器、硬盤磁盤、壓縮盤驅(qū)動器、藍(lán)光光盤驅(qū)動器、RAID系統(tǒng)和數(shù)字多功能光盤(DVD)驅(qū)動器。
用于實(shí)現(xiàn)圖8-圖10的方法的編碼指令1832可以存儲在大容量存儲設(shè)備1828、易失性存儲器1814、非易失性存儲器1816和/或諸如CD或DVD之類的移動的有形計(jì)算機(jī)可讀存儲介質(zhì)中。
圖19是可以進(jìn)行使用和/或編程來執(zhí)行圖11-圖16的示例性方法,以實(shí)現(xiàn)圖2、圖3和/或圖6的示例性系統(tǒng)完整性監(jiān)測器228的示例性處理器平臺1900的框圖。例如,該處理器平臺1900可以是服務(wù)器、個(gè)人計(jì)算機(jī)、移動設(shè)備(例如,蜂窩電話、智能電話、諸如iPadTM之類的平板設(shè)備)、個(gè)人數(shù)字助理(PDA)、互聯(lián)網(wǎng)設(shè)備、DVD播放器、CD播放器、數(shù)字視頻錄像機(jī)、藍(lán)光播放器、游戲控制臺、個(gè)人視頻錄像機(jī)、機(jī)頂盒或者任何其它類型的計(jì)算設(shè)備。
所示出的例子的處理器平臺1900包括處理器1912。所示出的例子的處理器1912是硬件。例如,處理器1912可以通過來自任何期望的系列或者制造商的一個(gè)或多個(gè)集成電路、邏輯電路、微處理器或控制器來實(shí)現(xiàn)。
所示出的例子的處理器1912包括本地存儲器1913(例如,高速緩存)。在所示出的例子中,處理器1912實(shí)現(xiàn)示例性完整性測量比較器604、示例性授權(quán)控制器606、示例性完整性測量生成器608、示例性完整性測量自測試器610和/或示例性完整性監(jiān)測控制器612。所示出的例子的處理器1912 經(jīng)由總線1918,與包括易失性存儲器1914和非易失性存儲器1916的主存儲器進(jìn)行通信。易失性存儲器1914可以通過同步動態(tài)隨機(jī)存取存儲器(SDRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、RAMBUS動態(tài)隨機(jī)存取存儲器(RDRAM)和/或任何其它類型的隨機(jī)存取存儲器設(shè)備來實(shí)現(xiàn)。非易失性存儲器1916可以通過閃存和/或任何其它期望類型的存儲器設(shè)備來實(shí)現(xiàn)。對于主存儲器1914、1916的訪問,由存儲器控制器來控制。
所示出的例子的處理器平臺1900還包括接口電路1920。接口電路1920可以通過任何類型的接口標(biāo)準(zhǔn)(例如,以太網(wǎng)接口、通用串行總線(USB)和/或PCI快速接口)來實(shí)現(xiàn)。
在所示出的例子中,一個(gè)或多個(gè)輸入設(shè)備1922連接到接口電路1920。輸入設(shè)備1922準(zhǔn)許用戶向處理器1912輸入數(shù)據(jù)和命令。例如,輸入設(shè)備可以通過音頻傳感器、麥克風(fēng)、照相機(jī)(靜態(tài)或視頻)、鍵盤、按鍵、鼠標(biāo)、觸摸屏、跟蹤板、跟蹤球、等位點(diǎn)裝置(isopoint)和/或語音識別系統(tǒng)來實(shí)現(xiàn)。
此外,一個(gè)或多個(gè)輸出設(shè)備1924也連接到所示出的例子的接口電路1920。例如,輸出設(shè)備1924可以通過顯示設(shè)備(例如,發(fā)光二極管(LED)、有機(jī)發(fā)光二極管(OLED)、液晶顯示器、陰極射線管顯示器(CRT)、觸摸屏、觸覺輸出裝置、發(fā)光二級管(LED)、打印機(jī)和/或揚(yáng)聲器)來實(shí)現(xiàn)。因此,所示出的例子的接口電路1920通常包括圖形驅(qū)動卡、圖形驅(qū)動芯片或者圖形驅(qū)動處理器。
此外,所示出的例子的接口電路1920還包括通信設(shè)備,比如發(fā)射器、接收器、收發(fā)器、調(diào)制解調(diào)器和/或有助于經(jīng)由網(wǎng)絡(luò)1926(例如,以太網(wǎng)連接、數(shù)字用戶線路(DSL)、電話線、同軸線、蜂窩電話系統(tǒng)等等)與外部機(jī)器(例如,任何類型的計(jì)算設(shè)備)交換數(shù)據(jù)的網(wǎng)絡(luò)接口卡。
所示出的例子的處理器平臺1900還包括用于存儲軟件和/或數(shù)據(jù)的一個(gè)或多個(gè)大容量存儲設(shè)備1928。例如,大容量存儲設(shè)備1928可以包括圖6的示例性參考值數(shù)據(jù)庫616、示例性完整性測量數(shù)據(jù)庫618、示例性授權(quán)信息數(shù)據(jù)庫620、示例性軟件測量值寄存器622、示例性硬件測量值寄存器624和/或示例性配置測量值寄存器626。該大容量存儲設(shè)備1928的例子包括軟盤驅(qū)動器、硬盤磁盤、壓縮盤驅(qū)動器、藍(lán)光光盤驅(qū)動器、RAID系統(tǒng)和數(shù)字 多功能光盤(DVD)驅(qū)動器。
用于實(shí)現(xiàn)圖11-圖16的方法的編碼指令1932可以存儲在大容量存儲設(shè)備1928、易失性存儲器1914、非易失性存儲器1916和/或諸如CD或DVD之類的移動的有形計(jì)算機(jī)可讀存儲介質(zhì)中。
根據(jù)前述內(nèi)容,應(yīng)當(dāng)理解的是,上面所公開的方法、裝置和制品提高了工業(yè)企業(yè)系統(tǒng)中的組件的安全性和可靠性。不同于基于來自原始設(shè)備制造商的質(zhì)量保證來承擔(dān)網(wǎng)絡(luò)通信設(shè)備(端點(diǎn))中的完整性的現(xiàn)有方法,本文所公開的例子對于這些端點(diǎn)的完整性進(jìn)行驗(yàn)證。此外,當(dāng)將一個(gè)端點(diǎn)初始注冊和/或許可進(jìn)入特定的網(wǎng)絡(luò)時(shí),和/或當(dāng)這些端點(diǎn)處于運(yùn)行時(shí)間期間的操作時(shí),完成這種驗(yàn)證。用此方式,可以檢測損害端點(diǎn)的完整性的潛在安全漏洞和/或其它故障,而不管它們何時(shí)發(fā)生,以確保來自這些端點(diǎn)的通信不會影響其它端點(diǎn),并關(guān)于被損害端點(diǎn)采取補(bǔ)救措施。另外,本文所公開的教導(dǎo)內(nèi)容針對于對從屬較高層級監(jiān)控系統(tǒng)的相應(yīng)系統(tǒng)的驗(yàn)證,實(shí)現(xiàn)較低層級完整性測量的上卷(roll-up)和/或組合。
雖然本文公開了某些示例性方法、裝置和制品,但本專利的覆蓋范圍并不受此限制。相反,本專利覆蓋明確地落入本專利的權(quán)利要求的保護(hù)范圍之內(nèi)的所有方法、裝置和制品。