2008年7月4日 星期五

用於電子護照的非接觸安全控制器

圖1:RFID與非接觸安全控制器之間的差異。 圖2:α輻射故障攻擊。 目前,全球許多國家均基於安全考量而採用了電子護照,美國已在2006年起實施此一規範。與傳統護照相比,電子護照的最大特色在於它能夠在晶片中儲存擁有者的所有相關資料,透過非接觸式晶片,以短距無線技術來存取並讀取這些資訊,海關能快速讀取並掌握護照持有者的身份。隨著電子護照逐漸為多個國家採用,也為各式各樣的非接觸式控制器開啟了更大的市場。 現在,電子護照進入了一個整合非接觸安全控制器的新技術時代,隨著大規模的應用,這類文件的處理已經變得更安全和更方便。 自2006年10月26日起,任何透過美國免簽證計劃(VWP)辦理的護照,都必須是電子護照,這樣就能免簽證進入美國。電子護照是整合了非接觸安全控制器的護照,其中保存了印製在護照紙面上的相同資訊,包括持有者的名字、出生日期,以及其他生平資訊。這些電子護照必須符合由國際民航組織(ICAO)制訂的國際技術標準,該組織規定要求在安全控制器上保存安全等級和生物資訊。VWP是推動電子護照實施的主要動力,自2006年11月開始,大約有33個國家推出或開始推行電子護照。 隨著電子護照的實施,也出現了很多公開討論非接觸控制器用於電子護照的安全性問題。市場上存在三種主要的‘非接觸’晶片:‘純粹’的RFID晶片,標準的微控制器和非接觸安全控制器。‘純粹’的RFID晶片主要用於對象識別,不包含微控制器。因此,就安全性和功能來講,僅適合他們目前所使用的場合。配置適當射頻介面的標準微控制器可用於非安全性的非接觸應用,但與‘純粹的’RFID晶片一樣,他們的使用並不適合個人身份文件。只有設計得當的非接觸安全控制器,才能滿足電子護照應用對數據安全和隱私保護的高度要求(圖1)。 對於用於電子護照的半導體晶片來說,它必須保護儲存在其中的數據不受非法篡改。電子護照對非接觸安全控制器的通常規格要求包括: 1. 低功率非標準CPU核心; 2. 超過64K位元組的安全EEPROM,用於應用程式和數據儲存; 3. 在25℃下,EEPROM每個頁面的可擦寫次數至少大於500,000次; 4. 支援ISO/IEC 14443標準的B類和A類非接觸介面; 5. 經過驗證的真正隨機數產生器,支援AIS-31要求; 6. 雙密鑰三倍DES加速器支援對稱DES演算法; 7. 先進的加密引擎支援非對稱的RSA和橢圓形曲線演算法; 8. 符合CC EAL 5+的通用標準認證,支援BSI-PP-0002保護規格。 另外,晶片製造商的目標是設立防範多種威脅的有效、經過測試和認證的措施,這些威脅可以劃歸為三個主要的類別:故障誘導型攻擊、實體型攻擊和旁路攻擊。 故障誘導型攻擊 目前對智慧卡的攻擊已經發展成某種‘藝術性的行為’,這種行為的發起者在全球數以千計,從業餘到真正的專業人士都包含在內。因此,‘故障誘導攻擊’(也稱為‘半入侵式攻擊’)已經成為安全評估和安全控制器認證的主要關注焦點。 作為智慧卡控制器的積體電路通常由矽晶片製成。矽晶片的電氣性能可能會受到不同的環境參數影響。例如,對於不同的電壓、溫度、光線、電離輻射以及電磁場,矽晶片的電氣特性會不一樣。改變這些環境參數,攻擊者就會嘗試引起故障,包括智慧卡控制器中的程式錯誤。通常,攻擊者會想辦法讓晶片做出一個錯誤的判斷(如接受一個錯誤的登錄授權碼),因而允許存取記憶體中保存的秘密數據。 另外一個有趣的變量是‘記憶體傾印’(memory dump),而不是泄露非秘密的身份數據,在故障誘導攻擊之後,安全控制器會輸出非常多的數據,包括部份的軟體、機密數據,甚至是儲存的密鑰。使用‘DFA’(差分錯誤攻擊法),在某些情況下只要一次故障運算,攻擊者就能透過使用成熟的數學演算法獲得密鑰。 已知誘導故障的各種方法包括變化功耗、電磁誘導、利用可見光輻射晶片表面,或者使用放射性材料輻射晶片表面以及改變溫度(見圖2)。其中一些方法可以利用低成本的設備實現,使得他們成為業餘攻擊者的理想選擇。 透過誘導故障獲得機密資訊 儘管目前安全控制器的產品手冊中已經提供了防範這些攻擊方法的措施,但只有透過測試,才能驗證這些防範措施在實際應用中是否有效。由於這些控制器的性能可能有非常大的不同,因此透過獨立的評估和認證檢驗安全等級就非常重要。目前電子護照中使用的晶片在他們正式被確定使用之前,就必須透過全面的安全測試,但是這些安全測試的標準對於各國所使用的不同系統來說會有所不同。 從不同的觀點來看,必須實施針對故障誘導攻擊的各種測試,以便設立一種相互之間嚴格的依存關係。目前的晶片卡控制器的安全觀念基於以下三條防範要求: 1. 防止故障誘導; 2. 發現故障誘導條件; 3. 測試安全控制器的故障行為。 對電源和輸入訊號進行濾波處理將成為第一道屏障。反應速度很快的穩壓器被用來在特定邊界抑制電壓瞬態變化。同樣,某些與時脈源相關的異常現象也會被阻止。在利用高電壓變化對安全控制器進行攻擊時,僅憑穩壓系統是不能解決這種問題的,感測器將成為第二道屏障的一部份。如果感測器檢測到一個環境參數的臨界值,將會觸發警報,以將晶片卡設置到一個安全狀態。電壓感測器檢測電源,時脈感測器用來發現頻率的異常,溫度和光感測器用來檢測光和溫度攻擊。光學攻擊方法也可能在晶片的反面進行,光感測器對兩面的照射都能起到效果。第三道屏障是透過安全控制器核心本身實現的。硬體防範措施結合軟體的措施來實現有效的第三道防範屏障。軟硬體的組合是很必要的,純軟體的防範措施某些時候反而會成為故障攻擊的目標。 實體攻擊 攻擊者還能以更直接的方式透過矽晶片上的電路來實施攻擊,如將控制器的訊號線連接到攻擊者的電子設備,然後讀出線上傳遞的機密資訊,或將他自己的數據注入晶片。為防範實體攻擊,首先重要的措施是使用晶片內部記憶體加密,這意味著儲存在晶片上的數據是透過很強的加密演算法進行過加密的,因此攻擊者即使能得到這些數據,也只能產生無用的資訊。另一方面,有效地保護罩措施也可以防止攻擊。在這種情況下,可以用微米級的保護線覆蓋安全控制器。這些線受到持續的監控,如果這些線相互之間被短路、斷開或損壞,則觸發警報。使用多種防護措施可以防範一些高階攻擊。 旁路攻擊 攻擊者可以使用旁路方法,透過仔細觀察晶片作業的參數來獲得機密數據資訊(如認證密鑰)。在功率分析(SPA─簡單功率分析、DPA─差分功率分析或者EMA─電磁分析)的情況下,攻擊者可以從功耗或發射的電磁場獲得這種資訊,因為功耗和電磁場的大小會隨晶片內作業類型和處理數據的變化而改變。利用‘時序攻擊’方法可以分析作業的時間,因為根據所處理的數據或者所使用的密鑰時序可能會有變化,可被用來實施有效的攻擊。為防範旁路攻擊,可在晶片內實現各種措施,包括隨機等待狀態、匯流排加擾和電流加擾等。這樣的措施可以使攻擊者得到的資訊無效,這樣機密數據上承載的資訊就不會泄露。 對不同的攻擊方法和防範措施的研究將一直持續下去。現在必須考慮到未來的攻擊情形,透過設計新的安全產品能防範未來的攻擊,這將最終確保無論是現在或是未來,用於電子護照的非接觸控制器都是安全的。 作者:英飛凌科技公司Calvin Lee(識別技術市場經理)、Peter Laackmann(產品安全負責人)、Marcus Janke)資深產品安全專家) 資料來源: eetTaiwan 2008/7/4

沒有留言: