IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 新唐科技股▲ふん▼有限公司の特許一覧

特許7033676ソフトセキュリティ対策を用いたセキュア集積回路
<>
  • 特許-ソフトセキュリティ対策を用いたセキュア集積回路 図1
  • 特許-ソフトセキュリティ対策を用いたセキュア集積回路 図2
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-02
(45)【発行日】2022-03-10
(54)【発明の名称】ソフトセキュリティ対策を用いたセキュア集積回路
(51)【国際特許分類】
   G06F 21/55 20130101AFI20220303BHJP
   G06F 21/70 20130101ALI20220303BHJP
   H04L 9/10 20060101ALI20220303BHJP
【FI】
G06F21/55 340
G06F21/70
H04L9/10 A
【請求項の数】 18
(21)【出願番号】P 2021002948
(22)【出願日】2021-01-12
(65)【公開番号】P2021118543
(43)【公開日】2021-08-10
【審査請求日】2021-01-12
(31)【優先権主張番号】16/773,997
(32)【優先日】2020-01-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508197206
【氏名又は名称】新唐科技股▲ふん▼有限公司
(74)【代理人】
【識別番号】110001933
【氏名又は名称】特許業務法人 佐野特許事務所
(72)【発明者】
【氏名】ジヴ ハーシュマン
(72)【発明者】
【氏名】ダン モラヴ
【審査官】行田 悦資
(56)【参考文献】
【文献】特表2019-510318(JP,A)
【文献】特開2012-064133(JP,A)
【文献】米国特許出願公開第2020/0012783(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/10
G06F 21/70
(57)【特許請求の範囲】
【請求項1】
機能回路と保護回路とを備え、
当該保護回路は、
集積回路の動作周期の全体にわたって、当該機能回路への悪意ある攻撃しようとする試みの積算量であるカウンタ値を保持し、
当該機能回路に悪意ある攻撃が発生した事象を検出し、
悪意ある攻撃のことが検出された場合、検出された当該事象と当該集積回路における直近一回の電源投入との間の時間差に基づいて、当該カウンタ値を更新するか否かを判断し、また、当該カウンタ値が閾値を超えると、当該集積回路の少なくとも一部を無効にするように配置される集積回路。
【請求項2】
当該保護回路は、当該カウンタ値を更新する可能性を判断し、検出された当該事象と直近一回の当該電源投入との時間差に反比例することを特徴とする請求項1に記載の集積回路。
【請求項3】
当該保護回路は、検出された当該事象の重大度を判断するように配置され、当該重大度が当該時間差に反比例し、且つ当該重大度に基づいて当該カウンタ値を更新するか否かを決定することを特徴とする請求項1に記載の集積回路。
【請求項4】
当該保護回路は、一つ又は複数の事象が検出されなかった予定の持続時間が満了した場合、事象許容度を更新し、当該事象許容度に基づいて当該カウンタ値を更新するかどうかを決定することを特徴とする請求項1に記載の集積回路。
【請求項5】
当該保護回路は、当該事象と直近一回の当該電源投入との時間差に反比例する確率で当該カウンタ値を更新するかどうかを決定するように配置されることを特徴とする請求項1に記載の集積回路。
【請求項6】
当該保護回路は、更新値に基づいて当該カウンタ値を更新し、当該更新値の大きさは、当該時間差に反比例することを特徴とする請求項1に記載の集積回路。
【請求項7】
当該時間差が予定の持続時間を超えた場合、当該保護回路は、予定の時間遅延まで遅延してから当該カウンタ値の更新を開始することを特徴とする請求項1に記載の集積回路。
【請求項8】
当該保護回路は、経過時間に基づいて逆更新(oppositeupdate)を当該カウンタ値に適用するように更に配置され、当該逆更新は、検出された事象に応答して適用される更新とは逆方向であることを特徴とする請求項1に記載の集積回路。
【請求項9】
当該保護回路は、以下のような方式により当該カウンタ値を保持するように配置され、この方式は、
悪意ある攻撃しようとする試みの当該積算量を示すための第一のカウンタ値を追加し、
経過時間関数である第二のカウンタ値を少しずつ増加させ、
当該第一のカウンタ値から当該第二のカウンタ値を差し引いて当該カウンタ値を求めることであることを特徴とする請求項1に記載の集積回路。
【請求項10】
集積回路の動作周期の全体において、機能回路への悪意ある攻撃しようとする試みの積算量であるカウンタ値を保持することと、
当該機能回路に悪意ある攻撃が発生した事象を検出することと、
悪意ある攻撃の事象が検出された場合、検出された当該事象と当該集積回路における直近一回の電源投入との間の時間差に基づいて、当該カウンタ値を更新するか否かを判断することと、
当該カウンタ値が閾値を超えると、当該集積回路の少なくとも一部を無効にすることと、を含む集積回路を保護するための方法。
【請求項11】
当該カウンタ値を更新するか否かを決定することは、
検出された当該事象による当該カウンタへの影響が当該時間差に反比例するように設定することを含むことを特徴とする請求項10に記載の方法。
【請求項12】
当該カウンタ値を更新するか否かを決定することは、
検出された当該事象の重大度を判断し、当該重大度が直近一回の電源投入との該時間差に反比例し、且つ当該重大度に基づいて当該カウンタ値を更新するか否かを決定することを含むことを特徴とする請求項10に記載の方法。
【請求項13】
当該カウンタ値を更新するか否かを決定することは、
検出されなかった一つ又は複数の事象の予定の持続時間が満了した場合、事象許容度を更新し、当該事象許容度に基づいて当該カウンタ値を更新するかどうかを決定することを含むことを特徴とする請求項10に記載の方法。
【請求項14】
当該カウンタ値を更新するか否かを決定することは、
当該時間差に反比例する確率で当該カウンタ値を更新するかどうかを判断することを含むことを特徴とする請求項10に記載の方法。
【請求項15】
当該カウンタ値を更新するか否かを決定することは、
更新値に基づいて当該カウンタ値の更新を決定することを含み、当該更新値の大きさは、当該時間差に反比例することを特徴とする請求項10に記載の方法。
【請求項16】
当該カウンタ値を更新するか否かを決定することは、
直近一回の当該電源投入との当該時間差が予定の持続時間を超えた場合、当該保護回路は、予定の時間遅延まで遅延してから当該カウンタ値の更新を開始することを含むことを特徴とする請求項10に記載の方法。
【請求項17】
当該カウンタ値を保持することは、
経過時間関数であるカウンタ値に逆更新を適用することを含み、当該逆更新は、検出された事象に応答して適用される更新とは逆方向であることを特徴とする請求項10に記載の方法。
【請求項18】
当該カウンタ値を保持することは、
悪意ある攻撃しようとする試みの該積算量を示すための第一のカウンタ値を追加することと、
経過時間関数である第二のカウンタ値を少しずつ増加させることと、
当該第一のカウンタ値から該第二のカウンタ値を差し引いて当該カウンタ値を求めることと、を含むことを特徴とする請求項10に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子回路におけるデータセキュリティに関し、特に、感度の変更可能なセキュリティ対策に関する。
【背景技術】
【0002】
現在、電子装置を破壊するために、例えば、装置内に格納された機密情報にアクセスするなど様々な技術が開発されている。例えば、バイパス攻撃は、装置からの電気信号及び/又は電磁放射を非侵襲的に測定することによって情報を抽出しようとする。他の例として、フォールトインジェクション攻撃は通常、攻撃者を支援することで回路又はコンポーネントの論理状態及び挙動を変化させることに係る。フォールトインジェクション攻撃は、例えば、信号線への物理的接触、高出力のレーザ又は電磁パルスの印加、或いは電源や他の外部のインタフェースでの故障の発生によって発動され得る。
【発明の概要】
【0003】
本発明の一実施例は、機能回路と、保護回路とを備える集積回路(IC)を提供する。上記保護回路は、集積回路の動作周期の全体にわたって、機能回路への悪意ある攻撃しようとする試みの積算量であるカウンタ値を保持して、機能回路に悪意ある攻撃が発生した事象を検出し、検出された事象と集積回路における直近一回の電源投入との間の時間差に基づいて、検出された事象に応答してカウンタ値の更新を決定し、上記更新に基づいてカウンタ値を更新し、そして、カウンタ値が閾値を超えたことに応答して集積回路の少なくとも一部を無効にするように配置される。
【0004】
本発明の一実施例によれば、上記保護回路は、上記更新を決定し、検出された事象によるカウンタ値への影響が該事象と直近一回の電源投入との時間差に反比例するように配置される。本発明の一実施例によれば、上記保護回路は、検出された事象の重大度を判断するように配置され、上記重大度が時間差に反比例し、上記重大度に基づいて当該カウンタ値を更新するか否かを決定する。
【0005】
本発明の一実施例によれば、上記保護回路は、一つ又は複数の事象が検出されなかった予定の持続時間が満了した場合、事象許容度を更新し、上記事象許容度に基づいて上記更新を決定するように配置される。本発明の一実施例によれば、上記保護回路は、当該事象と直近一回の該電源投入との時間差に反比例する確率でカウンタ値を更新するかどうかを決定するように配置される。
【0006】
本発明の一実施例によれば、上記保護回路は、更新値に基づいてカウンタ値の更新を決定するように配置され、その中、更新値の大きさは、直近一回の電源投入との時間差に反比例する。本発明の一実施例によれば、上記保護回路は、直近一回の電源投入との時間差が予定の持続時間を超えた場合、上記更新を予定の時間遅延まで遅延するように配置される。
【0007】
本発明の一実施例によれば、上記保護回路は、経過時間に基づいてカウンタ値に逆更新(opposite update)を適用するように更に配置され、その中、上記逆更新は、検出された事象に応答して適用される更新とは逆方向である。本発明の一実施例によれば、上記保護回路は、カウンタ値を保持するように配置され、悪意ある攻撃しようとする試みの積算量を示すための第一のカウンタ値を追加し、経過時間関数である第二のカウンタ値を少しずつ増加させ、第一のカウンタ値から該第二のカウンタ値を差し引くことで当該カウンタ値を求める。
【0008】
本発明の一実施例によれば、集積回路(IC)を保護するための方法を更に提供する。上記方法は、集積回路の動作周期の全体にわたって、該機能回路への悪意ある攻撃しようとする試みの積算量であるカウンタ値を保持すること、機能回路に悪意ある攻撃が発生した事象を検出すること、検出された事象と集積回路における直近一回の電源投入との間の時間差に基づいて、検出された事象に応答してカウンタ値の更新を決定し、上記更新に基づいてカウンタ値を更新すること、カウンタ値が閾値を超えたことに応答して、集積回路の少なくとも一部を無効にすることを含む。
【0009】
以下、図面を参照して実施例を詳細に説明することにより、本発明をより完全に理解することができる。
【図面の簡単な説明】
【0010】
図1図1は、本発明の一実施例によるソフトセキュリティ対策をサポートするセキュア集積回路(IC)を示すブロック図である。
図2図2は、本発明の一実施例によるセキュア集積回路においてソフトセキュリティ対策を適用するための方法を示すフローチャートである。
【発明を実施するための形態】
【0011】
本発明の実施例は、悪意ある攻撃から電子回路を保護するための改善されたセキュリティ対策を提供する。
【0012】
本発明の一実施例によれば、セキュア集積回路(IC)は、機能回路と、保護回路とを備え、当該保護回路は、悪意ある攻撃から機能回路を保護するように配置される。保護回路は、機能回路への悪意ある攻撃が疑われる事象を検出し、応答として応答動作を開始する。
【0013】
いくつかの応答手段は、「終了カウンタ(Death counter)」という一つのカウンタ値を増加させることに関し、上記カウンタ値は、集積回路の動作周期の全体にわたって機能回路に対して悪意ある攻撃しょうとする試みを追跡する積算量である。終了カウンタが所定の閾値を超えると、集積回路の少なくとも一部は永続的に無効にされる。終了カウンタメカニズムは、攻撃者による集積回路に対する大量の繰り返し攻撃を防止することができ、つまり、集積回路が無効にされる前に攻撃しようとする試みの回数を制限する。
【0014】
非常に効果的であるが、終了カウンタメカニズムは不可逆であるため、慎重に使用する必要がある。特に、無害な異常事象を攻撃として誤解して終止カウンタを増加させてしまう可能性をできるだけ低減させる。
【0015】
本発明の一実施例によれば、保護回路は、一定期間内に検出された事象に対する終了カウンタの許容度を変更することによって、誤った終了カウンタの更新の確率を低減させる。実際、集積回路の動作周期におけるいくつかの時間で特に攻撃を受けやすいが、他の時間では無害な異常事象である可能性が高くなる。例えば、一般的な操作方法の一つは、連続する攻撃しようとする試みの間に集積回路の電源をオフ及びオンにするものであるため、集積回路の電源投入(power-up)直後の時間帯は、攻撃を受けやすいものと見なされる。集積回路の電源オフサイクルの典型的な特徴は、攻撃が発生する可能性が低い一方で、無害な異常事象が発生する可能性が高いことである。
【0016】
従って、本発明の一実施例によれば、事象が検出されると、保護回路は、検出された事象と集積回路における直近一回の電源投入との間の時間差に基づいて、終了カウンタ値を更新するかどうか、またどのように更新するかを決定する。保護回路は、通常、重大度が検出された事象によるものと考えられ、上記重大度が事象と直近一回の電源投入との間の時間差に反比例する。このようにして、電源投入直後に発生する事象が終了カウンタに大きな影響を与え、電源投入後の長時間(例えば、電源がオフとなっている期間)に発生する事象が終了カウンタに与える影響は小さくなる。
【0017】
保護回路は、検出された事象によるカウンタ更新への影響を様々な方法で調整することができる。本発明の一実施例によれば、保護回路は、終了カウンタの更新される確率を変更し、例えば、電源投入してから時間が経過するにつれて確率を減少させる。他の実施例では、保護回路は、更新値の大きさを変更する(すなわち、ステップを更新するか、又はカウンタ値に加算又は減算される値を毎回更新する)。例えば、保護回路は、時間が経過するにつれて更新の大きさを減少させることができる。
【0018】
他の実施例では、直近一回の電源投入から経過した時間がある予定の持続時間を超えた場合、保護回路は、上述の更新を予定の遅延だけ遅延させる。更新を遅延させることは、電源オフの期間内に発生する事象に役立つ。この場合、集積回路が遅延の満了になる前に電源をオフにし、終了カウンタが更新されない。
【0019】
本発明は、時間に関わる様々な更新手段及び開示された技術の他の実施例を説明する。本発明の一実施例によれば、保護回路は、事象の許容度(EVTL)と呼ばれる変数を維持する。保護回路は、事象の許容度のそれぞれに、どのように事象に基づいて終了カウンタを更新するかを定義する(存在する場合)。事象がない場合、保護回路は、予定のタイムアウト時間に基づいて、事象許容度を徐々に増加させていく。従って、事象に対する許容度は、電源投入後に時間の関数として形成される。
【0020】
システムの説明
【0021】
図1は、本発明の一実施例によるソフトセキュリティ対策をサポートするセキュア集積回路(IC)20を示すブロック図である。セキュア集積回路20は、例えば、暗号化操作を実行するためのセキュアプロセッサ、敏感メッセージを記憶するためのセキュアメモリ、又は任意の他の適切なタイプの集積回路を含むことができる。
【0022】
セキュア集積回路20は、機能回路24を備える。「機能回路」という用語は、例えば、様々な処理及び/又はデータ記憶操作などの、セキュア集積回路20の特定の機能を実行するように構成された回路を指す。なお、セキュア集積回路20は、機能回路24を悪意ある攻撃から保護するように構成された保護回路28を備える。開示された技術は、例えばフォールトインジェクション攻撃などの任意の適切なタイプの攻撃を防止するために使用可能である。
【0023】
図1の実施例によれば、保護回路28は、保護ロジック36を備える。上記の保護ロジック36は、一つ又は複数の攻撃検出器32から検出された事象の指示を受信して、応答として適切な応答動作を開始する。本発明の実施例では、必須ではないが、一つ又は複数の攻撃検出器32は、機能回路24内又はその近傍に物理的に位置し、且つ、一つ又は複数の攻撃検出器32は、保護回路28内又はその近傍に物理的に位置する。物理的位置にかかわらず、攻撃検出器32は、本発明では、保護回路28の一部として見なされる。
【0024】
攻撃検出器は、例えば、信号、周波数、又は電源ラインでの故障、ある時点での予想意外の論理値又は成り立たない論理値、異なる信号、温度が高すぎる又は低すぎる等による論理値の間の差異などの、任意の適切なタイプの事象を検出するように構成され得る。いかなるこのような事象は攻撃の存在を示す可能性があるが、一方で、無害である可能性もある。
【0025】
様々な実施例では、保護ロジック36は、攻撃であると疑われる検出された事象に応答して様々な応答動作を開始し得る。本発明の実施例では、保護回路28は、「終了カウンタ」と呼ばれる、検出された事象に応答して保護ロジック36によって更新されるカウンタ40を備える。
【0026】
終了カウンタ40は、セキュア集積回路20の動作周期の全体にわたって機能回路24に悪意ある攻撃しようとする試みの積算量を追跡する。通常、カウンタ40は、不揮発性メモリ(例えば、OTP、フラッシュ、EEPROM、又は他の適切なタイプのメモリ)内に保持され、セキュア集積回路20の生成又は最終テスト期間中にある初期値に初期化される。セキュア集積回路20の寿命の間において、保護ロジック36は、検出された事象に応答してカウンタ40を更新する。終了カウンタ40が所定の閾値を超えると、保護ロジック36は、セキュア集積回路20の少なくとも一部を永続的に無効にする。この時、セキュア集積回路20は、作動できず、他の攻撃を受けることができない。
【0027】
以下の説明では、終了カウンタ40が0に初期化された後、セキュア集積回路20の動作寿命にわたって少しずつ増加していくと仮定する。この規則によれば、高いカウンタ値は、高い敵対的な攻撃の累積量に対応する。しかしながら、この規則は、単に例として使用される。或いは、任意の他の更新規則を使用することができる。例えば、終了カウンタがある正の値に初期化された後、集積回路の動作周期の全体にわたって少しずつ減少していくのは可能であり、この場合、低いカウンタ値は、高い敵対的な攻撃の累積量に対応する。
【0028】
終了カウンタメカニズムに加えて、保護ロジック36は、例えば集積回路の一部又は全体の無効化、敏感メッセージの削除、又はアラームのトリガなどの、任意の他の適切な応答動作を開始することができる。
【0029】
図1に示すセキュア集積回路20及びその要素の構成は例示的なものであり、概念的に明確にするために説明したものに過ぎない。他の実施例では、任意の他の適切な構成を使用可能である。様々な実施例では、セキュア集積回路20及びその要素を、例えば、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)などの、任意の適切なハードウェアを使用して実現することができる。
【0030】
本発明の一実施例によれば、保護回路28の機能の一部又はすべては、汎用プロセッサによって実行することができ、上記の汎用プロセッサは、本明細書に記載の機能を実行するように、ソフトウェアでプログラム化され得る。上記ソフトウェアは、例えば、ネットワークを介してプロセッサに電子的にダウンロードすることができ、或いは、代替的に又は付加的に、磁気、光学、又は電子メモリなどの非一時的有形媒体に提供及び/又は記憶することができる。
【0031】
電源投入後、時間とともに変化する終了カウンタ更新は緩和される。
【0032】
理解できるのは、「終了カウンタ」メカニズムは不可逆であり、そしてセキュア集積回路20又はその一部の永続的な無効化をもたらす。従って、本当の指示的攻撃の事象と、異常だが無害な事象とを区別して、前者のみに応答して終了カウンタを更新することが重要である。言い換えれば、無害な異常事象に応答して保護ロジック36によって終了カウンタ40が更新される可能性を低減させることが重要である。
【0033】
本発明の一実施例によれば、保護ロジック36は、検出された事象に対して異なる時間に異なる許容度を設定することによって、誤った終了カウンタ更新の確率を低減させる。特に、本発明の一実施例によれば、保護ロジック36は、電源投入後の非常に短い時間内に攻撃しょうとする試みが発生する可能性があると仮定する場合、比較的低い許容限度が設定される(つまり、高い敏感事象に対して終了カウンタ40を更新する)。電源投入してから時間が経過するにつれて事象が存在しない場合、保護ロジック36は、事象に対する許容度を徐々に増加させる(つまり、比較的低い敏感の事象に対して終了カウンタ40を更新する)。
【0034】
上記のメカニズムは、電源オフ期間で事象に対する敏感性を低減させるのに特に有用である。電源オフ期間は通常、無害な異常事象の発生を特徴とするため、電力オフ期間に、特に、誤った終了カウンタの更新を引き起こしやすくなる。
【0035】
通常、本発明の一実施例によれば、事象が検出されたとき(例えば、攻撃検出器32からの指示が受信されたとき)、保護ロジック36は、検出された事象とセキュア集積回路20内の直近一回の電源投入との間の時間差に基づいて、終了カウンタ40の更新を決定する。保護ロジック36は、決定された上記更新に基づいてカウンタ値を更新する。
【0036】
本発明において、上記「更新を決定する」とは、終了カウンタ更新へ事象の影響を調整可能な任意の決定を意味する。例えば、保護ロジック36は、終了カウンタを更新するか否か、どれだけ更新するか、どのような可能性で更新するか、どのような遅延で更新するかなどを決定することができる。いくつかの場合では、全く更新を行わないことが決定される。
【0037】
図2は、本発明の一実施例によるセキュア集積回路においてソフトセキュリティ対策を適用するための方法を示すフローチャートである。図2の方法は、電源投入してからの時間に依存して、終了カウンタ40の更新への検出された事象の影響を調整するいくつかの方法を示している。
【0038】
保護ロジック36は、電源投入時に事象許容限度レベル(EVTL)を初期化し、事象が検出されなかった予定の持続時間が満了した後にEVTLを徐々に増加させていく。終了カウンタ40はEVTLに基づいて更新される。
【0039】
保護ロジック36は、直近一回の電源投入からの時間差に反比例する確率で終了カウンタ40を更新する。(例えば、0と1の間で均一に分布するランダム数を生成し、確率pで終了カウンタを更新してもよい。ランダム数がpより小さい場合、終了カウンタを更新する)
【0040】
通常、電源投入してから長時間にわたて比較的高いEVTLでは、保護ロジック36は、事象が検出された後、意図的に予定の遅延だけ更新を遅延させる。電源オフ期間に事象が発生した場合、集積回路は通常、遅延の満了前に電源をオフにし、終了カウンタを更新しない。
【0041】
図2の方法は、電源投入時にEVTL初期化ステップ50において保護ロジック36はEVTLを0に初期化することから開始する。
【0042】
EVTL=0と同時に、EVTL=0時の動作ステップ54において、いったん事象が検出されたとき、保護ロジック36は、50%の確率で終了カウンタ40を少しずつ増加させ、次回の電源投入するまでセキュア集積回路20を停止する。
【0043】
事象が検出されずに10分経過した後、EVTL=0の満了ステップ58において、保護ロジック36は事象許容限度レベルをEVTL=1に増加させる。
【0044】
EVTL=1と同時に、EVTL=1の操作ステップ62において、事象が検出された後、保護ロジック36は、25%の確率で終了カウンタ40を少しずつ増加させ、次回の電源投入するまでセキュア集積回路20を停止する。
【0045】
事象が検出されずに10分経過した後、EVTL=1の満了ステップ64において、保護ロジック36は事象許容限度レベルをEVTL=2に増加させる。
【0046】
EVTL=2と同時に、EVTL=2の操作ステップ70において、いったん事象が検出されたとき、保護ロジック36は、50%の確率で終了カウンタ40を少しずつ増加させて、100ミリ秒の遅延に追従して、次回の電源投入するまでセキュア集積回路20を停止する。
【0047】
事象が検出されずに1時間経過した後、EVTL=2の満了ステップ74において、保護ロジック36は事象許容限度レベルをEVTL=3に増加させる。
【0048】
EVTL=3と同時に、EVTL=3の操作ステップ78において、事象が検出されたことに応じて、保護ロジック36は、終了カウンタ40の値を少しずつ増加させず、次回の電源投入するまでセキュア集積回路20を停止する。
【0049】
事象が検出されずに5時間経過した後、EVTL=3の満了ステップ82において、保護ロジック36は、事象許容限度レベルをEVTL=4に増加させる。
【0050】
EVTL=4と同時に、EVTL=4の操作ステップ86において、事象が検出されたことに応じて、保護ロジック36は、終了カウンタ40を増加させず、事象許容度をEVTL=3に低減させる。そして、上述した方法は上記したEVTL=3操作ステップ78に進む。
【0051】
図2の論理及び値(例えば、終了カウンタを増加させる確率、及び事象許容度レベルを増加させるための時間帯)は、概念を明確にする目的で描かれた例に過ぎない。代替の実施例では、任意の他の適切な論理及び値を使用することができる。
【0052】
本発明の一実施例によれば、上述のカウンタ更新に加えて、保護ロジック36は、経過時間関数としての逆更新を終了カウンタ40に適用される。逆更新は、検出された事象に応答して適用される更新と逆方向(極性)である。例えば、検出された事象に応答して終了カウンタが増加する場合、保護ロジックは、時間の経過とともに終了カウンタを徐々に減少させることができる。
【0053】
本発明の一実施例によれば、保護ロジック36は、終了カウンタ40を少しずつ低減させることに代わりに、「事象カウンタ」及び「回復カウンタ」と呼ばれる二つのカウンタを維持する。保護ロジックは、検出された事象に応答して事象カウンタを少しずつ増加させ、時間の経過とともに回復カウンタを徐々に少しずつ増加させる。対策を開始するために、終了カウンタの実際の値は、事象カウンタ値から回復カウンタ値を差し引いたものである。このように、回復効果は、カウンタを増加させることによってのみ達成できる。いくつかの場合では、「事象カウンタ」及び「回復カウンタ」は、一次元カウンタとして実現される。例えば、上記の実現は、カウンタがOTPで実現され、一方向にのみビット値を変更できる(例えば、論理0から論理1まで、その逆ではできない)場合に有用である。本発明の一実施例によれば、保護ロジックが終了カウント(事象カウンタから回復カウンタを差し引いた)を最小値である0に制限することにより、チップの寿命期間に「攻撃証拠」が生成されず、過去の攻撃のみは回復可能である。
【0054】
本発明の一実施例によれば、保護ロジック36は、一つ又は複数の攻撃検出器32からの指示の組み合わせを単一事象と見なして、終了カウンタを更新することができる。例えば、一つの検出器32によって検出された故障、又は別の検出器32によって検出された「ほぼタイミング違反(almost timing violation)」は、それぞれ個別に考慮される場合、事象と見なされない可能性がある。例えば、ある予定の時間近接度内に二つの指示が一緒に受信された場合、保護ロジック36は、終了カウンタを更新する目的で、それらを一括して検出された事象と見なすことができる。
【0055】
上述の実施例は、例としてのみ引用されており、本発明は、上記で具体的に示され、記載されたものに限定されないことが理解される。逆に、本発明の範囲は、上記の様々な特徴のコンビネーションおよびサブコンビネーション、当業者が前述の説明を読んだ後に想到できた、従来技術には開示されない変更およびその変形を含む。参照により本特許出願に組み込まれる文書は、本出願の構成部分と見なされるものとし、本明細書の明示的又は暗黙的定義と矛盾する形でこれらの組み込まれた文書に定義されている用語の範囲を除いて、本明細書での定義を考慮する必要がある。
【符号の説明】
【0056】
20:セキュア集積回路
24:機能回路
28:保護回路
32:攻撃検出器
36:保護ロジック
40:終了カウンタ
50-86:ステップ
図1
図2