JP3611867B2 - 以前の観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間決定の阻止 - Google Patents

以前の観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間決定の阻止 Download PDF

Info

Publication number
JP3611867B2
JP3611867B2 JP08070791A JP8070791A JP3611867B2 JP 3611867 B2 JP3611867 B2 JP 3611867B2 JP 08070791 A JP08070791 A JP 08070791A JP 8070791 A JP8070791 A JP 8070791A JP 3611867 B2 JP3611867 B2 JP 3611867B2
Authority
JP
Japan
Prior art keywords
routine
pseudo
execution
data processing
predetermined
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
Application number
JP08070791A
Other languages
English (en)
Other versions
JPH04223530A (ja
Inventor
ロイ・アレン・グリフィン・ザ・サード
ジェームス・ニール・エセルマン
スティーブン・エドワード・アンダーソン
スティーブン・ラネイ・ハート
ロン・ディー・カッツネルソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Arris Technology Inc
Original Assignee
General Instrument Corp
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 General Instrument Corp filed Critical General Instrument Corp
Publication of JPH04223530A publication Critical patent/JPH04223530A/ja
Application granted granted Critical
Publication of JP3611867B2 publication Critical patent/JP3611867B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/04Digital computers in general; Data processing equipment in general programmed simultaneously with the introduction of data to be processed, e.g. on the same record carrier
    • 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting 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 by inhibiting the analysis of circuitry or operation with measures against power attack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2123Dummy operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Selective Calling Equipment (AREA)
  • Fire Alarms (AREA)
  • Branch Pipes, Bends, And The Like (AREA)
  • Burglar Alarm Systems (AREA)
  • Retry When Errors Occur (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、一般的にデータ処理、特に「クロックアタック」として知られている手順による秘密データ処理ルーチンの妥協の阻止に関する。
【0002】
【従来の技術】
クロックアタックは秘密マイクロプロセッサのような秘密データプロセッサ内で実行される予め定められたデータ処理ルーチンに使用されている秘密データまたはコードへのアクセスを得るアタッカーにより行われる手順である。それは予め定められたルーチンに対する内部に発生された命令と同期させることを可能にするために予め定められたルーチンに先行する観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間を決定し、さらに秘密データおよび、またはコードを外部的に繰返してアクセス可能にするように命令を改竄する非常に短いクロックサイクルを発生させるために命令の1つのサイクルに対するクロックサイクルを外部的に変化させることによって行われる。
【0003】
「観察可能な外部事象」はそれ自身を外部的に明示する任意の内部状態転移として限定されるが、内部プロセッサ実行に関係するか或いは影響される任意のピンまたはピンの結合における電圧または電流の変化に限定されることはない。
【0004】
【発明が解決しようとする課題】
本発明は、予め定められたルーチンの実行に先行する観察可能な外部事象の発生に関係して予め定められたデータ処理ルーチンの実行時間を決定させないことによって外部に発生された命令との同期を阻止する方法を提供することでそのようなクロックアタックを阻止するものである。
【0005】
【課題を解決するための手段】
本発明は、データ処理システムにより実行される全体的に大きいデータ処理ルーチンに含まれている予め定められたデータ処理ルーチンの実行時間が、前記予め定められたルーチンの実行に先行して発生する全体的な大きいルーチンの実行に関係し、あるいはその実行によって影響を受ける外部から観察可能な事象の発生に基づいて決定されることを阻止する方法において、
(a)全体的な大きいデータ処理ルーチンのそれぞれの期間中にランダムな内容の信号を供給し、
(b)前記ランダムな内容の信号に応答して全体的な大きいデータ処理ルーチンのそれぞれの実行期間中に外部から観察可能な事象の発生と予め定められたルーチンの実行との間の時間の長さを変化させるステップを含んでいることを特徴とする。
【0006】
「期間」はデータ処理クロックサイクルの数により決定される。
【0007】
用語「ランダム」は疑似ランダムおよび真のランダムを含むものとして定義される。
【0008】
本発明の1概念において、ステップ(a)は観察可能な外部事象の発生と予め定められたルーチンの実行との間で1つ以上の疑似データ処理ルーチンを実行するステップ(b)と、前記疑似ルーチンの期間をランダムに変化させるステップ(c)を含む。本発明のこの概念において、ステップ(b)および(c)は前記実行に対する前記m個の疑似ルーチンを異なる期間を有するn個の記憶されたルーチンのグループからランダムに組立てるステップ(d)を含むことが好ましい。その場合、mおよびnは整数であり、nはmよりも大きい。またステップ(d)は秘密メモリからの前記m個の疑似ルーチンをランダムにアクセスするステップ(e)或いは前記m個の疑似ルーチンに対するポインタを秘密メモリからランダムにアクセスするステップ(f)と、前記ポインタに応答して前記m個の疑似ルーチンをメモリからアクセスするステップ(g)とを含むことが好ましい。
【0009】
本発明の別の概念において、ステップ(a)は観察可能な外部事象の発生と予め定められたルーチンの実行との間において前記マクロデータ処理ルーチンの実行に必要なデータ処理ルーチンを含む1つ以上の疑似データ処理ルーチンを実行するステップ(b)と、前記疑似ルーチンの期間をランダムに変化させるステップ(c)を含む。
【0010】
本発明のさらに別の概念において、ステップ(a)は前記観察可能な外部事象の発生から前記必要なデータの処理ルーチンの開始するまでの時間間隔が同じ時間間隔ではなく、動的に処理されたデータに応答したランダムな時間間隔となるように変化させるステップを含んでいる。
【0011】
本発明のさらに別の概念において、ステップ(a)は前記観察可能な外部事象の発生から前記必要なデータの処理ルーチンの開始するまでの時間間隔が同じ時間間隔ではなく、動的に処理されたデータと秘密メモリに記憶されたデータとの組合わせに応答したランダムな時間間隔となるように変化させるステップを含んでいる。
【0012】
本発明のさらに別の概念において、ステップ(a)は観察可能な外部事象の発生と予め定められたルーチンの実行との間において1つ以上の疑似データ処理ルーチンを実行するステップ(b)と前記疑似ルーチンの期間をランダムに変化させるステップ(c)とを含む。
【0013】
本発明の全ての概念において、方法はさらに前記疑似ルーチンが改竄されているか否かを検出するために前記疑似ルーチンを監視するステップ(d)と、前記疑似ルーチンが改竄されていることの検出に応答して前記予め定められたルーチンの実行を阻止するステップ(e)とを含む。
【0014】
本発明はさらに観察可能な外部事象が前記予め定められたルーチンの実行に関係して生じるような予め定められたデータ処理ルーチンを実行する手段と、観察可能な外部事象の発生と予め定められたルーチンの実行との間の期間をランダムに変化させる手段とを含むデータ処理システムを提供する。それ故に、予め定められたデータ処理ルーチンの実行時間は観察可能な外部事象の発生に関係して決定されすることが阻止される。
【0015】
【実施例】
本発明の好ましい実施例は、秘密メモリと、秘密でないメモリと、秘密中央処理装置(CPU)とを有する秘密マイクロプロセッサ中に構成される。両メモリはランダムアクセスメモリ(RAM)および読取り専用メモリ(ROM)の両方を含むことができる。用語「秘密」は外部アクセス不可能を示す。
【0016】
図1を参照にすると、本発明の好ましい1実施例において、CPU10はROM18からアクセスされた命令(コード)に応答してデータ処理ルーチンのグループ:“ルーチンN−1” 11 、“ブランチ” 12 、“ルーチンN” 14 、“改竄検出”15および“ルーチンN+1” 16 を実行し、さらに秘密RAM24からアクセスされた命令に応答して組立てられた疑似ルーチンのメイズ(maze):“疑似ルーチン1” 20 、“疑似ルーチン2” 21...、“疑似ルーチンm” 22 を実行する。
【0017】
ルーチンN−1、ルーチンNおよびルーチンN+1は繰返して行う全体の大きいデータ処理ルーチンの本質的な連続サブルーチンであり、全体的な大きいルーチンの各シーケンス中において観察可能な外部事象の発生に後続する。予め定められた保護されたルーチン:“ルーチンN”を保護されたルーチン:“ルーチンN”に反復して先行する観察可能な外部事象と同期させないために、ブランチルーチン12はCPU10をm個の疑似ルーチンのメイズ:“疑似ルーチン1”、“疑似ルーチン2”、... “疑似ルーチンm”に分岐させる。m個の疑似ルーチンの全期間はランダム変数であり、m個の疑似ルーチンは異なる期間を有する。
【0018】
疑似ルーチンのメイズへの分岐が採用されることを確実にするために、全体的な大きいルーチンに臨界するサブルーチンはメイズの内部に埋込まれる。もしこのルーチンが実行されないならば、実行された全体的な大きいルーチン重要ではない。臨界サブルーチンは予め定められた保護されたルーチン:“ルーチンN”に対する命令がその先行する命令の後で存続しないように命令を解体することによって埋込まれる。代りに、ブランチルーチン12は疑似ルーチン20,21,22のメイズの実行が終了するまでアクセスすることができない秘密メモリ位置中の予め定められた保護されたルーチン:“ルーチンN”に対する命令のアドレスを蓄積する。予め定められた保護されたルーチン:“ルーチンN”に対する命令のアドレスが記憶された後に、CPU10は第1の疑似ルーチン:疑似ルーチン1を実行する。
【0019】
ROM18に記憶された命令のシーケンスにおいて、ブランチルーチン12に対する命令後の次の命令は改竄検出ルーチン13である。通常の動作において、CPU10は常に疑似ルーチンのメイズへ分岐するので、改竄検出ルーチン13は実行されないであろう。しかし、もしもアタッカーがブランチルーチン12をバイパスしようとするならば、改竄検出ルーチン13はアタッカーの改竄企てを検出するために実行される。
【0020】
疑似ルーチンを実行する目的はルーチンN−1とルーチンNとの間に可変期間遅延を与えることである。各疑似ルーチンは図2に示されたように一度多数のクロックサイクルがカウントされると終了されるようなループカウンタルーチンである。図2を参照にすると、ループカウンタルーチンはサブルーチン25,26,27,28,29,30 を含む。スタートサブルーチン25後、カウントされるべきクロックサイクルDの数は“R中へ遅延D負荷”サブルーチン27中にCPU10により構成されたレジスタに負荷される。
【0021】
クロックサイクルDの数は秘密RAM24からアクセスされたランダム数である。ランダムクロックサイクル数は異なる疑似ルーチンに対する命令がアクセスされるにより秘密RAM24の異なる部分において設けられる。ランダムクロックサイクル数は物理的の(本当の)ランダム現象によって生成された信号或いは疑似ランダム数発生器のような疑似ランダム装置に応答してRAM24に設けられる。
【0022】
“R>0?”サブルーチン28はレジスタ中の値が0より大きいか否かを決定する。大きいならば、レジスタ中の値が0に等しくなるまで“減少R”サブルーチン29にしたがい1つのカウントずつ減少され、0に等しくなると“出口”サブルーチン30が実行される。
【0023】
“R中へ遅延D負荷”サブルーチン27は異なる疑似ルーチンの異なる時間で実行される。それ故にアタッカーは“R中へ遅延D負荷”サブルーチン27が疑似ルーチンの1つの所定の時間に実行されるか否かを決定した後に各疑似ルーチンに対して既知の遅延を設定するように各疑似ルーチンの同じクロック中に実行されるべき命令を改竄できない。
【0024】
各疑似ルーチン中において、“R中へ遅延D負荷”サブルーチン27はi番目のサブルーチンである。改竄検出サブルーチン26はそれぞれの疑似ルーチンに対してR中へ遅延D負荷サブルーチン27に先行して何度も繰返される。改竄検出ルーチン26もまたサブルーチンの予め定められた回数Pが実行されるまで“R中へ遅延D負荷”サブルーチン27に後続して何度も繰返される。
【0025】
各改竄検出サブルーチン26は疑似ルーチンが改竄されるか否かを検出するために疑似ルーチンを監視する予め定められたトラップであり、疑似ルーチンが改竄されていることの検出に応答して保護されたルーチン:“ルーチンN”の実行を阻止する。
【0026】
改竄はこれらの予め定められたトラップ中の命令の改竄を検出することによって検出される。図3を参照にすると、改竄検出サブルーチン26はスタートサブルーチン33、“レジスタRへの定数Cの負荷”サブルーチン34、“C=R?”サブルーチン35、“改竄検出カウンタインクレメント”サブルーチン36、“カウント>T?”サブルーチン37、“阻止”サブルーチン38、“改竄検出デクレメント”カウンタサブルーチン39、および“出口”サブルーチン40を含む。
【0027】
スタートサブルーチン33後、定数Cは“レジスタRへの定数Cの負荷”サブルーチン34中にCPU10により構成されたレジスタに負荷される。
【0028】
C=R?サブルーチン35は疑似ルーチン中に実行されるべき命令を改竄することを企てているアタッカーによるアタックを示す改竄が存在しているか否かを指示する。アタッカーはアタックにより疑似ルーチンの既知の遅延を設定するための疑似ルーチンに対する遅延期間の指令を負荷する命令を改竄する。しかし、指令された遅延期間が実行されている疑似ルーチンのサブルーチンのシーケンス中のどの位置に位置されているのかをアタッカーが正確に推測することができない場合には、遅延期間の指令を負荷する命令の改竄は世紀のものとは異なったものとなり、改竄検出サブルーチン26においてレジスタに入力された定数Cとは異なった値となる。したがってレジスタ中の改竄された値Rは、C=R?サブルーチン35における比較でCとは等しくなくなる。そのためCがRに等しくないときには、改竄が行われたことが検出されることができ、CPU10によって構成された改竄検出カウンタが“改竄検出カウンタインクレメント”サブルーチン36において構成される。
【0029】
改竄検出カウンタのカウントは“カウント>T?”サブルーチン37中にしきい値Tと比較される。一度このしきい値Tが超過されると、“阻止”サブルーチン38が予め定められた保護されたルーチン:“ルーチンN”の実行を阻止するために行われる。
【0030】
“阻止”サブルーチン38は幾つかの方法で構成されることができる。例えば、秘密情報は消されることができ、或いは疑似ルーチンのメイズを改竄することが可能であるため、出ることが不可能である。任意の構成において、CPU10動作は無限ループに入力するので、情報は改竄が生じるときにクロックサイクルの識別に関してアタッカーにより得られることができない。
【0031】
疑似改竄または疑似信号は“阻止”ルーチン38に入力されないので、“改竄検出カウンタデクレメント”サブルーチン39は各“改竄検出カウンタ”サブルーチン26用の改竄検出カウンタをデクレメントさせる。CはRと等しくないという改竄の指示がない。“改竄検出カウンタデクレメント”サブルーチン39中にデクレメントされる改竄検出カウンタによるカウントは、“改竄検出カウンタインクレメント”サブルーチン36中にインクレメントされる改竄検出カウンタによるカウントに等しいか或いはそれより少ない。
【0032】
改竄検出カウンタの値Cは“カウント>T?”サブルーチン37中の値Rに等しい各改竄検出サブルーチン26に対して、“改竄検出”サブルーチン26は“出口”サブルーチン40で終了する。
【0033】
別の実施例において、改竄検出カウンタは使用されず、図3の破線で示されたように“C=R?”サブルーチン35中の定数Cに等しくないレジスタ中の値Rで改竄が指示される毎に“阻止”サブルーチン38が入力される。この別の実施例において、“出口”サブルーチン40は図3の破線で示されたように“C=R?”サブルーチン35中の定数Cに等しいレジスタ中の値Rで改竄が指示されない毎に“阻止”サブルーチン38が入力される。
【0034】
疑似ルーチンは並列クロックサイクルを有する命令を有するべきである。リセット中断が生じるとき、大抵のマイクロプロセッサは現在の命令の実行を終了する。もし疑似ルーチンの遅延の量を指示する“R中へ遅延D負荷”に対する命令と、“改竄検出”サブルーチン26に対する命令は同じサイクル長を正確に有しないならば、“R中へ遅延D負荷”サブルーチン27は一連のリセット中断および各リセット中断が処理されるときの観察を与えることによって“改竄検出”サブルーチン26と区別されることが可能である。したがって、“R中へ遅延D負荷”サブルーチン27に対する命令は“改竄検出”サブルーチン26に対する命令として同じ期間である。
【0035】
疑似ルーチンのメイズの実行が終了する際に、CPU10はブランチルーチン12を実行したときにCPU10により省略された保護されたルーチン:“ルーチンN”の命令のアドレスをアクセスした後に保護されたルーチン:“ルーチンN”を実行する。
【0036】
全ての擬似ルーチンの最大の可能な合計期間および予め定められたデータ処理ルーチン“ルーチンN”の期間を含む十分な期間における外部から観察可能な事象が発生した直後において、アタッカーが予め定められた保護されたルーチン“ルーチンN”へアクセスを企てる技術によって予め定められた保護されたルーチン“ルーチンN”へアクセスすることを阻止するために、改竄検出ルーチン15が予め定められた保護されたルーチン“ルーチンN”の実行に続いて実行され、予め定められた保護されたルーチン“ルーチンN”がアクセスされるまで、予め定められたデータ処理ルーチンの各連続サイクルにおいて、このような企てを1クロックサイクル早くさせる。そのような企て、すなわちアタックはそのようなアドレスがアクセスされる前に改竄検出ルーチン15によって改竄が検出され、阻止ルーチンを行うことが可能になる。
【0037】
改竄検出ルーチン15の実行後に、CPUはルーチンN+1を実行する。
【0038】
図4を参照にすると、本発明の別の好ましい実施例では図1の好ましい実施例よりも必要な秘密RAM容量が少ない。CPU44はROM51からアクセスされた命令(コード)に応答してデータ処理ルーチンのグループ:“ルーチンN−1” 46 、“ブランチ”47、“組立および実行疑似ルーチン”48、“ルーチンN” 49 、および“ルーチンN+1” 50 を実行する。ルーチン:“ルーチンN−1” 46 、“ルーチンN” 49 、“ルーチンN+1” 50 は全体的な大きいデータ処理ルーチンの本質的な連続サブルーチンであり、全体的な大きいルーチンの各シーケンス中の観察可能な外部事象の発生に後続する。ルーチン:“ルーチンN”を繰返して先行する観察可能な外部事象と同期させないように、ブランチルーチンはCPU44がROM51に記憶されたn個の疑似ルーチン:“疑似ルーチン1” 54 、“疑似ルーチン2” 55...、“疑似ルーチンn” 56 のグループから組立てられたm個の疑似ルーチンのメイズに分岐させる。m個の疑似ルーチンは秘密RAM60からアクセスされたポインタ58に応答するn個の疑似ルーチンのグループから組立てられる。mおよびnは整数であり、nはmよりも大きい。n可能な疑似ルーチンのメイズが存在する。n個の疑似ルーチンは異なる期間を有し、所定のデータ処理シーケンス中に実行するために組立てられるm個の疑似ルーチンの選択およびシーケンスは疑似ルーチンの全期間をランダム変数にさせるために1つのシーケンスから次のシーケンスへランダムに変化する。疑似ルーチンの異なる期間の値は、多くのn可能な疑似ルーチンのメイズが異なる全期間を有するように分布される。
【0039】
ルーチン:“ルーチンN−1”の実行に続いて、“ブランチルーチン”47はCPU44に“組立および実行疑似ルーチン”48の分岐をさせる。“組立および実行疑似ルーチン”48はサブルーチン:“第1のポインタ取出し”62、“ポインタにより識別された疑似ルーチン実行”63、“Mポインタの取出し?”64、および“第2のポインタ取出し”65を含む。
【0040】
ポインタは“疑似ルーチン1用のポインタ”67、“疑似ルーチン2用のポインタ”68... 、“疑似ルーチンm用のポインタ”69を含む。ポインタ67,68,69は所定のデータ処理シーケンス中にアクセスされるm個のポインタの選択およびシーケンスを除いて一定である。所定のデータ処理シーケンスは疑似ルーチンの全期間をランダムに変化させるために1つの全体のデータ処理サイクルから次の全体のデータ処理サイクルへランダムに変化される。m個のポインタの選択およびシーケンスはノイジーダイオードのような物理的の(本当の)ランダム現象によって生成された信号に応答するか或いは疑似ランダム数発生器のような疑似ランダム装置に応答して各全データ処理サイクル中に行われる。
【0041】
“第1のポインタ取出し”ルーチン62中において、CPU44はRAM60から“疑似ルーチン1用のポインタ”を取出し、疑似ルーチン1に対する命令をROM51からアクセスするためにそのようなポインタを使用する。
【0042】
“ポインタにより指示された疑似ルーチン実行”63中において、CPU44はポインタ58に応答するROM51からアクセスされたルーチン52を実行する。
【0043】
“ポインタにより指示された疑似ルーチン実行”63の各実行に続いて、CPU44はm個の“ポインタの取出し?”ルーチン64を実行する。もしm個のポインタがまだRAM60から取出されていないならば、CPU44は別のポインタ58をRAM60から取出し、新しく取出されたポインタ58によって指示された疑似ルーチン52を使用する“ポインタで指示された疑似ルーチン実行”63を実行するために“第2のポインタルーチン取出し”65を実行する。
【0044】
一度、m個の“ポインタの取出し?”ルーチン64がm個のポインタ58のRAM60から取出されたことを指示すると、CPU44は予め定められた保護されたルーチン:“ルーチンN”を実行する。
【0045】
各疑似ルーチン52は図2に関係して上記されたようなループカウンタルーチンである。
【0046】
図4の好ましい実施例はまた図1乃至図3を参照にして記載された“改竄検出”ルーチン15および26のような改竄検出ルーチンと、図1を参照にして記載された“改竄検出”ルーチン13のような改竄検出ルーチンとを含むことができる。
【0047】
図5は疑似ルーチンの別の好ましい実施例を示す。この疑似ルーチンにおいては、観察可能な外部事象の個々の発生と予め定められた保護される各ルーチンとの間の期間が観察可能な外部事象の個々の発生に対して同じ時間間隔ではないようにするために、データを動的に処理してその処理時間の長さを変化させ、その処理時間に応じて観察可能な外部事象の個々の発生に対する予め定められた保護されるルーチンの開始時間を変化させる。
【0048】
図5の疑似ルーチンは全体的な大きいデータ処理ルーチンの共通の繰返される保護されるべき臨界的なルーチンと関連して設けられたルーチンである。この実施例においてはこの保護される臨界的なルーチンはソースデータを終点の目的地へ転送するルーチンである。この実施例では、全体的な大きいデータ処理ルーチン中でソースデータが疑似ルーチンとして動的に処理される。この図5の疑似ルーチンは観察可能な外部事象の個々の発生と予め定められた保護される保護される臨界的なルーチンとの間の期間に実行され、この疑似ルーチンの長さが改竄を意図する外部の観察者が知ることのできないようにランダムに変化することによって改竄を防止するものである。
【0049】
図5の疑似ルーチンは以下示されるサブルーチン:“スタート”72、“初期化”73、“Xのi番目のビット=1?”74、“Yのi番目のビットを1へセット”75、“iインクレメント”76、“i>ソースデータのワードサイズ?”77、“目的地データ=Y+ソースデータ”78、“新しい秘密データ書込み”79、および“出口80”を含む。図5の疑似ルーチンはまた“初期化”サブルーチン73および“新しい秘密データ書込み”サブルーチン79の両方に先行し後続する上述の“改竄検出”ルーチン26のような“改竄検出”ルーチン(図示せず)を含む。図5の疑似ルーチンに対する命令はROMに記憶され、図1に示されたのと同じようにCPUによって実行される。
【0050】
スタートサブルーチン72の後、CPUはレジスタXが秘密RAMからアクセスされた秘密データと動的なソースのデータとの排他的オア処理される結果によって負荷される初期化サブルーチン73を実行する。レジスタYは0にセットされ、カウンタiもまた0にセットされる。ソースデータの目的先のアドレスはまた初期化サブルーチン73中に記憶される。
【0051】
CPUは次に“Xのi番目のビット=1?”サブルーチン74を実行し、Xレジスタのi番目のビット位置がビット1であるか否かを決定する。このサブルーチン74が実行される毎に、この決定は下位桁ビット位置で開始してXレジスタの異なるビット位置iに関係して行われる。
【0052】
Yレジスタのi番目のビット位置はビット1であるときにはいつでも“Xのi番目のビットを1へセット”サブルーチン75はYレジスタのi番目のビット位置を1にセットするために実行される。“iインクレメント”サブルーチン76が実行されiレジスタを1つのカウントずつインクレメントさせる。
【0053】
Yレジスタのi番目のビット位置は0ビットであるときにはいつでも“iインクレメント”サブルーチン76が実行されiレジスタを1つのカウントずつインクレメントする。
【0054】
“i>ソースデータのワードサイズ?”サブルーチンが“Xのi番目のビット=1?”サブルーチン74は全てのXレジスタのi番目のビット位置に実行された否かを決定する。もしそうでなければ、サブルーチン74は繰返される。
【0055】
“Xのi番目のビット=1?”サブルーチン74はXレジスタの全てのi番目のビット位置に実行されたとき、CPUは“目的地データ=Y+秘密データ”サブルーチン78を実行する。Yレジスタの内容は図5の疑似ルーチンに対する命令中で指示された目的地に移動される目的地データを提供するためにRAMからアクセスされた秘密データと排他的オア処理される。
【0056】
類似ルーチンの全期間を既知の値にしようとする図5の類似ルーチンによるアタッカーによる改竄は目的地データの内容を変える必要があり、それによって全体のより大きなデータ処理が適切に実行されることが阻止される。もしもソースデータが正確に目的地に移動されなければ、全体の大きなデータ処理ルーチンの残部は不正確なデータを使用して実行され、正確な結果を生じない。
【0057】
Xレジスタのi番目のビットが1に等しいときだけ“Xのi番目のビットを1にセット”のサブルーチン75が実行されるから、図5の疑似ルーチンの全期間は“初期化”サブルーチン73中にXレジスタに負荷されるデータ中の1ビットの数に依存している。したがって、図5の疑似ルーチンの期間はXレジスタ中に負荷されているデータのビット位置の数とサブルーチン75に必要なクロックサイクル数との積の値に応じて変化する。サブルーチン75が実行される回数は動的に処理されるソースデータおよびRAM中の秘密データの内容に依存しているので、図5の疑似ルーチンの全期間は改竄を意図する観察者には知ることのできないランダムな変数にしたがって変化する。
【0058】
図5の疑似ルーチンの全期間のランダムはさらに“新しい秘密データ書込み”サブルーチン78の実行によって調整され、“初期化”サブルーチン73中にRAM中の秘密データを改竄させる。それ故に、図5の疑似ルーチンが実行される度に、そのような秘密データは異なることができる。秘密データはノイジーダイオードのような物理的の(本当の)ランダム現象により生成された信号に応答するか或いは疑似ランダム数発生器のような疑似ランダム装置に応答してRAM中に設けることができる。
【0059】
図5の疑似ルーチンは他の疑似ルーチンの組合わせて実行する必要がなく、全体的な大きいデータ処理ルーチンに結合されることができるので、いつでも臨界データは1つの位置(ソース)から別の位置(目的先)へ移動される。
【0060】
本発明の方法およびシステムはまた前記予め定められたルーチンの実行に先行する観察可能な外部事象の発生に関係して決定される繰返し行う全体的な大きいデータ処理ルーチンに含まれない予め定められたデータ処理ルーチンの実行時間を阻止するのに適用可能である。
【0061】
本発明の方法およびシステムは加入者通信ネットワークの加入者の占有のデスクランブラーによりスクランブルされた情報信号のデスクランブルを制御するマイクロプロセッサの構成に特に適切である。
【図面の簡単な説明】
【図1】本発明のデータ処理システムの好ましい1実施例のブロック図。
【図2】図1のシステムで行われる疑似ルーチンの好ましい実施例のフローチャート。
【図3】図2の疑似ルーチンで行われた改竄検出ルーチンのフローチャート。
【図4】本発明のデータ処理システムの別の好ましい実施例のブロック図。
【図5】疑似ルーチンの別の好ましい実施例のフローチャート。
【符号の説明】
10,44 …CPU、14,49 …データ処理ルーチン、18…ROM、20,21,22,52 …疑似ルーチン、24…秘密RAM、26…サブルーチン、51…メモリ、58…ポインタ、60…秘密メモリ。

Claims (22)

  1. データ処理システムにより実行される全体的な大きいデータ処理ルーチンに含まれている予め定められたデータ処理ルーチンの実行時間が、前記予め定められたルーチンの実行に先行して発生する前記全体的な大きいルーチンの実行に関係しあるいはその実行によって影響を受ける外部から観察可能な事象の発生に基づいて決定されることを阻止する方法において、
    外部から観察可能な事象の発生と前記予め定められたルーチンの実行との間において擬似データ処理を行う2以上の擬似ルーチンを実行し、
    前記擬似ルーチンを実行する期間の長さをランダムに変化させ、それによって前記外部から観察可能な事象の発生と前記予め定められたルーチンの実行との間の期間をランダムに変化させるステップを含み、
    この期間をランダムに変化させるステップは
    なった実行期間を有するn個の記憶されたルーチンのグループから実行するm個の擬似ルーチンをランダムに選択して組立てるステップを含み、ここでmおよびnは共に整数であり、nはmより大きい整数である方法。
  2. 前記ランダムに選択して組立てるステップは、
    密メモリに記憶されている前記m個の擬似ルーチンにランダムにアクセスするステップを含んでいる請求項記載の方法。
  3. 前記ランダムに選択して組立てるステップは
    密メモリに記憶されている前記m個の擬似ルーチンに対するポインタにランダムにアクセスし、
    記ポインタに応答して前記秘密メモリに記憶されている前記m個の擬似ルーチンにアクセスするステップを含んでいる請求項記載の方法。
  4. 前記ランダムに選択して組立てるステップは
    なった擬似ルーチンの異なったクロックサイクル中に各擬似ルーチンに対する遅延期間を定めるための命令を各擬似ルーチン中に与えて実行するステップを含んでいる請求項記載の方法。
  5. 記擬似ルーチンを変更させる企てがなされたか否かを検出するために、遅延期間を定めるための命令が与えられる前記擬似ルーチンのサブルーチンに先行および後続している前記擬似ルーチンのサブルーチンを監視し、前記擬似ルーチンを変更させる前記企ての検出に応答して前記予め定められたルーチンの実行を阻止するステップをさらに含んでいる請求項記載の方法。
  6. 記擬似ルーチンが改竄されているか否かを検出するために前記擬似ルーチンを監視し、前記擬似ルーチンの改竄の検出に応答して前記予め定められたルーチンの実行を阻止するステップをさらに含んでいる請求項記載の方法。
  7. 出されている前記擬似ルーチンの改竄の発生をカウントしてそのカウント値を前記改竄の発生の都度インクリメントし、予め定められたしきい値を超えた前記カウント値に応答して前記予め定められたルーチンの実行を阻止するステップを含んでいる請求項記載の方法。
  8. さらに、検出されている前記擬似ルーチンを改竄せずに実行されている前記擬似ルーチンに応答して前記カウント値をデクリメントするステップをさらに含んでいる請求項記載の方法。
  9. 前記擬似ルーチンの実行と前記擬似ルーチンの監視とは同じ実行期間を有する命令に応答して実行される請求項記載の方法。
  10. さらに、前記予め定められたデータ処理ルーチンの実行に後続する予め定められたデータ処理ルーチンを監視して、全ての擬似ルーチンの可能な最大合計期間と前記予め定められたデータ処理ルーチンの期間とを含む十分な期間における外部から観察可能な事象が発生した直後において、アタッカーが前記予め定められたデータ処理ルーチンへアクセスを企てているか否かを検出し、その後前記予め定められたルーチンであるルーチンNがアクセスされるまで、予め定められたデータ処理ルーチンの各連続サイクルにおいて、このような企てを1クロックサイクル早め、
    記企ての検出に応答して前記予め定められたルーチンの実行を阻止するステップをさらに含んでいる請求項記載の方法。
  11. データ処理システムにより実行される全体的な大きいデータ処理ルーチン中に含まれている予め定められたデータ処理ルーチンの実行時間が、前記予め定められたルーチンの実行に先行して発生する前記全体的な大きいルーチンの実行に関係し、あるいはその実行によって影響を受ける外部から観察可能な事象の発生に基づいて決定されることを阻止する方法において、
    (a)前記全体的な大きいルーチンの実行中にデータを動的に処理し、
    (b)前記動的に処理されたデータによって秘密メモリ中に記憶されているデータの組合せを行い、前記外部から観察可能な事象の発生と前記全体的な大きいデータ処理ルーチン中の前記予め定められたルーチンの実行との間の期間を変化させるステップを含んでいる方法。
  12. 小さい予め定められたデータ処理ルーチンを含んでいるマクロなデータ処理ルーチンを実行する手段と、
    外部から観察可能な事象の発生と予め定められたルーチンの実行との間において擬似データ処理を行う2以上の擬似ルーチンを実行する手段とを具備し、
    マクロなデータ処理ルーチンの実行に関係した、あるいはその実行によって影響を受けた外部から観察可能な事象が前記小さい予め定められたデータ処理ルーチンの実行に先行して発生し、
    さらに、予め定められたデータ処理ルーチンの実行される時間が外部から観察可能な事象の発生に関係して決定されることが阻止されるために、前記擬似ルーチンの実行される期間をランダムに変化させ、それによって前記外部から観察可能な事象の発生と前記予め定められたルーチンの実行との間の期間を変化させる手段を具備し、
    前記擬似ルーチンの実行期間を変化させる手段は、実行するm個の擬似ルーチンを、異なった実行期間を有するn個の記憶されたルーチンのグループからランダムに選択して組み立てる手段を具備しており、ここにおいてmおよびnは整数であり、nはmより大きい整数であるシステム。
  13. 前記ランダムに選択して組み立てる手段は、
    秘密メモリに記憶されている前記m個の擬似ルーチンにランダムにアクセスする手段を具備している請求項12記載のシステム。
  14. 前記ランダムに選択して組み立てる手段は、
    秘密メモリに記憶されている前記m個の擬似ルーチンに対するポインタにランダムにアクセスする手段と、
    前記ポインタに応答して前記秘密メモリに記憶されている前記m個の擬似ルーチンにアクセスする手段とを具備している請求項12記載のシステム。
  15. 前記擬似ルーチンの実行期間を変化させる手段は、
    異なった擬似ルーチンの異なったクロックサイクル中における各擬似ルーチンの遅延期間を定めるための命令を各擬似ルーチン中に与えてその命令を実行させる手段を具備している請求項12記載のシステム。
  16. さらに、前記擬似ルーチンを変更しようとする企てがなされたか否かを検出するために、遅延期間を定めるための命令が与えられる前記擬似ルーチンのサブルーチンに先行および後続する擬似ルーチンのサブルーチンを監視する手段と、
    前記擬似ルーチンを変更しようとする前記企ての検出に応答して前記予め定められたルーチンの実行を阻止する手段とを具備している請求項15記載のシステム。
  17. 前記擬似ルーチンが改竄されているか否かを検出するために前記擬似ルーチンを監視する手段と、
    前記擬似ルーチンが改竄されていることの検出に応答して前記予め定められたルーチンの実行を阻止する手段とをさらに具備している請求項12記載のシステム。
  18. 前記実行を阻止する手段は、
    検出されている前記擬似ルーチンの改竄の発生をカウントして改竄の発生の都度カウント値をインクリメントする手段と、
    予め定められたしきい値を超えた前記カウント値に応答して前記予め定められたルーチンの実行を阻止する手段とを具備している請求項17記載のシステム。
  19. 検出されている前記擬似ルーチンを改竄せずに実行されている前記擬似ルーチンに応答して前記カウント値をデクリメントさせる手段を具備している請求項18記載のシステム。
  20. 前記実行する手段および監視する手段は、同じ処理期間を有する命令に応答する請求項17記載のシステム。
  21. さらに、前記予め定められたデータ処理ルーチンの実行に後続する前記予め定められたデータ処理ルーチンを監視して、全ての擬似ルーチンの可能な最大合計期間と前記予め定められたデータ処理ルーチンの期間とを含む十分な期間における外部から観察可能な事象が発生した直後においてアタッカーが前記予め定められたデータ処理ルーチンへのアクセスを企てているか否かを検出する監視検出手段と、
    前記企ての検出に応答して前記予め定められたルーチンの実行を阻止する手段とを具備し、
    前記監視検出手段はその後予め定められたデータ処理ルーチンの各連続サイクルにおいて、予め定められたルーチンであるルーチンNがアクセスされるまで、このような企てを1クロックサイクル早めるように構成されている請求項12記載のシステム。
  22. 小さい予め定められたデータ処理ルーチンを含んでいるマクロなデータ処理ルーチンを実行する手段と、
    前記マクロルーチンの実行中にデータを動的に処理する手段とを具備し、
    前記マクロなデータ処理ルーチンの実行に関係した、あるいはその実行によって影響を受けた外部から観察可能な事象が、前記小さい予め定められたデータ処理ルーチンの実行に先行して発生し、
    さらに、前記予め定められたデータ処理ルーチンの実行される時間が前記外部から観察可能な事象の発生に基づいて決定されることが阻止されるように、前記動的に処理されたデータによって秘密メモリに記憶されているデータを組み合わせ、外部から観察可能な事象の発生と前記マクロなデータ処理ルーチンの実行期間における予め定められたルーチンの実行される時間との間の時間の大きさを変化させる手段を備えていることを特徴とするデータ処理システム。
JP08070791A 1990-03-20 1991-03-19 以前の観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間決定の阻止 Expired - Fee Related JP3611867B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US49701290A 1990-03-20 1990-03-20
US497012 1990-03-20

Publications (2)

Publication Number Publication Date
JPH04223530A JPH04223530A (ja) 1992-08-13
JP3611867B2 true JP3611867B2 (ja) 2005-01-19

Family

ID=23975105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08070791A Expired - Fee Related JP3611867B2 (ja) 1990-03-20 1991-03-19 以前の観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間決定の阻止

Country Status (11)

Country Link
EP (1) EP0448262B1 (ja)
JP (1) JP3611867B2 (ja)
KR (1) KR100216937B1 (ja)
AT (1) ATE152530T1 (ja)
AU (1) AU637677B2 (ja)
CA (1) CA2037857C (ja)
DE (1) DE69125881T2 (ja)
DK (1) DK0448262T3 (ja)
ES (1) ES2100207T3 (ja)
GR (1) GR3023851T3 (ja)
IE (1) IE74155B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10785259B2 (en) 2016-04-19 2020-09-22 Mitsubishi Electric Corporation Relay device

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2745924B1 (fr) * 1996-03-07 1998-12-11 Bull Cp8 Circuit integre perfectionne et procede d'utilisation d'un tel circuit integre
FR2765361B1 (fr) * 1997-06-26 2001-09-21 Bull Cp8 Microprocesseur ou microcalculateur imprevisible
ES2660057T3 (es) * 1998-05-18 2018-03-20 Giesecke + Devrient Mobile Security Gmbh Soporte de almacenamiento de datos de acceso protegido
KR100672097B1 (ko) 1998-07-31 2007-01-19 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 처리 장치 및 데이터 처리 장치용 회로
DE19837808A1 (de) * 1998-08-20 2000-02-24 Orga Kartensysteme Gmbh Verfahren zur Ausführung eines Verschlüsselungsprogramms zur Verschlüsselung von Daten in einem mikroprozessorgestützten, tragbaren Datenträger
FR2784763B1 (fr) * 1998-10-16 2001-10-19 Gemplus Card Int Composant electronique et procede pour masquer l'execution d'instructions ou la manipulation de donnees
JP2000165375A (ja) * 1998-11-30 2000-06-16 Hitachi Ltd 情報処理装置、icカード
US6408075B1 (en) 1998-11-30 2002-06-18 Hitachi, Ltd. Information processing equipment and IC card
JP4317607B2 (ja) 1998-12-14 2009-08-19 株式会社日立製作所 情報処理装置、耐タンパ処理装置
FR2787900B1 (fr) * 1998-12-28 2001-02-09 Bull Cp8 Circuit integre intelligent
FR2790347B1 (fr) * 1999-02-25 2001-10-05 St Microelectronics Sa Procede de securisation d'un enchainement d'operations realisees par un circuit electronique dans le cadre de l'execution d'un algorithme
JP2001118042A (ja) * 1999-10-19 2001-04-27 Hitachi Ltd カード監視方法
FR2849232B1 (fr) * 2002-12-24 2005-02-25 Trusted Logic Procede pour la securisation des systemes informatiques incorporant un module d'interpretation de code
US20040162993A1 (en) * 2003-02-13 2004-08-19 Yannick Teglia Antifraud method of an algorithm executed by an integrated circuit
DE10307797B4 (de) * 2003-02-24 2010-11-11 Infineon Technologies Ag Vorrichtung und Verfahren zum Ermitteln einer Unregelmäßigkeit in einem Ablauf eines Nutzprogramms
IL171963A0 (en) 2005-11-14 2006-04-10 Nds Ltd Secure read-write storage device
FR3075430B1 (fr) * 2017-12-20 2020-08-07 Oberthur Technologies Procede de traitement de donnees et dispositif electronique associe

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4494114B1 (en) * 1983-12-05 1996-10-15 Int Electronic Tech Security arrangement for and method of rendering microprocessor-controlled electronic equipment inoperative after occurrence of disabling event
JPS60207957A (ja) * 1984-03-31 1985-10-19 Toshiba Corp デ−タ保護方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10785259B2 (en) 2016-04-19 2020-09-22 Mitsubishi Electric Corporation Relay device

Also Published As

Publication number Publication date
EP0448262A3 (en) 1992-09-30
EP0448262B1 (en) 1997-05-02
AU637677B2 (en) 1993-06-03
CA2037857C (en) 2001-01-16
DE69125881D1 (de) 1997-06-05
CA2037857A1 (en) 1991-09-21
IE74155B1 (en) 1997-07-02
KR910017304A (ko) 1991-11-05
ES2100207T3 (es) 1997-06-16
JPH04223530A (ja) 1992-08-13
EP0448262A2 (en) 1991-09-25
KR100216937B1 (ko) 1999-09-01
IE910851A1 (en) 1991-09-25
DK0448262T3 (da) 1997-10-27
ATE152530T1 (de) 1997-05-15
AU7291591A (en) 1991-09-26
GR3023851T3 (en) 1997-09-30
DE69125881T2 (de) 1997-08-14

Similar Documents

Publication Publication Date Title
JP3611867B2 (ja) 以前の観察可能な外部事象の発生に関係する予め定められたデータ処理ルーチンの実行時間決定の阻止
US5249294A (en) Determination of time of execution of predetermined data processing routing in relation to occurrence of prior externally observable event
US9887833B2 (en) Systems and methods to counter side channel attacks
US5727167A (en) Thresholding support in performance monitoring
EP2294526B1 (en) A method for secure data reading and a data handling system
US20100278334A1 (en) Method and apparatus for minimizing differential power attacks on processors
EP1076855A1 (en) Non-intrusive performance monitoring
US5948102A (en) Method and device to improve the security of an integrated circuit
US5671394A (en) Microcomputer having ROM data protection function
WO2000042511A1 (en) Method and apparatus for minimizing differential power attacks on processors
US20020169969A1 (en) Information processing unit having tamper - resistant system
JP4693245B2 (ja) 外部からの不正操作に対するコンピュータコアの保護
EP3502869B1 (en) Interference detecting ring oscillators
US3585606A (en) File protect circuit and method
EP3140775B1 (en) Dynamic change of security configurations
US10747878B1 (en) Rapid verification of executing processes
US20040268313A1 (en) Statistical control of the integrity of a program
Zhou et al. HardStack: Prevent Stack Buffer Overflow Attack with LBR
JPS62106552A (ja) ル−プ検出装置
JP2000122932A (ja) デ―タ信号電子処理装置
JP3068317B2 (ja) マイクロコンピュータ
JPH06131211A (ja) マルチプロセッサシステムにおける入出力割り込みのテスト方法
Yuan et al. Recovering Memory Access Sequence with Differential Flush+ Reload Attack
SU650071A1 (ru) Устройство дл группового сравнени двоичных чисел
CN117744157A (zh) 基于信息混淆脱敏的智能合约管理方法及系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040825

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041021

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071029

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees