專利名稱:用于密碼處理器的電流源的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及諸如是典型地安裝在智能卡和其他設(shè)備中的密碼設(shè)備,這種設(shè)備可能具有的弱點(diǎn)就是易受功率分析攻擊以從中獲得信息。
背景技術(shù):
許多密碼設(shè)備是利用微處理器和諸如智能卡的設(shè)備上的有關(guān)邏輯電路來實(shí)現(xiàn)的。通常必須確保存儲(chǔ)在智能卡上的諸如加密密鑰等等的重要數(shù)據(jù)保持安全。已經(jīng)公布的大量的功率分析技術(shù)便于從智能卡獲得在正常的輸入和輸出操作的過程中否則將被安全地加密的數(shù)據(jù)。尤其是,執(zhí)行加密或解密操作的邏輯電路的功率消耗的分析可以用來建立用于加密或解密操作中的輪密鑰(roundkeys)。
例如,在Kocher等人中在WWW.cryptography.com公開的“差分功率分析”(Differential Power Analysis)中,和Messerges等人在1999年5月的《智能卡技術(shù)的USENIX工作平臺(tái)的進(jìn)程》(Proceedings of USENIX Workshop onSmartcard Technology)里的151-161頁中公開的“在智能卡上功率分析攻擊的調(diào)查”(Investigations of Power analysis Attacks on smartcards),已經(jīng)討論了這些技術(shù)。智能卡的功率消耗通常與發(fā)生在每個(gè)時(shí)鐘脈沖的位轉(zhuǎn)變的數(shù)量密切相關(guān)。對(duì)加密算法的連續(xù)周期過程中智能卡的功率耗散的靜態(tài)分析已經(jīng)表明以產(chǎn)生足夠的信息來獲得使用中的加密密鑰。
差分功率分析攻擊依賴功率耗散跡線和處理器邏輯電路的數(shù)據(jù)處理操作之間的相互關(guān)系以及在時(shí)間上求許多這種跡線的平均值的能力。
發(fā)明內(nèi)容
本發(fā)明的一個(gè)目的是提供一種電源和提高防功率分析攻擊的密碼處理器的安全性的密碼處理器的操作模式。
根據(jù)一個(gè)方面,本發(fā)明提供一種數(shù)據(jù)處理設(shè)備,其包括處理器,耦合到處理器的電荷存儲(chǔ)設(shè)備,
電流源,用來為處理器提供操作電流,并且并不依賴所述處理器瞬時(shí)功率需求而適于改變它的輸出電流。
根據(jù)另一方面,本發(fā)明提供一種操作數(shù)據(jù)處理設(shè)備的方法,包括步驟從外部電源汲取電流;以及在數(shù)據(jù)處理設(shè)備里的電荷存儲(chǔ)設(shè)備和處理器之間周期地分配所汲取的電流,以致于所汲取的電流不依賴處理器的瞬時(shí)電流需求而變化。
通過示例和參考附圖,現(xiàn)在將描述本發(fā)明的實(shí)施例,其中圖1解釋說明了用于根據(jù)本發(fā)明的優(yōu)選實(shí)施例的處理器的電源;圖2示出了舉例說明圖1的電源的各個(gè)功能模塊的示意圖;以及圖3是舉例說明優(yōu)選電源的電流轉(zhuǎn)換(switching)控制的圖表。
具體實(shí)施例方式
參見圖1,現(xiàn)在將描述用于密碼處理器的DC-DC轉(zhuǎn)換電源的各種可能的電流源10從供應(yīng)電壓VCC汲取電流并提供電流IDD至處理器11。處理器11可以是任何形式的數(shù)據(jù)處理邏輯電路。當(dāng)電流源10提供的電流超過處理器11的需求時(shí),去耦電容器C從電流源10接收電流,并且當(dāng)電流源提供的電流達(dá)不到處理器的需求時(shí),去耦電容器C為處理器提供電流。電容器C的功能也可以由任何適合的替代的電荷存儲(chǔ)機(jī)制來實(shí)現(xiàn)。
在第一個(gè)實(shí)施例里,電流源10包含以兩種不同的電流電平來提供充分恒定的電流ICC的第一電流源12。這些電流電平中的第一個(gè)電流電平高于處理器的平均需求,而這些電流電平中的第二個(gè)電流電平低于處理器11的平均需求。正如以下將舉例說明的那樣,在定期或不定期的基礎(chǔ)上發(fā)生這些電流電平之間的轉(zhuǎn)換。
在提供第一個(gè)電流電平的周期中,當(dāng)過量的電流存儲(chǔ)在電容器C中時(shí),施加給處理器的電壓VDD將上升。在提供第二個(gè)電流電平的周期中,從電容器C中提供電流不足量(放電)時(shí),電壓VDD將下降。
其結(jié)果是鋸齒波電壓VDD。在一個(gè)周期的時(shí)間內(nèi),由電流源10提供的平均電流ICC將等于處理器的平均電流需求IDD。然而,需要注意的是,電流源12提供的電流ICC的瞬時(shí)值很少與處理器11的電流需求IDD的瞬時(shí)值相匹配。
電流源12的電流電平的轉(zhuǎn)換不依賴處理器的瞬時(shí)活動(dòng)而確定,因此鋸齒波電壓VDD的頻率和相位不反映處理器的立即的活動(dòng)。換句話說,電壓VDD的頻率和相位與處理器的內(nèi)部時(shí)鐘頻率沒有聯(lián)系,與由處理器11執(zhí)行的數(shù)據(jù)處理操作也沒有聯(lián)系。
電流源12的控制一般也包括一些滯后現(xiàn)象,這個(gè)現(xiàn)象有利于維持在處理器活動(dòng)和鋸齒波電壓VDD的頻率和相位之間的相互關(guān)系的缺乏。
處理器11由其頻率取決于電壓的內(nèi)部振蕩器時(shí)鐘進(jìn)行控制。典型地,提供給處理器的供電電壓VDD越低,處理器的時(shí)鐘頻率也越低。相反地,提供給處理器的供電電壓VDD越高,處理器的時(shí)鐘頻率也越高。這就意味著由處理器執(zhí)行的任何程序(例如,RAS計(jì)算或DES/AES加密/解密操作)的持續(xù)時(shí)間將取決于電源電壓VDD的電平。
在差分功率分析攻擊里,需要這樣排列許多連續(xù)的功率跡線,以致將相應(yīng)的處理操作排列在時(shí)間軸上并可以求平均值。當(dāng)處理器的操作頻率不斷地變化時(shí)這將變得更加困難,因?yàn)檫B續(xù)功率跡線的有效時(shí)基是不斷地變化的。
也可以異步地設(shè)計(jì)處理器,這也將導(dǎo)致由處理器執(zhí)行的任何程序的持續(xù)時(shí)間取決于電源電壓VDD的電平。
在另一個(gè)實(shí)施例里,除雙電平的電流源12之外,電流源10可以包括適用于提供偽噪聲電流分量IN至電流源的第二電流源13。噪聲電流IN在隨機(jī)或偽隨機(jī)的基礎(chǔ)上變化。第二電流源13可以以多種不同的方式來操作。
當(dāng)IN由偽噪聲發(fā)生器來控制時(shí)將隱藏觸發(fā)點(diǎn),所述觸發(fā)點(diǎn)在差分功率分析攻擊里是必須的,以便提供在時(shí)間軸上的參考點(diǎn),從而排列多個(gè)跡線來求平均值。因此偽噪聲發(fā)生器使得合適的分析裝置(例如數(shù)字采樣示波器)的觸發(fā)甚至更加困難。
如果偽噪聲發(fā)生器13的時(shí)鐘具有固定頻率,那么通過增加若干功率跡線的功率跡線的分析將濾出噪聲。然而,噪聲電流IN的振幅越大,清除噪聲所需要的跡線就越多,并且在功率跡線中的目標(biāo)圖像的模糊和功率跡線的尖峰就越大。因此,噪聲電流IN優(yōu)選為雙電平電流ICC的有效部分。
優(yōu)選地,偽噪聲電流IN的峰值比第一電流源12提供的雙電平電流ICC要小。在一個(gè)優(yōu)選配置里,峰值噪聲電流IN大約位于由第一電流源12提供的雙電平電流ICC的5-10%的范圍內(nèi)。
在一個(gè)優(yōu)選配置里,為處理器11的每個(gè)指令序列初始化偽噪聲發(fā)生器13。如果為處理器的每個(gè)指令序列初始化偽噪聲發(fā)生器,那么在該指令序列的每個(gè)功率跡線里噪聲圖像將相同。因此,當(dāng)添加功率跡線以試圖清除噪聲時(shí),噪聲圖像將增強(qiáng)而不是達(dá)到平衡。在這種情況下,差分功率分析在將功率跡線加到一起以前必須首先確定噪聲圖像并將他們從每個(gè)功率跡線里減掉。然后,將在真實(shí)的噪聲圖像和推導(dǎo)圖像之間的每個(gè)不匹配加到一起,這導(dǎo)致在平均跡線里的偽尖峰。這些尖峰可以成功地隱藏分析所尋找的真實(shí)的數(shù)據(jù)尖峰。
在另一個(gè)配置里,偽噪聲發(fā)生器13由與處理器11相同的時(shí)鐘來計(jì)時(shí),并且為處理器的每個(gè)指令序列初始化噪聲發(fā)生器。通過這種方式,噪聲基本上重復(fù)。將若干個(gè)功率跡線加到一起將產(chǎn)生基本上恒定的噪聲信號(hào)。噪聲跡線的一些部分將被加到一起,而其它部分將被抵消。在清除噪聲分量時(shí),增加更多跡線或是減去跡線都不是有效的。
參考圖2,現(xiàn)在將描述電流源ICC的調(diào)整。
在該優(yōu)選配置里,電流源10的調(diào)整是這樣自動(dòng)執(zhí)行的,以致由電流發(fā)生器10提供的平均電流ICC(如果包括噪聲電流發(fā)生器13則+IN)將與處理器11的平均電流需求相匹配。
當(dāng)處理器的平均電流需求IDD隨著時(shí)間發(fā)生變化時(shí),電流調(diào)整器調(diào)節(jié)電流源的操作。
允許供電電壓VDD在處理器的操作規(guī)范之內(nèi)的較高電壓電平和較低電壓電平之間變化,使得能夠確保正確地操作處理器。電流發(fā)生器10必須這樣改變電流電平,以致在較高的電流電平時(shí),處理器供電電壓VDD趨于上升,并以致在較低的電流電平時(shí),處理器的供電電壓VDD趨于下降。可以由齊納二極管D(圖1)來固定VDD的較高電平以防止對(duì)處理器的損壞。
在圖2的優(yōu)選配置里,可以操作電流轉(zhuǎn)換控制電路20以將電流源12在第一較高電流電平和第二較低電流電平之間進(jìn)行轉(zhuǎn)換。第一電流電平足夠促使電壓VDD在處理器11的正常操作下上升。第二電流電平足夠促使電壓VDD在處理器11的正常操作下下降。
閾值檢測電路23監(jiān)測VDD并檢測VDD上升(或下降)到較高(或較低)的閾值電平。當(dāng)達(dá)到較高閾值電壓電平時(shí),電流轉(zhuǎn)換控制電路20將電流源ICC轉(zhuǎn)換至其第二(較低)電流電平。當(dāng)VDD達(dá)到較低閾值電壓電平時(shí),電流轉(zhuǎn)換控制電路20將電流源10轉(zhuǎn)換回其第一(較高)電流電平。
在一個(gè)優(yōu)選配置里,提供在檢測到較高閾值電壓時(shí)啟動(dòng)的計(jì)時(shí)器電路22。然后該計(jì)時(shí)器電路22確定時(shí)間周期t以便使處理器供電電壓VDD達(dá)到較低閾值電壓。在圖3中圖解說明了這個(gè)計(jì)時(shí)器電路22的操作。
計(jì)時(shí)器電路22確定時(shí)間周期t是否落在可允許的窗口tmax至tmin內(nèi)。如果該時(shí)間周期位于tmax至tmin之間(例如t2),那么不采取任何動(dòng)作。如果該時(shí)間周期小于tmin(例如t1),則與操作用來增大第二(較低)電流電平的電流電平設(shè)置電路21進(jìn)行通信。如果該時(shí)間周期大于tmax(例如t3),則與操作用來減小第二(較低)電流電平的電流電平設(shè)置電路21進(jìn)行通信。優(yōu)選地,遞增地對(duì)電流電平進(jìn)行調(diào)節(jié)。通常系統(tǒng)將朝向其中VDD的鋸齒波圖形的向下路徑具有在tmax至tmin之間的周期的操作條件移動(dòng)。
加以必要的修正,可以使用鋸齒波形的向上路徑的計(jì)時(shí)將相似的控制配置運(yùn)用到第一(較高)電流電平。
通過這種方式,電壓電平VDD的周期可以維持在預(yù)先確定的范圍內(nèi),并且如此控制電流源,以致不依賴處理器的瞬時(shí)功率需求而改變給處理器的電壓輸出VDD。
如果處理器的電流需求增加較大,那么第一(較高)電平電流可能不足以增加VDD。如果發(fā)生這種情況,超控(override)電路24可以開始工作以超控電流電平設(shè)置電路21和/或電流轉(zhuǎn)換控制電路20的正常操作。
例如,超控電路24可能檢測到VDD在預(yù)先確定的時(shí)間內(nèi)保持低于較低電壓電平。如果發(fā)生這種情況,超控電路24可以觸發(fā)電流電平設(shè)置電路21來設(shè)置最高可能的電流電平。也可以將該超控電路配置為阻止電流轉(zhuǎn)換控制電路20進(jìn)一步轉(zhuǎn)換或改變所述轉(zhuǎn)換周期直到已恢復(fù)VDD。
可選的是,超控電路24可以在第一(較高)電平電流相位相位期間檢測非上升的VDD,并執(zhí)行一個(gè)相似的動(dòng)作。
如果處理器的電流需求減少較多,則第二(較低)電流電平可能會(huì)太高以至于不能減少VDD。如果發(fā)生這種情況,超控電路24可以開始工作來超控電流電平設(shè)置電路21和/或電流轉(zhuǎn)換控制電路20的正常操作。
例如,超控電路24可能檢測到VDD在預(yù)先確定的時(shí)間內(nèi)保持超過較高電壓電平。如果發(fā)生這種情況,超控電路24可以觸發(fā)電流電平設(shè)置電路21來設(shè)置最低可能的電流電平。也可以阻止電流轉(zhuǎn)換控制電路20進(jìn)一步轉(zhuǎn)換或改變所述轉(zhuǎn)換周期直到已恢復(fù)VDD。
替代地,超控電路24可以在第一(較高)電平電流相位位期間檢測非上升的VDD,并執(zhí)行一個(gè)相似的動(dòng)作。
在一個(gè)可選的實(shí)施例里,可以使用固定的第一(較高)電流電平并且只有第二(較低)電流電平變化。在另一個(gè)實(shí)施例里,可以使用固定的第二(較低)電流電平,而只有第一(較高)電流電平變化。第二(較低)電流電平可以低至零。
可以使用齊納二極管D來固定電壓并消耗任何過剩的電流。對(duì)于例如是1.8V的低供電電壓來說,獲得一個(gè)好的齊納二極管可能是困難的。在這種情況下,齊納二極管D可以用另一個(gè)電壓箝位裝置、例如電壓比較器和晶體管來替換。
在通常情況下,值得注意的是,以上所描述的電路的作用是在處理器11和電荷存儲(chǔ)電路10之間周期地分配從外部電壓干線VCC上汲取的電流,分配的方式是從外部供給電源VCC汲取的電流不依賴處理器的瞬時(shí)功率需求而變化。然而,控制電路確??偸菨M足處理器的瞬時(shí)和平均功率需求。
去耦電容器C濾出電流源ICC里的大部分的高頻變化。作為處理器11里的關(guān)鍵數(shù)據(jù)轉(zhuǎn)換操作的結(jié)果,產(chǎn)生ICC的雙電平的恒定電流源12也可以減小從電壓干線VCC汲取的外部電源電流里的任何高頻變化。由于電容器維持提供給處理器11的電流源,因此電容器C也抑止可以臨時(shí)地切斷電流源的供電電壓上的電壓尖峰。這也應(yīng)用于由攻擊者引起的電壓尖峰來影響處理器的活動(dòng)。這可以包括由攻擊者有目的地計(jì)時(shí)以致阻止正在執(zhí)行的處理器的關(guān)鍵操作并因此造成有用信息的泄漏的尖峰。
電源VCC的較寬的尖峰或中斷一般由適當(dāng)?shù)奶幚砥鲝?fù)位電路(未示出)來處理,對(duì)于該電源VCC來說,電容器C不能用于維持處理器的電源。
為了附加的安全,應(yīng)將處理器11的內(nèi)部振蕩器制造成不受外部因素、諸如變化的電壓源VCC的影響。位于某些預(yù)先定義的限度之外的供電電壓的變化優(yōu)選地將利用現(xiàn)有技術(shù)中已知的控制電路啟動(dòng)處理器或系統(tǒng)復(fù)位。
電流源12輸出電流ICC的重復(fù)變化使得差分功率分析攻擊里的觸發(fā)變得困難。此外,處理器11的變化速度由鋸齒供電電壓VDD引起,這就意味著功率跡線不會(huì)正確地相互對(duì)齊,因?yàn)闀r(shí)基將隨著跡線而變化。
已經(jīng)參考實(shí)施例描述了本發(fā)明,其中電流源10包括產(chǎn)生鋸齒供電電壓VCC的雙電平恒定電流源12。應(yīng)理解的是,也可以利用適用于在多個(gè)離散電平之間轉(zhuǎn)換的電流源10來實(shí)現(xiàn)本發(fā)明的原理,這樣將產(chǎn)生具有更復(fù)雜分布圖的供電電壓VDD。
相似地,如果要實(shí)現(xiàn)連續(xù)變化的電壓VDD,電流源10可以適用于在兩個(gè)預(yù)先確定的電平之間連續(xù)地改變輸出電流。所述電流源12的周期變化的輸出功能可以確保處理器供電電壓VDD隨著作為一些參數(shù)的函數(shù)的時(shí)間而變化,該處理器供電電壓VDD與處理器瞬時(shí)功率需求沒有聯(lián)系。
應(yīng)理解的是,為了保護(hù)處理器11不受功率分析攻擊,重要的是電壓節(jié)點(diǎn)VDD對(duì)外部探測器來說是不可訪問的。因此,優(yōu)選地將處理器11、電容器C(或其它電荷存儲(chǔ)設(shè)備)和電流源10集成到單個(gè)集成電路上(或是作為獨(dú)立設(shè)備形成在單個(gè)密封設(shè)備里),其中在密封裝置的任一輸出管腳上不提供電壓VDD的指示(直接或間接的)。
其它實(shí)施例都意在所附的權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)處理設(shè)備,包括處理器(11);耦合到處理器的電荷存儲(chǔ)設(shè)備(C);以及電流源(10),用于為處理器提供操作電流(IDD),并且適用于不依賴處理器的瞬時(shí)功率需求而改變它的輸出電流(ICC)。
2.如權(quán)利要求1所述的設(shè)備,其中所述電荷存儲(chǔ)設(shè)備包含與電流源(10)串聯(lián)的電容器(C),并且所述電容器與處理器并聯(lián)連接。
3.如權(quán)利要求1或權(quán)利要求2所述的設(shè)備,其中電流源(10)適用于定期或不定期地在兩個(gè)不同的電流電平之間轉(zhuǎn)換。
4.如權(quán)利要求1或權(quán)利要求2所述的設(shè)備,其中電流源(10)適用于定期地或不定期地在多個(gè)電流電平之間轉(zhuǎn)換。
5.如權(quán)利要求3或權(quán)利要求4所述的設(shè)備,其中轉(zhuǎn)換電流電平之間的間隔由處理器(11)的平均功率需求來確定。
6.如權(quán)利要求1所述的設(shè)備,其中所述電流源(10)包含適用于以至少兩個(gè)不同的電流電平來提供基本上恒定的電流(ICC)的第一電流源(12),所述第一電流源在定期或不定期的基礎(chǔ)上在電流電平之間轉(zhuǎn)換;以及適用于提供在隨機(jī)或偽隨機(jī)的基礎(chǔ)上變化的噪聲電流(IN)的第二電流源(13)。
7.如前述任一權(quán)利要求所述的設(shè)備,還包括適用于將提供給處理器(11)的供電電壓(VDD)維持在較高電壓極限和較低電壓極限之間的控制裝置(20-24)。
8.如前述任一權(quán)利要求所述的設(shè)備,還包括適用于將提供給處理器(11)的供電電壓(VDD)維持低于較高電壓極限的齊納二極管(D)。
9.如權(quán)利要求7所述的設(shè)備,其中所述控制裝置包括用于在第一較高電流電平和第二較低電流電平之間轉(zhuǎn)換電流源的電流轉(zhuǎn)換裝置(20),所述電流轉(zhuǎn)換通過提供給處理器的供電電壓(VDD)分別達(dá)到較低電壓極限和較高電壓極限來觸發(fā)。
10.如權(quán)利要求9所述的設(shè)備,還包括計(jì)時(shí)器(22),用于確定處理器供電電壓(VDD)從較高電壓極限達(dá)到較低電壓極限或從較低電壓極限達(dá)到較高電壓極限所采取的時(shí)間間隔。
11.如權(quán)利要求10所述的設(shè)備,還包括電流設(shè)置裝置(21),用于如果計(jì)時(shí)器(22)確定所述時(shí)間間隔落在預(yù)先確定的極限之外,則改變所述電流源(10)的第一電流電平和/或第二電流電平。
12.如權(quán)利要求11所述的設(shè)備,其中如果所述計(jì)時(shí)器(22)確定用于達(dá)到較低電壓極限的時(shí)間間隔低于預(yù)先確定的第一閾值,則所述電流設(shè)置裝置(21)升高所述第一電流電平。
13.如權(quán)利要求11或權(quán)利要求12所述的設(shè)備,其中如果所述計(jì)時(shí)器(22)確定用于達(dá)到較低電壓極限的時(shí)間間隔超出預(yù)先確定的第二閾值,則所述電流設(shè)置裝置(21)降低所述第一電流電平。
14.如權(quán)利要求11所述的設(shè)備,其中如果所述計(jì)時(shí)器(22)確定用于達(dá)到較高電壓極限的時(shí)間間隔低于預(yù)先確定的第一閾值,則所述電流設(shè)置裝置(21)降低所述第二電流電平。
15.如權(quán)利要求11或權(quán)利要求12所述的設(shè)備,其中如果所述計(jì)時(shí)器(22)確定用于達(dá)到較高電壓極限的時(shí)間間隔超出預(yù)先確定的第二閾值,則所述電流設(shè)置裝置(21)升高所述第二電流電平。
16.如權(quán)利要求9所述的設(shè)備,其中控制裝置包括裝置(24),用于如果提供給處理器(11)的供電電壓(VDD)不能向所期望的較高或較低電壓極限移動(dòng),則暫時(shí)地抑止電流轉(zhuǎn)換裝置(20)。
17.如權(quán)利要求1所述的設(shè)備,其中所述處理器(11)具有內(nèi)部時(shí)鐘,其頻率依賴于提供給處理器(11)的供電電壓(VDD)。
18.如前述任一權(quán)利要求所述的設(shè)備,其中所述處理器(11)是密碼處理器。
19.如前述任一權(quán)利要求所述的設(shè)備,被合并到智能卡中。
20.一種操作數(shù)據(jù)處理設(shè)備的方法,包含以下步驟從外部電源汲取電流(ICC);在數(shù)據(jù)處理設(shè)備里的電荷存儲(chǔ)設(shè)備(C)和處理器(11)之間周期地分配所汲取的電流,以致所汲取的電流不依賴所述處理器的瞬時(shí)功率需求而變化。
21.如權(quán)利要求20所述的方法,還包括利用所述所汲取的電流來產(chǎn)生流向處理器(11)和電荷存儲(chǔ)設(shè)備(C)的電流(IDD)的步驟,所述電流定期或不定期地在兩個(gè)不同電流電平之間轉(zhuǎn)換。
22.如權(quán)利要求20所述的方法,還包括利用所述所汲取的電流(ICC)來產(chǎn)生流向處理器和電荷存儲(chǔ)設(shè)備的電流的步驟,所述電流定期或不定期地在多個(gè)不同電流電平之間轉(zhuǎn)換。
23.如權(quán)利要求21或權(quán)利要求22所述的方法,還包括根據(jù)處理器(11)的平均功率需求來確定轉(zhuǎn)換之間的間隔的步驟。
24.如權(quán)利要求20所述的方法,還包括以下步驟利用第一電流源(12)來以至少兩個(gè)不同的電流電平來提供基本上恒定的電流(ICC),在定期或不定期的基礎(chǔ)上在電流電平之間轉(zhuǎn)換所述第一電流源;利用第二電流源(13)來提供在隨機(jī)或偽隨機(jī)的基礎(chǔ)上變化的疊加的電流(IN);以及將所述第一和第二電流源的相加電流提供給所述處理器和所述電荷存儲(chǔ)設(shè)備。
25.如權(quán)利要求20至權(quán)利要求24中任一權(quán)利要求所述的方法,還包括將提供給所述處理器(11)的供電電壓(VDD)維持在較高電壓極限和較低電壓極限之間的步驟。
26.如權(quán)利要求25所述的方法,還包括當(dāng)提供給處理器(11)的供電電壓(VDD)分別達(dá)到所述較低電壓極限和所述較高電壓極限時(shí)在第一較高電流電平和第二較低電流電平之間轉(zhuǎn)換電流源(12)的步驟。
27.如權(quán)利要求26所述的方法,還包括以下步驟確定為使處理器供電電壓(VDD)從較高電壓極限達(dá)到較低電壓極限或從較低電壓極限達(dá)到較高電壓極限需用的時(shí)間間隔,以及如果所述時(shí)間間隔落在預(yù)先確定的極限之外,則改變所述電流源(10)的第一電流電平和/或第二電流電平。
28.如權(quán)利要求27所述的方法,還包括如果用來達(dá)到較低電壓極限的時(shí)間間隔落到預(yù)先確定的第一閾值以下則升高所述第一電流電平的步驟。
29.如權(quán)利要求27或權(quán)利要求28所述的方法,還包括如果用來達(dá)到較低電壓極限的時(shí)間間隔超出預(yù)先確定的第二閾值則降低所述第一電流電平的步驟。
30.如權(quán)利要求27所述的方法,還包括如果用來達(dá)到較高電壓極限的時(shí)間間隔落到預(yù)先確定的第一閾值以下則降低所述第二電流電平的步驟。
31.如權(quán)利要求27或權(quán)利要求28所述的方法,還包括如果用來達(dá)到較高電壓極限的時(shí)間間隔超出預(yù)先確定的第二閾值則升高所述第二電流電平的步驟。
32.如權(quán)利要求26所述的方法,還包括如果提供給處理器(11)的供電電壓(VDD)不能向所期望的較高或較低電壓極限移動(dòng)則暫時(shí)地抑止所述電流轉(zhuǎn)換的步驟。
33.如權(quán)利要求20所述的方法,還包括控制作為提供給處理器的供電電壓的函數(shù)的、處理器的操作頻率的步驟。
全文摘要
為數(shù)據(jù)處理設(shè)備提供電流轉(zhuǎn)換器來提高增強(qiáng)的抵抗差分功率分析攻擊的安全性,該電流轉(zhuǎn)換器從外部電源汲取電流并在電荷存儲(chǔ)設(shè)備和處理器之間這樣周期地分配所汲取的電流,以致所汲取的電流不依賴處理器的瞬時(shí)功率需求而變化。所述數(shù)據(jù)處理設(shè)備包括處理器;耦合到所述處理器的電荷存儲(chǔ)設(shè)備;以及電流源,用來為處理器提供操作電流,并且適用于不依賴所述處理器的瞬時(shí)功率需求而改變它的輸出電流。
文檔編號(hào)G06F21/55GK1682175SQ03821548
公開日2005年10月12日 申請(qǐng)日期2003年8月29日 優(yōu)先權(quán)日2002年9月13日
發(fā)明者G·T·M·胡伯特 申請(qǐng)人:皇家飛利浦電子股份有限公司