JP4708703B2 - 携帯型データ記憶媒体により制御されるプログラム実行 - Google Patents
携帯型データ記憶媒体により制御されるプログラム実行 Download PDFInfo
- Publication number
- JP4708703B2 JP4708703B2 JP2003544345A JP2003544345A JP4708703B2 JP 4708703 B2 JP4708703 B2 JP 4708703B2 JP 2003544345 A JP2003544345 A JP 2003544345A JP 2003544345 A JP2003544345 A JP 2003544345A JP 4708703 B2 JP4708703 B2 JP 4708703B2
- Authority
- JP
- Japan
- Prior art keywords
- counter
- controlled
- module
- processor core
- program
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
- Retry When Errors Occur (AREA)
Description
12 インターフェース
14 プロセッサコア
16 プログラムカウンタ
18 メモリ
20 リードオンリメモリ
22 不揮発性リード−ライトメモリ
24 揮発性リード−ライトメモリ
26 プログラムメモリ
28 作業メモリ
30 プログラム
32 カウンタ
34 開始セクション
36.x 被制御セクション
38,60,72 チェックポイント
40 作用セクション
42.x ジャンプ命令
50,64,76 エラー処理
52.x 補正命令
56 モジュール
68.x 被制御サブセクション
AZ アクティブカウンタ
BZ ベースカウンタ
LZ ローカルカウンタ
LBZ ローカルベースカウンタ
ZZ ステータスカウンタ
Claims (12)
- プログラムメモリ(26)、プロセッサコア(14)及び少なくとも1つのステータスカウンタ(ZZ)を備える携帯型データ記憶媒体により制御されるプログラム実行のための方法において、前記プログラムメモリ(26)が、前記プロセッサコア(14)により実行される少なくとも1つのプログラム(30)を含み、該プログラム(30)が、該プログラム実行の処理段に関連する複数の被制御セクション(36.x)を含み、
− 前記プロセッサコア(14)が、前記複数の被制御セクション(36.x)のそれぞれの処理が行われた場合、前記それぞれの被制御セクション(36.x)の処理中に前記ステータスカウンタ(ZZ)の読み値を1単位変更し、
− 前記プロセッサコア(14)が、ジャンプ命令(42.x)の実行に伴って、該ジャンプ命令(42.x)の結果として1つまたはそれより多くの被制御セクション(36.x)を、他の被制御セクションを実行することなくスキップし、前記ステータスカウンタ(ZZ)の前記読み値を、前記ジャンプ命令によりスキップした前記被制御セクションの数分変更し、
− 前記プロセッサコア(14)が、少なくとも1つのチェックポイント(38,60,72)において前記ステータスカウンタ(ZZ)の前記読み値を少なくとも1つの許容値と比較し、一致したときに前記プログラム実行を継続し、異なる場合にはエラー処理(50,64,76)を行うことを特徴とする方法。 - 前記ステータスカウンタ(ZZ)が、前記被制御セクションの処理および前記ジャンプ命令の実行に伴って、前記プロセッサコア(14)により読み値が変更されるアクティブカウンタ(AZ)、および前記ステータスカウンタ(ZZ)の読み値の基準となるベースカウンタ(BZ)を含み、前記ステータスカウンタ(ZZ)の読み値が、前記アクティブカウンタ(AZ)の値と前記ベースカウンタ(BZ)の値との差分であることを特徴とする請求項1に記載の方法。
- 前記プログラム(30)が、前記携帯型データ記憶装置(10)により処理されるべきコマンドを読み込む開始セクション(34)、複数の前記被制御セクション(36.x)及び前記携帯型データ記憶装置(10)が応答を送信する作用セクション(40)を含むループとして構成され、前記チェックポイント(38)または複数の前記チェックポイントの内の1つが最後尾の被制御セクション(36.N)と前記作用セクション(40)の間に配置されることを特徴とする請求項1または2に記載の方法。
- 前記プロセッサコア(14)が、前記被制御セクション(36.x)の実行の前に、前記アクティブカウンタ(AZ)の値を変化させることなく維持しつつ、前記ベースカウンタ(BZ)を前記アクティブカウンタ(AZ)の読み値に設定することを特徴とする請求項2に記載の方法。
- 前記プログラム(30)が複数のモジュール(56)を含み、該各モジュール(56)が、1以上の前記被制御セクション(36.x)を含み、該各モジュール(56)がさらに少なくとも1つのモジュール内チェックポイント(60)を含むことを特徴とする請求項1から4のいずれか1項に記載の方法。
- 前記各モジュール(56)が、前記プロセッサコア(14)が該モジュール(56)の実行の開始以降の該モジュール(56)内の前記ステータスカウンタ(ZZ)の前記読み値を、前記モジュール内チェックポイント(60)において少なくとも1つの許容値と比較する、被制御モジュールであることを特徴とする請求項5に記載の方法。
- 前記プロセッサコア(14)が、前記被制御モジュール(56)内の前記ステータスカウンタ(ZZ)の最初の前記変化の前に、前記ステータスカウンタ(ZZ)の前記読み値をローカルベースカウンタ(LBZ)にバッファすることを特徴とする請求項6に記載の方法。
- 前記プログラム(30)が複数のモジュール(56)を含み、該各モジュール(56)が、1以上の前記被制御セクション(36.x)を含み、該各モジュール(56)がさらに少なくとも1つのモジュール内チェックポイント(60)を含み、
前記各モジュール(56)が、前記プロセッサコア(14)が該モジュール(56)の実行が開始されてからの該モジュール(56)内の前記ステータスカウンタ(ZZ)の前記読み値を、前記モジュール内チェックポイント(60)において少なくとも1つの許容値と比較する、被制御モジュールであり、
前記プロセッサコア(14)が、前記被制御モジュール(56)内の前記ステータスカウンタ(ZZ)の最初の前記変化の前に、前記アクティブカウンタ(AZ)の前記読み値をローカルベースカウンタ(LBZ)にバッファすることを特徴とする請求項2から4のいずれか1項に記載の方法。 - 前記被制御セクション(36.x)の内の少なくとも1つが複数の被制御サブセクション(68.x)を含み、前記プロセッサコア(14)が、前記複数の被制御サブセクション(68.x)のそれぞれの処理を反映するために前記それぞれの被制御サブセクション(68.x)の実行中にローカルカウンタ(LZ)の読み値を1単位変更し、前記プロセッサコア(14)が、前記ローカルカウンタ(LZ)の前記値を少なくとも1つのチェックポイント(72)において少なくとも1つの許容値と比較することを特徴とする請求項1から8のいずれか1項に記載の方法。
- 前記方法が、前記プロセッサコア(14)のプログラムカウンタ(16)が光の影響により操作される、光攻撃を撃退するために用いられることを特徴とする請求項1から9のいずれか1項に記載の方法。
- 携帯型データ記憶媒体(10)において、プログラムメモリ(26)、プロセッサコア(14)及び少なくとも1つのステータスカウンタ(ZZ)を備え、前記プログラムメモリ(26)が前記プロセッサコア(14)により実行可能であり複数の被制御セクション(36.x)を含む少なくとも1つのプログラム(30)を含み、前記プログラムメモリ(26)が前記プロセッサコア(14)に請求項1から10のいずれか1項に記載の方法を実行させるためのコマンドを含むことを特徴とする携帯型データ記憶媒体。
- チップカードまたはチップモジュールであることを特徴とする請求項11記載の携帯型データ記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10156394A DE10156394A1 (de) | 2001-11-16 | 2001-11-16 | Kontrollierte Programmausführung durch einen tragbaren Datenträger |
DE10156394.9 | 2001-11-16 | ||
PCT/EP2002/012074 WO2003042547A2 (de) | 2001-11-16 | 2002-10-29 | Kontrollierte programmausführung durch einen tragbaren datenträger |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005509936A JP2005509936A (ja) | 2005-04-14 |
JP4708703B2 true JP4708703B2 (ja) | 2011-06-22 |
Family
ID=7706025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003544345A Expired - Fee Related JP4708703B2 (ja) | 2001-11-16 | 2002-10-29 | 携帯型データ記憶媒体により制御されるプログラム実行 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7441111B2 (ja) |
EP (1) | EP1449084B1 (ja) |
JP (1) | JP4708703B2 (ja) |
CN (1) | CN1296819C (ja) |
AU (1) | AU2002363665A1 (ja) |
DE (1) | DE10156394A1 (ja) |
ES (1) | ES2414435T3 (ja) |
RU (1) | RU2295756C2 (ja) |
WO (1) | WO2003042547A2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2864655B1 (fr) * | 2003-12-31 | 2006-03-24 | Trusted Logic | Procede de controle d'integrite de programmes par verification d'empreintes de traces d'execution |
DE102004021088A1 (de) * | 2004-04-29 | 2005-11-17 | Giesecke & Devrient Gmbh | Verfahren zum Schützen von Daten eines Datenträgers gegen DFA-Angriffe |
EP1605333B1 (fr) * | 2004-06-07 | 2008-12-10 | Proton World International N.V. | Contrôle de l'exécution d'un programme |
FR2886027A1 (fr) * | 2005-05-20 | 2006-11-24 | Proton World Internatinal Nv | Detection d'erreur de sequencement dans l'execution d'un programme |
JP2007004456A (ja) * | 2005-06-23 | 2007-01-11 | Toshiba Corp | 携帯可能電子装置及び携帯可能電子装置のデータ出力方法 |
GB2435531A (en) * | 2006-02-27 | 2007-08-29 | Sharp Kk | Control Flow Protection Mechanism |
JP2008152452A (ja) * | 2006-12-15 | 2008-07-03 | Toshiba Corp | 携帯可能電子装置、携帯可能電子装置の制御方法およびicカード |
DE102007015369A1 (de) * | 2006-12-29 | 2008-07-03 | Endress + Hauser Gmbh + Co. Kg | Verfahren zur Überwachung des logischen Programmablaufs von kritischen Funktionen in Programmen eines Feldgeräts der Prozess- und Automatisierungstechnik |
JP2008243097A (ja) * | 2007-03-29 | 2008-10-09 | Toshiba Corp | 情報記憶媒体 |
JP5018199B2 (ja) * | 2007-04-10 | 2012-09-05 | 大日本印刷株式会社 | 携帯用セキュリティデバイス |
DE102007038763A1 (de) | 2007-08-16 | 2009-02-19 | Siemens Ag | Verfahren und Vorrichtung zur Sicherung eines Programms gegen eine Kontrollflussmanipulation und gegen einen fehlerhaften Programmablauf |
JP4701260B2 (ja) * | 2008-03-31 | 2011-06-15 | 株式会社エヌ・ティ・ティ・データ | 情報処理装置、情報処理方法、および、情報処理プログラム |
FR2990533B1 (fr) * | 2012-05-09 | 2015-02-13 | Morpho | Procede de suivi d'execution d'un logiciel et logiciel pour la mise en oeuvre du procede |
DE102013001143A1 (de) | 2013-01-23 | 2014-07-24 | Giesecke & Devrient Gmbh | Verfahren zur Ausvührung eines Programms über einen Mikroprozessor auf einem Sicherheitsmodul |
EP3040895A1 (en) * | 2014-12-30 | 2016-07-06 | Gemalto Sa | System and method for protecting a device against return-oriented programming attacks |
FR3035240B1 (fr) | 2015-04-15 | 2018-04-06 | Rambus Inc. | Procede de securisation de l'execution d'un programme |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5276852A (en) * | 1975-12-22 | 1977-06-28 | Hitachi Ltd | Error detection circuit |
JPS59200344A (ja) * | 1983-04-27 | 1984-11-13 | Hitachi Ltd | マイクロプログラム暴走検出方式 |
JPH01258142A (ja) * | 1988-04-08 | 1989-10-16 | Natl Space Dev Agency Japan<Nasda> | 故障容認計算機装置 |
JPH04160642A (ja) * | 1990-10-25 | 1992-06-03 | Nec Corp | コンピュータシステム |
JPH0962525A (ja) * | 1995-08-30 | 1997-03-07 | Nec Ic Microcomput Syst Ltd | プログラム暴走検出装置および暴走検出方法 |
JPH11184735A (ja) * | 1997-12-19 | 1999-07-09 | Nec Corp | プログラム暴走検出方法および暴走検出ルーチンを含む記録媒体 |
JP2000339188A (ja) * | 1999-05-27 | 2000-12-08 | Harness Syst Tech Res Ltd | プログラム実行異常検出装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4939353A (en) * | 1987-01-22 | 1990-07-03 | Kabushiki Kaisha Toshiba | Processing system for enabling data communication with a self-diagnose device |
US5357627A (en) * | 1989-03-28 | 1994-10-18 | Olympus Optical Co., Ltd. | Microcomputer having a program correction function |
US4939393A (en) * | 1989-10-02 | 1990-07-03 | Motorola Inc. | ECL to TTL/CMOS translator using a single power supply |
DE4036765A1 (de) * | 1990-11-17 | 1992-05-21 | Angewandte Digital Elektronik | Kodierte chipkartenaktivierung |
US5732272A (en) * | 1995-07-31 | 1998-03-24 | Apple Computer, Inc. | Subroutine execution time tracer |
US5784607A (en) * | 1996-03-29 | 1998-07-21 | Integrated Device Technology, Inc. | Apparatus and method for exception handling during micro code string instructions |
JPH10240522A (ja) * | 1997-02-26 | 1998-09-11 | Matsushita Electric Works Ltd | 演算装置 |
US6148437A (en) * | 1998-05-04 | 2000-11-14 | Hewlett-Packard Company | System and method for jump-evaluated trace designation |
US6353924B1 (en) * | 1999-02-08 | 2002-03-05 | Incert Software Corporation | Method for back tracing program execution |
FR2790844B1 (fr) | 1999-03-09 | 2001-05-25 | Gemplus Card Int | Procede et dispositif de surveillance du deroulement d'un programme, dispositif programme permettant la surveillance de son programme |
US6453430B1 (en) * | 1999-05-06 | 2002-09-17 | Cisco Technology, Inc. | Apparatus and methods for controlling restart conditions of a faulted process |
US6625725B1 (en) * | 1999-12-22 | 2003-09-23 | Intel Corporation | Speculative reuse of code regions |
US6915416B2 (en) * | 2000-12-28 | 2005-07-05 | Texas Instruments Incorporated | Apparatus and method for microcontroller debugging |
-
2001
- 2001-11-16 DE DE10156394A patent/DE10156394A1/de not_active Ceased
-
2002
- 2002-10-29 AU AU2002363665A patent/AU2002363665A1/en not_active Abandoned
- 2002-10-29 ES ES02790306T patent/ES2414435T3/es not_active Expired - Lifetime
- 2002-10-29 RU RU2004114666/09A patent/RU2295756C2/ru not_active IP Right Cessation
- 2002-10-29 EP EP02790306.1A patent/EP1449084B1/de not_active Expired - Lifetime
- 2002-10-29 JP JP2003544345A patent/JP4708703B2/ja not_active Expired - Fee Related
- 2002-10-29 US US10/495,569 patent/US7441111B2/en not_active Expired - Fee Related
- 2002-10-29 CN CNB028227719A patent/CN1296819C/zh not_active Expired - Fee Related
- 2002-10-29 WO PCT/EP2002/012074 patent/WO2003042547A2/de active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5276852A (en) * | 1975-12-22 | 1977-06-28 | Hitachi Ltd | Error detection circuit |
JPS59200344A (ja) * | 1983-04-27 | 1984-11-13 | Hitachi Ltd | マイクロプログラム暴走検出方式 |
JPH01258142A (ja) * | 1988-04-08 | 1989-10-16 | Natl Space Dev Agency Japan<Nasda> | 故障容認計算機装置 |
JPH04160642A (ja) * | 1990-10-25 | 1992-06-03 | Nec Corp | コンピュータシステム |
JPH0962525A (ja) * | 1995-08-30 | 1997-03-07 | Nec Ic Microcomput Syst Ltd | プログラム暴走検出装置および暴走検出方法 |
JPH11184735A (ja) * | 1997-12-19 | 1999-07-09 | Nec Corp | プログラム暴走検出方法および暴走検出ルーチンを含む記録媒体 |
JP2000339188A (ja) * | 1999-05-27 | 2000-12-08 | Harness Syst Tech Res Ltd | プログラム実行異常検出装置 |
Also Published As
Publication number | Publication date |
---|---|
RU2295756C2 (ru) | 2007-03-20 |
WO2003042547A2 (de) | 2003-05-22 |
RU2004114666A (ru) | 2005-10-27 |
EP1449084A2 (de) | 2004-08-25 |
ES2414435T3 (es) | 2013-07-19 |
US20050033943A1 (en) | 2005-02-10 |
DE10156394A1 (de) | 2003-06-12 |
CN1636186A (zh) | 2005-07-06 |
CN1296819C (zh) | 2007-01-24 |
AU2002363665A1 (en) | 2003-05-26 |
JP2005509936A (ja) | 2005-04-14 |
EP1449084B1 (de) | 2013-04-10 |
WO2003042547A3 (de) | 2004-05-27 |
US7441111B2 (en) | 2008-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4708703B2 (ja) | 携帯型データ記憶媒体により制御されるプログラム実行 | |
US10509568B2 (en) | Efficient secure boot carried out in information processing apparatus | |
US6453397B1 (en) | Single chip microcomputer internally including a flash memory | |
JP4227149B2 (ja) | 電子制御装置の情報記憶方法 | |
US8195946B2 (en) | Protection of data of a memory associated with a microprocessor | |
JP5576557B2 (ja) | プロセッサシステム及びその制御方法 | |
JP2009501983A (ja) | 長い摂動による故障の検出 | |
JPWO2020158377A1 (ja) | 電子制御装置、電子制御装置のセキュリティ検証方法 | |
CN105893877B (zh) | 安全数据读取的方法和数据处理系统 | |
US20060289656A1 (en) | Portable electronic apparatus and data output method therefor | |
US20080162837A1 (en) | Nonvolatile Memory System | |
JP6622360B2 (ja) | 情報処理装置 | |
WO2001097010A2 (en) | Data processing method and device for protected execution of instructions | |
JP2006252284A (ja) | 携帯可能電子装置およびicカード | |
JP2009223435A (ja) | データ記憶方法及び装置、並びにプログラム | |
US20090150623A1 (en) | Semiconductor device and test mode control circuit | |
JP4543505B2 (ja) | マイクロコンピュータの制御方法及び異常監視装置 | |
JP2006172005A (ja) | 携帯可能電子装置 | |
US20230359523A1 (en) | Memory integrity check | |
US6493808B1 (en) | Device and process for testing a reprogrammable nonvolatile memory | |
JPH02120951A (ja) | 秘密データ記憶装置 | |
JPS6234262A (ja) | 不揮発性メモリアクセス方式 | |
JP6398449B2 (ja) | 電子情報記録媒体、プロセッサモジュールの動作制御方法、及びプロセッサモジュールの動作制御プログラム | |
JP6119345B2 (ja) | Icチップ、icカード、検証処理方法、及び検証処理プログラム | |
JPH0273420A (ja) | 半導体ディスク装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090317 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090610 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090617 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090817 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090910 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100209 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100507 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100514 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100602 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100609 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100928 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101220 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20101228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110128 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110317 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |