對于安全控制器而言,密碼算法的實現與安全性緊密相關,密碼算法實現
模塊應能有效抵御各種側信道攻擊(SCA)。密鑰參與的運算所泄露的側信道信息(如功耗曲線、電磁輻射曲線、時間等)與包括密鑰在內的輸入數據是相關的,密碼算法的安全實現應掩蓋或消除這種相關性。
無論對稱密碼算法還是非對稱密碼算法,其在安全控制器中的實現均以消除以下關系作為防御側信道攻擊的指導原則。
(1) 密鑰運算的數據與所泄露的側信道信息的關系;
(2)密鑰運算所使用的實際數據和輸入數據之間的關系。
以非對稱密碼算法的功耗分析防護為例,可采用如下辦法來消除上述關系:進行功耗補償,使得私鑰位為0 或1產生相同的功耗;統一操作,使得私鑰位為0或1執行相同的操作;對私鑰運算的輸入數據或中間值進行隨機化,即用隨機數掩蓋真實數據之后再進行計算。
為防御針對對稱密碼算法實現的功耗分析,進行功耗補償、對密鑰運算中所使用的中間數據隨機化(也稱隨機掩碼 Masking),同樣也是主要手段。掩碼方法的核心思想是將對稱密碼運算的中間數據隨機化,使功耗不依賴于真實的中間值,這破壞了差分功耗分析(DPA)實施的基本條件,攻擊者無法根據中間值將大量明文正確地分組,也無法根據中間值計算預期的假設功耗。用隨機數掩蓋中間值的操作主要包括異或、加法和乘法三種,相應的掩碼方法分別稱為布爾掩碼、加法掩碼和乘法掩碼。
人們最初應對側信道攻擊的方法是在芯片輸出信號中施加各種噪聲,但這些方法的效果并不好,尤其是 DPA 之類的分析方法具有很強的噪聲過濾能力。
在電路層面,可以使用雙軌邏輯來防御側信道攻擊。雙軌邏輯的另一個優勢是所有狀態有相同的功耗權重,從而使得功耗分析難以實施。但雙軌邏輯的實施成本較高,在芯片內設置隨機數發生器,使用隨機數對密碼運算進行保護,是目前抵抗側信道攻擊的最有效、最經濟的方式。
審核編輯:劉清
-
控制器
+關注
關注
114文章
16838瀏覽量
182218 -
SCA
+關注
關注
1文章
37瀏覽量
12093 -
DPA
+關注
關注
0文章
32瀏覽量
15871 -
密碼算法
+關注
關注
0文章
19瀏覽量
7433 -
隨機數發生器
+關注
關注
0文章
21瀏覽量
11111
原文標題:密碼算法實現的SCA 防護,密碼算法實現的 SCA 防護
文章出處:【微信號:Semi Connect,微信公眾號:Semi Connect】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
抵御量子計算威脅:航芯「抗量子密碼加密簽名方案」為信息安全筑起新防線

基于SCA的軟件無線電系統的概念與架構

FOC 算法實現永磁同步電機調整指南
PID控制算法的C語言實現:PID算法原理
NAS重置密碼攻略來襲,讓你告別‘密碼焦慮’!

評論