CPA相关功耗分析(一)
1.相關(guān)性分析方法簡介
????????相關(guān)性分析方法:針對部分或者全部密鑰位參與密碼運算的過程中,根據(jù)能量信號與密碼運算計算過程中產(chǎn)生的中間數(shù)據(jù)的漢明重量或者漢明距離的相關(guān)性,計算猜測密鑰得到的中間結(jié)果漢明重量或者漢明距離與實測能量信號之間的線性相關(guān)性,來恢復(fù)密鑰。
1.1補(bǔ)充知識
漢明距離 : 是一個概念,表示兩個等長的字符串對應(yīng)位不同的個數(shù),對兩個字符串進(jìn)行異或運算,并統(tǒng)計其結(jié)果為1的個數(shù)就是漢明距離。(因為側(cè)信道底層都是0和1的變換,所以此處只用二進(jìn)制舉例)
?漢明重量 : 它是一種特殊的漢明距離,指一個字符串與一個等長的“零”字符串的漢明距離,即一個字符串中非零的字符個數(shù)。(通俗說就是轉(zhuǎn)換為二進(jìn)制后1的個數(shù))
1.2執(zhí)行步驟
(1)確定被攻擊密碼設(shè)備的攻擊點,即確定該攻擊點對應(yīng)的中間數(shù)據(jù); 該中間數(shù)據(jù)可用于恢復(fù)密鑰k,則中間數(shù)據(jù)可表示為:f(d,k),d是明文或者密文,k為私鑰。
(2)測量密碼設(shè)備運行過程中的能量曲線,攻擊者記錄每一次運行密碼算法時對應(yīng)的di,同時采集每一次運算時能量曲線,表示為ti=( ti,1,…, ti,T );
(3)猜測密鑰k,并根據(jù)猜測密鑰計算步驟(1)選擇的中間數(shù)據(jù)。將所有可能的密鑰記錄為K=(k1,…, kk),對所有D次加密運算和K個密鑰計算假設(shè)中間值:vi,j=f(di, kj) i=1,…,D;j=1,…,k。
(4)根據(jù)能量泄露模型,將假設(shè)中間值映射為能量泄露值hi,j。
(5)將假設(shè)能量泄露值和實際能量泄露信號進(jìn)行統(tǒng)計分析,獲取密鑰。
?
?2.CPA攻擊過程
????????CPA攻擊是經(jīng)典DPA攻擊的延伸,其利用功耗樣點與被處理數(shù)據(jù)的漢明權(quán)重之間的相關(guān)性因子進(jìn)行分析。(DPA的變種)
2.1主要思路:? ? ??
CPA攻擊的過程如下:
?
?
?
最后根據(jù)得到的相關(guān)性系數(shù)絕對值的大小來獲取密鑰?。
?
總結(jié)
以上是生活随笔為你收集整理的CPA相关功耗分析(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 差分能量分析介绍(五)
- 下一篇: CPA相关功耗分析(二)