DPA原理:基於假設驗證
①選擇某個與密鑰和密文相關的中間值(即選取采樣點);
②隨機選擇明文,測量能量功耗軌跡;(其密鑰為真實密鑰)
③計算假設中間值;(其密鑰為猜測密鑰)
④用中間值(或部分值)對軌跡進行分類;
⑤對各類均值進行差分檢驗;
⑥差分值最大的即為正確密鑰
相關性能量分析(CPA)
CPA攻擊技術利用了統計學中的皮爾遜相關系數 進行分析攻擊,其攻擊過程描述為:
1)在密碼芯片系統中,將 組不同的明文(密文)數據和真實密鑰進行加密(解密)運算,並獲取密碼設備的能耗即為能量跡,記為T 。
2)通過猜測密鑰,產生相應的中間值,根據中間值的漢明重量或者漢明距離泄露,計算得到假設能量消耗,記為 D。
3)根據下式計算假設能量消耗與實測能量跡的線性相關系數。
ρ(T,D)=(E(T•D)-E(T)E(D))/√(Var(T)Var(D)) (2)
式(2)中 E()表示求平均值, Var()表示求方差。 ρ的范圍在[-1,1]之間,當 ρ取絕對值的最大值時,即假設能量消耗與真實測量的能量跡線性相關性(即相關性系數 ρ )達到最大,則此時D所對應的猜測的密鑰即為正確的密鑰