• 晶片資安第一站

《晶片安全設計指引》注入攻擊、旁通道攻擊防範機制怎麼做?

指引著作/臺灣資安卓越深耕-半導體及資通訊供應鏈資安關鍵技術發展計畫

為了降低製造成本,一個晶片 IC 的誕生要歷經許多不同的國家或公司共同分工製造;即使是 IC 內部的不同功能設計,也因 IC 設計公司會採用不同設計專長的矽智財(Intellectual Core , IP Core)授權,以解決和減緩設計生產率上的成本,但也因此產生新的問題。

高度分工下,產生新的問題:不是所有的 IC 設計公司都能完全明白 IC 內部的電路結構,也無法確定各部分內部是否乾淨、沒有資安疑慮,使得安全方面的議題浮出檯面。

外包過程中也可能發生安全性和完整性的問題,像是矽智財盜用(IP Piracy)、逆向工程(Reverse Engineering)、硬體木馬 (Hardware Trojan) 等。因此,在進行 IC 設計時更需要一份安全指引,提高產品防禦能力。相關摘錄如下:

解方一:錯誤注入攻擊防範機制

目前已知的錯誤注入攻擊防範機制有:檢測機制(Detection mechanisms)、保留足夠設計餘裕(design margin)、可靠性設計、冗餘(Redundancy)、錯誤檢測碼、默認編碼失敗(Fail by default coding)、隨機行為、程式流程完整性保護、感測器與屏蔽等。

相關防範機制如下:

 

解方二、旁通道攻擊防範機制

目前已知的旁通道攻擊防範機制,包含:實體安全、分割設計、遮罩或致盲、雜訊產生器、調整加密演算法、簡單功耗攻擊的防範、差分功耗攻擊的防範、時序攻擊的防範、消除、部分重新配置、混洗或減少旁通道訊息的釋放,上述防範機制如下:

1.實體安全

為了從旁通道獲得最高的信號雜訊比,攻擊者通常需要延長對受攻擊裝置(device under attack, DUA)的物理存取時間,並且可能需要使用侵入性技術(例如,解封、改變電路板或晶片)。因此,拒絕使用者接近、存取和佔有,是降低攻擊者發動旁通道攻擊能力的關鍵。

2.分割設計

秘密訊號耦合 (coupling) 到其他節點上時,一些旁通道訊號(例如,無意的電磁輻射)可能會洩漏資訊。為了減少這些輻射,設計人員可以將晶片中運作明文的區域與運作密文的區域分開。在 TEMPEST 的說法中,這是經典的紅色(RED) (明文)從黑色(BLACK) (密文)分開。

除了晶片部分的實體分割之外,分割技術還可以應用於任何的共享基礎設施,包括電源基礎設施(配電網、穩壓器、引腳)、時脈基礎設施(鎖相環,phaselock loop, PLL)、和測試基礎設施(正反器掃描鏈、內建自我測試)。

3.遮罩或致盲

遮罩(masking)或致盲(blinding) 是一種對策,意指消除輸入資料與電路中間節點的旁通道訊號之間的相關性。這種對策可以在每個閘(Per-gate)或每個區塊的基礎上完成,其實現方法為將輸出訊號之後加入互斥或閘(XOR),並利用遮罩位元來控制輸出訊號要被反相。

4.雜訊產生器

降低信號雜訊比的一種方法是新增雜訊,許多研究人員提議新增雜訊發生器來保護積體電路,以抵禦旁通道攻擊。

對於功耗分析攻擊,設計人員建議添加在晶片操作期間隨機產生功耗的電路,或者在功耗低於設定值時通過填充功耗來保持總功耗固定。對於時序攻擊,研究人員建議在邏輯路徑中添加具有隨機延遲的電路。

然而,添加這種類型的電路可能會給同步系統帶來問題,因為在同步電路中,所有訊號都必須在時脈週期結束時前到達邏輯路徑的輸出。

5.調整加密演算法

在現代密碼學研究中,密碼系統的安全性往往依賴於數學上難以解決的問題,以達到計算上的安全。目前最廣泛使用的公開金鑰密碼系統中,RSA是基於質因數分解問題、而橢圓曲線加密系統(ECC)則立基於離散對數問題。

可行的反制措施需針對個別演算法進行硬體之調整,設法使執行過程不易洩漏可辨認的旁通道信號。

6.簡單功耗攻擊的範例

預防簡單功耗分析很簡單,可以通過執行隨機運算來掩蓋實際運算,從而將雜訊注入系統。

7.差分功耗攻擊的防範

差分功耗分析可以利用非常小的資訊洩漏率就可以進行分析,因為統計測試會累積與目標機密相關的訊號,並減少雜訊和不相關設備活動的影響。防止差分功耗分析攻擊和相關攻擊的技術,大致可分為以下三類:

  • 減小信號大小
  • 將雜訊引入功耗測量中
  • 基於底層硬體結構的實際情形而設計密碼系統
  1. 時序攻擊的防範

時序攻擊的防範方式主要為,將時序攻擊目標的計算時間,量化為離散的時脈週期計數。

9.消除或減少旁通道訊息的釋放

可降低對TEMPEST攻擊敏感性的顯示器現在已經上市,這種顯示器具有特殊屏蔽層以減少電磁輻射。電力線調節(Power line conditioning)和濾波(filtering)可以幫助阻止功耗監控攻擊( power-monitoring attacks),但必須謹慎使用這些設備,因為即使很小的關聯也可以保留並損害安全性。

10.部分重新配置(Partial Reconfiguration)

一種通過使用部分重新配置(Partial Reconfiguration)來動態改變加密電路來考慮旁通道攻擊和錯誤攻擊兩種攻擊向量的方法。

11.混洗(shuffle)

與不受保護的設計相比,混洗的方法導致恢復整個金鑰所需的功率追蹤數新增了250倍。

想了解更詳細的指引內容,請與我們聯絡索取

 

Share:
This site is registered on wpml.org as a development site.