專(zhuān)利名稱(chēng):一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對(duì)稱(chēng)加解密算法技術(shù)領(lǐng)域,尤其涉及一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)(Data Encryption Standard,簡(jiǎn)稱(chēng)DES)改進(jìn)方法及裝置。
背景技術(shù):
隨著智能卡技術(shù)的不斷發(fā)展,智能卡芯片的安全性也面臨越來(lái)越大的挑戰(zhàn)。在眾多加密算法中,DES算法是一種應(yīng)用較廣的對(duì)稱(chēng)加/解密算法。
密碼系統(tǒng)在實(shí)際使用中,其硬件在運(yùn)行中不可避免要泄露一些信息,如功耗,運(yùn)行時(shí)間,電磁波等,利用上述信息對(duì)密碼系統(tǒng)進(jìn)行攻擊已成為信息安全芯片產(chǎn)品的巨大威脅。 在眾多旁路攻擊手段中,簡(jiǎn)單功耗分析(SPA)和差分功耗分析(DPA)已被廣泛使用,SPA是根據(jù)功耗曲線的特征及攻擊者的經(jīng)驗(yàn)直觀地分析出加密硬件中執(zhí)行的指令或操作,常被用來(lái)破解指令執(zhí)行與某些數(shù)據(jù)有關(guān)的算法。DPA分析則可從功耗曲線微小的差分信號(hào)分析出所需的關(guān)鍵信息,但需要搜集大量的信息,并采集多組功耗曲線以及每條曲線對(duì)應(yīng)的明文、 密文記錄。DPA具有使用資源非常少,易于進(jìn)行的特點(diǎn),對(duì)加密硬件設(shè)備危害非常大,DPA 要比SPA強(qiáng)得多,而且更加難以預(yù)防,因此加密系統(tǒng)面臨著嚴(yán)重的威脅。
為了抵御各種攻擊,技術(shù)人員相應(yīng)地提出了一些解決方法,目前主流的技術(shù)有引入隨機(jī)數(shù)對(duì)密碼算法執(zhí)行過(guò)程中的中間運(yùn)算結(jié)果進(jìn)行隨機(jī)化,使密碼模塊的功耗依賴(lài)于隨機(jī)化后的中間運(yùn)算結(jié)果,而獨(dú)立于實(shí)際的中間運(yùn)算結(jié)果,從而使DPA失效;添加隨機(jī)噪聲掩蓋處理中間數(shù)據(jù)的功耗;使用操作與功耗不相關(guān)的特殊邏輯單元(如雙規(guī)邏輯電路、預(yù)充電邏輯電路等),消除功耗和中間結(jié)果之間的相關(guān)性。
原標(biāo)準(zhǔn)DES算法的主流程圖如圖I所示,DES算法將64位的明文輸入塊變?yōu)?4位的密文輸出塊,其功能是把輸入的64位數(shù)據(jù)塊按位重新組合,并把輸出分為L(zhǎng)O、RO兩部分, 每部分各長(zhǎng)32位,進(jìn)行初始置換,然后經(jīng)過(guò)16次迭代運(yùn)算后得到L16、R16,將此作為輸入, 進(jìn)行逆置換,即得到密文輸出。其中每一輪DES算法的f函數(shù)包括擴(kuò)展置換、與密鑰的異或、S盒代換和P盒置換操作,如圖2所示。64位的輸入密鑰中第8,16, ......,64位包含了 8個(gè)奇偶效驗(yàn)位,壓縮變換除去了奇偶效驗(yàn)位,并對(duì)剩下的56位進(jìn)行位置換,有效的56位密鑰經(jīng)過(guò)壓縮變換后分成兩部分。從第一個(gè)周期開(kāi)始,每個(gè)時(shí)鐘循環(huán)左移一位或兩位,鎖存后作為下一輪輸入,同時(shí)兩部分也在合并后通過(guò)壓縮變換產(chǎn)生48位的子密鑰Kl,K2, K3,…… K16,作為f函數(shù)輸入。
原始的DES實(shí)現(xiàn)方案沒(méi)有任何防御技術(shù),使得攻擊者能夠很容易地對(duì)齊和處理收集的功耗曲線。
在眾多抵御方案中,其中研究最為廣泛的是在算法中通過(guò)引入隨機(jī)數(shù)來(lái)消除真實(shí)密鑰和功耗相關(guān)性。2001年,Akkar和Giraud在施普林格(Springer-Verlag)科技期干丨J的文獻(xiàn)《An Implementation of DES and AES Secure against some Attacks》中第一次將掩碼技術(shù)用于DES算法的防護(hù),算法通過(guò)引入掩碼隨機(jī)數(shù)X,改變S盒的結(jié)構(gòu)來(lái)達(dá)到掩蓋真實(shí)數(shù)據(jù)的目的。2005年,Jiqiang Lv在ACISP 2005:195-206的文獻(xiàn)《EnhancedDES Implementation Secure against High-Order Differential Power Analys is inSmartcaixls》中引入三個(gè)32位隨機(jī)數(shù)V1、V2和V3,并在原有S盒函數(shù)的基礎(chǔ)上定義了六種不同的新S盒函數(shù)SM-Box對(duì)算法的中間結(jié)果進(jìn)行掩蓋?,F(xiàn)有技術(shù)中,添加隨機(jī)噪聲掩蓋處理中間數(shù)據(jù)的功耗的方法在實(shí)際應(yīng)用中只能防御簡(jiǎn)單功耗分析,如果對(duì)同一明文的能量消耗進(jìn)行測(cè)量然后求平均就能夠來(lái)降低噪聲,隨著數(shù)字信號(hào)處理技術(shù)的發(fā)展,常規(guī)的噪聲可以通過(guò)模式識(shí)別、自適應(yīng)濾波、小波分析等技術(shù)手段濾除,增加噪聲只會(huì)增加功耗分析需要的樣本數(shù)而已;而采用數(shù)據(jù)與功耗不相關(guān)的特殊邏輯單元實(shí)現(xiàn)的方式也不切合實(shí)際,要想設(shè)計(jì)出功耗完全平衡的邏輯單元非常復(fù)雜,而且即使能夠設(shè)計(jì)出完美的功耗平衡的邏輯電路,其面積也是芯片無(wú)法承受的;最可行的方法是在算法過(guò)程中引入隨機(jī)掩碼,消除中間數(shù)據(jù)和功耗信息的相關(guān)性,但目前的方案中幾乎沒(méi)有可以將算法進(jìn)行完全的掩蓋。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種數(shù)字加密標(biāo)準(zhǔn)改進(jìn)方法及裝置,解決現(xiàn)有技 術(shù)中無(wú)法有效消除真實(shí)密鑰和功耗相關(guān)性的問(wèn)題。為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)方法,包括對(duì)64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn)的16輪運(yùn)算的S盒函數(shù)處理步驟中使以下由SM-Box表示的新S盒函數(shù);在第1、6、11、12 輪中SM-Box (A) =S-Box (A) P^1(Vl)在第2、5、10、13 輪中SM-Box (A) =S-Box (A E(Vl)) P-1 (V2)在第3、4 輪中=SM-Box(A) =S-Box (A E (V2)) P-1 (VI V2)在第7、16 輪中SM-Box (A) =S-Box (A) P-1 (V3)在第8、15 輪中=SM-Box(A) =S-Box (A E (V3)) P-1 (V2)在第9、14 輪中=SM-Box(A) =S-Box (A E (V2)) P-1 (VI V3)其中,S-Box表示基準(zhǔn)數(shù)字加密標(biāo)準(zhǔn)算法中使用置換表的S盒函數(shù),A表示新S盒函數(shù)的輸入數(shù)據(jù),VI、V2、V3為32位隨機(jī)數(shù),E表示擴(kuò)展置換函數(shù),F(xiàn)1表示置換函數(shù)P的逆置換函數(shù)。進(jìn)一步地,上述方法還可以具有以下特點(diǎn)所述方法還包括將所述明文與64位隨機(jī)數(shù)X異或后進(jìn)行初始置換;在所述16輪運(yùn)算的每次運(yùn)算中將前一輪得到的R值與XV31 Xl32_63的異或結(jié)果作為當(dāng)前輪計(jì)算出的L值;在第16輪運(yùn)算結(jié)束后將R的值作為前32位將L的值作為后32位構(gòu)成64位數(shù)據(jù)后進(jìn)行逆初始置換,與所述隨機(jī)數(shù)X異或后得到密文。為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)裝置,所述裝置包括設(shè)置模塊和執(zhí)行模塊;所述參數(shù)設(shè)置模塊,用于設(shè)置三個(gè)32位隨機(jī)數(shù)即VI、V2、V3 ;設(shè)置16輪運(yùn)算中S盒函數(shù)處理步驟中由SM-Box表示的新S盒函數(shù)在第1、6、11、12 輪中SM-Box (A) =S-Box (A) P^1(Vl)在第2、5、10、13 輪中SM-Box (A) =S-Box (A E(Vl)) P-1 (V2)
在第3、4 輪中:SM-Box ⑷=S-Box (A E (V2)) P-1 (VI V2)
在第7、16 輪中:SM-Box (A) =S-Box (A) P-1 (V3)
在第8、15 輪中:SM-Box ⑷=S-Box (A E (V3)) P-1 (V2)
在第9、14 輪中:SM-Box ⑷=S-Box (A E (V2)) P-1 (VI V3)
其中,S-Box表示基準(zhǔn)數(shù)字加密標(biāo)準(zhǔn)算法中使用置換表的S盒函數(shù),A表示新S盒函數(shù)的輸入數(shù)據(jù),E表示擴(kuò)展置換函數(shù),F(xiàn)1表示置換函數(shù)P的逆置換函數(shù);
所述執(zhí)行模塊,用于對(duì)輸入的64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn),在16輪運(yùn)算的S盒函數(shù)處理步驟中使用所述新S盒函數(shù)。
進(jìn)一步地,上述裝置還可以具有以下特點(diǎn)
所述參數(shù)設(shè)置模塊,用于設(shè)置64位隨機(jī)數(shù)X ;
所述執(zhí)行模塊,還用于將所述明文與所述64位隨機(jī)數(shù)X異或后進(jìn)行初始置換;在所述16輪運(yùn)算的每次運(yùn)算中將前一輪得到的R值與XIch31 乂132_63的異或結(jié)果作為當(dāng)前輪計(jì)算出的L值;在第16輪運(yùn)算結(jié)束后將R的值作為前32位將L的值作為后32位構(gòu)成64 位數(shù)據(jù)后進(jìn)行逆初始置換,與所述隨機(jī)數(shù)X異或后得到密文。
本發(fā)明結(jié)合不同的隨機(jī)數(shù)改造的S盒函數(shù),破壞了真實(shí)密鑰信息和功耗曲線之間的相關(guān)性,給功耗分析獲取信息帶來(lái)很大難度達(dá)到抵御功耗分析的目的。本發(fā)明同時(shí)結(jié)合掩蓋技術(shù),在加密運(yùn)算之前對(duì)明文進(jìn)行預(yù)掩蓋,并在每輪運(yùn)算中進(jìn)行隨機(jī)數(shù)掩蓋,有效的防止了信息泄露而被攻擊,提高了其抗差分功耗分析攻擊的能力。
圖I是原始DES算法流程圖2是原結(jié)DES算法中每一輪運(yùn)算的步驟示意圖3是本發(fā)明中的DES改進(jìn)算法的示意圖4是實(shí)施例中預(yù)掩蓋和掩蓋后的第一輪DES運(yùn)算的示意圖
圖5是實(shí)施例中第二輪DES運(yùn)算的示意圖6是實(shí)施例中第三輪DES運(yùn)算的示意圖7是實(shí)施例中第16輪DES運(yùn)算及密文恢復(fù)的示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
原始DES實(shí)現(xiàn)方案中沒(méi)有有效的防御技術(shù),使得攻擊者能夠很容易地對(duì)齊和處理收集的功耗曲線。本發(fā)明未采用添加隨機(jī)化噪聲和功耗平衡器件的方法,因?yàn)榈谝环N方法在實(shí)際的攻擊中有很多的辦法可以去除這些噪聲,即使能夠設(shè)計(jì)出隨機(jī)性能很好的噪聲源,如果攻擊者采用電磁分析的攻擊方法依然能旁路掉噪聲的影響;第二種方法實(shí)現(xiàn)起來(lái)十分的困難,即使能夠設(shè)計(jì)出完美的諸如雙軌邏輯的功耗平衡單元庫(kù),但是其面積至少是現(xiàn)有單元的2倍以上,所以在面積上也不予以考慮。
經(jīng)過(guò)上述分析,本發(fā)明提出了一種新的DES改進(jìn)方法,如圖3所示,此方法包括對(duì)64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn)的16輪運(yùn)算的S盒函數(shù)處理步驟中使以下由SM-Box表示的新S盒函數(shù);在第1、6、11、12 輪中SM-Box (A) =S-Box (A) P^1(Vl)在第2、5、10、13 輪中SM-Box (A) =S-Box (A E(Vl)) P-1 (V2)在第3、4 輪中=SM-Box(A) =S-Box (A E (V2)) P-1 (VI V2)在第7、16 輪中:SM-Box (A) =S-Box (A) P-1 (V3)在第8、15 輪中:SM-Box ⑷=S-Box (A E (V3)) P-1 (V2)在第9、14 輪中:SM-Box ⑷=S-Box (A E (V2)) P-1 (VI V3)其中,S-Box表示基準(zhǔn)數(shù)字加密標(biāo)準(zhǔn)算法中使用置換表的S盒函數(shù),A表示新S盒 函數(shù)的輸入數(shù)據(jù),VI、V2、V3為32位隨機(jī)數(shù),E表示擴(kuò)展置換函數(shù),F(xiàn)1表示置換函數(shù)P的逆置換函數(shù)。本發(fā)明中引入了新的S盒函數(shù)對(duì)數(shù)據(jù)進(jìn)行掩蓋,并引入了三個(gè)32位隨機(jī)數(shù)V1、V2和V3使每一輪加密運(yùn)算中用于掩蓋數(shù)據(jù)的隨機(jī)數(shù)不同,可以提高抵御功耗分析的能力。使用本方法的裝置中設(shè)置模塊和執(zhí)行模塊,參數(shù)設(shè)置模塊用于設(shè)置三個(gè)32位隨機(jī)數(shù)即VI、V2、V3,并設(shè)置16輪運(yùn)算中S盒函數(shù)處理步驟中由SM-Box表示的新S盒函數(shù);執(zhí)行模塊用于對(duì)輸入的64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn),在16輪運(yùn)算的S盒函數(shù)處理步驟中使用所述新S盒函數(shù)。為了更好改善抵御時(shí)間攻擊和功耗分析攻擊的問(wèn)題,本方法中還可引入一 64位隨機(jī)數(shù)X,在運(yùn)算開(kāi)始之初將明文與64位隨機(jī)數(shù)X異或后進(jìn)行初始置換;在16輪運(yùn)算的每次運(yùn)算中將前一輪得到的R值與XV31 Xl32_63的異或結(jié)果作為當(dāng)前輪計(jì)算出的L值;在第16輪運(yùn)算結(jié)束后將R的值作為前32位將L的值作為后32位構(gòu)成64位數(shù)據(jù)后進(jìn)行逆初始置換,與隨機(jī)數(shù)X異或后得到密文。使用此方法的裝置中設(shè)置模塊還需設(shè)置此64位隨機(jī)數(shù)X,執(zhí)行模塊執(zhí)行上述方法。下面對(duì)此方案進(jìn)行詳細(xì)說(shuō)明。圖4是預(yù)掩蓋和掩蓋后的第一輪DES運(yùn)算的示意圖。預(yù)掩蓋的過(guò)程包括算法開(kāi)始之初將64位隨機(jī)數(shù)X與明文M進(jìn)行異或。預(yù)掩蓋完成后,執(zhí)行初始置換(IP),然后執(zhí)行第一輪DES運(yùn)算。其中Xl代表X經(jīng)過(guò)初始置換的值IP(X) ,XIch31和Xl32_63分別代表Xl的低32位和高32位,X2為Xl32_63經(jīng)過(guò)擴(kuò)展E變換的值E(X132_63)。第一輪DES運(yùn)算中,R°即IP(M)32-63 X132-B3經(jīng)過(guò)擴(kuò)展置換(EP簡(jiǎn)稱(chēng)E)后結(jié)果為EP( IP(M)32_63) X2,此結(jié)果與密鑰Kl異或后進(jìn)入新的S盒,經(jīng)過(guò)新的S盒變換后,經(jīng)過(guò)P變換,得到OutSPl P—1 (VI Xich31 Xl32-B3),本結(jié)果只作示意之用OutSPl用于表示未經(jīng)過(guò)隨機(jī)數(shù)X預(yù)掩蓋和新的S盒置換處理的情況下從P盒輸出的結(jié)果。此結(jié)果與第一輪DES運(yùn)算中1^°即IP (M)ch31 θ XIch31異或得到第一輪DES運(yùn)算的R1,其中ResTmpl只作示意之用表示未經(jīng)過(guò)隨機(jī)數(shù)X預(yù)掩蓋和新的S盒置換處理的情況下未被隨機(jī)數(shù)掩蓋的原始數(shù)據(jù)。為了最終能夠還原得到真實(shí)的密文,在每一輪運(yùn)算結(jié)束前,將R°與XltH31 Xl32-B3進(jìn)行異或得到L1。圖5和圖6分別是第二、三輪DES運(yùn)算的示意圖。圖7是第16輪DES運(yùn)算及密文恢復(fù)的示意圖。經(jīng)過(guò)16輪運(yùn)算后,在加解密運(yùn)算結(jié)束前,交換高低32位數(shù)據(jù)的位置即將R15的值作為前32位將L15的值作為后32位構(gòu)成64位數(shù)據(jù)后進(jìn)行逆初始置換,與隨機(jī)數(shù)X異或后得到密文。本方法中,在每一輪運(yùn)算都根據(jù)上面新的S盒函數(shù)做相應(yīng)的修改,并對(duì)數(shù)據(jù)進(jìn)行掩蓋,使加密運(yùn)算從始至終都在隨機(jī)數(shù)的掩蓋下進(jìn)行,從而增加功耗分析的難度。
本發(fā)明采用預(yù)隨機(jī)化手段在加密運(yùn)算開(kāi)始時(shí),就對(duì)數(shù)據(jù)進(jìn)行隨機(jī)化,并修改S盒函數(shù)對(duì)中間結(jié)果進(jìn)行掩蓋,結(jié)合每一輪采用不同的隨機(jī)數(shù),從始至終將數(shù)據(jù)用不同的隨機(jī)數(shù)掩碼,使功耗信息獨(dú)立于中間運(yùn)算結(jié)果,給SPA和DPA攻擊獲取信息帶來(lái)很大難度。
如上所述,在整個(gè)DES的算法流程當(dāng)中,所有的中間變量都被隨機(jī)數(shù)掩碼覆蓋,破壞了真實(shí)密鑰信息和功耗曲線之間的相關(guān)性,并且在加密運(yùn)算之前就對(duì)明文進(jìn)行了預(yù)掩蓋,直到運(yùn)算結(jié)束后恢復(fù),有效的防止了信息泄露而被攻擊,提高了其抗DPA攻擊的能力。
當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
本領(lǐng)域普通技術(shù)人員可以理解上述方法中的全部或部分步驟可通過(guò)程序來(lái)指令相關(guān)硬件完成,所述程序可以存儲(chǔ)于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如只讀存儲(chǔ)器、磁盤(pán)或光盤(pán)等??蛇x地,上述實(shí)施例的全部或部分步驟也可以使用一個(gè)或多個(gè)集成電路來(lái)實(shí)現(xiàn)。相應(yīng)地,上述實(shí)施例中的各模塊/單元可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。本發(fā)明不限制于任何特定形式的硬件和軟件的結(jié)合。
權(quán)利要求
1.一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)方法,其特征在于, 對(duì)64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn)的16輪運(yùn)算的S盒函數(shù)處理步驟中使以下由SM-Box表示的新S盒函數(shù);在第 1、6、11、12 輪中=SM-Box(A) =S-Box(A) P-1 (Vl)在第 2、5、10、13 輪中:SM-Box ⑷=S-Box (A E(Vl)) P-1 (V2)在第 3、4 輪中=SM-Box(A) =S-Box (A E (V2)) P-1 (VI V2)在第 7、16 輪中SM-Box (A) =S-Box (A) P-1 (V3)在第 8、15 輪中=SM-Box(A) =S-Box (A E (V3)) P-1 (V2)在第 9、14 輪中:SM-Box ⑷=S-Box (A E (V2)) P-1 (VI V3) 其中,S-Box表示基準(zhǔn)數(shù)字加密標(biāo)準(zhǔn)算法中使用置換表的S盒函數(shù),A表示新S盒函數(shù)的輸入數(shù)據(jù),VI、V2、V3為32位隨機(jī)數(shù),E表示擴(kuò)展置換函數(shù),F(xiàn)1表示置換函數(shù)P的逆置換函數(shù)。
2.如權(quán)利要求I所述的方法,其特征在于, 所述方法還包括將所述明文與64位隨機(jī)數(shù)X異或后進(jìn)行初始置換;在所述16輪運(yùn)算的每次運(yùn)算中將前一輪得到的R值與XIch31 Xl32_63的異或結(jié)果作為當(dāng)前輪計(jì)算出的L值;在第16輪運(yùn)算結(jié)束后將R的值作為前32位將L的值作為后32位構(gòu)成64位數(shù)據(jù)后進(jìn)行逆初始置換,與所述隨機(jī)數(shù)X異或后得到密文。
3.一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)裝置,其特征在于, 所述裝置包括設(shè)置模塊和執(zhí)行模塊; 所述參數(shù)設(shè)置模塊,用于設(shè)置三個(gè)32位隨機(jī)數(shù)即VI、V2、V3 ;設(shè)置16輪運(yùn)算中S盒函數(shù)處理步驟中由SM-Box表示的新S盒函數(shù)在第 1、6、11、12 輪中=SM-Box(A) =S-Box(A) P-1 (Vl)在第 2、5、10、13 輪中:SM-Box ⑷=S-Box (A E(Vl)) P-1 (V2)在第 3、4 輪中=SM-Box(A) =S-Box (A E (V2)) P-1 (VI V2)在第 7、16 輪中SM-Box (A) =S-Box (A) P-1 (V3)在第 8、15 輪中=SM-Box(A) =S-Box (A E (V3)) P-1 (V2)在第 9、14 輪中:SM-Box ⑷=S-Box (A E (V2)) P-1 (VI V3) 其中,S-Box表示基準(zhǔn)數(shù)字加密標(biāo)準(zhǔn)算法中使用置換表的S盒函數(shù),A表示新S盒函數(shù)的輸入數(shù)據(jù),E表示擴(kuò)展置換函數(shù),F(xiàn)1表示置換函數(shù)P的逆置換函數(shù); 所述執(zhí)行模塊,用于對(duì)輸入的64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn),在16輪運(yùn)算的S盒函數(shù)處理步驟中使用所述新S盒函數(shù)。
4.如權(quán)利要求3所述的裝置,其特征在于, 所述參數(shù)設(shè)置模塊,用于設(shè)置64位隨機(jī)數(shù)X ; 所述執(zhí)行模塊,還用于將所述明文與所述64位隨機(jī)數(shù)X異或后進(jìn)行初始置換;在所述·16輪運(yùn)算的每次運(yùn)算中將前一輪得到的R值與XIch31 Xl32_63的異或結(jié)果作為當(dāng)前輪計(jì)算出的L值;在第16輪運(yùn)算結(jié)束后將R的值作為前32位將L的值作為后32位構(gòu)成64位數(shù)據(jù)后進(jìn)行逆初始置換,與所述隨機(jī)數(shù)X異或后得到密文。
全文摘要
本發(fā)明公開(kāi)了一種抗差分功耗分析的數(shù)字加密標(biāo)準(zhǔn)改進(jìn)方法及裝置,對(duì)64位明文進(jìn)行數(shù)字加密標(biāo)準(zhǔn)的16輪運(yùn)算的S盒函數(shù)處理步驟中使以下由SM-Box表示的新S盒函數(shù)。本發(fā)明結(jié)合不同的隨機(jī)數(shù)改造的S盒函數(shù),破壞了真實(shí)密鑰信息和功耗曲線之間的相關(guān)性,給功耗分析獲取信息帶來(lái)很大難度達(dá)到抵御功耗分析的目的。本發(fā)明同時(shí)結(jié)合掩蓋技術(shù),在加密運(yùn)算之前對(duì)明文進(jìn)行預(yù)掩蓋,并在每輪運(yùn)算中進(jìn)行隨機(jī)數(shù)掩蓋,有效的防止了信息泄露而被攻擊,提高了其抗差分功耗分析攻擊的能力。
文檔編號(hào)H04L9/06GK102983964SQ20121058606
公開(kāi)日2013年3月20日 申請(qǐng)日期2012年12月28日 優(yōu)先權(quán)日2012年12月28日
發(fā)明者田圓, 顧申, 高洪福 申請(qǐng)人:大唐微電子技術(shù)有限公司