<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 針對(duì)DES密碼芯片的CPA攻擊仿真設(shè)計(jì)方案

          針對(duì)DES密碼芯片的CPA攻擊仿真設(shè)計(jì)方案

          作者: 時(shí)間:2011-06-30 來源:網(wǎng)絡(luò) 收藏

            1.2 功耗泄漏模型

            目前絕大多數(shù)都是基于CMOS工藝,CMOS邏輯電路的動(dòng)態(tài)功耗取決于邏輯門的翻轉(zhuǎn)率。單個(gè)邏輯門的功耗可以表示為:

            式中, f表示邏輯門最大變化率,P0→1表示0→1轉(zhuǎn)換的概率,CL是邏輯門的負(fù)載電容,VDD是電源電壓。功耗分析正是以式?。?)中動(dòng)態(tài)功耗對(duì)數(shù)據(jù)的依賴性為理論基礎(chǔ)的。整個(gè)電路硬件內(nèi)部結(jié)構(gòu)非常復(fù)雜,動(dòng)態(tài)功耗取決于整個(gè)邏輯電路的整體翻轉(zhuǎn)率的統(tǒng)計(jì)特性和電路所采用的工藝。為簡單起見,可以簡化地認(rèn)為電路的總功耗與整體翻轉(zhuǎn)率成一定的正比關(guān)系。基于這種相關(guān)性建立起來的功耗模型能夠反映出當(dāng)前算法電路所處理的數(shù)據(jù)引起的瞬時(shí)功耗的變化情況。功耗分析是通過對(duì)多次測(cè)量得到的功耗曲線,進(jìn)行統(tǒng)計(jì)分析出電路中相應(yīng)數(shù)據(jù)位的變化來破解密鑰的。

            功耗泄漏模型一般是在寄存器級(jí)建立。者經(jīng)常把點(diǎn)選在算法首輪或最后一輪的寄存器輸出處,記輸出時(shí)刻為t,則瞬時(shí)能耗T(t1)如下:

            式中,D0(t0)代表寄存器中在前1個(gè)時(shí)刻t0所存儲(chǔ)的二進(jìn)制序列, D0(t1)代表寄存器中在下1個(gè)時(shí)刻t1所存儲(chǔ)的二進(jìn)制序列,δ代表轉(zhuǎn)換時(shí)的1個(gè)因子。通過比較前后時(shí)刻相應(yīng)碼字的變化,當(dāng)碼字由0→1時(shí),總模擬功耗值加1;當(dāng)碼字由1→0時(shí),總模擬功耗值加1×(1-δ)。δ的大小根據(jù)算法實(shí)現(xiàn)的平臺(tái)統(tǒng)計(jì)分析得到,對(duì)于一般的CMOS邏輯電路,δ通常取值為0.17。

            2 攻擊原理

            功耗模型一般是基于所處理數(shù)據(jù)的線性漢明距建立。如1.2節(jié)所述的瞬時(shí)功耗為:

            式中所示的相關(guān)系數(shù)說明部分密鑰位猜測(cè)正確時(shí),中間計(jì)算結(jié)果與加密器件的瞬時(shí)功耗在被攻擊時(shí)刻能夠關(guān)聯(lián)起來,對(duì)應(yīng)時(shí)刻的相關(guān)系數(shù)也是最大的。而用錯(cuò)誤的猜測(cè)密鑰計(jì)算出來的中間結(jié)果與功耗之間不具有相關(guān)性或僅有弱相關(guān)性,其相關(guān)系數(shù)很小。根據(jù)這一原理,可以用的方法對(duì)密碼算法電路進(jìn)行攻擊,根據(jù)攻擊的難度可以判斷抗功耗分析性能。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();