TW200405162A - Data processing apparatus - Google Patents
Data processing apparatus Download PDFInfo
- Publication number
- TW200405162A TW200405162A TW92119761A TW92119761A TW200405162A TW 200405162 A TW200405162 A TW 200405162A TW 92119761 A TW92119761 A TW 92119761A TW 92119761 A TW92119761 A TW 92119761A TW 200405162 A TW200405162 A TW 200405162A
- Authority
- TW
- Taiwan
- Prior art keywords
- program counter
- data processing
- address
- program
- sensor
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/321—Program or instruction counter, e.g. incrementing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Description
200405162 五、發明說明(1) ^有一執行單元及 本發明係有關一種資料處理j 具有程式計數器之流程控制器v 一例如,該資料處理裝置係已知為微 凡可處理算術及邏輯指令。牵涉之運管制-,式'執行單 址暫存器中或經由内部匯流排被施加::程二:ί資料及位 中之指令。指令解碼哭捲荖舖 數-叮連績呼叫程式 當程式開始時程二π 址係經由位址匯流排被轉換至記憶二又疋為開始位址。此位 士之讀取訊號’係促使尚有疑問::㈡::控制匯流排 料匯流排上且被儲存於指令解碼哭中;内容出現於資 該指令所需之操作。指令執行後:以碼器觸發執行 設定為下—個指令之位址。 3 7解碼益將程式計數器 接下來被執行之指令一直視程 當攻擊晶片卡及安全積體電路時二之位址而定。 功能係被駭客利用。攻擊 、,私式計數器之此關鍵 使預期程式仔列被執行所牵涉之組 非預期程式流程改變係被稱為"跳工制;于非預期之碼。該 控制益破跳越,攻擊者嘗試增加空制器。為了使微 線或供給電壓線上。 t脈頻率或注入干擾於時脈 為了避免微控制器被跳越之 k供複數個可偵測供給線上超額糖“列如,已知實務上係 如’若超額頻率感測器因為微 2或干擾之感測器。例 而響應時’攻擊者係被假;抑:大時脈頻率操作 匕制為係被安全重設。然 200405162 五、發明說明(2) 而’該感測器因需類卜蕾 本發明目的係且體戈明Ί件所以貫施起來相當複雜。 理裝置。 』5兄明跳越被安全及輕易辨識之資料處 本發明係藉由最初提及之 其係藉由被連接至# # @、ώ 、β、地 1置類型來達成此, 測器而具體化,===:計數.器之程式計數器感 接著被執行之指令位址之壯瓜排從被轉換之資料確認 及程式計數器内容及#古;Γ 有可比較該被確認位址 器。 4及右有任何不相符時觸發警示訊號之比較 本發明優點係不需提供複數個複雜 產生跳越之干擾而間接確認跳越風險 Ί其精由偵剛 行之指令位址’意指與程式計 :m被執 ,切數器被用來確認下個指令位址知獨立 間,λ確認位址係必須匹配程式計數器之内ί 期 貝】符另】具有優點。此可避免攻擊 至 程式計數器或程式計數器感測器、生之干擾’而不影響 因此,若程式計數器感測器使用不 達成之效應係對干擾敏威度及對干擾響應有^不^ ”。 lf此 因為.本發明之程式計數器感測器剛好、被建構、邏輯 ί :: 比組件’所以其可特別容易且便宜來製造。二 另一棱點係程式計數器感測器可被隱藏於文 護不受任何實體攻擊。此外,該感測器較具;
第6頁 200405162 五、發明說明(3) 測為更容易測試。 本發明係使用實施例被更詳細解釋如下。單一圖係顯示 具本發明之程式計數器感測器之微控制器略圖。 第一圖左半係顯示先前技術基礎上具有基本组件之微控 制器。 其具有一執行單元1,一流程控制器2,及一匯流排介面 3 執行單元1係包含一算術及邏輯單元6及一資料暫存器7及 位址暫存态8。流程控制器2包括一程式計數器4及一指令 解碼器5。匯流排介面具有用於資料匯流排12,控制匯流排 位址匯流排14之驅動器9,10及11。執行單元1,流程控 ,及[飢排’丨面3係藉由内部匯流排1 5被彼此相連。此先 I^ ^基礎上之微控制器運作之基本方式係已被描述於說明 明f。第#圖^右半係顯示擴展先前技術基礎上微控制器之本發 二程式計數器感測器20係具有被暫存、 邏輯單於辨識指令及新程式計數器值之— 槐六 及一程式計數器模擬2 3。此外,且有可比_妯 :中之值及實際程式計數器心 置21申之暫存器係可於延遲後提供。延遲裝 計數器感測器20可_ 數益4目前之内容,使程式 偏置確認。產生程之程式計數器值的暫時 者,亦不會產生被執新叙值錯誤改正(跳越)之攻擊 之錯誤確認,其可掸λ ^式5十數器感測器20申之下個指令 /、 θ σ攻名辨識可靠性。可辨識指令及新程
第7頁 200405162 五、發明說明(4) =數器值之邏輯單元22及程式計數器模擬23,係以其 里式對應流程控制器2中之功能性單元,其負 : 數器4之新值。 "貝貝確5心私式计 平行由//發Λ ’ Λ程式計數11值可被程式計數器感測器2 〇 ::丁確認。程式计數器模擬23之内容接著被與比較器2 器4二比ί。第一圖之實施例中,此係於修改程式 °态之内谷後完成。因延遲被暫存器2 1產生之比’ g士 β 改變應為至少一時脈週期,但亦可為 生之比/乂妆域
期。針對程式計數器感測器2。中之資理:::: 係被施加至後者。 吋脈Λ琥CLK '了辨識指+,邏輯單元22繼續檢查被轉換資料Η以決 二”疋否包含指令,及其是否具有程式計數、 模擬23之新值。一曰包含用於桩下步妯拙 > 飞牲式计數為 指令)之付u夕扣八末 仃之指令(如跳越 私式計數器模擬23中。如亦發生於用於程式數、之浐 "也就疋右線性程式流程存在時,則被儲存於程式呼數叩 t :23中之位址係於指令長度基礎上被增加; 被執行之線性下一個指令。 和不將 右比較器24建立程式計數器模擬23及程式 則其^警示訊號25。此可連續❹來 =安全重設。可替代是’其可採取被警示訊號25:;:; 第一圖簡略描繪先前技術基礎上之微控制器組件,及其
200405162 五、發明說明(5) __ 彼此相隔之程式^* 式計數器感測器;IJf感測器1。然而’真實實施例中,程 中。因此非常難以辨:m t入亦包含標準組件之電路 意指對攻擊者實體攻式計數器感測器2〇 ’ 準組件亦自然可保護程式計數器感測器2。控制器之標 另-方面,因為此確保這些組件對干擾之且件。 以程式計數器感測器使用不同於實,^*反應不同,所 術來製造係具有優點。 丈器4之電路技 200405162 圖式簡單說明 第一圖簡略描繪先前技術基礎上之微控制器組件,及其 彼此相隔之程式計數器感測器1。 元件符號說明 1 執 行 早 元 2 流 程 控 制 器 3 匯 流 排 介 面 4 程 式 計 數 器 5 指 令 解 碼 器 6 算 術 及 邏 輯 單 元 7 資 料 暫 存 器 8 位 址 暫 存 器 9 資 料 匯 流 排 驅 動 器 10 控 制 匯 流 排 驅 動 器 11 位 址 匯 流 排 1辱^ 動 器 12 資 料 匯 流 排 13 控 制 匯 流 排 14 位 址 匯 流 排 15 内 部 匯 流 排 20 程 式 計 數 器 感 測 器 21 針 對 延 遲 之 暫 存 器 22 可 辨 識 指 令 及 新 程式計數 :器 值 之 邏 輯 單 元 23 程 式 計 數 器 模 擬 24 比 較 器 25 示 訊 號 CLK 時 脈 訊 號
第10頁
Claims (1)
- 200405162 六、申請專利範圍 ' --- 1. 一種資料處理裝置,具有 一執行單元(1)及 一具有程式計數器(4)之流程控制器(2), 其特徵在於 一程式計數器感測器(20),其係被連接至一資料匯流 排及该程式計數器(4 ),具有 ^ &叙置(2 2 )’其可經由該資料匯流排從被轉換之資料確 〜接著被執行之該指令位址之裝置(2 2 ),及 比較器(2 4 ),其可比較該被確認位址及該程式計數器 内谷,且若有任何不相符時觸發一警示訊號。 •如申請專利範圍第1項之該資料處理裝置,其中 上邊^呈式計數器感測器(2 0)具有可延遲該資料匯流排上 d 貝料及該程式計數器(4)之該内容之一延遲裝置 3· ^申請專利範圍第i或2項之該資料處理裝置,其中 忒警不訊號(2 5 )觸發資料處理裝置之重設。 罢0申請專利範圍第丨至3項其中之一之該資料處理裝 置,其中 读程式計數器感測器(2〇)係使用不同於流程控制器(2) 電路技術來製造。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE10240088A DE10240088B4 (de) | 2002-08-30 | 2002-08-30 | Datenverarbeitungsvorrichtung |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200405162A true TW200405162A (en) | 2004-04-01 |
| TWI229258B TWI229258B (en) | 2005-03-11 |
Family
ID=31724210
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW92119761A TWI229258B (en) | 2002-08-30 | 2003-07-18 | Data processing apparatus |
Country Status (5)
| Country | Link |
|---|---|
| EP (1) | EP1532508B1 (zh) |
| CN (1) | CN1328635C (zh) |
| DE (2) | DE10240088B4 (zh) |
| TW (1) | TWI229258B (zh) |
| WO (1) | WO2004023274A2 (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102004027847A1 (de) * | 2004-06-08 | 2006-01-05 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zur induktiven Energieübertragung |
| FR2910144A1 (fr) * | 2006-12-18 | 2008-06-20 | St Microelectronics Sa | Procede et dispositif de detection errones au cours de l'execution d'un programme. |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5241547A (en) * | 1987-08-31 | 1993-08-31 | Unisys Corporation | Enhanced error detection scheme for instruction address sequencing of control store structure |
| EP0455946A3 (en) * | 1990-05-07 | 1992-10-28 | International Business Machines Corporation | System for debugging shared memory multiprocessor computers |
| JPH0535613A (ja) * | 1991-07-26 | 1993-02-12 | Nec Ic Microcomput Syst Ltd | マイクロコンピユータの暴走防止回路 |
| JPH0816434A (ja) * | 1994-06-29 | 1996-01-19 | Mitsubishi Denki Semiconductor Software Kk | 暴走検出回路 |
| JPH1063541A (ja) * | 1996-08-19 | 1998-03-06 | Nippon Motorola Ltd | コンピュータシステムのプログラム暴走監視装置 |
| US5812830A (en) * | 1996-11-14 | 1998-09-22 | Hewlett-Packard Company | Debug system with raw mode trigger capability |
| US6026503A (en) * | 1997-08-12 | 2000-02-15 | Telrad Communication And Electronic Industries Ltd. | Device and method for debugging systems controlled by microprocessors |
| US6360310B1 (en) * | 2000-02-03 | 2002-03-19 | Nec Electronics, Inc. | Apparatus and method for instruction cache access |
| CN1149490C (zh) * | 2000-09-06 | 2004-05-12 | 黄更 | 中介式控制传递的方法及中介式控制总线系统 |
-
2002
- 2002-08-30 DE DE10240088A patent/DE10240088B4/de not_active Expired - Fee Related
-
2003
- 2003-07-18 TW TW92119761A patent/TWI229258B/zh not_active IP Right Cessation
- 2003-07-18 WO PCT/DE2003/002430 patent/WO2004023274A2/de not_active Ceased
- 2003-07-18 CN CNB038205130A patent/CN1328635C/zh not_active Expired - Fee Related
- 2003-07-18 EP EP03793587A patent/EP1532508B1/de not_active Expired - Lifetime
- 2003-07-18 DE DE50305595T patent/DE50305595D1/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| CN1678969A (zh) | 2005-10-05 |
| CN1328635C (zh) | 2007-07-25 |
| EP1532508B1 (de) | 2006-11-02 |
| DE10240088B4 (de) | 2007-11-29 |
| TWI229258B (en) | 2005-03-11 |
| DE10240088A1 (de) | 2004-03-18 |
| WO2004023274A3 (de) | 2004-05-06 |
| EP1532508A2 (de) | 2005-05-25 |
| DE50305595D1 (de) | 2006-12-14 |
| WO2004023274A2 (de) | 2004-03-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7584386B2 (en) | Microprocessor comprising error detection means protected against an attack by error injection | |
| US6915416B2 (en) | Apparatus and method for microcontroller debugging | |
| US10878099B2 (en) | Hardware assisted fault injection detection | |
| TW201928677A (zh) | 處理故障注入攻擊的安全系統和方法 | |
| CN102422299A (zh) | 信息设备、程序、防止执行不正当程序代码的方法、及计算机能够读取的记录介质 | |
| US10395033B2 (en) | System, apparatus and method for performing on-demand binary analysis for detecting code reuse attacks | |
| TW200837628A (en) | Hardware flow control monitor | |
| US20080016415A1 (en) | Evaluation system and method | |
| CN1173264C (zh) | 保护计算机的核心免受外部窜改的方法 | |
| US7330979B1 (en) | Method for protecting the processing of sensitive information in a monolithic security module, and associate security module | |
| TW200405162A (en) | Data processing apparatus | |
| CN104657685B (zh) | 保护非易失性存储器中存储的程序代码的装置 | |
| CN104504336B (zh) | 防止嵌入式系统被恶意在线调试的方法和装置 | |
| CN107851018A (zh) | 数据处理 | |
| JP7112449B2 (ja) | 強制自己認証機能を備えたコンピューターシステム | |
| CN101233495A (zh) | 用于在具有快闪程序存储器的微控制器中提供程序断点的机制 | |
| CN109739565B (zh) | 一种保证Bootrom正常运行的方法、装置、计算机设备及存储介质 | |
| US20050182990A1 (en) | Data processing apparatus having program counter sensor | |
| JP2018525712A (ja) | プロセッサシステムのプログラムカウンタ構造を保護する方法及び装置並びに中断要求の処理を監視する方法及び装置 | |
| JP2008305128A (ja) | 情報処理装置及び改竄検証方法 | |
| US12223321B2 (en) | Method of operating a microprocessor, related processing system and computer program product | |
| US8763138B2 (en) | Method and device for security loading a memory and an associated memory | |
| JP2006507594A (ja) | マイクロコントローラ、及びマイクロコントローラのプログラミングを処理するための割当方法 | |
| JP2008310595A5 (zh) | ||
| JP2014215979A5 (ja) | 情報記憶媒体、icカード、バイトコード実行方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |