情報処理装置およびその制御方法
【課題】 デバイス間で送受信されるパケットデータの暗号化を行うことが可能な情報処理装置および制御方法を提供する。
【解決手段】 PCI Express21で接続されたRoot Complex12、グラフィクスコントローラ(End Point)16を備え、Root Complex12およびグラフィクスコントローラ(End Point)16間で通信されるパケットデータを監視し、パケットデータがTLPであると判別された場合は、暗号復号回路30,32,34,36によって暗号化および復号化して通信する。
【解決手段】 PCI Express21で接続されたRoot Complex12、グラフィクスコントローラ(End Point)16を備え、Root Complex12およびグラフィクスコントローラ(End Point)16間で通信されるパケットデータを監視し、パケットデータがTLPであると判別された場合は、暗号復号回路30,32,34,36によって暗号化および復号化して通信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータのような情報処理装置および同装置の動作を制御する制御方法に関する。
【背景技術】
【0002】
近年、コンピュータのような情報処理装置においては、PCI EXPRESSと称される第3世代汎用I/O相互接続インタフェースが注目されている。PCI EXPRESSは、リンクと称される通信路を介してデバイス間を相互接続するための規格であり、PCI SIG(Peripheral Component Interconnect Special Interest Group)によって規定されている。PCI EXPRESSの規格においては、デバイス間のデータの伝送はパケットを用いて実行される(非特許文献1参照)。
【非特許文献1】PCI Express Base Specification Revision 1.1
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、PCI Express Base Specification Revision 1.1に定義されている技術では、デバイス間で送受信されるパケット(Ordered-set/DLLP/TLP)の構成フォーマットは定義されているが、データセキュリティ(データの暗号化)については定義されていない。
【0004】
本発明は上述の事情を考慮してなされたものであり、デバイス間で送受信されるパケットデータの暗号化を行うことが可能な情報処理装置および制御方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上述の課題を解決するため、本願発明の一態様によれば、シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置であって、前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、前記パケットデータを暗号化および復号化する暗号復号手段とを備え、前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする情報処理装置が提供される。
【発明の効果】
【0006】
本発明によれば、シリアルバスインターフェースで接続されているデバイス間で送受信されるパケットデータの暗号化を行うことが可能となる。
【発明を実施するための最良の形態】
【0007】
以下、図面を参照して本発明の実施形態を説明する。
【0008】
(第1実施形態)
図1には、本発明の第1実施形態に係る情報処理装置のシステム構成図が示されている。この情報処理装置は、バッテリ駆動可能なノートブック型コンピュータ10として実現されている。
【0009】
図1に示すように、コンピュータ10は、コンピュータ本体と、ディスプレイユニット12とから構成されている。ディスプレイユニット12にはLCD(Liquid Crystal Display)からなる表示装置が組み込まれており、そのLCDの表示画面121はディスプレイユニット12のほぼ中央に位置されている。
【0010】
ディスプレイユニット12は、コンピュータ10に対して解放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ10の本体側は薄い箱形の筐体を有しており、その上面にはパワーボタン24、LED表示部(表示手段)220、キーボード25、パームレスト上にはタッチパッド26、および左右2つのボタン113a、113b等が配置されている。
【0011】
図2は、コンピュータ10の構成を示したブロック図である。
【0012】
このコンピュータ10は、内蔵バッテリ27を備えており、外部電源(AC電源)にコンピュータ10が接続されていない状態においては内蔵バッテリ27からの電力によって動作する。一方、ACアダプタ28がコンピュータ10に接続されている状態、つまり外部電源(AC電源)にコンピュータ10が接続されている状態においては、コンピュータ10は外部電源(AC電源)によって動作する。また、外部電源によってバッテリ27の充電が行われる。
【0013】
このコンピュータ10は、図示のように、CPU(Central Processing Unit)11、Root Complex12、主メモリ13、グラフィクスコントローラ(End Point)16、表示装置(LCD)15、PCI(Peripheral Component Interconnect)デバイス群17、PCI Express デバイス群18、ハードディスクドライブ(HDD)20、BIOS−ROM19、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22、および電源コントローラ(PSC)23、キーボード(KB)25、タッチパッド26などを備えている。
【0014】
Root Complex12、グラフィクスコントローラ(End Point)16、およびPCI Express デバイス群18,19の各々は、PCI EXPRESS規格に準拠したデバイス(デバイス)である。Root Complex12とグラフィクスコントローラ(End Point)16との間の通信は、Root Complex12とグラフィクスコントローラ(End Point)16との間に配設されたPCI EXPRESSリンク21を介して実行される。各PCI EXPRESSリンクはシリアルインタフェースから構成される通信路であり、アップストリームレーンおよびダウンストリームレーンを含む。
【0015】
CPU11は本コンピュータの動作を制御するプロセッサであり、HDD20から主メモリ13にロードされる各種プログラム(オペレーティングシステム、アプリケーションプログラム)を実行する。また、CPU11は、BIOS−ROM19に格納されたBIOS(Basic Input Output System)も実行する。BIOSはハードウェアを制御するためのプログラムである。また、BIOSは、PCI Express 規格で規定されたActiveステート Power Management (ASPM:Active State Power Management)機能の実行を本コンピュータの動作モードに応じて動的に許可または禁止するためのSMI(System Management Interrupt)ルーチンを有している。ASPM機能は、上述したように、たとえPCI Express規格に対応するデバイスが動作状態(D0ステート)であっても、そのデバイスが接続されたリンクをローパワーステート(スタンバイステート)に設定することが可能な通信路制御機能である。リンクを介して相互接続された2つのデバイスの各々はASPM機能を有しており、リンクがアイドル状態であるか否かに応じて、リンクの状態を動作ステートと当該動作ステートよりも低消費電力のスタンバイステートとの間で遷移させることができる。この遷移はハードウェアによって自動的に実行される。
【0016】
Root Complex12は、CPU11のローカルバスとグラフィクスコントローラ(End Point)16との間を接続するブリッジデバイスである。Root Complex12には、また、Root Complex12は、PCI EXPRESSリンク21を介してグラフィクスコントローラ(End Point)16、グラフィクスコントローラ(End Point)16との通信を実行する機能も有している。
【0017】
グラフィクスコントローラ(End Point)16は本コンピュータのディスプレイモニタとして使用されるLCD15を制御する表示コントローラである。
【0018】
エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、電力管理のためのエンベデッドコントローラと、キーボード(KB)25およびタッチパッド26を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このエンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、ユーザによるパワーボタン24の操作に応じて、電源コントローラ(PSC)23と共同して、本コンピュータ10をパワーオン/パワーオフする機能を有している。さらに、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、本コンピュータに対するACアダプタ28の接続および取り外しを検出する機能も有している。ACアダプタ28の接続または取り外しのイベントが発生した時、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、電力管理イベントの発生をBIOSに通知するために割り込み信号(INTR)を発生する。この割り込み信号(INTR)の発生に応答して、Root Complex12は、CPU11に割り込み信号(SMI)を発生する。CPU11は、SMIに応答して、BIOSのSMIルーチンを実行する。なお、EC/KBC22からCPU11に直接的にSMIを供給するようにしてもよい。
【0019】
図3には、PCI EXPRESS規格にそれぞれ準拠した2つのデバイス間の接続構成が示されている。ここでは、Root Complex12(第1のデバイス)とグラフィクスコントローラ(End Point)16(第2のデバイス)とを例示して説明する。
【0020】
対向するデバイス間を規格でフォーマットを定められたパケットを送受信することによりデータを受け渡しを行っている。パケットの種類は大きく分類して以下の3種である。
【0021】
Physical Layer間で物理接続の管理・制御を行うために送受信を行う、Ordered-set
Datalink Layer間でデータの保全性を確保するために送受信を行う、DLLP(Datalink Layer Packet)
デバイス間のデータの送受信を行う、TLP(Transaction Layer Packet)
Root Complex12およびグラフィクスコントローラ(End Point)16は、PCI EXPRESSリンク21を介して相互接続されている。PCI EXPRESSリンク21は、Root Complex12とグラフィクスコントローラ(End Point)16との間をポイントツーポイント形式で接続するシリアルインタフェース(シリアルバス)である。このPCI EXPRESSリンク21は、Root Complex12からグラフィクスコントローラ(End Point)16の方向に情報を伝送するための差動信号線対21a、グラフィクスコントローラ(End Point)16からRoot Complex12の方向に情報を伝送するための差動信号線対21b、Physical Layer12b、16e同士でデータ送受信するOrdered-set、DataLink Layer12c、16d同士でデータ送受信するDLLP、Transaction Layer12d、16c同士及びInternal BUS I/F同士でデータ送受信するTLP、Internal BUS I/F12e、16bを含んでいる。このように、PCI EXPRESSリンク21を介したRoot Complex12とグラフィクスコントローラ(End Point)16との間の情報の伝送は、パケットを用いて実行される。
【0022】
ここで、Ordered-setおよびDLLPについては、デバイス間のローカルな通信に使用される。これら2種類のパケットについてはユーザが任意に設定したデータを付加することはできず、データフォーマットはPCI Express規格により厳格に規定されている。
【0023】
TLPについては、パケットフォーマットはPCI Express規格により厳格に規定されているが、パケット内に付加するデータペイロードについては、データ長以外は規定されていない。このため、物理レーン上で第3者が容易にデータペイロードに記載された内容を見ることができる。現状のPCI Express規格においては、データの機密性については定義されていない。
【0024】
そこで、本発明によって新たに暗号復号手段を備える。すなわち、図4に示すように、Root Complex12に暗号回路30及び復号回路34を備え、グラフィクスコントローラ(End Point)16に暗号回路36及び復号回路32を備える。
【0025】
以上のような構成において、本発明の第1実施形態に係る情報処理装置の制御方法について、図5〜図7のフローチャートを用いて説明する。
【0026】
図5は、暗号・復号回路30、32、34、36の認証の初期化を行うための処理を示したフローチャートである。
【0027】
デバイスが接続されるとまず最初に各デバイスは、ステップS20で、PCI Express規格で定義された初期化のフローを実行し、デバイス間の通信経路が確立される。次に、本発明で実装する暗号・復号回路30、32、34、36を有効とするための処理を実行する。すなわち、各デバイスは、ステップS21で、デバイス間の暗号化・復号化を行う暗号・復号回路30、32、34、36の初期化を行う。
【0028】
当該初期化処理は、上位ソフトウェアの介在なしに実装されたハードウェアが自動的に処理を行い、また、PCI Express規格準拠の初期化が完了したことを自動的に検知し続けて実行される。暗号・復号回路30、32、34、36の初期化が完了後、この完了通知を上位ソフトウェアに通知する。以上で、暗号・復号回路30、32、34、36の認証の初期化を終了する。
【0029】
次に、図6は、上述した暗号化・復号化を行うために用いられる管理パケットについて示した図である。この管理パケット44、46は、双方のデバイス(Root Complex12及びグラフィクスコントローラ(End Point)16)に実装されている暗号・復号回路30、32、34、36を有効にするための認証機構を制御するために使用する。なお、管理パケット44、46は、PCI Express規格では定義されておらず、本発明によりデータセキュリティ機構を実現するため新規に定義するパケットである。
【0030】
本発明では、管理パケットを用いる。この管理パケットは、上述した暗号・復号回路30、32、34、36を有効とするための処理”に使用するものである。暗号・復号回路30、32、34、36の初期化時および再認証(後述)時にデバイス間の通信に使用され、デバイス間において制御情報などを送受信することにより、両デバイスに実装される暗号・復号回路の認証を行い、データセキュリティ機構の確立を行う。
【0031】
図7は、暗号・復号回路30、32、34、36の初期化の完了後の処理を示したフローチャートである。
【0032】
上述した暗号・復号回路30、32、34、36内をパケットが通過する際、通過するパケットの種別によりデータの暗号化・復号化を制御する。各デバイスは、ステップS10で、暗号・復号回路30、32、34、36内を通過するパケットが、Physical Layer12b、16eの制御に使用するOrdered-setか否かを判別し、Ordered-setの場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS10で、暗号・復号回路30、32、34、36内を通過するパケットが、Ordered-setでないと判別すると、各デバイスは、ステップS11で、DLLPか否かを判別し、DLLPの場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS11で、暗号・復号回路30、32、34、36内を通過するパケットが、DLLPでないと判別すると、各デバイスは、ステップS12で、TLPか否かを判別し、TLPでない場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS12で、暗号・復号回路30、32、34、36内を通過するパケットが、TLPであると判別すると、Memory Read/Write、I/O Read/Write、Configuration Read/Write、Messageデータ各々について、暗号・復号回路30、32、34、36によってデータの暗号化・復号化を行い、制御する。
【0033】
図8は、デバイス間の再認証を行う場合の処理を示したフローチャートである。
【0034】
デバイス間の再認証は、デバイス間において初期化処理により通信経路が確立されまたデータセキュリティ機構の初期化も完了しデータのセキュリティを保障された通信が確立された通信経路において、何らかの理由により、デバイス間の再認証が必要となった場合に行う処理である。
【0035】
初期化フローと同様に新規に定義する管理パケットをデバイス間で送受信することにより実現する。当該処理についても実装したハードウェアが自動的に行う。
【0036】
各デバイスは、ステップS30で、デバイス間の再認証を実行する。ステップS30で、デバイス間の再認証が実行されると、ステップS31で、各デバイスは、デバイス間の暗号・復号回路30、32、34、36の再認証を行う。
【0037】
なお、再認証が必要となる状況として以下の場合がある。
【0038】
デバイス間のデータセキュリティ確保のため、一定期間毎に再認証を行いデバイス間の暗号アルゴリズムや暗号・復号化鍵の更新を行う場合、または、通信経路が不安定となり、デバイス間の通信経路の再構築(PCI Express規格準拠)が実行されたことに伴い、デバイス間に再認証が必要となった場合である。
【0039】
以上より、シリアルバスインターフェースで接続されているデバイス間で送受信されるパケットデータの暗号化を行うことが可能となる。
【0040】
(第2実施形態)
図9には、本発明の第2実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0041】
第2実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0042】
第2実施形態では、Root Complex12の暗号回路30および復号回路34がDataLink Layer12cとTransaction Layer12dとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がDataLink Layer16dとTransaction Layer16cとの間に設置されている。すなわち、暗号回路および復号回路がDataLink LayerとTransaction Layerとの間に設置されていることにより、各デバイス間を通過するパケットがTLPか否かの判別のみで済むことになる。
【0043】
以上のような構成において、本発明の第2実施形態に係る情報処理装置の制御方法について、図10のフローチャートを用いて説明する。
【0044】
各デバイスは、ステップS40で、各デバイス間を通過するパケットがTLPか否かの判別を行い、各デバイス間を通過するパケットがTLPであれば、ステップS41で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS42で、暗号化/復号化を行う。
【0045】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとTransaction Layerとの間に設置することにより、各デバイス間を通過するパケットがTLPか否かの判別のみで済み、処理の簡素化となる。
【0046】
(第3実施形態)
図11には、本発明の第3実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0047】
第3実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0048】
第3実施形態では、Root Complex12の暗号回路30および復号回路34がDataLink Layer12cとPhysical Layer12bとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がDataLink Layer16dとPhysical Layer16eとの間に設置されている。すなわち、暗号回路および復号回路がDataLink LayerとPhysical Layerとの間に設置されていることにより、各デバイス間を通過するパケットがTLPおよびDLLPか否かの判別で済むことになる。
【0049】
以上のような構成において、本発明の第3実施形態に係る情報処理装置の制御方法について、図12のフローチャートを用いて説明する。
【0050】
各デバイスは、ステップS50で、各デバイス間を通過するパケットがDLLPか否かの判別を行い、各デバイス間を通過するパケットがDLLPであれば、ステップS51で、各デバイス間を通過するパケットがTLPか否かの判別を行い、各デバイス間を通過するパケットがTLPであれば、ステップS52で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS53で、暗号化/復号化を行う。
【0051】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとPhysical Layerとの間に設置することにより、各デバイス間を通過するパケットがDLLPおよびTLPか否かの判別のみで済み、処理の簡素化となる。
【0052】
(第4実施形態)
図13には、本発明の第4実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0053】
第4実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0054】
第4実施形態では、Root Complex12の暗号回路30および復号回路34がTransaction Layer12dとInternal BUS I/F12eとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がTransaction Layer16cとInternal BUS I/F16bとの間に設置されている。すなわち、暗号回路および復号回路がTransaction LayerとInternal BUS I/Fとの間に設置されていることにより、各デバイス間を通過するパケットの判別が不要になる。
【0055】
以上のような構成において、本発明の第4実施形態に係る情報処理装置の制御方法について、図14のフローチャートを用いて説明する。
【0056】
各デバイスは、ステップS60で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS61で、暗号化/復号化を行う。
【0057】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとPhysical Layerとの間に設置することにより、各デバイス間を通過するパケットの判別が不要になる。
【0058】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【0059】
【図1】本発明の第1実施形態に係る情報処理装置のシステム構成を示す図。
【図2】コンピュータの構成を示したブロック図。
【図3】PCI EXPRESS規格にそれぞれ準拠した2つのデバイス間の接続構成を示す図。
【図4】Root Complexおよびグラフィクスコントローラ(End Point)に暗号回路及び復号回路を備えた構成を示す図。
【図5】暗号・復号回路30、32、34、36の認証の初期化を行うための処理を示したフローチャート。
【図6】暗号化・復号化を行うために用いられる管理パケットについて示した図。
【図7】暗号・復号回路30、32、34、36の初期化の完了後の処理を示したフローチャート。
【図8】デバイス間の再認証を行う場合の処理を示したフローチャート。
【図9】本発明の第2実施形態に係る情報処理装置のシステム構成を示した図。
【図10】本発明の第2実施形態に係る情報処理装置の制御方法について示したフローチャート。
【図11】本発明の第3実施形態に係る情報処理装置のシステム構成を示した図。
【図12】本発明の第3実施形態に係る情報処理装置の制御方法について示したフローチャート。
【図13】本発明の第4実施形態に係る情報処理装置のシステム構成を示した図。
【図14】本発明の第4実施形態に係る情報処理装置の制御方法について示したフローチャート。
【符号の説明】
【0060】
10…コンピュータ、11…CPU、12…ディスプレイユニット、13…主メモリ、16…グラフィクスコントローラ(End Point)、15…LCD、19…ROM、20.BIOS…ハードディスクドライブ、20…HDD、21…リンク、21a.End…差動信号線対、21b.Physical…差動信号線対、22…キーボードコントローラIC、23…電源コントローラ、24…パワーボタン、25…キーボード、26…タッチパッド、27…バッテリ、28…ACアダプタ、30…暗号回路、30.32…暗号・復号回路、32…復号回路、34…復号回路、36…暗号回路、44.46…管理パケット。
【技術分野】
【0001】
本発明は、コンピュータのような情報処理装置および同装置の動作を制御する制御方法に関する。
【背景技術】
【0002】
近年、コンピュータのような情報処理装置においては、PCI EXPRESSと称される第3世代汎用I/O相互接続インタフェースが注目されている。PCI EXPRESSは、リンクと称される通信路を介してデバイス間を相互接続するための規格であり、PCI SIG(Peripheral Component Interconnect Special Interest Group)によって規定されている。PCI EXPRESSの規格においては、デバイス間のデータの伝送はパケットを用いて実行される(非特許文献1参照)。
【非特許文献1】PCI Express Base Specification Revision 1.1
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、PCI Express Base Specification Revision 1.1に定義されている技術では、デバイス間で送受信されるパケット(Ordered-set/DLLP/TLP)の構成フォーマットは定義されているが、データセキュリティ(データの暗号化)については定義されていない。
【0004】
本発明は上述の事情を考慮してなされたものであり、デバイス間で送受信されるパケットデータの暗号化を行うことが可能な情報処理装置および制御方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上述の課題を解決するため、本願発明の一態様によれば、シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置であって、前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、前記パケットデータを暗号化および復号化する暗号復号手段とを備え、前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする情報処理装置が提供される。
【発明の効果】
【0006】
本発明によれば、シリアルバスインターフェースで接続されているデバイス間で送受信されるパケットデータの暗号化を行うことが可能となる。
【発明を実施するための最良の形態】
【0007】
以下、図面を参照して本発明の実施形態を説明する。
【0008】
(第1実施形態)
図1には、本発明の第1実施形態に係る情報処理装置のシステム構成図が示されている。この情報処理装置は、バッテリ駆動可能なノートブック型コンピュータ10として実現されている。
【0009】
図1に示すように、コンピュータ10は、コンピュータ本体と、ディスプレイユニット12とから構成されている。ディスプレイユニット12にはLCD(Liquid Crystal Display)からなる表示装置が組み込まれており、そのLCDの表示画面121はディスプレイユニット12のほぼ中央に位置されている。
【0010】
ディスプレイユニット12は、コンピュータ10に対して解放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ10の本体側は薄い箱形の筐体を有しており、その上面にはパワーボタン24、LED表示部(表示手段)220、キーボード25、パームレスト上にはタッチパッド26、および左右2つのボタン113a、113b等が配置されている。
【0011】
図2は、コンピュータ10の構成を示したブロック図である。
【0012】
このコンピュータ10は、内蔵バッテリ27を備えており、外部電源(AC電源)にコンピュータ10が接続されていない状態においては内蔵バッテリ27からの電力によって動作する。一方、ACアダプタ28がコンピュータ10に接続されている状態、つまり外部電源(AC電源)にコンピュータ10が接続されている状態においては、コンピュータ10は外部電源(AC電源)によって動作する。また、外部電源によってバッテリ27の充電が行われる。
【0013】
このコンピュータ10は、図示のように、CPU(Central Processing Unit)11、Root Complex12、主メモリ13、グラフィクスコントローラ(End Point)16、表示装置(LCD)15、PCI(Peripheral Component Interconnect)デバイス群17、PCI Express デバイス群18、ハードディスクドライブ(HDD)20、BIOS−ROM19、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22、および電源コントローラ(PSC)23、キーボード(KB)25、タッチパッド26などを備えている。
【0014】
Root Complex12、グラフィクスコントローラ(End Point)16、およびPCI Express デバイス群18,19の各々は、PCI EXPRESS規格に準拠したデバイス(デバイス)である。Root Complex12とグラフィクスコントローラ(End Point)16との間の通信は、Root Complex12とグラフィクスコントローラ(End Point)16との間に配設されたPCI EXPRESSリンク21を介して実行される。各PCI EXPRESSリンクはシリアルインタフェースから構成される通信路であり、アップストリームレーンおよびダウンストリームレーンを含む。
【0015】
CPU11は本コンピュータの動作を制御するプロセッサであり、HDD20から主メモリ13にロードされる各種プログラム(オペレーティングシステム、アプリケーションプログラム)を実行する。また、CPU11は、BIOS−ROM19に格納されたBIOS(Basic Input Output System)も実行する。BIOSはハードウェアを制御するためのプログラムである。また、BIOSは、PCI Express 規格で規定されたActiveステート Power Management (ASPM:Active State Power Management)機能の実行を本コンピュータの動作モードに応じて動的に許可または禁止するためのSMI(System Management Interrupt)ルーチンを有している。ASPM機能は、上述したように、たとえPCI Express規格に対応するデバイスが動作状態(D0ステート)であっても、そのデバイスが接続されたリンクをローパワーステート(スタンバイステート)に設定することが可能な通信路制御機能である。リンクを介して相互接続された2つのデバイスの各々はASPM機能を有しており、リンクがアイドル状態であるか否かに応じて、リンクの状態を動作ステートと当該動作ステートよりも低消費電力のスタンバイステートとの間で遷移させることができる。この遷移はハードウェアによって自動的に実行される。
【0016】
Root Complex12は、CPU11のローカルバスとグラフィクスコントローラ(End Point)16との間を接続するブリッジデバイスである。Root Complex12には、また、Root Complex12は、PCI EXPRESSリンク21を介してグラフィクスコントローラ(End Point)16、グラフィクスコントローラ(End Point)16との通信を実行する機能も有している。
【0017】
グラフィクスコントローラ(End Point)16は本コンピュータのディスプレイモニタとして使用されるLCD15を制御する表示コントローラである。
【0018】
エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、電力管理のためのエンベデッドコントローラと、キーボード(KB)25およびタッチパッド26を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このエンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、ユーザによるパワーボタン24の操作に応じて、電源コントローラ(PSC)23と共同して、本コンピュータ10をパワーオン/パワーオフする機能を有している。さらに、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、本コンピュータに対するACアダプタ28の接続および取り外しを検出する機能も有している。ACアダプタ28の接続または取り外しのイベントが発生した時、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)22は、電力管理イベントの発生をBIOSに通知するために割り込み信号(INTR)を発生する。この割り込み信号(INTR)の発生に応答して、Root Complex12は、CPU11に割り込み信号(SMI)を発生する。CPU11は、SMIに応答して、BIOSのSMIルーチンを実行する。なお、EC/KBC22からCPU11に直接的にSMIを供給するようにしてもよい。
【0019】
図3には、PCI EXPRESS規格にそれぞれ準拠した2つのデバイス間の接続構成が示されている。ここでは、Root Complex12(第1のデバイス)とグラフィクスコントローラ(End Point)16(第2のデバイス)とを例示して説明する。
【0020】
対向するデバイス間を規格でフォーマットを定められたパケットを送受信することによりデータを受け渡しを行っている。パケットの種類は大きく分類して以下の3種である。
【0021】
Physical Layer間で物理接続の管理・制御を行うために送受信を行う、Ordered-set
Datalink Layer間でデータの保全性を確保するために送受信を行う、DLLP(Datalink Layer Packet)
デバイス間のデータの送受信を行う、TLP(Transaction Layer Packet)
Root Complex12およびグラフィクスコントローラ(End Point)16は、PCI EXPRESSリンク21を介して相互接続されている。PCI EXPRESSリンク21は、Root Complex12とグラフィクスコントローラ(End Point)16との間をポイントツーポイント形式で接続するシリアルインタフェース(シリアルバス)である。このPCI EXPRESSリンク21は、Root Complex12からグラフィクスコントローラ(End Point)16の方向に情報を伝送するための差動信号線対21a、グラフィクスコントローラ(End Point)16からRoot Complex12の方向に情報を伝送するための差動信号線対21b、Physical Layer12b、16e同士でデータ送受信するOrdered-set、DataLink Layer12c、16d同士でデータ送受信するDLLP、Transaction Layer12d、16c同士及びInternal BUS I/F同士でデータ送受信するTLP、Internal BUS I/F12e、16bを含んでいる。このように、PCI EXPRESSリンク21を介したRoot Complex12とグラフィクスコントローラ(End Point)16との間の情報の伝送は、パケットを用いて実行される。
【0022】
ここで、Ordered-setおよびDLLPについては、デバイス間のローカルな通信に使用される。これら2種類のパケットについてはユーザが任意に設定したデータを付加することはできず、データフォーマットはPCI Express規格により厳格に規定されている。
【0023】
TLPについては、パケットフォーマットはPCI Express規格により厳格に規定されているが、パケット内に付加するデータペイロードについては、データ長以外は規定されていない。このため、物理レーン上で第3者が容易にデータペイロードに記載された内容を見ることができる。現状のPCI Express規格においては、データの機密性については定義されていない。
【0024】
そこで、本発明によって新たに暗号復号手段を備える。すなわち、図4に示すように、Root Complex12に暗号回路30及び復号回路34を備え、グラフィクスコントローラ(End Point)16に暗号回路36及び復号回路32を備える。
【0025】
以上のような構成において、本発明の第1実施形態に係る情報処理装置の制御方法について、図5〜図7のフローチャートを用いて説明する。
【0026】
図5は、暗号・復号回路30、32、34、36の認証の初期化を行うための処理を示したフローチャートである。
【0027】
デバイスが接続されるとまず最初に各デバイスは、ステップS20で、PCI Express規格で定義された初期化のフローを実行し、デバイス間の通信経路が確立される。次に、本発明で実装する暗号・復号回路30、32、34、36を有効とするための処理を実行する。すなわち、各デバイスは、ステップS21で、デバイス間の暗号化・復号化を行う暗号・復号回路30、32、34、36の初期化を行う。
【0028】
当該初期化処理は、上位ソフトウェアの介在なしに実装されたハードウェアが自動的に処理を行い、また、PCI Express規格準拠の初期化が完了したことを自動的に検知し続けて実行される。暗号・復号回路30、32、34、36の初期化が完了後、この完了通知を上位ソフトウェアに通知する。以上で、暗号・復号回路30、32、34、36の認証の初期化を終了する。
【0029】
次に、図6は、上述した暗号化・復号化を行うために用いられる管理パケットについて示した図である。この管理パケット44、46は、双方のデバイス(Root Complex12及びグラフィクスコントローラ(End Point)16)に実装されている暗号・復号回路30、32、34、36を有効にするための認証機構を制御するために使用する。なお、管理パケット44、46は、PCI Express規格では定義されておらず、本発明によりデータセキュリティ機構を実現するため新規に定義するパケットである。
【0030】
本発明では、管理パケットを用いる。この管理パケットは、上述した暗号・復号回路30、32、34、36を有効とするための処理”に使用するものである。暗号・復号回路30、32、34、36の初期化時および再認証(後述)時にデバイス間の通信に使用され、デバイス間において制御情報などを送受信することにより、両デバイスに実装される暗号・復号回路の認証を行い、データセキュリティ機構の確立を行う。
【0031】
図7は、暗号・復号回路30、32、34、36の初期化の完了後の処理を示したフローチャートである。
【0032】
上述した暗号・復号回路30、32、34、36内をパケットが通過する際、通過するパケットの種別によりデータの暗号化・復号化を制御する。各デバイスは、ステップS10で、暗号・復号回路30、32、34、36内を通過するパケットが、Physical Layer12b、16eの制御に使用するOrdered-setか否かを判別し、Ordered-setの場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS10で、暗号・復号回路30、32、34、36内を通過するパケットが、Ordered-setでないと判別すると、各デバイスは、ステップS11で、DLLPか否かを判別し、DLLPの場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS11で、暗号・復号回路30、32、34、36内を通過するパケットが、DLLPでないと判別すると、各デバイスは、ステップS12で、TLPか否かを判別し、TLPでない場合は、ユーザ定義のデータペイロードは付加されないので、暗号・復号化せずそのまま通過させる。一方、ステップS12で、暗号・復号回路30、32、34、36内を通過するパケットが、TLPであると判別すると、Memory Read/Write、I/O Read/Write、Configuration Read/Write、Messageデータ各々について、暗号・復号回路30、32、34、36によってデータの暗号化・復号化を行い、制御する。
【0033】
図8は、デバイス間の再認証を行う場合の処理を示したフローチャートである。
【0034】
デバイス間の再認証は、デバイス間において初期化処理により通信経路が確立されまたデータセキュリティ機構の初期化も完了しデータのセキュリティを保障された通信が確立された通信経路において、何らかの理由により、デバイス間の再認証が必要となった場合に行う処理である。
【0035】
初期化フローと同様に新規に定義する管理パケットをデバイス間で送受信することにより実現する。当該処理についても実装したハードウェアが自動的に行う。
【0036】
各デバイスは、ステップS30で、デバイス間の再認証を実行する。ステップS30で、デバイス間の再認証が実行されると、ステップS31で、各デバイスは、デバイス間の暗号・復号回路30、32、34、36の再認証を行う。
【0037】
なお、再認証が必要となる状況として以下の場合がある。
【0038】
デバイス間のデータセキュリティ確保のため、一定期間毎に再認証を行いデバイス間の暗号アルゴリズムや暗号・復号化鍵の更新を行う場合、または、通信経路が不安定となり、デバイス間の通信経路の再構築(PCI Express規格準拠)が実行されたことに伴い、デバイス間に再認証が必要となった場合である。
【0039】
以上より、シリアルバスインターフェースで接続されているデバイス間で送受信されるパケットデータの暗号化を行うことが可能となる。
【0040】
(第2実施形態)
図9には、本発明の第2実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0041】
第2実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0042】
第2実施形態では、Root Complex12の暗号回路30および復号回路34がDataLink Layer12cとTransaction Layer12dとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がDataLink Layer16dとTransaction Layer16cとの間に設置されている。すなわち、暗号回路および復号回路がDataLink LayerとTransaction Layerとの間に設置されていることにより、各デバイス間を通過するパケットがTLPか否かの判別のみで済むことになる。
【0043】
以上のような構成において、本発明の第2実施形態に係る情報処理装置の制御方法について、図10のフローチャートを用いて説明する。
【0044】
各デバイスは、ステップS40で、各デバイス間を通過するパケットがTLPか否かの判別を行い、各デバイス間を通過するパケットがTLPであれば、ステップS41で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS42で、暗号化/復号化を行う。
【0045】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとTransaction Layerとの間に設置することにより、各デバイス間を通過するパケットがTLPか否かの判別のみで済み、処理の簡素化となる。
【0046】
(第3実施形態)
図11には、本発明の第3実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0047】
第3実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0048】
第3実施形態では、Root Complex12の暗号回路30および復号回路34がDataLink Layer12cとPhysical Layer12bとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がDataLink Layer16dとPhysical Layer16eとの間に設置されている。すなわち、暗号回路および復号回路がDataLink LayerとPhysical Layerとの間に設置されていることにより、各デバイス間を通過するパケットがTLPおよびDLLPか否かの判別で済むことになる。
【0049】
以上のような構成において、本発明の第3実施形態に係る情報処理装置の制御方法について、図12のフローチャートを用いて説明する。
【0050】
各デバイスは、ステップS50で、各デバイス間を通過するパケットがDLLPか否かの判別を行い、各デバイス間を通過するパケットがDLLPであれば、ステップS51で、各デバイス間を通過するパケットがTLPか否かの判別を行い、各デバイス間を通過するパケットがTLPであれば、ステップS52で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS53で、暗号化/復号化を行う。
【0051】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとPhysical Layerとの間に設置することにより、各デバイス間を通過するパケットがDLLPおよびTLPか否かの判別のみで済み、処理の簡素化となる。
【0052】
(第4実施形態)
図13には、本発明の第4実施形態に係る情報処理装置のシステム構成図が示されている。なお、第1実施形態と同様の構成には同符号を付し、詳細な説明は前述に譲る。
【0053】
第4実施形態の第1実施形態との相違点は、暗号・復号回路30、32、34、36の配置場所が異なる点である。
【0054】
第4実施形態では、Root Complex12の暗号回路30および復号回路34がTransaction Layer12dとInternal BUS I/F12eとの間に設置され、グラフィクスコントローラ(End Point)16の暗号回路36および復号回路32がTransaction Layer16cとInternal BUS I/F16bとの間に設置されている。すなわち、暗号回路および復号回路がTransaction LayerとInternal BUS I/Fとの間に設置されていることにより、各デバイス間を通過するパケットの判別が不要になる。
【0055】
以上のような構成において、本発明の第4実施形態に係る情報処理装置の制御方法について、図14のフローチャートを用いて説明する。
【0056】
各デバイスは、ステップS60で、暗号化/復号化を行うか否かを判別し、特に問題がなければ、ステップS61で、暗号化/復号化を行う。
【0057】
以上より、第1実施形態の効果に加えて、暗号回路および復号回路をDataLink LayerとPhysical Layerとの間に設置することにより、各デバイス間を通過するパケットの判別が不要になる。
【0058】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【0059】
【図1】本発明の第1実施形態に係る情報処理装置のシステム構成を示す図。
【図2】コンピュータの構成を示したブロック図。
【図3】PCI EXPRESS規格にそれぞれ準拠した2つのデバイス間の接続構成を示す図。
【図4】Root Complexおよびグラフィクスコントローラ(End Point)に暗号回路及び復号回路を備えた構成を示す図。
【図5】暗号・復号回路30、32、34、36の認証の初期化を行うための処理を示したフローチャート。
【図6】暗号化・復号化を行うために用いられる管理パケットについて示した図。
【図7】暗号・復号回路30、32、34、36の初期化の完了後の処理を示したフローチャート。
【図8】デバイス間の再認証を行う場合の処理を示したフローチャート。
【図9】本発明の第2実施形態に係る情報処理装置のシステム構成を示した図。
【図10】本発明の第2実施形態に係る情報処理装置の制御方法について示したフローチャート。
【図11】本発明の第3実施形態に係る情報処理装置のシステム構成を示した図。
【図12】本発明の第3実施形態に係る情報処理装置の制御方法について示したフローチャート。
【図13】本発明の第4実施形態に係る情報処理装置のシステム構成を示した図。
【図14】本発明の第4実施形態に係る情報処理装置の制御方法について示したフローチャート。
【符号の説明】
【0060】
10…コンピュータ、11…CPU、12…ディスプレイユニット、13…主メモリ、16…グラフィクスコントローラ(End Point)、15…LCD、19…ROM、20.BIOS…ハードディスクドライブ、20…HDD、21…リンク、21a.End…差動信号線対、21b.Physical…差動信号線対、22…キーボードコントローラIC、23…電源コントローラ、24…パワーボタン、25…キーボード、26…タッチパッド、27…バッテリ、28…ACアダプタ、30…暗号回路、30.32…暗号・復号回路、32…復号回路、34…復号回路、36…暗号回路、44.46…管理パケット。
【特許請求の範囲】
【請求項1】
シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置であって、
前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、
前記パケットデータを暗号化および復号化する暗号復号手段とを備え、
前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする情報処理装置。
【請求項2】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスの物理層の外側に隣接して配置されていることを特徴とする情報処理装置。
【請求項3】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスの物理層とデータリンク層との間に配置されていることを特徴とする情報処理装置。
【請求項4】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスのデータリンク層とトランザクション層との間に配置されていることを特徴とする情報処理装置。
【請求項5】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスのトランザクション層と内部バス制御手段との間に配置されていることを特徴とする情報処理装置。
【請求項6】
請求項1に記載の情報処理装置において、
前記シリアルバスインターフェースがPCI Expressに相当することを特徴とする情報処理装置。
【請求項7】
シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置の制御方法であって、
前記情報処理装置は、前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、前記パケットデータを暗号化および復号化する暗号復号手段とを備え、
前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする制御方法。
【請求項8】
請求項7に記載の制御方法において、
前記シリアルバスインターフェースがPCI Expressに相当することを特徴とする制御方法。
【請求項1】
シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置であって、
前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、
前記パケットデータを暗号化および復号化する暗号復号手段とを備え、
前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする情報処理装置。
【請求項2】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスの物理層の外側に隣接して配置されていることを特徴とする情報処理装置。
【請求項3】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスの物理層とデータリンク層との間に配置されていることを特徴とする情報処理装置。
【請求項4】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスのデータリンク層とトランザクション層との間に配置されていることを特徴とする情報処理装置。
【請求項5】
請求項1に記載の情報処理装置において、
前記暗号復号手段は、前記第1および第2のデバイスのトランザクション層と内部バス制御手段との間に配置されていることを特徴とする情報処理装置。
【請求項6】
請求項1に記載の情報処理装置において、
前記シリアルバスインターフェースがPCI Expressに相当することを特徴とする情報処理装置。
【請求項7】
シリアルバスインターフェースで接続された第1および第2のデバイスを備えた情報処理装置の制御方法であって、
前記情報処理装置は、前記第1および第2のデバイス間で通信されるパケットデータを監視する監視手段と、前記パケットデータを暗号化および復号化する暗号復号手段とを備え、
前記監視手段によって、前記第1および第2のデバイス間で通信されるパケットデータがTLPであると判別された場合は、前記パケットデータを、前記暗号復号手段によって暗号化および復号化して通信することを特徴とする制御方法。
【請求項8】
請求項7に記載の制御方法において、
前記シリアルバスインターフェースがPCI Expressに相当することを特徴とする制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−352676(P2006−352676A)
【公開日】平成18年12月28日(2006.12.28)
【国際特許分類】
【出願番号】特願2005−178140(P2005−178140)
【出願日】平成17年6月17日(2005.6.17)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成18年12月28日(2006.12.28)
【国際特許分類】
【出願日】平成17年6月17日(2005.6.17)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]