TW201732670A - 藉由變更時脈延遲以防止旁通道攻擊的系統及其方法 - Google Patents

藉由變更時脈延遲以防止旁通道攻擊的系統及其方法 Download PDF

Info

Publication number
TW201732670A
TW201732670A TW105127997A TW105127997A TW201732670A TW 201732670 A TW201732670 A TW 201732670A TW 105127997 A TW105127997 A TW 105127997A TW 105127997 A TW105127997 A TW 105127997A TW 201732670 A TW201732670 A TW 201732670A
Authority
TW
Taiwan
Prior art keywords
delay
logic circuit
instances
delays
inputs
Prior art date
Application number
TW105127997A
Other languages
English (en)
Other versions
TWI621963B (zh
Inventor
瓦勒利 特波
卡路茲尼 厄瑞
Original Assignee
華邦電子股份有限公司
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 華邦電子股份有限公司 filed Critical 華邦電子股份有限公司
Publication of TW201732670A publication Critical patent/TW201732670A/zh
Application granted granted Critical
Publication of TWI621963B publication Critical patent/TWI621963B/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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • 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
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Logic Circuits (AREA)
  • Power Sources (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

一種藉由變更時脈延遲以防止旁通道攻擊的系統,具有一邏輯電路與延遲迴路。邏輯電路被用以基於多個輸入而執行特定運算的多個事例。藉由對於所述多個輸入在所述多個事例中施加各自的延遲(至少一部份的延遲彼此獨立改變),延遲迴路用以在所述多個事例中改變邏輯電路的功耗輪廓,藉由改變系統的功耗輪廓以防止旁通道攻擊。

Description

藉由變更時脈延遲以防止旁通道攻擊的系統及其方法
本發明的實施例是有關於資料安全(data security)的領域,且特別是有關於旁通道攻擊(side-channel attacks)的防護。
在旁通道攻擊(side-channel attacks)中,有關於運算的時序(timing)及/或功耗的資訊可能會危及安全資料系統的安全性。
美國專利申請案公開號2012/0204056的揭示內容以參引方式被合併於此處,其描述了資料處理裝置,用以回應資料處理指令來對至少一資料值執行資料處理操作。資料處理裝置具有一延遲單元,其位於資料處理裝置內的路徑上,其中延遲單元被用以施加一延遲至路徑上的訊號傳播,且此訊號傳播構成資料處理操作的一部分。資料處理裝置被用於在預定時間點時,判斷資料處理操作的結果,其中所述預定的時間點是在資料處理操作起始經一預定時間區間後的時間點。延遲單元被用於使資料處理操作將被執行並加上延遲的時間小於所述預定時間區間。
美國專利申請案公開號2011/0285421的揭示內容以參引方式被合併於此處,其描述了一種降低監控系統的電流以及系統的資料間的關聯的能力的技術以及方法,其是藉由關閉整體時脈眼圖,同時保持連接期的眼圖的開啟。相較於使用系統廣泛時脈跳動,連接指令管線期的眼圖關閉的程度允許系統運行至接近其最大運行速度。但關閉整體使系統安全缺乏了部份打開的眼圖。
美國專利公告號8,427,194的揭示內容以參引方式被合併於此處,其描述了一種透過使用隨機時脈以降低入侵者監視系統的電流及系統的資料的技巧及方法。其中,相較當使用習知的附加跳動方式於運行頻率最大時的減少,在最大運行速度時隨機時脈的時脈眼圖是關閉的且沒有明顯的減少。
根據本發明的多個實施例,一種藉由變更時脈延遲以防止旁通道攻擊的系統具有邏輯電路,用以基於多個輸入執行特定運算(computation)的多個事例(instances)。此系統更具有延遲迴路,藉由在這些事例中對這些輸入施加各自的延遲(至少一部份的延遲彼此獨立改變),以在這些事例中改變邏輯電路的功耗輪廓(power-consumption profile)。
在某些實施例中,延遲迴路用以在這些事例中改變邏輯電路的功耗輪廓是藉由在這些事例中造成被邏輯電路運算的中間輸出值的改變。
在多個實施例中,延遲迴路用以在這些事例中改變邏輯電路的功耗輪廓是藉由在這些事例中造成邏輯電路所執行運算的各自時序的改變。
在多個實施例中,藉由變更時脈延遲以防止旁通道攻擊的系統更具有多個正反器,每一輸入來自這些正反器的相應一者。
在多個實施例中,延遲迴路包括多個延遲電路,每一延遲電路被用以施加這些延遲中的相應一者至這些輸入中的相應一者,藉由:延遲一時脈訊號,藉由這些延遲中的相應一者以產生被延遲時脈訊號,以及傳遞被延遲時脈訊號至這些正反器中的相應一者。
在多個實施例中,系統更包括具有相應傳播延遲的一個或多個其他邏輯電路並串接於邏輯電路,以及延遲迴路被用以施加相應的這些延遲至這些輸入,以於這些事例的任何一者中,邏輯電路的總傳播延遲不超過所述其他邏輯電路的相應傳播延遲的最大值。
根據本發明的一些實施例,一種藉由變更時脈延遲以防止旁通道攻擊的方法更被提供。此方法包括,使用邏輯電路,基於多個輸入執行特定運算的多個事例。此方法更包括藉由在該些事例中施加相應延遲至多個輸入(這些延遲的至少部分的是獨立改變),以在這些事例中改變邏輯電路的功耗輪廓。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
[概述]
某些旁通道攻擊(side-channel attacks)是利用系統功耗輪廓(power-consumption profile)的一致性,以獲得未經授權存取的系統資訊。舉例來說,旁通道攻擊可能被用於破壞加密系統的加密,因而從加密系統中取得資訊的存取。
本發明的範例實施例是藉由「隨機化(randomizing)」系統的功耗輪廓以防止此種旁通道攻擊。為了達到隨機化,隨機延遲(例,延遲的時間區間隨機地改變)被施加於屬於此系統的至少一邏輯電路的輸入中。由於這些延遲,邏輯電路執行任何特定運算的方式將在該運算的多個事例(instances of the computation)之間改變。舉例來說,在計算出最終輸出值之前,隨機延遲可能導致邏輯電路去運算中間輸出(intermediate outputs),而此中間輸出在值及/或時序的改變可以作為隨機延遲的函數。因此,由於(1)被邏輯電路運算的中間輸出值的改變,或(2)邏輯電路所執行的運算的時序的改變,使邏輯電路的功耗輪廓將在任意特定運算的多個事例之間進行改變。
另外,藉由改變記憶體元件被更新的時間,這些隨機延遲可以被施加至系統中至少一個記憶體元件(例如包括多個正反器的暫存器),因此導致記憶體元件的功耗輪廓在任意特定運算的不同事例間改變。在某些案例中,從記憶體元件至邏輯電路的輸入被接收,以使施加於記憶體元件的這些延遲會影響記憶體元件及邏輯電路兩者的功耗。
在本申請案及申請專利範圍的內容中,「邏輯電路」是能藉由對多個輸入值執行一邏輯操作,以運算一輸出的任何電子電路。(例如一邏輯運算一般為基本的反(NOT)、及(AND)、或(OR)、反及(NAND)、反或(NOR)及互斥或(XOR)等運算的組合。)邏輯電路的輸出可以為此電路當下輸入的一個純粹函數,此種案例的邏輯電路被稱為「組合邏輯電路(combinational-logic circuit或combinatorial-logic circuit)」。另外,此輸出可以相依於此電路的輸入歷史及/或先前的輸出,此種案例的邏輯電路被稱為「時序邏輯電路(sequential-logic circuit)」。在此處被描述的範例實施例可以施加於組合邏輯電路以及時序邏輯電路兩者上。
在本申請案及申請專利範圍的內容中,系統或電路「功耗輪廓」關聯於此系統或此電路所消耗的功率量,其作為時間函數。此外,「改變功耗輪廓」關聯於以多於統計變化的正常量來改變此系統或此電路在時間中至少一時刻所消耗的功率量。換句話說,即便通過溫度、電壓及/或其他因素的改變可能導致功耗輪廓表現一個統計變化的正常量,這種變化會在旁通道攻擊中被「抵消(canceled out)」。另一方面來說,在此描述的範例實施例以多於所述正常量來改變功耗輪廓,因此阻止任何潛在的旁通道攻擊。
[系統描述]
請先參考圖1的參照內容,圖1繪示本發明一範例實施例的一種系統20以防止旁通道攻擊的高階結構示意圖。系統20被展現為讀卡機23中的一個構件,讀卡機23被用以讀取智慧卡(smart card)25。然而,請注意系統20也可以被實現於任何其他適合的型態的裝置。不限於本實施例,例如,系統20可以被實現於智慧卡25,或者,更一般性地,系統20可以被實現在實施數位邏輯的任何裝置,例如在任何固定式或行動式的電腦內的中央處理器(central processing unit,CPU)。
圖1從高階結構的角度顯示資料流入、流經及流出系統20。首先,來自智慧卡25的被加密的資料「ED」被系統20所接收。舉例來說,這資料會被第一暫存器(「R」)21a所接收。接著,這資料會流入第一邏輯電路(「C」)22a,其可以由這資料運算得到輸出。這輸出接著可以被回送至第一暫存器21a,並/或被送至第二暫存器21b,隨後這輸出會由第二暫存器21b流至第二邏輯電路22b。此資料會繼續經過任意數量的暫存器及邏輯電路,每一邏輯電路對這資料執行任意相關操作,以回應任何相關額外的輸入。最後,系統20輸出未經加密的資料「UD」,「UD」是可使用的,舉例來說,未經加密的資料UD會被用來執行金融交易。
圖1亦揭示一示波器(oscilloscope)29,藉由對讀卡機監測功率輸入27,示波器29準備對讀卡機23進行旁通道攻擊。進一步說明如下,系統20藉由改變讀卡機讀取不同卡之間的功耗輪廓以防止此種攻擊。(在某些案例中,攻擊者會藉由監視智慧卡25的功耗,交替或額外地企圖非法提取資料。此實施例的系統20在智慧卡上的實現,如同上述,會幫助阻擋這種攻擊。)
請參考圖2的內容,圖2繪示本發明一範例實施例並根據圖1的範例實施例的系統20的結構示意圖。為了說明的緣故,圖2揭露簡化的範例,圖1中串聯的暫存器及邏輯電路由單一暫存器21以及單一邏輯電路22所取代,如下所述,對來自暫存器21的資料進行額外的操作。需注意的,無論如何,描述於圖2的原理原則及技術會被相似地施加於其他複雜度更高的系統。
暫存器21包括多個正反器(flip-flops),被描繪於圖2的標號F3、F2、F1及F0。在任何給定時間內,每一正反器儲存單一二進位值。假設本揭露內容中,正反器F3儲存最高階位元(highest-order bit),正反器F2儲存次高階位元,等等。舉例來說,當(1) F3及F1儲存0,且(2) F2及F0儲存1,暫存器21將儲存數值0101(=5)。鑒於此,更進一步描述如下,圖2的範例實施例實現一計數器,被儲存於暫存器的數值可以被視為「計數(COUNT)」變數的值。
圖2揭露F3接收時脈訊號C3,F2接收時脈訊號C2,F1接收時脈訊號C1,以及F0接收時脈訊號C0。隨著每一相應的時脈訊號的上升(或者,下降)邊緣,對應的正反器擷取(「閂鎖」)相應資料輸入D的值。在短暫的延遲後,被擷取的值變成正反器的輸出Q,此輸出隨後被輸入至邏輯電路22。因此,圖2顯示來自正反器F3的輸出被饋送至邏輯電路作為輸入I3,來自正反器F2的輸出被饋送至邏輯電路作為輸入I2,來自正反器F1的輸出被饋送至邏輯電路作為輸入I1,以及來自正反器F0的輸出被饋送至邏輯電路作為輸入I0。
邏輯電路22對這些輸入執行一邏輯運算。特別是,在圖2中,邏輯電路22為一計數器用以執行「+1」的操作,其中1被加在至邏輯電路的輸入。此操作產生一輸出「下一計數」(NEXT COUNT,或簡稱「NC」),其包括四個輸出位元NC3、NC2、NC1及NC0。在本揭示內容中,NC3被假設為「下一計數」的最高階位元,NC2被假設為「下一計數」的次高階位元,等等。每一輸出位元被饋送至此輸出位元的量級(the order of magnitude of the output bit)所對應的正反器,藉此,在下一個時脈週期(clock cycle)中,「計數」獲取「下一計數」的數值。
因此,舉例來說,初始的「計數」0001可以被輸入至邏輯電路22。(也就是說I0=1,而I1 = I2 = I3 = 0。)藉由執行「+1」操作,邏輯電路22運算輸出「下一計數」為0010。(也就是說NC1=1,且NC0=NC2=NC3=0。)此輸出接著被回饋至各正反器F0、F1、F2、F3,如此一來,在下一個時脈週期時,正反器F1擷取數值1,而剩餘的正反器擷取數值0。亦即,「計數」被增加至0010。「計數」的新數值接著被輸入至邏輯電路22。
如上所述,在圖2描述的眾多細節僅為示例說明。在實際運作中,本發明的範例實施例可以被應用於任何合適數量的邏輯電路,每一邏輯電路執行任何合適的運算。每一邏輯電路會接收任意數量的輸入,舉例來說,包括可以從在系統內記憶體元件以外的來源接收輸入,並計算任意數量的輸出。這些輸出會饋送至上述的記憶體元件,及/或以任何其他方式被使用。此外,系統20也可以包括任意合適數量、任意合適型態的記憶體元件。
為了防止旁通道攻擊,本發明的範例實施例藉由改變任一特定運算的多個事例之間的相應時間區間,以延遲至正反器的時脈訊號。時脈訊號的延遲導致這些正反器各自擷取新的相應數值的時間有所變化,因此也改變了這些正反器的功耗輪廓。此外,由於至邏輯電路的輸入是來自這些正反器,該些時脈訊號延遲更進一步影響邏輯電路的功耗輪廓。因此,由於正反器的功耗輪廓及邏輯電路的功耗輪廓被改變,整個系統的功耗輪廓被改變。(雖然如上所述,仍需注意的是本發明的範圍包括改變一個或多個邏輯電路的功耗輪廓,如同此處所述,但不改變任何記憶體元件的功耗輪廓。)
這些延遲的至少部份延遲彼此之間獨立地改變;舉例來說,如圖2所述,並更進一步描述如下,每一延遲獨立地改變於其他的延遲。在某些範例實施例中,進一步配合並參考圖2,於此處描述如下,系統20會藉由兩個延遲時間區間其中之一來隨機延遲每一時脈訊號。在一案例中,假設具有四個正反器,對於邏輯電路可以執行的每一種可能的運算則有24 =16種不同的功耗輪廓。在更複雜的系統中(具有更多數量的正反器及/或電路),可能會有百萬或數十億的功耗輪廓,以成功地使旁通道攻擊變成實質上不可能的行為。舉例來說,若有32個正反器,並假設只有兩個延遲時間區間,不同的功耗輪廓的數量已經超過四十億了。
在某些範例實施例中,延遲電路被用以延遲這些正反器所接收的時脈訊號。舉例來說,如圖2所示,共同時脈訊號CK會被饋送至多個延遲電路26中的每一延遲電路。每一延遲電路接收時脈訊號CK,延遲此時脈訊號CK,並饋送被延遲的時脈訊號至相應的正反器。
在其他範例實施例中,每一延遲電路延遲此時脈訊號CK以回應隨機延遲位元「RDB」,其被獨立產生於被饋送至其他延遲電路的這些隨機延遲位元。(在圖2中,這些隨機延遲位元是由參照數字RDB3、RDB2、RDB1及RDB0所指示,並分別對應至正反器F3、F2、F1及F0)。為了回應隨機延遲位元,多工器28啟動兩個延遲元件「延遲1(Delay 1)」及「延遲2(Delay 2)」其中之一,以使時脈訊號CK被延遲了兩個延遲時間區間其中之一。舉例來說,多工器28可以回應RDB=0而選擇「延遲1」,及回應RDB=1而選擇「延遲2」。透過這種方式,每一正反器的延遲是以隨機的方式改變。
儘管特定的實施例已描繪如上,需注意的是本發明的範圍包括使用任何合適的迴路來延遲邏輯電路的這些輸入,及/或延遲在系統中的記憶體元件被更新(updated)的時間。
隨機延遲被應用於時脈訊號的效應被繪示於圖3A至圖3B。圖3A至圖3B是依據本發明一些範例實施例繪示系統20的操作的各自時間軸(timelines)示意圖。圖3A至圖3B是基於圖2所示系統20實施例。
圖3A繪示了第一情境。在第一情境中,被儲存於暫存器中的「計數」的初始值為0001,而「下一計數」初始地具有數值0010(按照「+1」運算,「下一計數」比「計數」大1)。在時間T0,時脈訊號CK從低到高。然而,由於這些延遲電路,暫存器不會立即的擷取(capture)數值0010,取而代之,先擷取了中間數值(intermediate value)0011。特別是,(1) 對於正反器F3及F1的這些延遲電路,每一延遲電路將時脈訊號CK延遲了0時間區間(例如,藉由應用「延遲1」的0),以使時脈訊號C3及C1於時間T0時從低到高,但是(2) 正反器F2與F0的這些延遲電路會將時脈訊號CK延遲了更大的時間區間,以使時脈訊號C2及C0只在稍後的時間T1時由低到高。(舉例來說,這些稍遲的延遲電路可以應用「延遲2」的T1-T0。)因此,在T0時,正反器F3及F1從「下一計數」中分別擷取位元NC3及NC1,但是正反器F2及F0維持其先前的數值,致使「計數」=0011。
在T0之後的某個時間,邏輯電路接收新的輸入0011。此邏輯電路接著開始運算0011。首先,在時間T2,邏輯電路輸出中間輸出值0110。此輸出是「介於」初始輸出值0010以及「目標(target)」輸出值0100(其比輸入0011大1),邏輯電路已設定NC3為1,但尚未設定NC1為0。
如上所述,在早於T2的時間T1,正反器F2及F0分別擷取NC2及NC0的數值,以使儲存在暫存器中的數值改變成0010。接著,在T1之後的某個時間,邏輯電路接收來自暫存器的輸入0010,並開始處理此輸入。首先,在時間T3,邏輯電路輸出中間數值0111,此「介於」先前的輸出0110以及「目標」輸出0011,此時,邏輯電路將NC0已設為1,但尚未將NC3設為0。接著,在時間T4,邏輯電路輸出了最終輸出0011。
一般而言,系統20被用於使每一時脈訊號延遲短於邏輯電路完成第一運算的所需時間。因此,舉例來說,在圖3A中,最後更新「計數」發生於T1,早於時間T2的第一次改變「下一計數」。(若任一時脈訊號被延遲超過T2,暫存器會擷取錯誤的數值0110來取代0010。)
圖3B繪示了第二個情境。在第二情境中,「計數」及「下一計數」的初始狀態相同於圖3A,且邏輯電路執行相同的「+1」運算。然而,由於不同的延遲被應用於這些正反器的輸入的時脈訊號,使得運算執行的過程明顯的不同。
首先,在時間T0,正反器F2及F0分別擷取各自的新的數值,使得暫存器儲存中間值0000。邏輯電路接著開始處理此中間輸入。接著,在時間T1,正反器F3及F1分別擷取各自的新數值,以使「計數」轉變成0010。然而,邏輯電路持續地運算中間輸入0000。因此,在時間T2,邏輯電路輸出中間數值0011。(在上述的描繪中,此數值「介於」0010及「目標」輸出0001之間;恰巧地,此數值正好與最終輸出相同。)接著,在時間T3,邏輯電路輸出數值0001,此為應用「+1」運算至中間輸入0000的最終結果。最後,在時間T4,邏輯電路輸出0011,此為應用「+1」運算至最終輸入0010的最終結果。
藉由兩種不同的中間輸入(0000與0011)傳遞至邏輯電路,因此出現了圖3B不同於圖3A的至少兩個方法。第一,如上所述,邏輯電路運算不同的中間輸出值(0011及0001相對於0110及0111)。第二,邏輯電路執行運算的時序並不相同。因此,舉例來說,相較於圖3A,圖3B顯示「下一計數」的值的轉變時間T3較早,而最後轉變時間T4較晚。由於這些不同之處,圖3A與圖3B的邏輯電路的功耗輪廓並不相同,並由繪示於圖中的功耗曲線(僅為示例)所表示。
在某些案例中,改變中間輸入會更進一步導致中間輸出值的數量改變。改變中間輸出值的數量亦為可能影響功耗輪廓的另外一個因素。
需注意的是這些圖式繪示的這些中間輸出值是用來示例說明的緣故而被選擇成為「中間值(in-between values)」。在本申請案的內容中,包括申請專利範圍,「中間輸出值」可以為早於運算的最後結果的輸出,且由邏輯電路輸出的任何數值。
一般而言,如同上述,系統20包括多個彼此串聯的多個邏輯電路。對於這種多電路系統,一般而言(但非必要),時脈延遲僅被應用至這些電路中比較快的電路的輸入,以確保整個系統的速度不會低於不具有時脈延遲的系統。
舉例來說,若在中央處理器中最慢的邏輯電路具有9.9奈秒(nanoseconds)的傳播延遲,此中央處理器的時脈週期(clock cycle)的時間區間可以設為10奈秒。(此對應至近似100兆赫(MHz)的時脈速度;100百萬略少於最慢的邏輯電路每秒可以執行的運算數量。)因此,為了維持時脈週期的時間區間於10奈秒,延遲僅施加於總傳播延遲(包括時脈延遲)小於10奈秒的這些電路的輸入中,以便有足夠的安全餘量。舉例來說,時脈延遲可以被設置,使得系統中沒有總傳播延遲超過9.9奈秒的「基準」傳播延遲。因此,藉由說明的此種方式,具有8奈秒初始傳播延遲的電路可以具有被延遲了任何合適時間區間的一個或多個輸入,所述合適時間區間不超過1.9奈秒。此外,具有7奈秒初始傳播延遲的其他電路可以具有被延遲了任何合適時間區間的一個或多個輸入,所述合適時間區間不超過2.9奈秒。
在本申請案的內容中,包括申請專利範圍,邏輯電路的「傳播延遲」是電路輸出計算結果的所需時間,其是從輸入的接收的時間而測量獲得。
在本發明所屬的技術領域中具有通常知識者可以理解的是,本發明不限於上述的說明。相反地,本發明的實施例的範圍包括了在本技術領域中具有通常知識者可以藉由閱讀上述說明並依據上述各種特徵的組合或子組合,以及不屬於先前技術的更動或修正。在本專利申請的參照文件被併入並視為本專利申請的一個部份,除了任何與本說明書明確或隱含的定義相衝突的術語,應以本發明書的定義為準。
20‧‧‧系統
21、21a、21b、R‧‧‧暫存器
22、22a、22b、C‧‧‧邏輯電路
23‧‧‧讀卡機
25‧‧‧智慧卡
26‧‧‧延遲電路
27‧‧‧功率輸入
28‧‧‧多工器
29‧‧‧示波器
C0、C1、C2、C3、CK‧‧‧時脈訊號
D、I0、I1、I2、I3‧‧‧輸入
ED‧‧‧被加密的資料
F0、F1、F2、F3‧‧‧正反器
NC0、NC1、NC2、NC3‧‧‧下一計數
RDB0、RDB1、RDB2、RDB3‧‧‧隨機延遲位元
Q‧‧‧輸出
T0、T1、T2、T3、T4‧‧‧時間
UD‧‧‧未經加密的資料
圖1繪示本發明一實施例的一種系統以防止旁通道攻擊的高階結構示意圖。 圖2繪示本發明一實施例並根據圖1的範例實施例的系統的結構示意圖。 圖3A至圖3B是依照本發明一些實施例繪示操作圖1系統時的各自時間軸示意圖。
20‧‧‧系統
21‧‧‧暫存器
22‧‧‧邏輯電路
26‧‧‧延遲電路
28‧‧‧多工器
C0、C1、C2、C3、CK‧‧‧時脈訊號
D、I0、I1、I2、I3‧‧‧輸入
F0、F1、F2、F3‧‧‧正反器
NC0、NC1、NC2、NC3‧‧‧下一計數
RDB0、RDB1、RDB2、RDB3‧‧‧隨機延遲位元
Q‧‧‧輸出

Claims (13)

  1. 一種藉由變更時脈延遲以防止旁通道攻擊的系統,包括: 一邏輯電路,用以基於多個輸入而執行特定運算的多個事例;以及 一延遲迴路,用以在該些事例中對該些輸入施加各自的延遲,而在該些事例中改變該邏輯電路的一功耗輪廓,其中該些延遲的至少一部份彼此獨立改變。
  2. 如申請專利範圍第1項所述的藉由變更時脈延遲以防止旁通道攻擊的系統,其中該延遲迴路用以藉由在該些事例中造成被該邏輯電路運算的一中間輸出值的改變,而在該些事例中改變該邏輯電路的該功耗輪廓。
  3. 如申請專利範圍第1項所述的藉由變更時脈延遲以防止旁通道攻擊的系統,其中該延遲迴路用以藉由在該些事例中造成該邏輯電路所執行多個運算的各自時序的改變,而在該些事例中改變該邏輯電路的該功耗輪廓。
  4. 如申請專利範圍第1項至第3項中任一項所述的藉由變更時脈延遲以防止旁通道攻擊的系統,更包括多個正反器,該些輸入的每一者來自該些正反器的相應一者。
  5. 如申請專利範圍第4項所述的藉由變更時脈延遲以防止旁通道攻擊的系統,其中該延遲迴路包括多個延遲電路,該些延遲電路的每一者被用以施加該些延遲中的相應一者至該些輸入中的相應一者,藉由: 延遲一時脈訊號,藉由該些延遲中的相應一者以產生一被延遲時脈訊號,以及 傳遞該被延遲時脈訊號至該些正反器中的相應一者。
  6. 如申請專利範圍第1項所述的藉由變更時脈延遲以防止旁通道攻擊的系統,更包括具有相應傳播延遲的一個或多個其他邏輯電路並串接於該邏輯電路,其中該延遲迴路被用以施加相應的該些延遲至該些輸入,以於該些事例的任何一者中,該邏輯電路的一總傳播延遲不超過所述其他邏輯電路的相應傳播延遲的一最大值。
  7. 一種藉由變更時脈延遲以防止旁通道攻擊的方法,包括: 使用一邏輯電路,基於多個輸入執行特定運算的多個事例;以及 藉由在該些事例中施加相應延遲至該些輸入,以在該些事例中改變該邏輯電路的一功耗輪廓,其中該些延遲的至少部分獨立改變。
  8. 如申請專利範圍第7項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中該些延遲的每一者彼此獨立改變。
  9. 如申請專利範圍第7項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中所述施加該些相應延遲至該些輸入改變該些事例中的該邏輯電路的該功耗輪廓,是藉由在該些事例中造成被該邏輯電路運算的一中間輸出值的改變。
  10. 如申請專利範圍第7項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中所述施加該些相應延遲至該些輸入改變該些事例中的該邏輯電路的該功耗輪廓,是藉由在該些事例中造成該邏輯電路所執行多個運算的各自時序的改變。
  11. 如申請專利範圍第7項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中該些輸入是從相應的多個正反器所輸入,且施加該些相應延遲至該些輸入包括施加該些相應延遲至該些輸入是藉由: 傳遞一時脈訊號至多個延遲電路, 利用該些延遲電路延遲該時脈訊號以產生多個被延遲時脈訊號,以及 對該些正反器的每一者傳遞該些被延遲時脈訊號中的相應一者。
  12. 如申請專利範圍第11項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中,對該些延遲電路的每一延遲電路延遲該時脈訊號包括: 產生一隨機延遲位元,以及 使用該延遲電路,藉由該隨機延遲位元的一函數的一時間區間延遲該時脈訊號。
  13. 如申請專利範圍第7項所述的藉由變更時脈延遲以防止旁通道攻擊的方法,其中該邏輯電路被串接至一個或多個具有相應傳播延遲的其他邏輯電路,且其中施加該些延遲至該些輸入包括,施加該些延遲至該些輸入以使在該些事例的任何一者中的該邏輯電路的一總傳播延遲不超過該些其他邏輯電路的該些相應傳播延遲的一最大值。
TW105127997A 2016-03-13 2016-08-31 藉由變更時脈延遲以防止旁通道攻擊的系統及其方法 TWI621963B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/068,587 US10019571B2 (en) 2016-03-13 2016-03-13 Protection from side-channel attacks by varying clock delays
US15/068,587 2016-03-13

Publications (2)

Publication Number Publication Date
TW201732670A true TW201732670A (zh) 2017-09-16
TWI621963B TWI621963B (zh) 2018-04-21

Family

ID=57482191

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105127997A TWI621963B (zh) 2016-03-13 2016-08-31 藉由變更時脈延遲以防止旁通道攻擊的系統及其方法

Country Status (5)

Country Link
US (1) US10019571B2 (zh)
EP (1) EP3220376A1 (zh)
KR (1) KR101946509B1 (zh)
CN (1) CN107181585B (zh)
TW (1) TWI621963B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI693791B (zh) * 2018-11-18 2020-05-11 新唐科技股份有限公司 使用小型間接隨機預充電以防範旁通道攻擊的電子元件

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017037725A1 (en) * 2015-09-06 2017-03-09 Bar-Ilan University Randomized logic against side channel attacks
US10263767B1 (en) 2018-07-03 2019-04-16 Rajant Corporation System and method for power analysis resistant clock
US11269999B2 (en) * 2019-07-01 2022-03-08 At&T Intellectual Property I, L.P. Protecting computing devices from malicious tampering
EP3843317A1 (en) 2019-12-23 2021-06-30 Nagravision SA Method for detecting perturbations in a logic circuit and logic circuit for implementing this method
US11449642B2 (en) * 2020-09-04 2022-09-20 Arm Limited Attack protection by power signature blurring
US11762993B2 (en) 2021-04-12 2023-09-19 Nxp B.V. Securing cryptographic operations from side channel attacks using a chaotic oscillator
GB202107381D0 (en) * 2021-05-24 2021-07-07 Nordic Semiconductor Asa Security in integrated circuits

Family Cites Families (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4521853A (en) 1982-06-30 1985-06-04 Texas Instruments Incorporated Secure microprocessor/microcomputer with secured memory
SG48838A1 (en) 1992-12-30 1998-05-18 Telstra Corp Ltd A method and apparatus for generating a cipher
US5404402A (en) * 1993-12-21 1995-04-04 Gi Corporation Clock frequency modulation for secure microprocessors
US5671283A (en) 1995-06-08 1997-09-23 Wave Systems Corp. Secure communication system with cross linked cryptographic codes
US6272637B1 (en) 1997-04-14 2001-08-07 Dallas Semiconductor Corporation Systems and methods for protecting access to encrypted information
WO2000057290A1 (fr) 1999-03-19 2000-09-28 Hitachi, Ltd. Processeur d'informations
DE69939254D1 (de) 1999-06-22 2008-09-18 Hitachi Ltd Kryptografisches Gerät und Verfahren
FR2801751B1 (fr) 1999-11-30 2002-01-18 St Microelectronics Sa Composant electronique de securite
DE60132962T2 (de) 2000-01-21 2009-02-26 Sony Corp. Datenverarbeitungsvorrichtung und datenverarbeitungsverfahren
US7242772B1 (en) 2000-09-07 2007-07-10 Eastman Kodak Company Encryption apparatus and method for synchronizing multiple encryption keys with a data stream
US6934389B2 (en) 2001-03-02 2005-08-23 Ati International Srl Method and apparatus for providing bus-encrypted copy protection key to an unsecured bus
KR100385228B1 (ko) 2001-04-18 2003-05-27 삼성전자주식회사 불휘발성 메모리를 프로그램하는 방법 및 장치
US6976136B2 (en) 2001-05-07 2005-12-13 National Semiconductor Corporation Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
US6760918B2 (en) 2001-06-29 2004-07-06 Scientific-Atlanta, Inc. Method and apparatus for recordable media content distribution
EP1293856A1 (fr) 2001-09-18 2003-03-19 EM Microelectronic-Marin SA Circuit Intégré sécurisé comprenant des parties à caractère confidentiel, et procédé pour sa mise en action
US7490250B2 (en) 2001-10-26 2009-02-10 Lenovo (Singapore) Pte Ltd. Method and system for detecting a tamper event in a trusted computing environment
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US7137004B2 (en) 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
EP1456994B1 (en) 2001-12-18 2018-02-07 Analog Devices, Inc. Programmable data encryption engine for advanced encryption standard algorithm
US6768943B2 (en) 2002-04-18 2004-07-27 Aviation Communication & Surveillance Systems, Llc System and method using environment memory having signatures
US7248696B2 (en) 2002-09-12 2007-07-24 International Business Machines Corporation Dynamic system bus encryption using improved differential transitional encoding
US8140824B2 (en) 2002-11-21 2012-03-20 International Business Machines Corporation Secure code authentication
US7194626B2 (en) 2002-11-21 2007-03-20 International Business Machines Corporation Hardware-based secure code authentication
US7269747B2 (en) 2003-04-10 2007-09-11 Lenovo (Singapore) Pte. Ltd. Physical presence determination in a trusted platform
US6965521B2 (en) 2003-07-31 2005-11-15 Bae Systems, Information And Electronics Systems Integration, Inc. Read/write circuit for accessing chalcogenide non-volatile memory cells
US7533262B2 (en) 2003-08-01 2009-05-12 Microsoft Corporation Media data protection
US7421076B2 (en) 2003-09-17 2008-09-02 Analog Devices, Inc. Advanced encryption standard (AES) engine with real time S-box generation
DE10345385B4 (de) 2003-09-30 2005-10-06 Infineon Technologies Ag Entschlüsselung bzw. Verschlüsselung bei Schreibzugriffen auf einen Speicher
US20050114687A1 (en) 2003-11-21 2005-05-26 Zimmer Vincent J. Methods and apparatus to provide protection for firmware resources
CN1981527A (zh) 2003-12-05 2007-06-13 美国电影协会 显示适配器的保密视频系统
EP1615370B1 (en) 2004-07-05 2011-08-31 ABB Research Ltd. Authentication of short messages
US8955104B2 (en) 2004-07-07 2015-02-10 University Of Maryland College Park Method and system for monitoring system memory integrity
US20060026418A1 (en) 2004-07-29 2006-02-02 International Business Machines Corporation Method, apparatus, and product for providing a multi-tiered trust architecture
US7484099B2 (en) 2004-07-29 2009-01-27 International Business Machines Corporation Method, apparatus, and product for asserting physical presence with a trusted platform module in a hypervisor environment
US7822993B2 (en) 2004-08-27 2010-10-26 Microsoft Corporation System and method for using address bits to affect encryption
US20060107054A1 (en) 2004-11-16 2006-05-18 Young David W Method, apparatus and system to authenticate chipset patches with cryptographic signatures
JP4537908B2 (ja) 2005-03-29 2010-09-08 株式会社東芝 プロセッサ、メモリ、コンピュータシステムおよびシステムlsi
FR2885709A1 (fr) 2005-05-10 2006-11-17 St Microelectronics Sa Controle d'integrite d'une memoire externe a un processeur
US20070101424A1 (en) 2005-07-25 2007-05-03 Nec Laboratories America, Inc. Apparatus and Method for Improving Security of a Bus Based System Through Communication Architecture Enhancements
US8041032B2 (en) 2005-08-19 2011-10-18 Cardiac Pacemakers, Inc. Symmetric key encryption system with synchronously updating expanded key
US20070133437A1 (en) 2005-12-13 2007-06-14 Wengrovitz Michael S System and methods for enabling applications of who-is-speaking (WIS) signals
US8452981B1 (en) 2006-03-01 2013-05-28 Nvidia Corporation Method for author verification and software authorization
US8997255B2 (en) 2006-07-31 2015-03-31 Inside Secure Verifying data integrity in a data storage device
US7554865B2 (en) * 2006-09-21 2009-06-30 Atmel Corporation Randomizing current consumption in memory devices
US20080155273A1 (en) 2006-12-21 2008-06-26 Texas Instruments, Inc. Automatic Bus Encryption And Decryption
US7882365B2 (en) 2006-12-22 2011-02-01 Spansion Llc Systems and methods for distinguishing between actual data and erased/blank memory with regard to encrypted data
US7836269B2 (en) 2006-12-29 2010-11-16 Spansion Llc Systems and methods for access violation management of secured memory
DE102007007699A1 (de) 2007-02-09 2008-08-14 IHP GmbH - Innovations for High Performance Microelectronics/Institut für innovative Mikroelektronik Reduktion von Seiten-Kanal-Informationen durch interagierende Krypto-Blocks
US8781111B2 (en) 2007-07-05 2014-07-15 Broadcom Corporation System and methods for side-channel attack prevention
US7739565B1 (en) 2007-07-19 2010-06-15 Xilinx, Inc. Detecting corruption of configuration data of a programmable logic device
KR101321472B1 (ko) 2007-07-23 2013-10-25 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 프로그램 방법
US8670557B2 (en) 2007-09-10 2014-03-11 Spansion Llc Cryptographic system with modular randomization of exponentiation
US8578179B2 (en) 2007-10-19 2013-11-05 Samsung Electronics Co., Ltd Safe command execution and error recovery for storage devices
IL188089A (en) 2007-12-12 2013-02-28 Nds Ltd Bit generator
US8180055B2 (en) 2008-02-05 2012-05-15 Harris Corporation Cryptographic system incorporating a digitally generated chaotic numerical sequence
US8549246B2 (en) 2008-04-30 2013-10-01 Micron Technology, Inc. SPI NAND protected mode entry methodology
US7826271B2 (en) 2008-06-12 2010-11-02 Sandisk Corporation Nonvolatile memory with index programming and reduced verify
JP4620146B2 (ja) 2008-07-18 2011-01-26 株式会社東芝 情報処理装置及び認証方法
EP2166696B1 (fr) 2008-08-27 2016-10-05 STMicroelectronics (Rousset) SAS Protection de l'intégrité de données chiffrées en utilisant un état intermédiare de chiffrement pour générer une signature
US20100098247A1 (en) 2008-10-20 2010-04-22 Nokia Corporation Method, Apparatus And Computer Program Product For Generating An Encryption Key And An Authentication Code Key Utilizing A Generic Key Counter
US9117094B2 (en) 2008-10-29 2015-08-25 Microsoft Technology Licensing, Llc Data location obfuscation
US7881094B2 (en) 2008-11-12 2011-02-01 Seagate Technology Llc Voltage reference generation for resistive sense memory cells
TWI393143B (zh) 2008-12-05 2013-04-11 Phison Electronics Corp 快閃記憶體儲存系統及其控制器與防資料竄改方法
US8649509B2 (en) 2008-12-18 2014-02-11 At&T Intellectual Property I, L.P. Systems and computer program products for generating and verifying randomized hash values
US8429513B2 (en) 2009-07-02 2013-04-23 Stmicroelectronics (Research & Development) Limited Loading secure code into a memory
US8756439B1 (en) 2009-08-28 2014-06-17 Physical Optics Corporation Encryption key management for secured access
US8225182B2 (en) 2009-10-04 2012-07-17 Mellanox Technologies Ltd. Processing of block and transaction signatures
WO2011066152A1 (en) 2009-11-25 2011-06-03 Aclara RF Systems Inc. Cryptographically secure authentication device, system and method
TWI436372B (zh) 2010-01-28 2014-05-01 Phison Electronics Corp 快閃記憶體儲存系統及其控制器與防資料竄改方法
KR101610917B1 (ko) 2010-03-08 2016-04-11 삼성전자주식회사 암호 알고리즘의 복호 방법 및 그것을 포함하는 암호 시스템
EP2388730A1 (en) 2010-05-17 2011-11-23 Nagravision S.A. Method for generating software code
US8427194B2 (en) * 2010-05-24 2013-04-23 Alexander Roger Deas Logic system with resistance to side-channel attack by exhibiting a closed clock-data eye diagram
US20110285421A1 (en) 2010-05-24 2011-11-24 Alexander Roger Deas Synchronous logic system secured against side-channel attack
US9304867B2 (en) * 2010-09-28 2016-04-05 Amazon Technologies, Inc. System and method for providing flexible storage and retrieval of snapshot archives
US8904190B2 (en) 2010-10-20 2014-12-02 Advanced Micro Devices, Inc. Method and apparatus including architecture for protecting sensitive code and data
KR101792868B1 (ko) 2010-11-25 2017-11-02 삼성전자주식회사 플래시 메모리 장치 및 그것의 읽기 방법
US10268843B2 (en) * 2011-12-06 2019-04-23 AEMEA Inc. Non-deterministic secure active element machine
GB2487901B (en) 2011-02-03 2019-12-04 Advanced Risc Mach Ltd Power signature obfuscation
US8745408B2 (en) 2011-04-08 2014-06-03 Infineon Technologies Ag Instruction encryption/decryption arrangement and method with iterative encryption/decryption key update
CN102970131A (zh) * 2011-08-31 2013-03-13 北京中电华大电子设计有限责任公司 一种防止对分组算法进行功耗攻击的电路结构
US8699712B2 (en) 2011-09-02 2014-04-15 Blackberry Limited Randomization of plain text for GSM SACCH
GB2494731B (en) 2011-09-06 2013-11-20 Nds Ltd Preventing data extraction by sidechannel attack
US8832455B1 (en) 2011-09-21 2014-09-09 Google Inc. Verified boot path retry
US9128876B2 (en) 2011-12-06 2015-09-08 Honeywell International Inc. Memory location specific data encryption key
US9304944B2 (en) 2012-03-29 2016-04-05 Broadcom Corporation Secure memory access controller
CN104350503A (zh) 2012-05-25 2015-02-11 株式会社东芝 存储器设备和存储器系统
US8751814B2 (en) 2012-06-14 2014-06-10 Kabushiki Kaisha Toshiba Device
US8650398B2 (en) 2012-06-14 2014-02-11 Kabushiki Kaisha Toshiba Device authentication using restricted memory
US9703945B2 (en) 2012-09-19 2017-07-11 Winbond Electronics Corporation Secured computing system with asynchronous authentication
US20140192974A1 (en) 2012-10-17 2014-07-10 Elliptic Technologies Inc. System and method for cryptographic processing in a time window
US20140281564A1 (en) 2013-03-13 2014-09-18 Kabushiki Kaisha Toshiba Method of authenticating access to memory device
CN103324467B (zh) * 2013-05-28 2015-09-16 戴葵 一种基于随机指令延迟的抗旁路攻击处理器架构
TWI620094B (zh) 2013-05-31 2018-04-01 凱爾拉吉克斯股份有限公司 電荷分布控制系統、加密系統和藉由操作其防止以旁通道攻擊之方法
US9455962B2 (en) 2013-09-22 2016-09-27 Winbond Electronics Corporation Protecting memory interface
US9343162B2 (en) 2013-10-11 2016-05-17 Winbond Electronics Corporation Protection against side-channel attacks on non-volatile memory
KR20150085981A (ko) * 2014-01-17 2015-07-27 한국전자통신연구원 부채널 분석을 위한 신호 수집 장치
CN104836571B (zh) * 2014-02-07 2017-11-28 扬智科技股份有限公司 时脉调整装置与时脉调整方法
US9318221B2 (en) 2014-04-03 2016-04-19 Winbound Electronics Corporation Memory device with secure test mode
IL234956A (en) 2014-10-02 2017-10-31 Kaluzhny Uri Data bus protection with enhanced key entropy

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI693791B (zh) * 2018-11-18 2020-05-11 新唐科技股份有限公司 使用小型間接隨機預充電以防範旁通道攻擊的電子元件

Also Published As

Publication number Publication date
KR20170106623A (ko) 2017-09-21
CN107181585B (zh) 2021-04-20
US20170262630A1 (en) 2017-09-14
KR101946509B1 (ko) 2019-02-11
EP3220376A1 (en) 2017-09-20
US10019571B2 (en) 2018-07-10
CN107181585A (zh) 2017-09-19
TWI621963B (zh) 2018-04-21

Similar Documents

Publication Publication Date Title
TWI621963B (zh) 藉由變更時脈延遲以防止旁通道攻擊的系統及其方法
Ma et al. A machine learning attack resistant multi-PUF design on FPGA
Moore et al. Improving smart card security using self-timed circuits
CA2971212C (en) Reliability enhancement methods for physically unclonable function bitstring generation
Ozturk et al. Physical unclonable function with tristate buffers
US10075166B2 (en) Generator of numbers of oscillations
Chen et al. Characterization of the bistable ring PUF
US10659020B2 (en) Pulse counting circuit
Zhang et al. Design and implementation of a delay-based PUF for FPGA IP protection
US20140019502A1 (en) Random bit stream generator with enhaced backward secrecy
CN108683505B (zh) 一种具备安全性的apuf电路
CN102271038A (zh) 用于生成比特向量的方法
CN107346400B (zh) 多路复用器结构
Khalafalla et al. Going deep: Using deep learning techniques with simplified mathematical models against XOR BR and TBR PUFs (attacks and countermeasures)
Igarashi et al. Concurrent faulty clock detection for crypto circuits against clock glitch based DFA
Hou et al. A lightweight and secure-enhanced Strong PUF design on FPGA
US9201630B2 (en) Random number generation using startup variances
Luo et al. Faulty clock detection for crypto circuits against differential fault analysis attack
Sahoo et al. Fault-tolerant implementations of physically unclonable functions on FPGA
Hammouri et al. Novel puf-based error detection methods in finite state machines
Shoufan A fault attack on a hardware-based implementation of the secure hash algorithm SHA-512
Zooker et al. Temporal Power Redistribution as a Countermeasure Against Side-Channel Attacks
Lai Synergistic configurable ring oscillator PUF: Design, characterization, and implementation
Gómez et al. A fully synthesized key establishment core based on tree parity machines in 65nm CMOS
Wang et al. Quality-driven Design Methodology for PUFs in FPGAs for Secure IoT