TWI468974B - 用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法 - Google Patents

用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法 Download PDF

Info

Publication number
TWI468974B
TWI468974B TW98146474A TW98146474A TWI468974B TW I468974 B TWI468974 B TW I468974B TW 98146474 A TW98146474 A TW 98146474A TW 98146474 A TW98146474 A TW 98146474A TW I468974 B TWI468974 B TW I468974B
Authority
TW
Taiwan
Prior art keywords
circuit
capacitor
sub
switch
circuits
Prior art date
Application number
TW98146474A
Other languages
English (en)
Other versions
TW201030553A (en
Inventor
Carlos Alfonso Tokunaga
David Theodore Blaauw
Original Assignee
Univ Michigan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Univ Michigan filed Critical Univ Michigan
Publication of TW201030553A publication Critical patent/TW201030553A/zh
Application granted granted Critical
Publication of TWI468974B publication Critical patent/TWI468974B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M3/00Conversion of dc power input into dc power output
    • H02M3/02Conversion of dc power input into dc power output without intermediate conversion into ac
    • H02M3/04Conversion of dc power input into dc power output without intermediate conversion into ac by static converters
    • H02M3/06Conversion of dc power input into dc power output without intermediate conversion into ac by static converters using resistors or capacitors, e.g. potential divider
    • H02M3/07Conversion of dc power input into dc power output without intermediate conversion into ac by static converters using resistors or capacitors, e.g. potential divider using capacitors charged and discharged alternately by semiconductor devices with control electrode, e.g. charge pumps

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Mathematical Physics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Electronic Switches (AREA)

Description

用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法
本發明係關於一種用於耦接於電源與處理電路之間以將功率提供至處理電路,同時隱藏該處理電路之功率消耗特性的隔離電路及方法。
已知的是,提供處理電路,其使用需要被保護以免於未經授權之存取之秘密資料來執行資料處理操作。舉例而言,已知提供使用利用秘密資料(諸如秘密密鑰)之特定加密及解密演算法來執行加密及解密的處理電路。作為一特定實例,進階加密標準(AES)所規定之演算法利用秘密密鑰來執行加密及解密操作。可使用秘密密鑰對未加密之輸入資料(稱作明文)加密以產生加密資料(稱作密文),或替代地可輸入加密密文,且接著使用秘密密鑰對其解密,以產生相應未加密明文。
通常將用以執行此等加密和解密操作之處理電路提供為積體電路之部分,此積體電路之一特定實例為智慧卡。
對於此等積體電路,已開發各種技術以設法避免經由非侵襲性攻擊存取積體電路內之安全資料之非法嘗試。設法存取此秘密資料之一種已知技術為差分功率分析(DPA)。此等DPA技術設法對各種不同輸入資料,自對處理電路之功率消耗特性的觀察擷取秘密資料(諸如較早提及之秘密密鑰)。可觀察到的一種常見功率消耗特性為電流特徵(signature),可藉由將電路耦接至積體電路之功率輸入端子而偵測該電流特徵,接著攻擊者可觀察電流特徵對各種不同輸入資料之變化方式。
由於普遍已知積體電路執行什麼演算法,因此可能模型化積體電路之操作,並藉此產生秘密密鑰之各種不同猜測的模擬電流特徵。接著,可嘗試使用於秘密密鑰之各種猜測的模擬電流特徵與電路中觀察到之實際電流特徵相關,以藉此設法判定秘密密鑰。特定言之,若一特定猜測之秘密密鑰的相關係數高於秘密密鑰之任何其他猜測所獲得的相關係數,則此舉指示該特定猜測之秘密密鑰為實際秘密密鑰。
US 2007/0176670(其全部內容以引用的方式併入本文中)論述在軟體級與硬體級上提出之多種技術,以設法使得差分功率分析技術無效。該專利接著描述智慧卡之電荷泵技術,該技術包括電容器,其循環連接至功率源以對該電容器充電、連接至處理裝置以對該處理裝置供電,且接著連接至接地以對該電容器放電。該電荷泵系統包括三個此等電容器,以使得在一個電容器充電時,另一個電容器對處理裝置供電,且第三個電容器正放電。所述電荷泵系統設法藉由自處理裝置之內部操作將功率消耗去相關而阻擋揭露處理裝置中之秘密密鑰的嘗試。
根據US 2007/0176670中所描述之電荷泵技術,應瞭解當電容器耦接至處理裝置以對該處理裝置供電時,電容器在該供電操作期間之放電程度將視處理裝置之活動而定,且因此在將電容器接著連接至接地時的啟動電壓位準亦將不同。連接至接地之電容器的放電將接著遵循指數式衰變,且因此將永不會實際達到接地電位。因此在放電過程結束時,所達到之最終電壓位準將視起始放電操作時之初始電壓而定,且因此在將電容器重連接至功率源以對電容器再充電時,啟動電壓將視放電過程開始時之初始電壓而不同。
此外,在將電容器連接至功率源時,該電壓位準可由使用DPA執行非侵襲性攻擊之某人觀察到,且因此可觀察到在放電時段結束時所達到之該最終電壓的任何細微差異。因此,若有足夠數量的資料樣本輸入至智慧卡,則仍有可能藉由DPA技術擷取秘密密鑰。
在US 2007/0176670中,用以對電容器充電、使用電容器對處理裝置供電及將電容器接地的時段皆相等,且因此此舉限制了對電容器放電可消耗的時間量。因此,藉由使用US 2007/0176670中所描述之技術,若吾人希望增加放電時段之長度以設法減少在放電時段結束時所達到之最終電壓的變化,將需要增加充電時段與供電時段,此舉將係非所欲的。特定言之,若規定較長的供電時段,則將需要提供較大的電容器,此舉將增加面積負擔。此外,較大的電容器放電耗時較長,藉此需要較大的放電電晶體對電容器放電,從而進一步增加面積負擔。若不使用較大放電電晶體,則由於要對較大的電容器放電,將使放電時間之長度增加,從而效率降低。
或者,為了支援一個以上放電階段,將需要提供額外電容器及相關聯開關元件。舉例而言,若提供六個電容器及相關聯開關元件,則每一電容器可能通過一個充電階段、一個供電階段及四個放電階段。然而,此方法將在尺寸及功率消耗(由於提供額外組件)方面顯著增加電荷泵電路之成本。
此外,應注意,即使藉由以上技術中之任一者延長了放電時段,仍將存在在放電階段結束時所達到之最終電壓的差異(視在起始放電階段時電容器上之初始電壓而定),且因此此方法並未消除提供攻擊者仍使用DPA技術來設法斷定秘密密鑰之可能性的較早提及之問題。
因此,將需要提供一種設法隱藏處理電路之功率消耗特性以使DPA技術無效之改良技術。
自第一態樣觀察,本發明提供用於耦接於電源與處理電路之間以將功率提供至處理電路,同時隱藏該處理電路之功率消耗特性的隔離電路,該隔離電路包含:複數個子電路,每一子電路包含:一電容器;一第一開關,其經組態以在該電容器與該電源之間提供一第一連接;一第二開關,其經組態以在該電容器與該處理電路之一輸出之間提供一第二連接;一第三開關,其經組態以在該電容器上提供一第三連接以部分地放電該電容器;及控制電路,其經組態以控制該複數個子電路,以使得在每一子電路中,該第一開關、該第二開關及該第三開關以一重複序列置於一活動狀態;該複數個子電路中之每一者進一步包含:一比較器,其經組態以在該第三開關之活動狀態期間達到該電容器上之一預定非零電壓差時,將該第三開關置於一打開狀態。
根據本發明,該複數個子電路中之每一者包括與該第三開關相關聯之一比較器。該比較器不允許該第三開關在該第三開關之整個活動狀態期間對電容器放電,而是藉由在一旦已達到一預定非零電壓,即將該第三開關置於打開狀態,從而在電容器上之電壓差達到該預定非零電壓時停止放電過程。因此,在該第三開關之活動狀態期間對電容器放電所用的時間長度將視在啟動該第三開關之活動狀態時電容器上之初始電壓而不同。然而,在該第三開關之活動狀態結束時電容器上之最終電壓將在所有情況下皆相等,即等於該預定非零電壓差。
因此,對於每一重複序列,藉由接入隔離電路與電源之間的連接可觀察到之功率消耗特性將相同,而無關於處理電路所消耗之功率。因此,此舉阻止藉由DPA技術斷定處理電路所使用之任何秘密資料。
此外,當與US 2007/0176670中所描述之技術相比時,應瞭解本發明之隔離電路所消耗功率顯著小於該專利中所描述之電荷泵子系統所消耗功率。特定言之,在US 2007/0176670中電荷泵之每次充電、使用及放電循環中,電容器上之電壓升至電源電壓,接著經放電至接近接地之電壓。然而,在電容器用以對處理裝置供電之使用階段期間,電壓將下降相對小的量。舉例而言(僅為達成說明之目的),若將電容器充電至約1.1伏特之電源電壓位準,則可預期在使用階段期間,電容器上之電壓將降至約1伏特,該準確電壓降視處理裝置所執行之操作而定。因此,在隨後放電階段期間,發生電容器上之顯著電壓降,隨後充電過程接著將不必要地消耗大量功率。
然而,根據本發明,考慮到在使用階段結束時之預期最低電壓,並允許比較器有足夠時間操作,可將該預定非零電壓差選為處於盡可能高的電壓位準。實務上已發現,可將接著在放電階段期間發生的電壓降保持相對較小,藉此顯著降低隨後需要將電容器充電恢復到電源電壓位準時的功率消耗。
作為一特定實例,若電源電壓為1.1伏特,且在使用階段期間該電壓降至約1伏特,則可足以將預定非零電壓差設定為0.95伏特。因此可看出,與驅動處理電路所消耗功率相比,與放電過程相關聯之功率負擔僅為50%。相比之下,鑒於使用US 2007/0176670之技術時的類似電源電壓,假定在放電階段之後所達到之最終電壓接近0伏特,則可看出等效功率負擔為約1000%。
因此,應瞭解本發明之隔離電路在保護處理電路不受DPA技術方面更有效,同時消耗功率比已知先前技術之技術亦顯著降低。
在一實施例中,該隔離電路進一步包含與該電容器上之該第三開關串聯置放之放電調諧電路,該放電調諧電路回應於來自控制電路之一控制信號,以使在該第三開關之活動狀態期間電容器之放電速率能夠變化。此方法提供顯著靈活性,因為其可使相同隔離電路能夠供多種不同處理電路使用,該等電路可(例如)以不同速度操作。視處理電路之操作速度而定,放電調諧電路使能夠視需要加速或減速電容器之放電速率,而無需改變第三開關之活動狀態的持續時間。
比較器可採取多種形式。然而,在一實施例中,該比較器包含一運算放大器(op-amp),其在一第一輸入處接收該電容器上之電壓差的一指示,且在一第二輸入處接收該預定非零電壓之一指示。
可以多種方式將比較器所使用之預定非零電壓的指示提供至比較器。舉例而言,此指示可為作為比較器之輸入的硬連線指示。然而,在一實施例中,該隔離電路進一步包含一參考電壓產生元件,該元件可程式化以提供該預定非零電壓之指示。此舉藉由允許相同隔離電路供多種不同處理電路使用,並使能夠考慮到使用隔離電路之處理電路而在適當情況下程式化預定非零電壓,再次提供顯著靈活性。
該控制電路可以多種方式控制每一子電路之重複序列。在一實施例中,對於每一子電路,該控制電路控制重複序列以確保在該子電路中每次僅提供該第一連接、該第二連接及該第三連接中之一者。
此外,在一實施例中,控制電路控制該複數個子電路,以使得子電路之重複序列彼此成相位關係。在一實施例中,該相位關係確保在任何時間點上該隔離電路至多提供一個第一連接、一個第二連接及一個第三連接。
然而,並非必需以該方式排列相位關係,且在一替代實施例中,該相位關係確保該第一開關、該第二開關及該第三開關中至少一者之活動狀態在該複數個子電路之間重疊。
在一特定實施例中,至少該第二開關之活動狀態在該複數個子電路之間重疊,以使得該處理電路自該複數個子電路中至少兩者接收其功率歷經至少某些時段。此方法之益處在於,在隔離電路對處理電路供電之時間期間該處理電路之功率消耗特性在多個電容器上散佈,藉此進一步使該功率消耗特性模糊。然而,活動狀態之此重疊不需要限制於第二開關之活動狀態,且替代地亦可在必要時重疊充電操作及放電操作。
在一實施例中,該複數個子電路包含至少三個子電路。然而,儘管提供至少三個子電路就控制電路控制操作之各個充電、使用及放電階段的方式而言改良了靈活性,但並非必需提供至少三個子電路。舉例而言,在一實施例中,該第一開關、該第二開關及該第三開關之活動狀態的持續時間不全相同,且該複數個子電路包含至少兩個子電路。在一特定實施例中,在一個子電路具有處於活動狀態之第二開關時,第二子電路通過該第三開關之活動狀態與該第一開關之活動狀態(亦即,第一開關及第三開關之活動狀態的累積時段與第二開關之活動狀態的時段相同)。藉由此方法,可實現本發明之益處,但不需要提供三個或三個以上子電路,藉此降低隔離電路之尺寸及成本。
自第二態樣觀察,本發明提供一種積體電路,其包含處理電路及根據本發明之第一態樣的隔離電路。藉由以此方式建構積體電路,則藉由將功率輸入上之電路耦接至積體電路來執行DPA分析的任何嘗試將失敗,因為隔離電路防止觀察到處理電路之功率消耗特性。
在一實施例中,該處理電路使用至少一個秘密密鑰來執行加密及解密操作。藉由使用本發明之實施例的積體電路,隔離電路防止使用DPA技術推導出秘密密鑰。
儘管在一實施例中,積體電路內整個處理電路經由隔離電路耦接至電源,但此並非在所有實施例中為必需的。舉例而言,在一實施例中,積體電路可包含直接耦接至電源之額外處理電路。此可(例如)在該額外處理電路不對任何秘密資料執行操作之情況下為適當的,且因此不需要防止觀察該額外處理電路之功率消耗特性。
該積體電路可採取多種形式,但在一實施例中,該積體電路為一智慧卡。
自第三態樣觀察,本發明提供用於耦接於電源構件與處理構件之間以將功率提供至處理構件,同時隱藏該處理構件之功率消耗特性的隔離電路,該隔離電路包含:複數個子電路構件,每一子電路構件包含:一電容器構件;一第一開關構件,其用於在該電容器構件與該電源構件之間提供一第一連接;一第二開關構件,其用於在該電容器構件與該處理構件之一輸出之間提供一第二連接;一第三開關構件,其用於在該電容器構件上提供一第三連接以部分地放電該電容器構件;及控制構件,其用於控制該複數個子電路構件,以使得在每一子電路構件中,該第一開關構件、該第二開關構件及該第三開關構件以重複序列置於活動狀態;該複數個子電路構件中之每一者進一步包含:比較器構件,其用於在該第三開關構件之活動狀態期間達到該電容器構件上之一預定非零電壓差時,將該第三開關構件置於一打開狀態。
自第四態樣觀察,本發明提供一種使用複數個子電路使電源與處理電路互連,以將功率提供至該處理電路,同時隱藏該處理電路之一功率消耗特性的方法,該方法包含在該複數個子電路中之每一者中執行一重複序列,該序列包含以下步驟:將該電源連接至一電容器以對該電容器充電;自該電容器斷開該電源;將該電容器連接至該處理電路之一輸出;自該輸出斷開該電容器;使該電容器短路以部分地放電該電容器;及在達到該電容器上之一預定非零電壓差時停止該電容器之該短路。
第1圖為圖示根據本發明之一實施例之積體電路的方塊圖。在此實例中,積體電路採取晶片10之形式,在一特定實施例中其可為智慧卡。晶片10包括電路15,其電流特徵將被隱藏,以使得無法在晶片10與電源40之間的觀察點45處觀察到電流特徵。特定言之,電路15使用某一秘密資料來執行資料處理操作,攻擊者可使用DPA技術設法判定該秘密資料,此等技術通常涉及在位置45處在電源線路之間置放包括電阻元件之分析電路,以根據晶片10自電源汲取之功率獲得電流特徵資訊。
分析電路使用電路15之模型,已自關於電路所執行操作之可用資訊(例如,通常熟知加密/解密標準所執行之基本加密及解密操作)及關於電路之基本結構的任何已知資訊(例如,在將第一操作之結果轉發給第二操作之前將對其鎖存之知識等)導出該模型。使用該模型後,接著對於提供至晶片10之每一輸入資料項,可自複數個猜測之秘密資料中之每一者的模型產生經模型化之電流特徵(通常將秘密資料分解為8位元資料塊(chunk)以使此過程可管理),且接著分析電路可設法使在觀察點45處觀察到的實際電流特徵與彼等各種經模型化之電流特徵相關。若對許多不同輸入資料項重複此過程,則已發現可能識別秘密資料,出現與在觀察點45處所觀察到之實際電流特徵具有最高相關係數的秘密資料即為猜測之秘密資料。
在第1圖之實例中,秘密資料採取在電路15所執行加密及解密操作期間使用之秘密密鑰20的形式。在一特定實例中,電路15根據進階加密標準(AES)執行加密及解密操作,其中在編碼操作期間,秘密密鑰用以對明文編碼以產生輸出密文;且在解碼操作期間,秘密密鑰用以自經編碼之密文獲得明文。
為了防止DPA技術有效,需要將可在觀察點45處觀察到之功率消耗特性自電路15之操作所產生之實際功率消耗特性解耦。特定言之,在點45處觀察到之功率消耗特性應理想地為獨立於資料。根據本發明之實施例,藉由使用隔離電路25達成此目標,下文將更詳細地描述隔離電路25之操作。應注意,隔離電路25可與晶片10內之所有電路一起使用,或替代地可僅與晶片10內電路之子集一起使用,亦即,利用諸如秘密密鑰20之秘密資料的該電路。因此,如第1圖中之虛線框30所示,在一些實施例中可存在不需要隱藏電流特徵之電路,且因此可直接耦接至電源40,而非經由隔離電路25耦接。
第2圖為更詳細地圖示根據一實施例之隔離電路25之結構的方塊圖。在此實例中,電源40展示在圖的左手側,且處理電路15展示在右手側。提供三個子電路100、105、110(本文中亦稱作開關蓋模組),且以相同方式建構每一者。特定言之,每一開關蓋模組具有連接在電源線上的電容器150,且該電容器150用以將操作電壓提供至處理電路15。此外,提供充電電路120、邏輯供電電路130及分流電路140。此等三個電路中之每一者以重複序列相繼置於活動狀態。
因此,充電電路120首先置於活動狀態,此時邏輯供電電路130及分流電路140處於不活動狀態。充電電路120併入一開關,其在活動狀態開始時閉合,且在活動狀態結束時打開。因此,在充電電路之活動狀態期間,自電源40對電容器150充電。在充電電路之活動狀態結束時,在充電電路中置於打開狀態的開關將電容器自電源40斷開。
接著,邏輯供電電路130進入活動狀態,且包括一開關,其在邏輯供電電路之活動狀態開始時閉合,且在邏輯供電電路之活動狀態結束時打開。因此,在邏輯供電電路之活動狀態期間,電容器150對處理電路15供電,且在此過程期間,電容器150上之電壓將略微下降,其中下降量視在該時段期間處理電路15所執行之實際操作而定。
在邏輯供電電路130之活動狀態之後,分流電路140進入活動狀態。分流電路140亦包括一開關,其在分流電路140之活動狀態開始時閉合,藉此使電容器150開始放電。然而,此外,分流電路140包括一比較器,其將電容器上之電壓與參考電壓145比較。當電容器上之電壓大於參考電壓145時,開關保持閉合且電容器持續放電。然而,一旦電容器150上之電壓差達到參考電壓145,則比較器發出一輸出信號,該信號引起分流電路內之開關進入打開狀態,藉此停止電容器之進一步放電。
因此,當分流電路140之開關在分流電路之活動狀態開始時閉合時,該開關將在活動時段結束之前再次打開,開關打開之準確時間視在起始分流電路之活動狀態時電容器150上之現有初始電壓而定。因此,在分流電路之活動狀態結束時,電容器150上之電壓差將相同(即參考電壓145),而無關於在起始分流電路之活動狀態時電容器150上之電壓。
因此,當該過程接著返回到充電電路120之活動狀態時,此時將在電源40與晶片10之間的觀察點45處存在之電壓將始終相同,且因此在觀察點處獲得之任何電流特徵將對於充電電路、邏輯供電電路及分流電路之每一重複序列完全等同。此舉藉此阻止自DPA技術獲得任何有用資訊,且特定言之保護不自此等DPA技術推導出處理電路15所使用之秘密密鑰。
提供控制電路160而得以向各種子電路100、105、110發出開關序列控制信號。在一實施例中,充電電路120、邏輯供電電路130及分流電路140中之每一者之活動狀態具有相同持續時間,且控制電路160以相位關係向三個子電路發出控制信號,以使得在任何時間點上一個子電路中之充電電路處於活動狀態,另一子電路中之邏輯供電電路130處於活動狀態且第三子電路中之分流電路處於活動狀態。因此,在此實施例中,在任何時間點上,對一個電容器充電,一個電容器用以將電源電壓提供至處理電路15,且對一個電容器放電。
然而,並非必需使控制電路160以上述方式操作各種子電路,且如稍後將更詳細地所論述,相位關係可允許各種子電路之活動狀態之間的某一重疊,且充電電路、邏輯供電電路及分流電路之活動狀態的持續時間實際上不需要等同。
提供參考電壓產生器145以產生輸入至分流電路140的參考電壓。在一實施例中,此參考電壓產生器可程式化,以使得所產生之參考電壓之準確值可變化,例如,考慮到待使用隔離電路的處理電路。舉例而言,若第一處理電路平均起來比第二處理電路消耗更多功率,則在隔離電路供第一處理電路使用之情況下,在分流階段開始時電容器上存在之電壓平均起來將低於隔離電路供第二處理電路使用之狀況。藉由提供一可程式化參考電壓產生器,若隔離電路供第一處理電路使用,則可設定較低參考電壓,且若隔離電路供第二處理電路使用,則可設定較高參考電壓。
第3圖更詳細地圖示根據本發明之一實施例之提供於充電電路120、邏輯供電電路130及分流電路140內的組件。在此實例中,PMOS電晶體200提供充電電路120內之開關,該PMOS電晶體200在其閘極輸入202處接收充電觸發信號S1。當充電觸發信號轉至低電壓位準時,電晶體200接通以提供開關之閉合狀態,且相反,當充電觸發信號轉至高電壓位準時,電晶體斷開以提供開關之打開狀態。
如可自第3圖看出,邏輯供電電路130亦包括一PMOS電晶體205,其以相同方式操作,但由邏輯供電觸發信號S2在其閘極輸入207處驅動。
在分流電路140內提供一開關210,其在實例實施例中由並聯的複數個NMOS電晶體提供。此等NMOS電晶體之閘極自「及」閘215接收其輸入,「及」閘215又自比較器220接收其第一輸入,且自分流觸發信號S3接收其第二輸入217。電容器220在一輸入處接收電容器150上之電壓,且在一第二輸入222處接收參考電壓產生器145所產生之參考電壓。
將分流觸發信號S3設定為邏輯1(高)位準歷經分流電路140之活動狀態的持續時間。當電容器150之電壓高於參考電壓時,比較器220亦輸出邏輯1信號,從而引起「及」閘215輸出邏輯1值,藉此接通NMOS電晶體以形成開關210之閉合狀態。因此,電容器150在此時間期間放電。
然而,一旦電容器150之電壓達到參考電壓,來自比較器220之輸出即轉至邏輯零位準,從而引起「及」閘215輸出邏輯零信號,藉此斷開NMOS電晶體以引起開關210進入其打開狀態。接著,對於分流電路140之其餘活動狀態將不再發生電容器150之進一步放電。
第4圖圖示開關蓋模組之一替代實施例。如可自第3圖與第4圖之比較可見,唯一差別為提供與電容器150上之開關210串聯提供之放電調諧電路230。如同開關210一樣,放電調諧電路230由複數個NMOS電晶體形成。在此實例中,提供四個NMOS電晶體,且每一NMOS電晶體之閘極由控制電路所產生之四位元分流強度信號的一個位元驅動。因此,若該四位元分流強度信號為1111,則將接通放電調諧電路230中之所有電晶體,且因此開關210中之所有NMOS電晶體用以對電容器放電,藉此允許電容器之強放電。然而,藉由適當選擇分流強度信號,可斷開放電調諧電路中該等電晶體中之一或多者,藉此減少開關210中在分流電路之活動狀態期間執行任何有效放電操作之電晶體的數目。
藉由提供此放電調諧電路,相同隔離電路可供以不同速度操作之多種不同處理電路使用。特定言之,藉由考慮處理電路之操作速度適當選擇分流強度信號可增加或減少放電操作之速度。
第5圖為圖示電容器上之電壓在充電電路、邏輯供電電路及分流電路之活動狀態之重複序列期間如何變化的圖解。如線300所示,在充電電路之活動狀態期間,電容器上之電壓增加至電源電壓位準,在此實例中,該電源電壓位準為1.1伏特。接著,在邏輯供電電路130之活動狀態期間,電容器用以對處理電路供電。因此,歸因於處理電路執行其操作所消耗之功率,電壓將緩慢降低,電壓藉此會沿線305變化。然而,應注意,電壓降低之準確量將視處理電路正執行之實際處理操作而定,且特定言之視所操縱之資料值而定。因此,即使處理電路在邏輯供電電路之每一活動狀態期間執行相同加密或解密操作,實際消耗功率將視所處理之值而定,且此舉可導致電容器上之電壓降變化,如線305之虛線任一側所示。因此,在邏輯供電電路130之活動狀態結束時電容器150上之最終電壓將略微變化,但在第5圖中所圖示之實例中預期為約1伏特。
在分流電路140之活動狀態期間,對電容器150上之電壓放電,直至其達到參考電壓位準為止,在第5圖之實例中,該參考電壓位準為0.95伏特。如可自第5圖中清楚看出,不管在分流循環開始時電壓如何,所達到之最終電壓將始終為0.95伏特。因此,在下一充電階段期間,路徑315將等同於路徑300,從而引起將電容器上之電壓自參考電壓位準充電至電源電壓位準。其後,在隨後邏輯供電電路及分流電路活動狀態期間,電壓按路徑320、325變化。如可看出,儘管路徑315將等同於路徑300,但由於處理電路所消耗之功率的差異,路徑320及325與路徑305及310可略有差別。
在第5圖之頂部部分中,提供可在觀察點45處觀察到之電流特徵的指示。僅當充電電路120處於活動狀態時,才能完全獲得任何電流特徵(因為在其他時間充電電路使觀察點與處理電路隔離),且應注意,由於充電路徑300、315之相同性質,電流特徵350與360亦完全相同。因此,完全隱藏了處理電路之功率消耗資訊,且因此使用DPA技術無法獲得有用的電流特徵資訊。特定言之,應瞭解在觀察點處所獲得之電流特徵為完全獨立資料,且因此阻止進行有效的差分功率分析。
第6A圖圖示在US 2007/0176670之較早所論述先前技術之技術的分流操作期間,在對電容器放電時發生之電壓降之指數性質,其中電容器在放電操作期間耦接至接地以設法將電壓放電至零位準。然而,如自第6A圖可明顯看出,電壓從未實際上達到零位準,且此外在任何實務系統中,僅存在執行分流操作所允許之有限時間量。當然,在US 2007/0176670中,分流操作之時段與充電操作之時段相同,並與在自電容器驅動處理裝置時隨後供電操作之時段相同。因此,應瞭解在分流階段結束時,所達到之最終電壓將有變化,該變化將視在分流操作開始時的啟動電壓而定。
第6B圖圖示根據本發明之實施例之分流電路所執行的放電操作。特定言之,如較早所論述,電壓將被放電至預定參考電壓(在此實例中為0.95伏特),且儘管達到該電壓位準所需時間可根據啟動電壓而變化,但在所有狀況下都會在分流時段(由第6B圖中時間X指示)結束之前達到該電壓。
相比之下,當在第6A圖之圖解中考慮時間X時,可看出根據在分流操作開始時之初始電壓,所達到之最終電壓仍有顯著變化。由於一旦再進入充電階段,使用DPA技術之攻擊者即可獲得此資訊,此使能夠獲得依靠資料的特定電流特徵資訊。因此,在使用US 2007/0176670之先前技術之技術時,仍有可能藉由使用DPA技術成功獲得秘密密鑰。
相比之下,如較早參考第5圖所論述,在使用根據本發明之實施例之技術時,不可能獲得秘密密鑰,因為在充電階段期間所觀察到之電流特徵始終相同。
第7A圖為表格,其圖示在第2圖中所圖示之控制電路160對各種子電路100、105、110發出之充電序列控制信號。在此實例中,充電電路、邏輯供電電路及分流電路之活動狀態的持續時間皆等同,且控制電路160管理相位關係,以使得在任何時間點上一個子電路具有處於活動狀態之充電電路,一個子電路具有處於活動狀態之邏輯供電電路,且一個子電路具有處於活動狀態之分流電路。
第7B圖圖示根據一替代實施例之控制電路160可產生之開關序列。又,提供三個開關蓋模組且再次在為彼等模組中之每一者提供之開關序列之間存在相位關係。然而,在此實例中,充電電路、邏輯供電電路及分流電路之活動狀態的持續時間不同,且因此存在一個子電路中邏輯供電電路之活動狀態與另一子電路中邏輯供電電路之活動狀態重疊的時段。以此方式在不同子電路之間重疊各階段的一個益處在於,存在兩個開關蓋模組中之電容器對處理電路供電的時段,藉此在多個電容器上散佈關於該處理電路之功率消耗的任何資訊。此舉進一步模糊了關於處理電路正消耗之功率的任何資訊。
儘管在第7B圖中,只有重疊的邏輯供電電路之活動狀態,但應瞭解,原則上可在必要時重疊任何電路之活動狀態。
在較早所描述之實施例中,假定在隔離電路中存在至少三個子電路。然而,第8圖圖示在只提供兩個子電路之情形下,控制電路可使用的開關方案。特定言之,如自第8圖可見,選擇充電操作及分流操作之時段以使得在邏輯供電電路活動之時段期間可容納兩個操作。因此,在一個子電路中之電容器用以對處理電路供電時,分流電路對另一子電路中之電容器放電且充電電路對其再充電。此方法使能夠藉由減少實施隔離電路所必需之組件的數目來減少隔離電路之尺寸及成本。
第9圖為示意地圖示對不提供隔離電路之晶片使用DPA技術所獲得之相關係數如何隨輸入資料樣本之數目而變化的圖解。在此實例中,假定電路使用秘密密鑰來執行解密,且因此作為輸入提供密文,且作為輸出產生明文。由於低數目之輸入密文,存在顯著量之雜訊,且因此在最大相關係數與最小相關係數之間存在廣泛分佈。然而,隨著輸入密文之數目增加,最大相關係數與最小相關係數之間的間隙減小。更重要的是,可看出到輸入密文之數目達到4000時,正確密鑰開始顯現為具有最大相關係數(此點稱作「揭露平均時間(MTD)」),且小於104 個輸入密文時可明顯觀察到正確密鑰。
第10圖圖示在晶片併入根據本發明之實施例之隔離電路時,使用DPA技術可獲得的相關係數。可看出,甚至在已使用107 個輸入密文之後,正確密鑰仍未顯現為具有最高相關係數之猜測密鑰,且替代地無法被偵測出。因此,應瞭解,本發明之實施例的技術提供防止經由DPA技術獲得秘密資料之特別有效機制。
儘管已在本文中描述本發明之特定實施例,但顯而易見本發明並不限於此,且可在本發明之範疇內進行許多修改及添加。舉例而言,在不脫離本發明之範疇之情況下,以下附屬申請專利範圍之特徵可與獨立申請專利範圍之特徵進行各種組合。
10...晶片
15...電路/處理電路
20...秘密密鑰
25...隔離電路
30...虛線框
40...電源
45...觀察點/位置
100...子電路
105...子電路
110...子電路
120...充電電路
130...邏輯供電電路
140...分流電路
145...參考電壓/參考電壓產生器
150...電容器
160...控制電路
200...PMOS電晶體
202...閘極
205...PMOS電晶體
207...閘極輸入
210...開關
215...「及」閘
217...第二輸入
220...比較器
222...第二輸入
230...放電調諧電路
300...線/路徑
305...線/路徑
310...路徑
315...路徑
320...路徑
325...路徑
350...電流特徵
360...電流特徵
S1...充電觸發信號
S2...邏輯供電觸發信號
S3...分流觸發信號
僅以舉例方式,參考在隨附圖式中所圖示之本發明之實施例來進一步描述本發明,各圖式中:
第1圖為根據本發明之一實施例之積體電路的方塊圖;
第2圖為更詳細地圖示根據本發明之一實施例的第1圖之隔離電路之結構的方塊圖;
第3圖更詳細地圖示根據本發明之一第一實施例之第2圖中之每一子電路的結構;
第4圖更詳細地圖示根據本發明之一第二實施例之第2圖中之每一子電路的結構;
第5圖圖示根據本發明之一實施例,在不同充電、供電及分流階段期間每一子電路之電容器上的電壓如何變化,且進一步圖示將在積體電路與電源之間的介面上觀察到之相應電流特徵;
第6A圖及第6B圖將根據先前技術之技術執行的分流操作與根據本發明之實施例執行的分流操作進行比較;第7A圖及第7B圖圖示根據本發明之實施例之可由第2圖之控制電路產生的兩個開關序列以驅動第2圖中所圖示之三個子電路中之每一者;
第8圖圖示根據本發明之一替代實施例之在利用隔離電路內僅兩個子電路時,可由控制電路產生的開關序列;
第9圖圖示在對不併入用於隱藏晶片內處理電路之功率消耗特性之機構的晶片執行DPA分析時,可獲得的相關係數;及
第10圖圖示在對包括根據本發明之一實施例之隔離電路的晶片執行DPA分析時,可產生的相關係數。
15...電路/處理電路
25...隔離電路
40...電源
100...子電路
105...子電路
110...子電路
120...充電電路
130...邏輯供電電路
140...分流電路
145...參考電壓/參考電壓產生器
150...電容器
160...控制電路

Claims (17)

  1. 一種隔離電路,該隔離電路用於耦接於一電源與處理電路之間,以將功率提供至該處理電路,同時隱藏該處理電路之一功率消耗特性,該隔離電路包含:複數個子電路,每一子電路包含:一電容器;一第一開關,該第一開關經組態以在該電容器與該電源之間提供一第一連接;一第二開關,該第二開關經組態以在該電容器與該處理電路之一輸出之間提供一第二連接;一第三開關,該第三開關經組態以在該電容器上提供一第三連接以部分地放電該電容器;及控制電路,該控制電路經組態以控制該複數個子電路,以使得在每一子電路中,該第一開關、該第二開關及該第三開關以一重複序列置於一活動狀態;該複數個子電路中之每一者進一步包含:一比較器,該比較器經組態以在該第三開關之該活動狀態期間達到該電容器上之一預定非零電壓差時,將該第三開關置於一打開狀態。
  2. 如申請專利範圍第1項之隔離電路,進一步包含與該電容器上之該第三開關串聯置放之放電調諧電路,該放電調諧電路回應於來自該控制電路之一控制信號,以使在該第三開關之該活動狀態期間該電容器之放電速率能 夠變化。
  3. 如申請專利範圍第1項之隔離電路,其中該比較器包含一運算放大器(op-amp),該運算放大器在一第一輸入處接收該電容器上之該電壓差之一指示,且在一第二輸入處接收該預定非零電壓之一指示。
  4. 如申請專利範圍第1項之隔離電路,進一步包含一參考電壓產生元件,該參考電壓產生元件可程式化以提供該預定非零電壓之一指示。
  5. 如申請專利範圍第1項之隔離電路,其中對於每一子電路,該控制電路控制該重複序列以確保在該子電路中每次僅提供該第一連接、該第二連接及該第三連接中之一者。
  6. 如申請專利範圍第1項之隔離電路,其中該控制電路控制該複數個子電路,以使得該等子電路之該等重複序列彼此成一相位關係。
  7. 如申請專利範圍第6項之隔離電路,其中該相位關係確保在任何時間點上該隔離電路至多提供一個第一連接、一個第二連接及一個第三連接。
  8. 如申請專利範圍第6項之隔離電路,其中該相位關係確保該第一開關、該第二開關及該第三開關中至少一者之該活動狀態在該複數個子電路之間重疊。
  9. 如申請專利範圍第8項之隔離電路,其中至少該第二開關之該活動狀態在該複數個子電路之間重疊,以使得該處理電路自該複數個子電路中至少兩者接收其功率歷經至少某些時段。
  10. 如申請專利範圍第1項之隔離電路,其中該複數個子電路包含至少三個子電路。
  11. 如申請專利範圍第6項之隔離電路,其中該第一開關、該第二開關及該第三開關之該等活動狀態的持續時間不全相同,且該複數個子電路包含至少兩個子電路。
  12. 一種積體電路,該積體電路包含:處理電路;及如申請專利範圍第1項之隔離電路。
  13. 如申請專利範圍第12項之積體電路,其中該處理電路使用至少一個秘密密鑰來執行加密及解密操作。
  14. 如申請專利範圍第12項之積體電路,進一步包含直 接耦接至該電源之額外處理電路。
  15. 如申請專利範圍第12項之積體電路,其中該積體電路係一智慧卡且該處理電路使用至少一個秘密密鑰來執行加密及解密操作。
  16. 一種隔離電路,該隔離電路用於耦接於電源構件與處理構件之間,以將功率提供至該處理構件,同時隱藏該處理構件之一功率消耗特性,該隔離電路包含:複數個子電路構件,每一子電路構件包含:一電容器構件;一第一開關構件,該第一開關構件用於在該電容器構件與該電源構件之間提供一第一連接;一第二開關構件,第二開關構件用於在該電容器構件與該處理構件之一輸出之間提供一第二連接;一第三開關構件,第三開關構件用於在該電容器構件上提供一第三連接以部分地放電該電容器構件;及控制構件,該控制構件用於控制該複數個子電路構件,以使得在每一子電路構件中,該第一開關構件、該第二開關構件及該第三開關構件以一重複序列置於一活動狀態;該複數個子電路構件中之每一者進一步包含:比較器構件,該比較器構件用於在該第三開關構件之該活動狀態期間達到該電容器構件上之一預定非零電 壓差時,將該第三開關構件置於一打開狀態。
  17. 一種使用複數個子電路使一電源與處理電路互連以將功率提供至該處理電路同時隱藏該處理電路之一功率消耗特性的方法,該方法包含在該複數個子電路中之每一者中執行一重複序列,該重複序列包含以下步驟:將該電源連接至一電容器以對該電容器充電;自該電容器斷開該電源;將該電容器連接至該處理電路之一輸出;自該輸出斷開該電容器;使該電容器短路以部分地放電該電容器;及在達到該電容器上之一預定非零電壓差時停止該電容器之該短路。
TW98146474A 2009-02-03 2009-12-31 用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法 TWI468974B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/320,747 US7880339B2 (en) 2009-02-03 2009-02-03 Isolation circuitry and method for hiding a power consumption characteristic of an associated processing circuit

Publications (2)

Publication Number Publication Date
TW201030553A TW201030553A (en) 2010-08-16
TWI468974B true TWI468974B (zh) 2015-01-11

Family

ID=41717252

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98146474A TWI468974B (zh) 2009-02-03 2009-12-31 用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法

Country Status (4)

Country Link
US (1) US7880339B2 (zh)
CN (1) CN101800471B (zh)
GB (1) GB2467406B (zh)
TW (1) TWI468974B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI506952B (zh) * 2011-11-23 2015-11-01 System General Corp 用於功率管理的隔離介面電路
US8912816B2 (en) 2012-11-12 2014-12-16 Chaologix, Inc. Charge distribution control for secure systems
US8912814B2 (en) * 2012-11-12 2014-12-16 Chaologix, Inc. Clocked charge domain logic
US9069959B2 (en) * 2012-12-21 2015-06-30 Nxp B.V. Cryptographic circuit protection from differential power analysis
US9135834B2 (en) * 2013-04-30 2015-09-15 The United Sates of America as represented by the Secretary of the Air Force Apparatus and method to prevent side channel power attacks in advanced encryption standard using floating point operation
KR101799663B1 (ko) * 2013-05-31 2017-11-20 차오로직스, 아이엔씨. 보안 시스템을 위한 전하 분포 제어
US9336872B2 (en) * 2014-03-11 2016-05-10 Everspin Technologies, Inc. Nonvolatile logic and security circuits
EP3179668B1 (en) * 2015-12-11 2019-05-22 Institut Mines-Télécom Methods and devices for estimating secret values
US10924261B2 (en) * 2017-05-22 2021-02-16 Arm Limited Efficient power distribution
US10997322B2 (en) * 2017-05-22 2021-05-04 Arm Limited Efficient power distribution
EP3506049A1 (en) * 2017-12-26 2019-07-03 Ikerlan, S. Coop. Computing device
EP3565079A1 (en) * 2018-04-30 2019-11-06 E.ON Sverige AB Handling surplus and/or deficit of energy in a local energy system
US11256311B2 (en) 2018-06-14 2022-02-22 Arm Limited Partially discharging a power supply
US11183844B2 (en) * 2018-06-14 2021-11-23 Arm Limited Supplying energy to an apparatus
US11394308B1 (en) 2021-05-05 2022-07-19 Arm Limited Apparatuses and methods for power isolation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7199576B2 (en) * 2004-10-18 2007-04-03 Siemens Aktiengesellschaft Apparatus for testing processing electronics
US20070176670A1 (en) * 2005-01-13 2007-08-02 Pasquale Corsonello Charge pump based subsystem for secure smart-card design
TW200801924A (en) * 2006-04-12 2008-01-01 O2Micro Inc A power management system, controller, method with multiple power sources and media player thereof
US7342389B1 (en) * 2007-01-09 2008-03-11 Diodes, Inc. High efficiency charge pump DC to DC converter circuits and methods

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US176670A (en) * 1876-04-25 Improvement in fire-place heaters
DE3142325C2 (de) * 1981-10-24 1983-08-25 Hewlett-Packard GmbH, 7030 Böblingen Brückenschaltung für Messzwecke
FR2638869B1 (fr) 1988-11-10 1990-12-21 Sgs Thomson Microelectronics Dispositif de securite contre la detection non autorisee de donnees protegees
US5697367A (en) * 1994-10-14 1997-12-16 Somanetics Corporation Specially grounded sensor for clinical spectrophotometric procedures
US5873816A (en) * 1994-11-02 1999-02-23 Olympus Optical Co., Ltd. Electronic endoscope having an insertional portion a part of which is a conductive armor
DE19911673A1 (de) 1999-03-09 2000-09-14 Deutsche Telekom Ag Verfahren und Anordnung für den Schutz der Daten auf einer Smartcard

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7199576B2 (en) * 2004-10-18 2007-04-03 Siemens Aktiengesellschaft Apparatus for testing processing electronics
US20070176670A1 (en) * 2005-01-13 2007-08-02 Pasquale Corsonello Charge pump based subsystem for secure smart-card design
TW200801924A (en) * 2006-04-12 2008-01-01 O2Micro Inc A power management system, controller, method with multiple power sources and media player thereof
US7342389B1 (en) * 2007-01-09 2008-03-11 Diodes, Inc. High efficiency charge pump DC to DC converter circuits and methods

Also Published As

Publication number Publication date
GB2467406B (en) 2013-05-29
CN101800471B (zh) 2014-06-18
GB2467406A (en) 2010-08-04
TW201030553A (en) 2010-08-16
CN101800471A (zh) 2010-08-11
GB0922235D0 (en) 2010-02-03
US7880339B2 (en) 2011-02-01
US20100194205A1 (en) 2010-08-05

Similar Documents

Publication Publication Date Title
TWI468974B (zh) 用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法
US9430678B2 (en) Charge distribution control for secure systems
JP6882856B2 (ja) セキュアデジタル論理セル
Yu et al. Security-adaptive voltage conversion as a lightweight countermeasure against LPA attacks
EP3005219B1 (en) Charge distribution control for secure systems
EP3393078B1 (en) Secure execution environment clock frequency hopping
US10680797B2 (en) Security-adaptive voltage conversion as a lightweight counter measure against LPA attacks
EP2693680A1 (en) Apparatus safe from power consumption analysis attack for encrypting and method for operating same
US7290151B2 (en) Logic circuit with variable internal polarities
Zhang et al. Improving power analysis attack resistance using intrinsic noise in 3D ICs
CN112236973B (zh) 对电源进行部分放电
US10270586B2 (en) Random time generated interrupts in a cryptographic hardware pipeline circuit
KR101080529B1 (ko) 전력 분석 공격에 안전한 암호화 장치 및 그 동작 방법
US20220302830A1 (en) High efficiency power obfuscation switched capacitor dc-dc converter architecture
Chen et al. Design and implementation of a Differential Power Analysis System for cryptographic devices