目前全球電表安裝數量接近20億臺,但只有不到10%的電表可以被認為是具有雙向通信功能的“智能”儀表。隨著下一代儀表的開發和安裝,今后幾年中這種情況將會得到改變。如果再將氣表和水表的數量增加進去,那么儀表數量很容易翻倍至40億臺甚至更多。
下一代智能儀表會將網關引入家庭,允許公用事業公司和消費者管理能耗。公用事業公司可以建立動態定價以便鼓勵消費者避開高峰負荷時間,而消費者也可以更好地跟蹤使用情況,并決定何時不使用大功率電器以縮減能源帳單。有關使用情況的數據最初可以使用連接公用事業公司的PC或智能手機通過互聯網進行查詢,這樣消費者就可以訪問到離線使用數據,但未來消費者能夠直接登錄智能儀表獲得實時能耗數據。保護這些數據的安全性是公用事業公司和電子儀表供應商面臨的主要挑戰之一。
本地攻擊者能夠通過物理方式訪問儀表、網關或這些設備之間的連接。他們會試圖透露或改變存儲在儀表或網關中的使用數據,或者在城域網中的儀表和網關之間傳送的數據。這種威脅模型假設本地攻擊者的動機沒有WAN攻擊者強烈,因為本地攻擊者的一次成功攻擊只會影響一個網關。本地攻擊者也有可能是試圖不想付費使用服務的消費者。
位于WAN中的攻擊者(WAN攻擊者)可能試圖破壞通過WAN傳送的儀表數據和/或配置數據的機密性和/或完整性。WAN攻擊者也可能試圖通過WAN操控基礎設施中的一個設備(如儀表、網關或可控制的本地系統),對該設備進行破壞,或對相應的電網進行破壞(例如通過向外部實體發送偽造的儀表數據)。即使在共同標準(Common Criteria)概念中具有最大攻擊可能性的攻擊者(即具有大攻擊可能性的WAN攻擊者)決定了漏洞分析水平,但以下威脅定義承認本地攻擊者的攻擊可能性要比遠程攻擊者小。(也請參考德國聯邦信息安全辦公室發布的智能測量系統v1.01.1草案保護規范部分中的6.11.2章節描述)。
在設計電子儀表時需要考慮幾個關鍵因素——儀表功耗、成本和可靠性。功耗和成本都必須盡可能小,以確保數百萬臺儀表不會給電網增加任何顯著的功率泄漏,與此同時,儀表成本必須要低,因為公用事業公司必須能夠以適當的成本替代老的儀表。基于長工作壽命和自然特性/服務質量的原因,可靠性要求是顯而易見的。另外,如前所述,這些儀表必須是安全的——數據加密必須是儀表設計的有機組成部分,要確保黑客無法收集到個人數據或訪問公用事業網絡。
設計智能儀表的公司必須要滿足全球各個地區的不同法規要求以及每個市場要求的不同服務和功能。舉例來說,美國的自動化儀表讀取法規規定了讀表頻率、數據傳輸機制以及在任何點的儀表中必須及時存儲的本地數據量。為防止數據丟失系統必須存儲的數據量將影響智能儀表中需要的本地內存容量,而這又會影響到元件的選擇和成本。
在德國,BSI為與廣域網連接的通信網關定義了安全保護規范,并且強制使用安全模塊。這種網關要達到共同標準(Common Criteria)EAL4+安全等級。VaultIC4xxx安全模塊是業內多種安全解決方案之一,已經能夠提供這種安全等級,因而能最大限度地減少網關制造商的認證工作量。
智能儀表基礎
雖然定義多少有些變化,但智能儀表無外乎是監視能量、煤氣或水的消耗,然后一般是在LCD顯示器上實時顯示消耗數據。這些儀表一般都有一個通信接口——在美國,許多公司將ZigBee無線射頻作為標準接口鏈接到公用事業公司,而在歐洲,許多公用事業組織一致同意使用電力線通信將儀表鏈接到公用事業公司。這些通信接口也必須具有低功耗特性,即使它們大部分時間處于“睡眠”或待機模式。
電力公司從固定費率帳單向計時帳單的轉換催生了第二代電子儀表,它們具有足夠的智能處理計時帳單,并支持自動抄表(AMR)。這種改變需要功能更強大的微處理器、無線射頻、信息豐富的LCD和實時時鐘(RTC)來配合模擬前端(AFE)。在這一代中的第一批儀表將使用多個芯片來實現所有功能。然而,隨著公用事業公司努力降低成本,元件/儀表供應商將進一步提高元件集成度。
智能儀表的核心是低功耗微控制器加上模擬前端(AFE)。例如在電表中,先由AFE檢測電流和電壓,將檢測得到的值轉換成數字格式,然后將數字值發送到微控制器,再由微控制器處理這些數據、在本地內存中存儲讀數、并在小型LCD屏幕上顯示相關信息。最后通過通信接口定期地向公用事業公司上傳數據(圖1)。對于氣表或水表來說,特別低的功耗是附加要求,因為這些儀表必須采用電池供電,而且電池必須持續工作幾年時間。或者也可能使用某種類型的能量收集能源取代電池。
圖1:一款典型的安全智能電表,利用了INSIDE Secure公司的VaultIC460模塊提供數據安全和防篡改保護。這種儀表還包含了用于檢測電能使用情況的模擬前端、用于處理和顯示收集到的數據的安全微控制器以及用于向公用事業公司回傳數據的通信接口。
智能儀表設計的另外一個重要方面是防止儀表被篡改——全球有許多地方公用事業偷竊量占總使用量的比例十分顯著。通過采用各種檢測機制來檢測儀表外殼是否被打開、是否有探頭插入、附近是否有強大的磁場、或其它一些篡改方式,儀表可以向公用事業公司回傳消息甚至鎖住消費者,直到服務技術人員到現場判斷觸發篡改告警的真實事件。這種方法有助于公用事業公司實現更好的控制,同時減少沒有測量到的損失。
為了設計一臺儀表,最佳的啟動方式是定義一個公共平臺,這個平臺只需很少量修改就能跨平臺和跨地區使用。然后判斷內部微控制器(MCU)執行所有任務所需的計算能力。市場上有許多現成的高集成度MCU可以完成這些任務,但當加入低功耗約束條件和數據加密要求后,可選余地就相當窄了。當然,也可以為電子儀表應用專門設計一種專用系統級芯片(SoC),但成本和開發時間可能是個問題。不過最終解決方案可能因消除了許多分立元件而降低總體系統成本。
雖然許多微控制器供應商都能提供包含片上模數轉換器(ADC)的MCU,但信號捕獲和轉換要求經常導致選用獨立的模擬前端芯片。這種芯片設計用于檢測使用情況(電流、氣流、水流),并將傳感器輸出轉換成數字形式以便分析消耗數據。例如在電表中,單相或多相前端可以提供許多先進的電能監視特性,如功率因數、矢量和及諧波分量。測量精度和電子快速瞬態(EFT)響應是電表設計的關鍵要求。
攻擊:發展水平
在實現系統硬件時,設計師必須考慮各種系統入侵方式。一般有4種系統入侵方式,包括:
竊聽——黑客可以監視所有電源和接口連接以及處理器在正常工作期間產生的任何其它電磁輻射的模擬特征。
軟件攻擊——普通處理器的通信接口可以被用來嘗試利用在數據通信協議、加密算法和系統其它方面發現的安全漏洞。
故障產生——黑客可以通過改變時序和電壓值形成異常工作狀態,進而導致處理器產生故障,并進入允許訪問系統安全部分的狀態。另外,將芯片表面暴露在激光下也可以借助電路天生的光電效應產生故障。一旦芯片表面被暴露,激光是最難對付的一種技術。然而,激光的使用可能更適合歸到下一個覆蓋入侵技術的種類,因為這種入侵方式下芯片表面必須要暴露。
微探測——這種方法要求直接訪問芯片表面,以便物理探針能夠注入信號、捕獲數據、操作寄存器并干擾系統操作,從而竊取安全信息。
微探測是一種入侵攻擊方式,需要復雜的設備來訪問片上電路,而且一般要求很長時間才能獲得訪問權,同時會破壞電路封裝甚至電路本身。這也是一個相當昂貴的挑戰,因此只有當回報值得前期反向工程芯片一部分或整個芯片的費用時才會用這種方式。
其它三種攻擊方法都是非入侵式攻擊,通常在最初解決方案之后可以很快再現,因為不要求對電路進行物理入侵。被攻擊電路不會有物理損壞,攻擊中使用的設備相對比較簡單,成本也較低。
差分功耗分析(DPA)是一種流行的黑客方法,通過同時監視正常操作和故障期間操作情況,能讓黑客判斷軟件的執行,因此電路設計應包括應對這類分析的各種對策。
差分功耗分析概述
DPA是Cryptography Research公司(現在是Rambus公司的一個事業部)研究人員發明的一種使用統計分析技術的攻擊方法。它能幫助密碼破譯者通過分析電路功耗提取出密鑰,并獲取各種IC和防篡改器件中嵌入的安全信息。(欲觀看有關DPA的簡短視頻,請登錄http://www.cryptography.com/technology/dpa/dpa-video.html)。一種被稱為簡單功耗分析(SPA)的方法則沒那么復雜,它不使用統計運算技術。SPA和DPA攻擊都是非入侵式攻擊。這些攻擊無需目標電路知識就能自動執行。
在系統或芯片設計期間通過減少每個軟件或硬件操作之間一般都存在的功耗變化可以有效對付SPA和DPA攻擊。這樣,通過“水平化”功耗,SPA和DPA方法就無法判斷什么操作在進行,從而無法提取任何有用的信息。水平化功耗的一種方法是在功耗測量中增加不同類型的噪聲,從而模糊真實的功耗。另外,在芯片設計過程中加擾各種數據總線和地址線也能起到模糊真實功耗的作用。
由于密碼包含大量按位算術功能,分析代碼中的常數和記憶順序可以給黑客提示所使用的加密算法類型。通過在代碼執行期間對功耗波動應用統計分析技術,指令序列可以得到重構。這樣對隱藏操作的需求成為主要考慮因素。
隨機化技術也能應用到算法中,以便系統中操作的數據表現得更加隨機,但可以通過重構產生正確的結果。如果系統允許修改加密協議,那么還可以增加額外的對策,即在系統壽命期內通過修改協議來持續刷新和更新加密信息。
基本上我們可以運用老的類比法——如果你將安全想象為一條鏈,那么這條鏈實際上只是相當于最弱的鏈路(安全協議——加密技術——密鑰存儲)。每個領域都必須進行分析并防止入侵。
在系統中的芯片的物理設計過程中,應采用適當的電路和版圖方法防止芯片反向工程,因為反向工程能讓黑客重構電路并分析數據處理。像加擾片上數據總線和存儲器地址線等簡單方法就是一個好的起點。另外一些方案包括加密通常存儲在微控制器或專用安全控制器中的安全密鑰。
一旦使用強大的加密技術,那么密鑰存儲就成為最弱的鏈路。另外,許多系統可能將密鑰的多個拷貝存放在不同地點,但有些地點黑客可能會訪問到。為了排除這種攻擊方法,密鑰可以存儲在:
1) 在線的中央服務器中(但裝置昂貴,響應時間長)
2) 半在線(系統在啟動時接收密鑰,在運行期間密鑰通常保持在DRAM中)——這是一種不好的方案,因為DRAM可能被監視
3) 安全存儲密鑰拷貝的離線設備中
一般來說,密鑰對每個用戶來說都應不同(但這會要求許多不同的密鑰,因而密鑰產生電路應具有可擴展性)。密鑰還應能立即訪問(這與前一點相矛盾,并要求少量密鑰)。最好的替代方案是從主密鑰派生出用戶密鑰,并將主密鑰存儲在“保險庫”中。這樣能在遭遇入侵時保持業務的連貫性。
非入侵式攻擊的結果可能特別危險,因為受害系統的主人可能不會注意到密鑰已被偷竊,從而在密鑰被非法使用前無法足夠快速地使泄漏密鑰失效。其次,非入侵式攻擊不是非常明顯,因為必要設備(例如帶專用分析軟件的小型DSP板)通常可以適度低成本地生產,并且很容易更新為新的分析算法。
產生故障攻擊
在小故障攻擊方式中,黑客會故意產生故障并致使電路中的一個或多個邏輯單元翻轉為錯誤狀態。當這種現象發生時,黑客可以嘗試用幾乎任意一個不同指令代替單個重要的處理器指令。小故障還能用來破壞數據值,因為數據要在寄存器和存儲器之間傳送。
一共有4種可以用來創建只對安全處理器中的少數機器周期有影響的相當可靠的故障方法:外部電場瞬變、時鐘信號瞬變、電源瞬變以及在暴露芯片表面的激光照射。需要重點考慮的是黑客可能想用小故障代替的指令——條件跳轉或之前的測試指令。
小故障可能會在許多安全應用程序的處理過程中打開漏洞窗口。這種漏洞將允許黑客繞過加密障礙,方法是阻止那些警告系統有個認證企圖未成功的代碼的執行。
時鐘信號毛刺是目前能夠產生的最簡單、最實用的一種小故障。這種方法是增加像毛刺一樣的一些時鐘,臨時將時鐘頻率增加半個或半個多周期,這樣一些觸發器會試圖在新狀態到達前采樣它們的輸入。一些系統供應商聲稱他們的系統在時鐘信號處理邏輯中包含高頻檢測器。然而,黑客可以通過仔細選擇毛刺產生過程中的時鐘信號占空比避開這些檢測器。為了最大限度地減小系統危害,設計師可以在可能遭受攻擊的任何明顯的反應和關鍵操作之間插入隨機時延。產生內部時鐘信號的一種解決方案是創建一個由外部時鐘饋給的隨機位序列發生器。
針對入侵篡改檢測,清零機制可以在檢測到篡改時擦除秘密。因此對于能夠在電池支撐的SRAM中存儲秘密的較大安全模塊來說,歸零機制是一種高效的防篡改方法。
軟件攻擊
緩存溢出攻擊是最嚴重的軟件安全入侵方法之一。目前有50%以上被廣泛利用的漏洞是由緩存溢出造成的,而且這個比例還在隨時間增加。這種溢出攻擊會對專用嵌入式系統和通用系統造成嚴重的安全問題。當有更多嵌入式系統聯網時,防止嵌入式系統遭受緩存溢出攻擊成為一個重要的研究課題。保護嵌入式系統免受緩存溢出攻擊的高效解決方案必須包含兩大要素:
· 必須提供完整的保護功能,而且要求和規則必須簡單,第三方軟件開發人員能夠很容易遵循。
· 必須提供高效的檢查機制,以便系統集成商能夠很容易地檢查某個組件是否已經得到保護。由于一些組件的源代碼可能無法提供給系統集成商,因此即使在不知道源代碼的情況下也必須能夠執行安全檢查。
篡改可以有許多形式,并不總是黑客的問題——即使服務人員也可能訪問儀表并危害數據安全。事實上,所有報告的數據安全破壞事件中有約25%是內部人員的惡意行為。例如,在診斷工具連接儀表以記錄、修改或更新儀表軟件的儀表維護過程中,服務人員可能會訪問安全數據。為了防止這種情況發生,必須通過安全引擎將人工干預阻擋在門外,從而排除數據操作或惡意修改的可能性。
如前所述,公用事業網絡要求滿足ANSI C12.19中定義的安全性和更高層互操作性,以確保各個智能電網子系統作為安全網絡運行。業界正在開發其它技術,幫助確保網絡間通信的可靠和安全。目前許多系統采用AES和Elliptic Curve等成熟算法。未來,公用事業網絡中的更高安全等級可能會用256位方案代替128位加密方案。像ZigBee Smart Energy 2和802.16 WiMAX等標準就要求這種安全等級。登錄http://smartgrid.ieee.org/standa 。.. ards-in-development可以查看正在為美國智能電網開發的標準清單。
整合硬件和軟件安全性是建立受信任的執行環境的基礎,只有這樣的環境才能實現受信任的通信和功能擴展。一個名為Hydra的英國項目就是業界定義的受信任系統的一個例子,該項目在智能儀表上實現這些解決方案并提供像Telecare等增殖服務。Hydra的范例應用是遠程醫療,它能把在家里測量的體重和血壓值通過安全的端到端數據傳送方式直接發送給病人的個人健康記錄入口或醫師。通過解決遠程醫療數據傳送方面的技術問題,Hydra將有助于解決其它增殖服務問題,包括家庭能量管理、水、家庭安全、家庭自動化等。Hydra是針對智能電網的未來應用和服務范例。
補充報道:VaultIC介紹
在任何系統設計中,在一顆芯片上集成的內容越多,系統被篡改的可能性就越小。另外,在同樣要求低功耗和客戶安全性的智能儀表設計中,高度集成的安全解決方案是個強烈要求。Inside Secure公司推出的VaultIC4XX系列產品就是幾種高集成度的解決方案之一,可以提供安全的密鑰存儲、篡改檢測、硬件三重DES和AES加密加速和保持系統安全的許多其它特性。其它安全特性包括功耗、頻率和溫度保護邏輯、對程序數據和地址的邏輯加擾、功耗分析對策以及受監視模式控制的存儲器訪問(見圖A)。
圖2:VaultIC4xx解決方案是一種高度集成的系統級芯片,包括許多支持多種加密算法的加速引擎以及8/16位RISC處理器內核和大量片上存儲器——高達128kB的可編程EEPROM。
借助這些片上硬件加速引擎,VaultIC4xx系列可以處理DES/3DES算法以及AES 128/192/256位算法、多達4096位的RSA算法、多達2048位的DSA算法以及多達384位的Elliptic Curve算法。這些安全特性允許控制器使用口令、安全通道協議(SCP02/SCP03)或微軟的迷你卡驅動強大認證功能提供基于FIPS 140-2身份的認證。
VaultIC4xx控制器能夠保持存儲器內容的安全,并避免在代碼執行期間泄漏信息。該控制器包括電壓、頻率和溫度檢測器、非法代碼執行阻止、篡改監視以及側通道攻擊和探測阻止功能。這些芯片能夠檢測篡改企圖,并在發生這類事件時破壞敏感數據,從而避免數據機密性遭到破壞。
評論
查看更多