国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種側(cè)信道攻擊和故障攻擊的防護(hù)方法

      文檔序號:7780728閱讀:857來源:國知局
      一種側(cè)信道攻擊和故障攻擊的防護(hù)方法
      【專利摘要】本發(fā)明提供一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,該方法包括以下步驟:I、將分組密碼算法的運算劃分為若干級流水線;II、隨機選擇兩級流水線輸入真實的明文,其他各級的輸入為隨機數(shù);III、進(jìn)行運算,當(dāng)運算結(jié)束,將兩個真實數(shù)據(jù)比較運算結(jié)果是否一致。該方法既能抵抗側(cè)信道攻擊,又能抵抗故障攻擊,安全性強,而且執(zhí)行效率高。
      【專利說明】一種側(cè)信道攻擊和故障攻擊的防護(hù)方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種智能卡芯片領(lǐng)域的方法,具體涉及一種側(cè)信道攻擊和故障攻擊的防護(hù)方法。
      【背景技術(shù)】
      [0002]隨著計算機技術(shù)的發(fā)展、社會信息化程度的不斷提高,信息安全問題越來越受到人們的廣泛重現(xiàn)。加密作為信息安全中一個有力的武器正在發(fā)揮著重要的作用,各種加密算法不斷涌現(xiàn),目前比較流行的分組密碼算法有DES、AES等。分組密碼算法是對固定長度的明文進(jìn)行加密的算法。它將明文按一定的長度分組,明文和密鑰經(jīng)過加密運算得到密文。解密時,密文和密鑰經(jīng)過解密運算還原成明文。
      [0003]隨著測量分析方法的進(jìn)步,各種攻擊方法也不斷發(fā)展。側(cè)信道攻擊和故障攻擊是近年提出的具有代表性且對芯片威脅性較強的兩種攻擊方法。側(cè)信道攻擊利用了密碼設(shè)備運行期間泄露的側(cè)信息與密碼算法的中間值有一定的相關(guān)性,通過多次測量側(cè)信息然后進(jìn)行統(tǒng)計分析,進(jìn)而獲得密鑰信息。故障攻擊的基本原理是將密碼芯片置于強磁場中,或者改變芯片的電源電壓、工作頻率、溫度等,使密碼芯片中的寄存器、存儲器在加解密過程中產(chǎn)生隨機錯誤,某些輸出bit從原來的0變成1或1變成0。通過對正確密文輸出和錯誤密文輸出的比較,經(jīng)過理論分析得到芯片內(nèi)部的秘密數(shù)據(jù)信息。常見的防御側(cè)信道攻擊的方法主要是對數(shù)據(jù)或密鑰進(jìn)行隨機掩碼等,常見的防御故障攻擊的方法有對相同的數(shù)據(jù)計算兩次然后比較運算結(jié)果是否一致。
      [0004]現(xiàn)有方法是將分組算法每一輪運算劃分為若干步驟,在所劃分步驟的基礎(chǔ)之上實行流水線操作運算。每一級流水線計算不同的數(shù)據(jù),每個時鐘周期進(jìn)行不同數(shù)據(jù)的不同運算,對每一級流水線處理數(shù)據(jù)施加隨機數(shù)掩碼,保證實際處理數(shù)據(jù)的互異性。
      [0005]功耗分析作為側(cè)信道攻擊的一種方法,現(xiàn)有技術(shù)只能抵抗功耗攻擊,不能抵抗故障攻擊。若要既能抵抗側(cè)信道分析,又能抵抗故障攻擊,現(xiàn)有技術(shù)還需要增加其他防護(hù)方法,在實現(xiàn)時會占用更多的資源。且現(xiàn)有技術(shù)中將對稱算法每一圈運算劃分為若干子步驟,一般來說對稱算法會包含有多個圈運算,如果對每一圈運算劃分為若干子步驟,在算法運行時效率會很低,執(zhí)行完一次加/解密運算會需要很多個時鐘周期才能完成。

      【發(fā)明內(nèi)容】

      [0006]為了克服上述現(xiàn)有技術(shù)的缺陷,本發(fā)明提供一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,該方法既能抵抗側(cè)信道攻擊,又能抵抗故障攻擊,安全性強,且執(zhí)行效率高。
      [0007]為了實現(xiàn)上述發(fā)明目的,本發(fā)明采取如下技術(shù)方案:
      [0008]一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其改進(jìn)之處在于:所述方法包括以下步驟:1、將分組密碼算法的運算劃分為流水線;
      [0009]I1、隨機選擇兩級流水線輸入真實的明文,其他各級的輸入為隨機數(shù);
      [0010]II1、進(jìn)行運算,當(dāng)運算結(jié)束,比較運算結(jié)果確定的兩個真實數(shù)據(jù)是否一致。[0011]進(jìn)一步的,所述方法通過在同一時刻不同級的流水線運算不同的數(shù)據(jù),隨機數(shù)參與運算產(chǎn)生的側(cè)信息作為噪聲掩蓋真實數(shù)據(jù)的側(cè)信息,從而抵抗側(cè)信道攻擊。
      [0012]進(jìn)一步的,所述方法通過將兩個真實密文運算結(jié)束后的結(jié)果對比,若兩個運算結(jié)果一致,則認(rèn)為運算過程中未出現(xiàn)故障,從而抵抗故障攻擊。
      [0013]進(jìn)一步的,所述步驟I包括:
      [0014]設(shè)定分組密碼算法輪運算數(shù)為2N,N為正整數(shù),每一級流水線包含k個輪運算;
      [0015]將整個運算劃分為η級流水線,n=2N/k, 2N/k為整數(shù)。
      [0016]進(jìn)一步的,所述步驟II包括:
      [0017]隨機選取A級流水線和B級流水線的輸入為真實的明文,剩下(n-2)級流水線的輸入為隨機數(shù)。
      [0018]進(jìn)一步的,所述步驟III包括:
      [0019]明文進(jìn)入A級流水線進(jìn)行運算,剩余(η-1)級流水線輸入隨機數(shù),且運算產(chǎn)生的側(cè)信息作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息;
      [0020]明文進(jìn)入B級流水線進(jìn)行運算,剩余(n-2)級流水線輸入隨機數(shù),且運算產(chǎn)生的側(cè)信息作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息;
      [0021]直至2N輪運算結(jié)束,分別獲得兩個密文,判斷兩個密文是否一致,一致則認(rèn)為運算過程無故障,否則發(fā)出警報信息。
      [0022]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:
      [0023]1、本發(fā)明的方法解決了現(xiàn)有技術(shù)中存在執(zhí)行效率低、消耗資源大等問題,或者往往只考慮抗側(cè)信道攻擊,而忽略了抵抗故障攻擊,或者相反,因此安全性不高的問題,本發(fā)明的方法既能抵抗側(cè)信道攻擊,又能抵抗故障攻擊,安全性強,且執(zhí)行效率高。
      [0024]2、本發(fā)明的方法根據(jù)硬件資源的限制選擇合適的流水線級數(shù),實現(xiàn)時方便靈活,執(zhí)行效率高。
      [0025]3、本發(fā)明的方法將抵抗側(cè)信道攻擊和故障攻擊的防護(hù)方法相結(jié)合,極大的降低了由于防護(hù)而增加的額外資源,便于實現(xiàn)。
      [0026]4、本發(fā)明的方法在對大量數(shù)據(jù)進(jìn)行加解密運算時,不僅可以保持較高的運算效率,同時還具有較強的安全防護(hù)能力。
      【專利附圖】

      【附圖說明】
      [0027]圖1為運用本發(fā)明方法的流程圖;
      [0028]圖2為運用本發(fā)明方法進(jìn)行DES算法的流程圖
      【具體實施方式】
      [0029]下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明。
      [0030]本發(fā)明提供一種抵抗側(cè)信道攻擊和故障攻擊的防護(hù)方法,該方法采用流水線技術(shù)。本發(fā)明的方法為:將分組密碼算法的運算劃分為若干級流水線,隨機選擇其中的兩級流水線,該兩級流水線的輸入真實的明文,其他各級的輸入為隨機數(shù)。
      [0031]由于在同一時刻不同級的流水線是不同的數(shù)據(jù)參與運算,隨機數(shù)參與運算時產(chǎn)生的側(cè)信息作為噪聲掩蓋了真實數(shù)據(jù)參與運算產(chǎn)生的側(cè)信息,從而可以抵抗側(cè)信道攻擊。[0032]通過在運算結(jié)束時比較兩個真實數(shù)據(jù)的運算結(jié)果是否一致,若一致則認(rèn)為沒有故障攻擊,從而可以抵抗故障攻擊。所述運算指分組密碼的加密或解密運算。
      [0033]一般的,分組密碼算法的輪運算數(shù)均為偶數(shù),假設(shè)分組密碼算法輪運算數(shù)為2N,N為正整數(shù),假設(shè)每一級流水線包含k個輪運算。將整個運算劃分為n=2N/k級流水線,k需要能分解2N,即2N/k為整數(shù),可以根據(jù)硬件資源的限制選擇合適的流水線級數(shù),實現(xiàn)時方便靈活。隨機選取兩級流水線的輸入為真實的明文,剩下(n-2)級流水線的輸入為隨機數(shù)。
      [0034]如圖1所示,圖1為運用本發(fā)明方法的流程圖;本實施例中,假設(shè)分組密碼算法輪運算數(shù)為2N,N為正整數(shù),2N/k為整數(shù);假設(shè)第一級和第二級流水線的輸入為真實的明文P,第三級至第η級流水線的輸入為隨機數(shù)。則在運算過程中的步驟如下:
      [0035]1、在Timel時刻,第一個明文P進(jìn)入第一級流水線進(jìn)行第1至第k輪的運算,此時第二級至第η級流水線的輸入為隨機數(shù),第二級及第η級流水線的運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文Ρ運算產(chǎn)生的真實側(cè)信息。
      [0036]2、在Time2時刻,第一個明文P進(jìn)入第二級流水線進(jìn)行第k+Ι至第2k輪的運算,第二個明文P進(jìn)入第一級流水線進(jìn)行第1至第k輪的運算,此時第三級至第η級流水線的輸入為隨機數(shù),其運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文Ρ運算產(chǎn)生的真實側(cè)信息。
      [0037]3、在Time3時刻,第一個明文P進(jìn)入第三級流水線進(jìn)行第2k+l至第3k輪的運算,第二個明文P進(jìn)入第二級流水線進(jìn)行第k+Ι至第2k輪的運算,隨機數(shù)進(jìn)入第一級流水線進(jìn)行第1至第k輪的運算,此時第四級至第η級流水線的輸入為隨機數(shù),其運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文Ρ運算產(chǎn)生的真實側(cè)信息。
      [0038]4、以此類推,在Time η時刻,第一個明文Ρ進(jìn)入第η級流水線進(jìn)行第(η_1) k+Ι至第nk輪的運算,至此第一個明文P加密結(jié)束,得到第一個密文C。
      [0039]5、在Time n+1時刻第二個明文P也會加密完畢,得到第二個密文C ;比較第一個密文C和第二個密文C是否相等,若這兩個密文相等則說明在運算過程中沒有注入故障,力口密結(jié)果可用;否則會產(chǎn)生相應(yīng)的報警信息。
      [0040]運用DES算法為例進(jìn)行說明,DES算法有16輪運算,劃分為四級流水線,每一級流水線包含4輪運算,圖中斜線部分表示隨機數(shù)參與該級流水線運算。具體步驟如下:
      [0041]1、在Timel時刻,第一個明文P進(jìn)入第一級流水線進(jìn)行第1至4輪的運算,此時第二級至第四級流水線的輸入為隨機數(shù),第二級至第四級流水線的運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息。
      [0042]2、在Time2時刻,第一個明文P進(jìn)入第二級流水線進(jìn)行第5至8輪的運算,第二個明文P進(jìn)入第一級流水線進(jìn)行第1至4輪的運算,此時第三級至第四級流水線的輸入為隨機數(shù),其運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息。
      [0043]3、在Time3時刻,第一個明文P進(jìn)入第三級流水線進(jìn)行第9至12輪的運算,第二個明文P進(jìn)入第二級流水線進(jìn)行第5至8輪的運算,隨機數(shù)進(jìn)入第一級流水線進(jìn)行第1至4輪的運算,此時第四級流水線的輸入為隨機數(shù),其運算產(chǎn)生的側(cè)信息會作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息。
      [0044]4、在Time4時刻,第一個明文P進(jìn)入第四級流水線進(jìn)行第13至16輪的運算,至此第一個明文P加密結(jié)束,得到第一個密文c ;
      [0045]第二個明文P進(jìn)入第三級流水線進(jìn)行第9至12輪的運算,隨機數(shù)分別進(jìn)入第二級、第一級流水線進(jìn)行第5至8輪、第I至4輪的運算。
      [0046]5、在Time5時刻第二個明文P也會加密完畢,得到第二個密文C。
      [0047]比較第一個密文C和第二個密文C是否相等,若這兩個密文相等,則說明在運算過程中沒有注入故障,加密結(jié)果可用;否則會產(chǎn)生相應(yīng)的報警信息。
      [0048]最后應(yīng)當(dāng)說明的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:依然可以對本發(fā)明的【具體實施方式】進(jìn)行修改或者等同替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
      【權(quán)利要求】
      1.一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述方法包括以下步驟:1、將分組密碼算法的運算劃分為流水線; I1、隨機選擇兩級流水線輸入真實的明文,其他各級的輸入為隨機數(shù); II1、進(jìn)行運算,當(dāng)運算結(jié)束,比較運算結(jié)果確定的兩個真實數(shù)據(jù)是否一致。
      2.如權(quán)利要求1所述的一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述方法通過在同一時刻不同級的流水線運算不同的數(shù)據(jù),隨機數(shù)參與運算產(chǎn)生的側(cè)信息作為噪聲掩蓋真實數(shù)據(jù)的側(cè)信息,從而抵抗側(cè)信道攻擊。
      3.如權(quán)利要求1所述的一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述方法通過將兩個真實密文運算結(jié)束后的結(jié)果對比,若兩個運算結(jié)果一致,則認(rèn)為運算過程中未出現(xiàn)故障,從而抵抗故障攻擊。
      4.如權(quán)利要求1所述的一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述步驟I包括: 設(shè)定分組密碼算法輪運算數(shù)為2N,N為正整數(shù),每一級流水線包含k個輪運算; 將整個運算劃分為η級流水線,n=2N/k, 2N/k為整數(shù)。
      5.如權(quán)利要求1所述的一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述步驟II包括: 隨機選取A級流水線和B級流水線的輸入為真實的明文,剩下(n-2)級流水線的輸入為隨機數(shù)。
      6.如權(quán)利要求1所述的一種側(cè)信道攻擊和故障攻擊的防護(hù)方法,其特征在于:所述步驟III包括: 明文進(jìn)入A級流水線進(jìn)行運算,剩余(n-1)級流水線輸入隨機數(shù),且運算產(chǎn)生的側(cè)信息作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息; 明文進(jìn)入B級流水線進(jìn)行運算,剩余(n-2)級流水線輸入隨機數(shù),且運算產(chǎn)生的側(cè)信息作為噪聲掩蓋明文P運算產(chǎn)生的真實側(cè)信息; 直至2N輪運算結(jié)束,分別獲得兩個密文,判斷兩個密文是否一致,一致則認(rèn)為運算過程無故障,否則發(fā)出警報信息。
      【文檔編號】H04L9/06GK103634102SQ201310690055
      【公開日】2014年3月12日 申請日期:2013年12月16日 優(yōu)先權(quán)日:2013年12月16日
      【發(fā)明者】于艷艷, 李娜, 胡曉波, 甘杰, 孫歆, 趙保華, 王志皓, 顏立 申請人:國家電網(wǎng)公司, 中國電力科學(xué)研究院, 國網(wǎng)電力科學(xué)研究院, 北京南瑞智芯微電子科技有限公司, 國網(wǎng)浙江省電力公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1