(57)【要約】  本発明は、コードの実行に関連して動的対抗策を実行するセキュアプラットフォーム（ＳＰ）に関する。セキュアプラットフォーム（ＳＰ）は少なくとも、セキュリティセンサ（ＳＳ）と、対抗策コントローラ（ＣＣ）と、対抗策手段（ＣＭ）とを有する。本発明によると、対抗策コントローラ（ＣＣ）は、セキュリティセンサ（ＳＳ）の出力に応じて少なくとも二つのセンサフラグ値（ＳＦＶ）を取り得る少なくとも一つのセキュリティセンサフラグ（ＳＳＦ）と、対抗策のＮ通りのセキュリティ設定（ＳＣ）を記憶したテーブル（Ｔ）と、乱数設定値（ＲＣＶ）を生成する乱数生成器（ＲＧ）と、センサフラグ値（ＳＦＶ）及び乱数設定値（ＲＣＶ）を用いて、対抗策手段（ＣＭ）によって実行されるテーブル（Ｔ）内のセキュリティ設定（ＳＣ）を決定する決定関数（ＤＦ）とを含む。【選択図】      図１
2016524211.tif 000002
【特許請求の範囲】
【請求項１】
コードの実行に関連して動的対抗策を実行するセキュアプラットフォーム（ＳＰ）であって、前記セキュアプラットフォーム（ＳＰ）は少なくとも、セキュリティスレッドを検出可能なセキュリティセンサ（ＳＳ）と、対抗策コントローラ（ＣＣ）と、対抗策手段（ＣＭ）とを有し、前記対抗策コントローラ（ＣＣ）は、
前記セキュリティセンサ（ＳＳ）の出力に応じて少なくとも二つのセンサフラグ値（ＳＦＶ）を取り得る少なくとも一つのセキュリティセンサフラグ（ＳＳＦ）と、
前記対抗策のＮ通りのセキュリティ設定（ＳＣ）を記憶したテーブル（Ｔ）と、
乱数設定値（ＲＣＶ）を生成する乱数生成器（ＲＧ）と、
前記センサフラグ値（ＳＦＶ）及び前記乱数設定値（ＲＣＶ）を用いて、前記対抗策手段（ＣＭ）によって実行される前記テーブル（Ｔ）内のセキュリティ設定（ＳＣ）を決定する決定関数（ＤＦ）とを含む、セキュアプラットフォーム。
【請求項２】
前記セキュリティセンサフラグ（ＳＳＦ）がクリアされると、デフォルト設定が実行される、請求項１に記載のセキュアプラットフォーム（ＳＰ）。
【請求項３】
前記セキュリティセンサフラグ（ＳＳＦ）は半永続的性質を有する、請求項１又は２に記載のセキュアプラットフォーム。
【請求項４】
前記半永続的性質は、前記セキュリティセンサフラグが、セキュリティスレッドを検出しない一定数の連続的な実行の後に減少することを意味する、請求項３に記載のセキュアプラットフォーム。
【請求項５】
コードの実行に関連して動的対抗策を制御する方法であって、前記方法は、
セキュリティセンサ（ＳＳ）を監視するステップ（ＳＳＭ）と、
前記セキュリティセンサ（ＳＳ）からの出力に応じてセンサフラグ値（ＳＦＶ）を変更するステップ（ＳＦＶＭ）と、
乱数設定値（ＲＣＶ）を生成するステップ（ＲＣＶＧ）と、
前記センサフラグ値（ＳＦＶ）及び前記乱数設定値（ＲＣＶ）に応じて、Ｎ通りのセキュリティ設定（ＳＣ）を記憶したテーブル（Ｔ）から前記対抗策のセキュリティ設定（ＳＣｉ）を決定するステップ（ＳＣＤ）と、
前記セキュリティ設定（ＳＣｉ）に基づいて前記対抗策を実行するステップ（ＳＣＡ）と、を含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コードの実行に関連して動的対抗策を実行するセキュアプラットフォームに関する。より詳細には、本発明は、少なくとも、セキュリティスレッドを検出可能なセキュリティセンサと、対抗策コントローラと、対抗策手段とを有するプラットフォームに関する。より一般には、本発明は、少なくともセキュリティセンサを有するセキュアプラットフォーム上で実行する必要のある、全てのオペレーティングシステム又はコード又はハードウェア実装に関する。
本発明は、コードの実行に関連して動的対抗策を制御する方法にも関する。
【背景技術】
【０００２】
一般的に、コード実行の全体を保護するのには多大な費用を要するため、現在の実装では、セキュリティ設定はデフォルトに固定され、実行するプロセスの機密性に応じて決定される。
それは、暗号演算処理のような機密関係のコードは十分に保護されるが、コード中のその他の部分はより高い脆弱性を有することを意味する。
【０００３】
コード全体を保護する必要がある場合には、対抗策は常時有効にされ、それに伴い性能が低下する。
攻撃が検出された場合に対抗策のレベルを上げることもまた既知である。これは、コードの実行を一時的に停止すること、又はその他の何らかの既知の対抗策であってよい。しかしながら、このような方法は、対抗策の何らかの適合を可能とするものではない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、攻撃が検出されていない時に、ソフトウェア又はハードウェアの対抗策によってもたらされる性能の低下を防ぐこと、及び、攻撃が検出された時に、対抗策を最適化することである。
【課題を解決するための手段】
【０００５】
従って、本発明はセキュアプラットフォームに関し、ここにおいて対抗策コントローラは、
セキュリティセンサからの出力に応じて少なくとも二つの値を取る少なくとも一つのセキュリティセンサフラグと、
対抗策のｎ通りのセキュリティ設定を記憶したテーブルと、
乱数設定値を生成する乱数生成器と、
セキュリティセンサフラグの値及び乱数設定値を用いて、対抗策手段によって実行されるテーブル内のセキュリティ設定を決定する決定関数とを含む。
【０００６】
本発明により、セキュリティリスク又はセキュリティ警報が生じた場合にのみ、適合したセキュリティ保護が有効となる。結果として、本発明によって製品の全体の性能が向上する。本発明は、対抗策がランダムに設定されることで多様化することも可能とし、これにより攻撃者の任務がより困難なものとなる。設定テーブルのサイズは、システム及びセキュリティレベルに適合させることができる。設定テーブルは、それに伴い縮小又は拡大される。
【０００７】
特定の特徴によると、セキュリティセンサフラグがクリアされると、デフォルト設定が実行される。
この特徴により、センサフラグがクリアされた際にはセキュリティを低く保つことが可能となる。また、センサフラグがクリアされた後すぐに低いセキュリティレベルへ戻ることも可能となる。
【０００８】
有利には、セキュリティセンサフラグは半永続的性質を有する。
この特徴は、新たな検出をセンサから入力されることなく所定期間が経過すると、センサフラグがクリアされることを意味する。
これにより、セキュアプラットフォームによって、対抗策の設定を、攻撃のない通常状態への復帰に適合させることが可能となる。有利には、ハードウェアの半永続フラグがセキュリティセンサフラグを構成する。
【０００９】
特定の特徴によると、半永続性は、セキュリティセンサフラグが、セキュリティスレッドを検出しない一定数の連続的な実行の後に減少することを意味する。
ここで、半永続性の期間はイベントの数、即ち、検出のない一定数の連続的な実行である。
【００１０】
本発明は、コードの実行に関連して動的対抗策を制御する方法にも関する。本方法は、
セキュリティセンサを監視するステップと、
セキュリティセンサからの出力に応じて少なくとも一つのセキュリティセンサフラグの値を変更するステップと、
セキュリティセンサフラグの少なくとも一つの指定された値に対して乱数設定値を生成するステップと、
セキュリティセンサフラグの値及び乱数設定値に応じて、ｎ通りのセキュリティ設定を記憶したテーブルから対抗策のセキュリティ設定を決定するステップと、
セキュリティ設定に基づいて対抗策を実行するステップとを含む。
【００１１】
以降の説明及び添付の図面は、特定の例示的な態様について詳細に述べたものであり、実施形態の原理が採用され得る様々な方式のうちの幾つかを示すものである。その他の利点及び新規の特徴は、以降の詳細な説明を図面と併せて検討することで明らかになると考えられる。記載された実施形態は、これらの態様及びその同等物を全て含むよう意図されたものである。
【図面の簡単な説明】
【００１２】
【図１】本発明のセキュアプラットフォームを示す概略図。
【図２】本発明の決定関数によって規定された決定関数値に基づいた、対抗策の設定の選択を示す概略図。
【図３】本発明の方法を示すフロー図。
【発明を実施するための形態】
【００１３】
異なる図面において、同一の要素には同一の参照番号が付されている。明確性のために、本発明の理解に役立つ要素およびステップのみが図面に示されており、また以降の説明において記載される。
【００１４】
図１は、セキュリティセンサＳＳ及び対抗策手段ＣＭを含むセキュリティプラットフォームＳＰを示す概略図である。このセキュリティプラットフォームＳＰは、センサフラグ値ＳＦＶを出力することで潜在的なセキュリティリスクを示すためにセキュリティセンサＳＳによってトリガされるセキュリティセンサフラグＳＳＦを有する、対抗策コントローラＣＣもまた少なくとも含む。このセキュリティセンサフラグＳＳＦは、ハードウェア又はソフトウェアに実装することができる。
【００１５】
対抗策コントローラＣＣは、所定の数であるＮ通りのセキュリティ設定ＳＣを記憶したテーブルＴ及び乱数設定値ＲＣＶを生成する乱数生成器ＲＧも含む。この値ＲＣＶは、例えば１からＮの間の数である。乱数設定値ＲＣＶは、センサフラグ値ＳＦＶと共に決定関数ＤＦ（ＳＦＶ，ＲＣＶ）に提供される。
この決定関数ＤＦは、センサフラグ値ＳＦＶ及び乱数設定値ＲＣＶを使用して、テーブルＴ内のＮ通りの設定ＳＣの中からランダムにセキュリティ設定ＳＣを選択する。例えば、図１に示されるように、決定関数ＤＦは決定関数値ＤＦＶを算出し、この値は設定選択関数ＣＳＦへ送信される。そして、設定選択関数ＣＳＦはテーブル内の対応するセキュリティ設定ＳＣＤＦＶを選択し、対抗策手段ＣＭに対応する対抗策を実行させる。
【００１６】
図２は、決定関数値ＤＦＶに相関して選択され得るセキュリティ設定ＳＣＤＦＶを列挙したテーブルＴを示す概略図である。
各セキュリティ設定ＳＣは、有利には設定の組を含む：クロック設定、ハードウェア対抗策設定、ソフトウェア対抗策設定、電圧範囲設定、等。
【００１７】
図３は、本発明の方法を示すフロー図である。第一のステップＳＳＭでは、セキュリティセンサＳＳを監視する。一般的に、センサの出力がｎｕｌｌである（図３の「０」の場合）限りは、それ以降の動作へ進まずに監視を継続する。
センサの出力がｎｕｌｌでない場合（図３の「Ｘ」の場合）は、直ちにセキュリティフラグ値ＳＦＶが生成される。その次に、又はそれと同時に、乱数設定値ＲＣＶを生成するステップＲＣＶＧが行なわれる。
【００１８】
次に、セキュリティ設定決定ステップＳＣＤでは、この生成した値ＲＣＶ及びセキュリティフラグ値ＳＦＶを使用して、選択するセキュリティ設定ＳＣｉが決定される。この選択は、例えばテーブルＴ内で行われる。その後、選択されたセキュリティ設定ＳＣｉは、セキュリティ設定適用ステップＳＣＡにおいて適用される。
その結果、本発明では、セキュリティの問題がセキュリティセンサＳＳによって検出された場合、より良いセキュリティレベルを有する設定、即ち、デフォルト、例えばＳＣ０よりも多くの対抗策を有する設定であるが、コード実行又は所要エネルギの観点ではより低い性能を有する設定であるＮ通りの設定の中から、セキュアプラットフォームによって使用される設定がランダムに選択される。
【００１９】
セキュリティセンサＳＳが確認される度に、セキュリティの設定は変更され得る。センサフラグ値の変化に応じてセキュリティ設定が変更される際、設定の変更はセキュリティを向上するか、低下するかの２通りによって行われる。セキュリティの低下は、センサフラグ値ＳＦＶが例えばｎｕｌｌ値に戻った直後、又は、セキュリティセンサフラグＳＳＦが半永続性の場合は、センサフラグ値がデフォルトの値に戻った直後に観測される。従って、一旦セキュリティセンサフラグＳＳＦがクリアされると、デバイスは性能のために最適化されたデフォルトの設定で再び動作することが可能となる。実際に、デフォルトの設定、例えばＳＣ０は、コードの実行において最高の性能を達成するのに必要な設定を使用する。
【００２０】
本発明では、攻撃を受けた場合にのみ保護が有効となるため、より良い性能を達成することができる。機密関係のプロセスだけではなくソフトウェア全体がセキュアシステム設定からの恩恵を受けることができるため、より良いセキュリティも達成される。
上述の詳細な説明では、本発明が実施され得る特定の実施形態を例示的な方法によって示す添付図面が参照される。これらの実施形態は、当業者が本発明を実施できる程度に十分詳細に説明されるが、それ故詳細な説明は限定的な意味合いで解されるものではない。本発明の範囲は、適切に解釈された添付の特許請求の範囲、及び特許請求の範囲に該当する全ての同等物によってのみ規定される。このことは、具体的には、設定がセキュリティ対抗策設定により典型的に規定された場合、テーブルの使用がコンピュータの分野においてリストを記憶するための同等物を有することから理解されるであろう。
【図１】
2016524211.tif 000003
【図２】
2016524211.tif 000004
【図３】
2016524211.tif 000005
【国際調査報告】
2016524211.tif 000006
2016524211.tif 000007