(57)【要約】プロセッサ及びプロセッサに結合された複数の周辺機器を備えた処理システムにおいて、プロセッサのセキュア動作モードのアクセス特権が周辺機器の少なくとも所与の１つに譲渡される。所与の周辺機器は、プロセッサがセキュア動作モードにあることを示す状態情報をその周辺機器のセキュア部分に記憶するように構成される。所与の周辺機器はさらに、記憶された状態情報を利用して、セキュア動作モードにおいてプロセッサにアクセス可能であるがそれ以外の場合には周辺機器にアクセス可能でない少なくとも１つのリソースに周辺機器がアクセスすることを可能とするように構成される。処理システムは、例えば、チップ上システムからなっていてもよく、ここでプロセッサ及び周辺機器は単一の集積回路に統合される。
2011508292.tif 000002
【特許請求の範囲】
【請求項１】
処理システムにおいてアクセス特権をプロセッサから周辺機器に譲渡する方法であって、
該プロセッサがセキュア動作モードにあることを示す状態情報を該周辺機器のセキュア部分に記憶する記憶ステップ、及び
記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とする、利用ステップ
を備える方法。
【請求項２】
請求項１の方法において、前記プロセッサが自身の現在の動作モードの特権レベルを前記周辺機器に伝達する、方法。
【請求項３】
請求項２の方法において、前記周辺機器が、前記特権レベルが前記セキュア動作モードを示しているかを判断し、示している場合に前記記憶ステップを実行する、方法。
【請求項４】
請求項１の方法において、前記利用ステップがさらに、前記周辺機器が、所与のリソースへのアクセス権を取得するために当該リソースに前記記憶された状態情報を供給するステップを備える方法。
【請求項５】
請求項２の方法において、前記プロセッサが、該プロセッサと前記周辺機器の間で実行されるバス・トランザクションにおいて該プロセッサの現在の動作モードの特権レベルを該周辺機器に伝達する、方法。
【請求項６】
請求項１の方法において、前記記憶された状態情報が、前記プロセッサの非セキュア動作モードで稼働しているソフトウェアエージェントによって修正できない、方法。
【請求項７】
請求項１の方法であって、さらに、対応するタスクが完了すると前記記憶された状態情報を消去するステップであって、該タスクは該セキュア動作モードにあるプロセッサ上で稼働しているセキュア・ソフトウェアエージェントのリクエストによって実行される、ステップを含む方法。
【請求項８】
請求項１の方法のステップを、実行される時に、実施する機械実行可能なインストラクションを符号化した機械可読記憶媒体。
【請求項９】
プロセッサから譲受アクセス特権を受信するよう構成された周辺機器を備える装置であって、該周辺機器が、
該プロセッサがセキュア動作モードにあることを示す状態情報を記憶するためのセキュアメモリ、及び
該セキュアメモリに結合され、記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とするよう構成された処理回路
を備えた装置。
【請求項１０】
処理システムであって、
プロセッサ、及び
該プロセッサに結合された複数の周辺機器
を備え、
該周辺機器の少なくとも所与の１つが、該プロセッサがセキュア動作モードにあることを示す状態情報を当該周辺機器のセキュア部分に記憶し、記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とするように構成された、処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概略として処理システムに関し、より具体的にはそのシステム内の周辺機器及び他のリソースへの許可なきアクセスに対するセキュリティを提供するための技術に関する。
【背景技術】
【０００２】
コンピュータ又は他の処理システムは、一般にプロセッサ及び多数の周辺機器を備える。プロセッサ及びその関連周辺機器は独立したシステム部材となることも、単一の集積回路に統合されることもある。後者のタイプの構成はチップ上システム（ＳＯＣ）とも云われる。周辺機器は、例示として、プロセッサの要求で指定タスクを実行するよう構成された専用のハードウェアとしても実施され得る。これらの周辺機器は通常、プロセッサ上で稼働するソフトウェアによって制御される。このソフトウェアの特定の部分が、ここではソフトウェアエージェントと云われ、要求されたタスクの詳細を指定する構成情報を周辺機器に書き込む。
【０００３】
所定のプロセッサのアーキテクチャによってプロセッサがセキュア（セキュリティ上の安全が確保された）モードで動作することが可能となる。セキュアモードで動作するとき、プロセッサは一般に、全ての周辺機器又は他のシステムリソースに制限なくアクセスすることができる。セキュア動作モードは通常、プロセッサ上で稼働し、既に照合されて信用があり正しいと証明された高特権のソフトウェアエージェントの限定的なセットによる使用のために予約されている。低特権又は特権のないソフトウェアエージェントもプロセッサ上で稼働することが許可されているが、セキュア動作モードを使用することはできない。これらの照合されていないソフトウェアエージェントは非セキュアモードで稼働される。小さいサブセットのソフトウェアエージェントに対してセキュア動作モードの使用を制限することによってソフトウェアプログラムコード照合に関するコストを低減でき、また、照合されないソフトウェアエージェントがシステム全体のセキュリティを揺るがさないことを保障する。
【０００４】
上記のタイプの従来的な処理システムで起こる問題は、プロセッサ以外のシステム要素が処理システム内のセキュア情報へのアクセス権を有するということである。例えば、周辺機器は、プロセッサの要求における直接メモリアクセス（ＤＭＡ）、暗号化及び割込み制御に関するタスクのような種々のタスク中にセキュア情報へのアクセス権を取得することができる。タスクの実行を要求したプロセッサはそれ自体はセキュアモードで動作できるが、対応する周辺機器はセキュア動作モードを有していないことがある。結果として、システムのセキュリティは、セキュア・ソフトウェアエージェントに対してタスクを実行する同じ周辺機器へのアクセス権を有する非セキュア・ソフトウェアエージェントを介した攻撃には脆弱なものとなる。
【発明の概要】
【課題を解決するための手段】
【０００５】
本発明の実施例は、プロセッサ及び多数の関連周辺機器を含む処理システムにおいて、セキュア動作モードのアクセス特権のプロセッサから１以上の周辺機器に譲渡するためのメカニズムを提供することによって、強化されたセキュリティを提供する。
【０００６】
本発明の一側面によると、周辺機器のうちの少なくとも１つは、プロセッサがセキュア動作モードにあることを示す状態情報をその周辺機器のセキュア部分に記憶するように構成される。所与の周辺機器はさらに、記憶された状態情報を利用して、セキュア動作モードにおいてプロセッサにアクセス可能であるがそれ以外の場合には周辺機器にアクセス可能でない少なくとも１つのリソースに周辺機器がアクセスすることを可能とするように構成される。
【０００７】
例示の実施例では、プロセッサは自身の現在の動作モードの特権レベルを、プロセッサと周辺機器の間で実行されるバス・トランザクションにおいて周辺機器に伝達する。周辺機器は、伝達された特権レベルを利用して、周辺機器と所与のリソースの間で実行されるバス・トランザクションにおいて所与のリソースにアクセスする。所与のリソースは、例えば、処理システムの周辺機器のうちの他の周辺機器となり得る。プロセッサによって譲渡された周辺機器の特権レベルを示す記憶された状態情報は、プロセッサの非セキュア動作モードで稼働しているソフトウェアエージェントによっては修正できない。しかし、譲受アクセス特権レベルを示す記憶された状態情報は対応のタスクが完了すると消去することができ、ここで、タスクはセキュア動作モードで稼働しているセキュア・ソフトウェアエージェントの要求に応じて周辺機器によって実行される。
【０００８】
実施例によってセキュアプロセッサ動作モードのアクセス特権が、制御された態様で周辺機器に譲渡されることが可能となり、それにより、さもなければ処理システムで起こり得る更なるセキュリティ上の危険をなくすことができる。譲渡されたアクセス特権が、非セキュア・ソフトウェアエージェントによって変更できないセキュア状態情報の形式で周辺機器によって保持される。さらに、所与の周辺機器は記憶された状態情報を利用して、プロセッサの譲受アクセス特権がなければアクセスすることができない他のシステムリソースにアクセスすることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は本発明が実施される処理システムの実施例を示す。
【図２】図２は図１のシステムにおいてセキュア動作モードのアクセス特権をプロセッサから周辺機器に譲渡するための処理のフロー図である。
【図３】図３は図１のシステムにおける図２の処理の１つの可能な実施を示す図である。
【図４】図４は図１のシステムのプロセッサ及び周辺要素の１つの可能な実施の詳細図である。
【発明を実施するための形態】
【００１０】
本発明が処理システム及び関連のアクセス特権譲渡技術の実施例との関連でここに開示される。しかし、発明は特定の処理システム及び記載される技術での使用に限定されず、そのシステムの周辺機器に強化されたセキュリティを提供することが望まれるあらゆるタイプの処理システムアプリケーションに対して、より一般的に適用可能であると解されるべきである。
【００１１】
図１は処理システム１００の実施例を示す。システム１００は、例えば、コンピュータ又はＳＯＣを表すものであり、周辺機器１０４−１、１０４−２、・・・１０４−Ｎにバス１０６を介して通信するプロセッサ１０２を含む。周辺機器の具体的な数Ｎは任意であり、システム間で異なり得る。周辺機器は、例えば、プロセッサ上で稼働して特定の要求タスクを実行するソフトウェアエージェントによって構成される専用ハードウェアであればよい。この実施例では、周辺機器の１以上は、詳細を後述するように、例えば、暗号化エンジン、ＤＭＡエンジン、又は割込みコントローラを備えることができる。周辺機器１０４の１以上は、１以上のソフトウェアエージェントを備えるソフトウェアプログラムを周辺機器が実行することができるように、各々内部プロセッサを備えていてもよい。
【００１２】
単一の個別のプロセッサのみが図１に図示されるが、他の実施例はそのようなプロセッサを複数含んでいてもよく、その各々がバス１０６に結合されて周辺機器１０４の少なくともサブセットと通信する。
【００１３】
処理システム１００は、図に明示しないがコンピュータ、ＳＯＣ又は他の処理システムの従来の実施に一般的に含まれる他の要素を更に含むことができる。そのような従来の要素は当業者にはよく理解されているものであり、ここで詳細には説明しない。
【００１４】
システム１００の少なくとも１つの周辺機器１０４はプロセッサ１０２から譲渡されたアクセス特権を受信するように構成される。この周辺機器は一般に、セキュア（セキュリティ上の安全が確保された）動作モードにあるプロセッサを示す状態情報を記憶し、記憶された状態情報を利用して周辺機器に、セキュア動作モードでプロセッサにアクセス可能であるがそれ以外の場合には周辺機器にアクセスできない少なくとも１つのリソースにアクセスすることを可能とする回路を処理するためのセキュアメモリを備える。譲渡されたアクセス特権を用いてアクセスされるリソースは、例えば、周辺機器１０４のうちの他の周辺機器、又はより一般的にはシステム１００のアクセス制御されるあらゆるリソースとなり得る。
【００１５】
図２は、図１において、セキュア動作モードのアクセス特権をプロセッサ１０２から所与の周辺機器１０４−ｉ（ｉ＝１、２、・・・Ｎ）に譲渡するための処理の一実施例を示す。この実施例のプロセスはステップ２００から２０８を含む。
【００１６】
ステップ２００において、プロセッサ２００はその現在の動作モードの特権レベルを周辺機器１０４−ｉに伝達する。プロセッサは、それ以外の場合にプロセッサと周辺機器の間のバス１０６によって実行される従来のバス・トランザクションにおいてその現在の動作モードの特権レベルを周辺機器に伝達する。そのような所与のバス・トランザクションは直接的な態様で修正されることができ、プロセッサの現在の動作モードを示す情報が周辺機器に伝達されることを可能とする。この情報は何らかの特定のフォーマットを採るが、プロセッサの動作モードを高い信頼性でかつ安全に示すことだけはできる必要である。例示として、シングルビット又はマルチビットの表示が使用され得る。本実施例では、情報は多数の可能な動作モードの中でプロセッサが現在どの動作モードにあるのかを示す。従って、所定のバス・トランザクションが或るモードで実行され、他のバス・トランザクションが他のモードで実行される。しかし、発明は動作モードの何らかの具体的な数又はタイプに限定されない。
【００１７】
ステップ２０２において、周辺機器１０４−ｉは伝達された特権レベルがプロセッサ１０２のセキュア動作モードを示すかを判断する。本実施例におけるこの判断は、その現在の動作モードの特権レベルを示すプロセッサによって伝達された情報の解釈に基づく。従って、判断は２以上の動作モードのうちプロセッサが現在どの動作モードにあるのかを、伝達された特権レベルに基づいて、セキュア動作モードを示している第１の可能な特権レベル及び非セキュア動作モードを示している第２の可能な特権レベルによって判断することを含む。多数の異なる動作モードの各々に関連して複数の特権レベルがあってもよい。例えば、所与のセキュア動作モードはそれに関連する２以上の異なる特権レベルを含んでいてもよい。
【００１８】
ステップ２０２で周辺機器１０４−ｉがプロセッサは現在セキュア動作モードにあると判断した場合、処理はステップ２０４に移行する。それ以外の場合、処理はステップ２０４及び２０６を迂回してステップ２０８に移行する。ステップ２０２における判断はプロセッサ１０２の種々の動作モードに関連する特定の特権レベルの予め決定された知識に基づいていてもよく、或いは、プロセッサによって伝達された動作モード識別子又は他の情報の解釈に基づいていてもよい。そのような、それによってセキュア動作モードの有無が判断されるあらゆる伝達情報が、ここで使用される用語「特権レベル」の広義の範囲内にあるものとみなされる。従って、伝達された特権レベルは、例えば、プロセッサのセキュア動作モードに関連するものとして知得される多数の特権レベルの１つのインジケータ、又はプロセッサのセキュア動作モードの明示的な識別子であればよい。
【００１９】
ステップ２０４において、周辺機器１０４−ｉはプロセッサ１０２のセキュア動作モードの特権レベルを指定する状態情報を記憶する。記憶された状態情報は概略として、プロセッサがそのセキュア動作モードにあることを示す。この状態情報の安全な記憶は概略として、そのような情報を周辺機器のセキュア部分に記憶することを含む。例えば、周辺機器は、それぞれプライベート部分及びパブリック部分とも云われるセキュア部分と非セキュア部分に区分けされることができ、状態情報は周辺機器のセキュア即ちプライベート部分に記憶される。このようなセキュア即ちプライベート部分は、例えば、メモリ又は周辺機器の他の部材の、暗号化され或いはアクセス制御された部分であればよい。
【００２０】
ステップ２０６において、周辺機器１０４−ｉは記憶された状態情報を利用して、セキュア動作モードでプロセッサ１０２にアクセス可能であるがそれ以外の場合には周辺機器にアクセス可能でない少なくとも１つのリソースにアクセスする。リソースは、例えば、システム１００の周辺機器１０４のうちの他の周辺機器であってもよいし、システムの他の何らかのアクセス制御されたリソースであってもよい。従って、周辺機器１０４−ｉは、プロセッサ１０２にそのセキュア動作モードでアクセス可能な任意の周辺機器又は他のリソースにアクセスすることが許可される。１つの代替例として、周辺機器は、所与のリソースへのアクセス権を取得するために所与のリソースに供給される他の情報を引き出すために、記憶された状態情報を処理するようにしてもよい。アクセスされるリソースがシステム１００の周辺機器１０４のうちの他の周辺機器となるような実施例では、周辺機器１０４−ｉは記憶された状態情報を利用して、その２つの周辺機器間で実行されるバス・トランザクションにおいて他の周辺機器にアクセスするようにしてもよい。
【００２１】
ステップ２０８において、周辺機器１０４−ｉはリソースへの強化されたアクセス権を有していない。従って、例えば、周辺機器は、通常はプロセッサ１０２からのアクセス特権の譲渡がなくてもアクセスすることができる周辺機器又は他のリソースにアクセスできるにすぎない。従って、ステップ２０８は、１以上の他の周辺機器又はリソースが周辺機器１０４−ｉによるアクセス試行を拒否すること、又は周辺機器１０４−ｉが自身が充分なアクセス特権を有していないことを知ってそのようなアクセス試行を控えることを関与させることができる。
【００２２】
１以上のリソースアクセスに対するステップ２０６又はステップ２０８の完了後の処理は、プロセッサ１０２が現在の動作モードにおける何らかの変化を伝達することを可能とするために、ステップ２００に戻る。そのような動作モードの変化は、例えば、プロセッサ上で稼働している異なるソフトウェアエージェントが周辺機器１０４−ｉによるタスクの実行を要求すると発生することになる。前述したように、プロセッサ上で稼働する所定のソフトウェアエージェントはプロセッサのセキュア動作モードで動作するセキュアエージェントであるが、他はプロセッサの非セキュア動作モードで動作する非セキュア・ソフトウェアエージェントである。従って、プロセッサの動作モードは通常、どのタイプのソフトウェアエージェントが現在動作しているかに依存して変化し、例えば、バス・トランザクション間で変化し得る。従って処理ステップ２００から２０６又は２００、２０２及び２０８は、異なるバス・トランザクションに対して、そのようなトランザクションを行うときのプロセッサの動作モードに依存して反復される。
【００２３】
特定の周辺機器１０４−ｉに対して図２に示す処理は、システム１００の他の周辺機器１０４について反復することができる。例えば、プロセッサ１０２は、複数の周辺機器が譲受アクセス特権を同時に有するように、セキュア動作モードのアクセス特権を周辺機器の２以上に譲渡することができる。
【００２４】
図２に示す具体的処理ステップは発明の要件ではなく、代替の実施例はプロセッサセキュア動作モードのアクセス特権を周辺機器に譲渡するための他の動作を利用できることが分かるはずである。
【００２５】
図３は図１のシステム１００における図２の処理の１つの可能な実施例を示す。この実施例では、プロセッサ１０２は特定の周辺機器１０４の特定の１つとバス１０６を介して再度通信する。前述のように、特定の周辺機器は１０４−ｉで示され、システム１００のＮ個の周辺機器のいずれか１つを表すことができる。
【００２６】
本発明におけるプロセッサ１０２はその現在の動作モードを示す状態情報３００を記憶する。この実施例では、プロセッサがそのセキュア動作モードで現在動作し、従って状態情報３００はセキュア動作モードを示すものとする。周辺機器１０４−ｉはそれぞれ３０２及び３０４で示すパブリック部分及びプライベート部分に区分され、プライベートな即ちセキュア部分が、プロセッサ１０２の現在の動作モードを示す状態情報３０６を記憶する。周辺機器１０４−ｉにおける状態情報３０６の記憶は、プロセッサ１０２と周辺機器１０４−ｉの間で実行されるバス・トランザクション３１０において実行される。図２において説明したように、プロセッサはその現在の動作モードの特権レベルを周辺機器１０４−ｉに伝達し、周辺機器１０４−ｉは特権レベルがセキュア動作モードに対応するかを判断する。伝達された特権レベルがプロセッサはそのセキュア動作モードで現在動作していることを周辺機器１０４−ｉが示す場合、対応する状態情報３０６は周辺機器１０４−ｉのプライベート即ちセキュア部分に記憶される。それ以外の場合、そのような状態情報は記憶される必要はない。
【００２７】
記憶された状態情報３０６は、周辺機器１０４−ｉがプロセッサ１０２から受信する譲受アクセス特権の一例である。この譲受アクセス特権によって周辺機器１０４−ｉは、それ以外の場合にアクセスできないリソースにアクセスすることが可能となる。従って、周辺機器１０４−ｉは、制限された時間について及びプロセッサによって制御される他の条件下で、プロセッサのセキュア動作モードのアクセス特権を共有することができる。
【００２８】
周辺機器１０４−ｉは記憶された状態情報３０６を用いて１以上の他のバス・トランザクション３１４において１以上の他のリソース３１２にアクセスする。上記のように、これらの他のリソース３１２はシステム１００の他の周辺機器１０４の１以上であればよい。
【００２９】
図４に、プロセッサ１０２及び所与の周辺機器１０４−ｉの１つの可能な実施に関する更なる詳細を示す。この例では、プロセッサ１０２は複数のソフトウェアエージェント４００を備えるものとして示し、高特権のソフトウェアエージェント４００Ｈ及び低特権のソフトウェアエージェント４００Ｌを含む。ソフトウェアエージェント４００Ｈ及び４００Ｌは、より一般的にセキュア・ソフトウェアエージェント及び非セキュア・ソフトウェアエージェントとそれぞれ云われるものの例として図示され得る。所与のプロセッサ内でサポートされる特権に複数の他のレベルがあってもよく、本発明はこれに関して限定されない。プロセッサ１０２は周辺機器１０４−ｉのインターフェイス回路４０２にバス１０６を介して結合される。このインターフェイス回路は機能回路４０４に結合され、これは問題となる周辺機器に関連するあらゆる機能を実行するように構成された従来的な回路である。例えば、周辺機器が暗号化エンジンである場合、機能回路４０４はデータを符号化するための暗号プロセッサからなるようにしてもよい。同様に、周辺機器がＤＭＡエンジンである場合、機能回路４０４は従来のＤＭＡ回路からなるようにしてもよい。
【００３０】
なお、機能回路４０４はそれ自体がプロセッサを含んでいてもよい。従って、周辺機器１０４−ｉはそれ自身の内部プロセッサを介してソフトウェア実行機能を含むインテリジェント周辺機器となり得る。
【００３１】
メモリ４１０内の制御ロジック４０６及びセキュア状態記憶部４０８も周辺機器１０４−ｉに含まれる。制御ロジック４０６はインターフェイス回路４０２を介してプロセッサ１０２から受信された特権レベル情報を処理するように構成される。この処理は、特権レベルがセキュア動作モードを示すかを判断すること、及びメモリ４１０の要素４０８における対応の状態情報の安全な記憶を制御することを含む。制御ロジック４０６はまた、記憶された状態情報に基づいて周辺機器１０４−ｉが他のリソースにアクセスすることを可能とすることに関連する処理動作を実行するように構成してもよい。
【００３２】
図４に示すような周辺機器１０４−ｉの特定の回路構成は、単にそのような周辺機器の説明的一例として見られるべきである。発明は、広範な異なるハードウェア、ソフトウェア及びファームウェア部材を用いて、他のタイプ及び構成の周辺機器を用いて実施できることが理解されるべきである。例えば、周辺機器１０４−ｉの機能回路４０４が内部プロセッサを備え、記憶された状態情報は、図４に示す例示の構成におけるような独立したメモリ内ではなく、内部プロセッサ内のメモリのセキュア部分に記憶され得ることは上記した。
【００３３】
図１のシステム１００においてセキュア動作モードのアクセス特権がプロセッサ１０２から特定の周辺機器１０４−ｉに譲渡できる態様を示すために、多数の例が以下に記載される。記載される３つの例は３つの異なるタイプの周辺機器１０４、即ち、暗号化エンジン、ＤＭＡエンジン及び割込みコントローラに関する。しかし、開示される技術は広範な種類の他の周辺機器にも適用可能であることが分かるはずである。
【００３４】
第１の例では、周辺機器１０４−ｉは暗号化エンジンからなる。そのような周辺機器はシステム１００によって使用されて、非セキュア・ソフトウェアエージェントからプライベートな状態を維持したいと思う情報を暗号化する。暗号化エンジンは、プロセッサ１０２からの譲受アクセス特権を受信するための能力をそれに与えることによって安全なものとなる。従って、プロセッサ１０２がセキュアモードで動作するとき、対応の状態情報は前述したように暗号化エンジンに安全に記憶される。暗号化エンジンは、この安全に記憶された状態情報を利用して、いずれかの非セキュア・ソフトウェアエージェントが暗号化エンジンを構成したり暗号鍵のような繊細な情報にアクセスしたりするのを防止する。暗号化エンジンがセキュア・ソフトウェアエージェントによって要求されたタスクを完了すると、以前に記憶された状態情報が消去され、それにより、その後暗号化エンジンはセキュア・ソフトウェアエージェント又は非セキュア・ソフトウェアエージェントによってアクセスされることができる。概略として、暗号化エンジンはプロセッサがそのセキュア動作モードにあることを示す状態情報を記憶し、対応の要求タスクの期間中は暗号化エンジンは非セキュア・ソフトウェアエージェントによってはアクセスされ得ない。
【００３５】
第２の例では、周辺機器１０４−ｉはＤＭＡエンジンからなる。そのようなエンジンはメモリに、及びメモリからデータを移動するように設計されている。プロセッサ上で稼働しているソフトウェアエージェントは送信元及び宛先メモリを構成し、その後ＤＭＡエンジンが更なるプロセッサの介在なしにデータを転送することを可能とする。そのようなＤＭＡ転送は、あるメモリから他のメモリへ、又はあるメモリと他のメモリの間でのものとなる。ここに開示される技術を用いることによって、ＤＭＡエンジンは、ＤＭＡ動作を構成するソフトウェアエージェントの特権レベルを表示する状態情報を確実に記憶するように構成され得る。これによって、ＤＭＡエンジンがセキュア・ソフトウェアエージェントによって構成されたときのみ、ＤＭＡ転送は保護されたメモリリソースにアクセスすることが可能となる。それはまた、ＤＭＡエンジンによって使用される送信元及び宛先アドレスが安全な状態で構成されると、非セキュア・ソフトウェアエージェントがその送信元及び宛先アドレスを特定することを防止する。それ以外の場合、非セキュアエージェントはセキュアデータが記憶されているメモリアドレスを習得し得る。
【００３６】
最後に、第３の例では、周辺機器１０４−ｉは、記憶された状態情報を利用して割込みをセキュア又は非セキュアなものとして構成する割込みコントローラからなる。割込みが安全なものとして構成されると、それはセキュア特権レベルより低いレベルで稼働するソフトウェアエージェントによって修正されることはできない。また、安全な割込みのみがプロセッサを動作のセキュアモードに誘導することができる。これによって確実に、非セキュアエージェントがプロセッサを非セキュア動作モードからセキュア動作モードに誘導する割込みを生成するために割込みコントローラを構成することができなくなる。
【００３７】
上記で説明した実施例によって、その周辺機器を構成したプロセッサのソフトウェアエージェントの特権レベルを表示する状態情報を周辺機器が記憶することが可能となる。この状態情報は安全な態様で記憶されるので、非セキュア・ソフトウェアエージェントによっては変更され得ない。さらに、周辺機器は記憶された状態情報を利用して、プロセッサの譲受アクセス特権がないとアクセスすることができない他のシステムリソースにアクセスすることができる。
【００３８】
これらの例示の構成は、セキュアモード及び非セキュアモード双方の動作においてソフトウェアエージェントを実行する複数の周辺機器及び１以上のプロセッサを含む処理システムのセキュリティを大幅に向上する。セキュアプロセッサ動作モードのアクセス特権は制御された態様で周辺機器に譲渡され、それにより、そうでなければそのようなシステム内で起こり得る更なるセキュリティ上のリスクをなくすことができる。
【００３９】
上記の実施例は例示のみを目的とするものであることを再度強調しておく。例えば、処理システム構成及びアクセス特権譲渡処理は他の実施例において変更できる。他の例として、特権レベルの具体的な数及びタイプは所与のアプリケーションのニーズに対応するために変形され得る。また、プロセッサがセキュア動作モードにあるかを周辺機器が判断し、対応の状態情報を記憶し、記憶された状態情報を利用して周辺機器がアクセス保護リソースにアクセスすることが可能となる具体的態様は代替の実施例において変形できる。以降の特許請求の範囲内のこれら及び多数の他の代替実施例は当業者には直ちに明らかになる。
【図１】
2011508292.tif 000003
【図２】
2011508292.tif 000004
【図３】
2011508292.tif 000005
【図４】
2011508292.tif 000006
【手続補正書】
【提出日】平成22年7月28日(2010.7.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
処理システムにおいてアクセス特権をプロセッサから周辺機器に譲渡する方法であって、
該プロセッサがセキュア動作モードにあることを示す状態情報を該周辺機器のセキュア部分に記憶する記憶ステップ、及び
記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とする、利用ステップ
を備え、
該記憶された状態情報が、該プロセッサから該周辺機器に譲渡された該アクセス特権からなるとともに、該譲渡されたアクセス特権がなければアクセスすることができない該少なくとも１つのリソースに該周辺機器がアクセスすることを可能とし、それにより、該プロセッサによって制御される条件下で、該周辺機器が該プロセッサのアクセス特権を共有することを可能とする、方法。
【請求項２】
請求項１の方法において、前記プロセッサが自身の現在の動作モードの特権レベルを前記周辺機器に伝達する、方法。
【請求項３】
請求項２の方法において、前記周辺機器が、前記特権レベルが前記セキュア動作モードを示しているかを判断し、示している場合に前記記憶ステップを実行する、方法。
【請求項４】
請求項１の方法において、前記利用ステップがさらに、前記周辺機器が、所与のリソースへのアクセス権を取得するために当該リソースに前記記憶された状態情報を供給するステップを備える方法。
【請求項５】
請求項２の方法において、前記プロセッサが、該プロセッサと前記周辺機器の間で実行されるバス・トランザクションにおいて該プロセッサの現在の動作モードの特権レベルを該周辺機器に伝達する、方法。
【請求項６】
請求項１の方法において、前記記憶された状態情報が、前記プロセッサの非セキュア動作モードで稼働しているソフトウェアエージェントによって修正できない、方法。
【請求項７】
請求項１の方法であって、さらに、対応するタスクが完了すると前記記憶された状態情報を消去するステップであって、該タスクは該セキュア動作モードにあるプロセッサ上で稼働しているセキュア・ソフトウェアエージェントのリクエストによって実行される、ステップを含む方法。
【請求項８】
請求項１の方法のステップを、実行される時に、実施する機械実行可能なインストラクションを符号化した機械可読記憶媒体。
【請求項９】
プロセッサから譲受アクセス特権を受信するよう構成された周辺機器を備える装置であって、該周辺機器が、
該プロセッサがセキュア動作モードにあることを示す状態情報を記憶するためのセキュアメモリ、及び
該セキュアメモリに結合され、記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とするよう構成された処理回路
を備え、
該記憶された状態情報が、該プロセッサから該周辺機器に譲渡された該アクセス特権からなるとともに、該譲渡されたアクセス特権がなければアクセスすることができない該少なくとも１つのリソースに該周辺機器がアクセスすることを可能とし、それにより、該プロセッサによって制御される条件下で、該周辺機器が該プロセッサのアクセス特権を共有することを可能とする、装置。
【請求項１０】
処理システムであって、
プロセッサ、及び
該プロセッサに結合された複数の周辺機器
を備え、
該周辺機器の少なくとも所与の１つが、該プロセッサがセキュア動作モードにあることを示す状態情報を当該周辺機器のセキュア部分に記憶し、記憶された該状態情報を利用して、該セキュア動作モードにおいて該プロセッサにアクセス可能であるがそれ以外の場合には該周辺機器にアクセス可能でない少なくとも１つのリソースに該周辺機器がアクセスすることを可能とするように構成され、
該記憶された状態情報が、該プロセッサから該周辺機器に譲渡された該アクセス特権からなるとともに、該譲渡されたアクセス特権がなければアクセスすることができない該少なくとも１つのリソースに該周辺機器がアクセスすることを可能とし、それにより、該プロセッサによって制御される条件下で、該周辺機器が該プロセッサのアクセス特権を共有することを可能とする、処理システム。
【国際調査報告】
2011508292.tif 000007
2011508292.tif 000008
2011508292.tif 000009