(57)【特許請求の範囲】
【請求項１】
メインプログラムで動作するメインシステムとサブプログラムで動作するとともに該メインシステムの制御下で動作する複数のサブシステムとが所定の通信手段によって離接可能に接続されている複合システムにおいて、
前記サブシステムは、
起動後最初に前記通信手段を通して前記メインシステムと暗号化通信を行うための初期公開鍵を記憶するサブシステム側初期公開鍵用不揮発性記憶手段と、
所定の一部が暗号化されている前記サブプログラム、及び、前記メインシステムとの間で前記通信手段を通して前記最初の暗号化通信後に暗号化通信を行うための暗号化されている次期公開鍵、を記憶するサブシステム側次期公開鍵用不揮発性記憶手段と、
前記サブシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行うサブシステム側初期通信制御手段と、
前記サブシステム側次期公開鍵用不揮発性記憶手段の暗号化されている前記サブプログラム及び前記次期公開鍵を前記メインシステムから受け取った暗号鍵を使用して解凍する解凍手段と、
前記解凍手段が解凍した前記次期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信を行うサブシステム側次期通信制御手段と、
を備え、
前記メインシステムは、
前記通信手段を通して前記サブシステムと暗号化通信を行うための初期公開鍵を暗号化して記憶するメインシステム側初期公開鍵用不揮発性記憶手段と、
前記サブシステムの暗号化されている前記サブプログラム及び前記次期公開鍵を解凍するための前記暗号鍵、及び、該サブシステムの該次期公開鍵と鍵共有によって暗号化通信を行うための次期公開鍵、を暗号化して記憶するメインシステム側次期公開鍵用不揮発性記憶手段と、
前記メインシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵と前記メインシステム側次期公開鍵用不揮発性記憶手段の前記暗号鍵及び前記次期公開鍵とを解凍するセキュリティチップと、
前記サブシステムから前記初期公開鍵を受け取ると、前記メインシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行って前記暗号鍵を該サブシステムに送信するメインシステム側初期通信制御手段と、
前記サブシステムから前記次期公開鍵を受け取ると、前記メインシステム側次期公開鍵用不揮発性記憶手段の前記次期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信を行うメインシステム側次期通信制御手段と、
を備えていることを特徴とする複合システム。
【請求項２】
前記サブシステムは、サブシステムモニタを搭載し、前記サブシステム側初期通信制御手段及び前記サブシステム側次期通信制御手段が、該サブシステムモニタのハッシュ値及び解凍後の前記サブプログラムのハッシュ値を、前記通信手段を通して前記メインシステムに送信し、
前記セキュリティチップは、前記サブシステムから送られてきた前記サブシステムモニタの前記ハッシュ値が正当であることを確認すると、暗号化された前記暗号鍵を解凍し、また、前記サブプログラムの前記ハッシュ値が正当であることを確認すると、前記次期公開鍵を解凍することを特徴とする請求項１記載の複合システム。
【請求項３】
前記サブシステムは、
前記サブシステム側次期公開鍵用不揮発性記憶手段が、前記サブシステムが搭載し所定順序で実行または利用する前記サブプログラム以外のプログラムまたは／及びデータの一部を暗号化された状態で記憶するとともに、それぞれ該プログラムまたは／及びデータとともに該プログラムまたは／及びデータが解凍された後の前記メインシステムとの間で暗号化通信を行うための暗号化されている次期公開鍵を記憶し、
前記サブシステム側次期通信制御手段が、前記解凍手段が解凍した前記次期公開鍵を使用して前記通信手段を通して前記メインシステムと暗号化通信を行い、
前記メインシステムは、
前記メインシステム側次期公開鍵用不揮発性記憶手段が、前記サブシステムの暗号化されている前記サブプログラム以外のプログラムまたは／及びデータと前記次期公開鍵を解凍するための暗号鍵及び該次期公開鍵と鍵共有によって暗号化通信を行うための次期公開鍵を記憶し、
前記メインシステム側次期通信制御手段が、前記サブシステムから受け取った次期公開鍵の正当性が前記セキュリティチップによって確保されると、前記メインシステム側次期公開鍵用不揮発性記憶手段の前記次期公開鍵を該サブシステムに送信して、該サブシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信を行うことを特徴とする請求項１または２に記載の複合システム。
【請求項４】
前記複合システムは、前記サブシステムの１つが、ＵＳＢによって離接可能に接続され、該複合システムの動作を指示操作する操作システムであることを特徴とする請求項１から請求項３のいずれか１項に記載の複合システム。
【請求項５】
メインプログラムで動作するメインシステムとサブプログラムで動作するとともに該メインシステムの制御下で動作する複数のサブシステムとが所定の通信手段によって離接可能に接続されている複合システムのセキュリティ方法であって、
前記サブシステム側の処理ステップとして、
起動後最初に前記通信手段を通して前記メインシステムと暗号化通信を行うための初期公開鍵をサブシステム側初期公開鍵用不揮発性記憶手段に記憶するサブシステム側初期公開鍵記憶処理ステップと、
所定の一部が暗号化されている前記サブプログラム、及び、前記メインシステムとの間で前記通信手段を通して前記最初の暗号化通信後に暗号化通信を行うための暗号化されている次期公開鍵、をサブシステム側次期公開鍵用不揮発性記憶手段に記憶するサブシステム側次期公開鍵記憶処理ステップと、
前記サブシステム側初期公開鍵記憶処理ステップで記憶した前記初期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信をサブシステム側初期通信制御手段によって行うサブシステム側初期通信制御処理ステップと、
前記サブシステム側次期公開鍵記憶処理ステップで暗号化されている前記サブプログラム及び前記次期公開鍵を前記メインシステムから受け取った暗号鍵を使用して解凍手段によって解凍する解凍処理ステップと、
前記解凍処理ステップで解凍された前記次期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信をサブシステム側次期通信制御手段によって行うサブシステム側次期通信制御処理ステップと、
を備え、
前記メインシステムでの処理ステップとして、
前記通信手段を通して前記サブシステムと暗号化通信を行うための初期公開鍵を暗号化してメインシステム側初期公開鍵用不揮発性記憶手段に記憶するメインシステム側初期公開鍵記憶処理ステップと、
前記サブシステムの暗号化されている前記サブプログラム及び前記次期公開鍵を解凍するための前記暗号鍵、及び、該サブシステムの該次期公開鍵と鍵共有によって暗号化通信を行うための次期公開鍵、を暗号化してメインシステム側次期公開鍵用不揮発性記憶手段に記憶するメインシステム側次期公開鍵記憶処理ステップと、
前記メインシステム側初期公開鍵記憶処理ステップで記憶した前記初期公開鍵と前記メインシステム側次期公開鍵記憶処理ステップで記憶した前記暗号鍵及び前記次期公開鍵とをセキュリティチップによって解凍するセキュリティ処理ステップと、
前記サブシステムから前記初期公開鍵を受け取ると、前記メインシステム側初期公開鍵記憶処理ステップで記憶した前記初期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行い、メインシステム側初期通信制御手段によって前記暗号鍵を該サブシステムに送信するメインシステム側初期通信制御処理ステップと、
前記サブシステムから前記次期公開鍵を受け取ると、前記メインシステム側次期公開鍵記憶処理ステップで記憶した前記次期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信をメインシステム側次期通信制御手段により行うメインシステム側次期通信制御処理ステップと、
を備えていることを特徴とする複合システムのセキュリティ方法。
【請求項６】
メインプログラムで動作するメインシステムとサブプログラムで動作するとともに該メインシステムの制御下で動作する複数のサブシステムとが所定の通信手段によって離接可能に接続されている複合システムの前記メインシステム及び前記サブシステムの制御を実行させるためのセキュリティプログラムであって、
前記サブシステムに、
起動後最初に前記通信手段を通して前記メインシステムと暗号化通信を行うための初期公開鍵をサブシステム側初期公開鍵用不揮発性記憶手段に記憶するサブシステム側初期公開鍵記憶処理と、
所定の一部が暗号化されている前記サブプログラム、及び、前記メインシステムとの間で前記通信手段を通して前記最初の暗号化通信後に暗号化通信を行うための暗号化されている次期公開鍵、をサブシステム側次期公開鍵用不揮発性記憶手段に記憶するサブシステム側次期公開鍵記憶処理と、
前記サブシステム側初期公開鍵記憶処理で記憶した前記初期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信をサブシステム側初期通信制御手段によって行うサブシステム側初期通信制御処理と、
前記サブシステム側次期公開鍵記憶処理で暗号化されている前記サブプログラム及び前記次期公開鍵を前記メインシステムから受け取った暗号鍵を使用して解凍手段によって解凍する解凍処理と、
前記解凍処理で解凍した前記次期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信をサブシステム側次期通信制御手段によって行うサブシステム側次期通信制御処理と、
を実行させ、
前記メインシステムに、
前記通信手段を通して前記サブシステムと暗号化通信を行うための初期公開鍵を暗号化してメインシステム側初期公開鍵用不揮発性記憶手段に記憶するメインシステム側初期公開鍵記憶処理と、
前記サブシステムの暗号化されている前記サブプログラム及び前記次期公開鍵を解凍するための前記暗号鍵、及び、該サブシステムの該次期公開鍵と鍵共有によって暗号化通信を行うための次期公開鍵を暗号化してメインシステム側次期公開鍵用不揮発性記憶手段に記憶するメインシステム側次期公開鍵記憶処理と、
前記メインシステム側初期公開鍵記憶処理で記憶した前記初期公開鍵と前記メインシステム側次期公開鍵記憶処理で記憶した前記暗号鍵及び前記次期公開鍵とをセキュリティチップによって解凍するセキュリティ処理と、
前記サブシステムから前記初期公開鍵を受け取ると、前記メインシステム側初期公開鍵記憶処理で記憶した前記初期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行い、メインシステム側初期通信制御手段によって前記暗号鍵を該サブシステムに送信するメインシステム側初期通信制御処理と、
前記サブシステムから前記次期公開鍵を受け取ると、前記メインシステム側次期公開鍵記憶処理で記憶した前記次期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信をメインシステム側次期通信制御手段により行うメインシステム側次期通信制御処理と、
を実行させることを特徴とするセキュリティプログラム。
【請求項７】
請求項６記載のセキュリティプログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体に関し、詳細には、サブシステムになりすました進入を防止するメインシステムと複数のサブシステムからなる複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体に関する。
【背景技術】
【０００２】
複合装置、複写装置、プリンタ装置、ファクシミリ装置等の画像処理装置等においては、ネットワークの普及に伴ってネットワークに接続されて、該ネットワークに接続されている複数のコンピュータ等のホスト装置から共有して使用されるようになってきている。
【０００３】
また、近年の画像処理装置やその他の装置は、複数の資源、例えば、複合装置においては、メインシステムに、操作システム、給紙システム、読み取りシステム、画像形成システム、走査システム、通信システム、後処理システム等の複数のサブシステムが接続されることで、複合システムとして構築されるようになってきており、サブシステムそれぞれがＣＰＵ（Central Processing Unit ）を搭載して該システムを制御するとともに、メインシステムのＣＰＵの制御下で全体の動作制御を行うようになってきている。
【０００４】
そして、このような複合システムにおいては、サブシステムの接続と切り離しが容易であることから、複合システム内に蓄積されているユーザの個人的な情報を保護することが重要な問題となってきている。このような複合システムにおいては、サブシステムになりすましたソフトウェアの不正改ざんや情報の漏洩が問題となる。
【０００５】
例えば、操作システムでは、単純な表示やキー操作を行うだけでなく、ブラウザ機能や高度な画像処理機能を行うため高機能で汎用的なＯＳ（Operating System）を搭載したシステムが必要とされるようになり、システムが高度化するとともに汎用システムであることから、外部から改竄の対象となりうることに対する対策が要求される。
【０００６】
従来から、ＴＰＭ（Trusted Platform Module）を用いた起動時の正当性検証を、例えば、図８に示すように行っている。すなわち、図８に示すように、プラットフォームのＢＩＯＳのハッシュ値をＴＰＭで検証して、正当性が確認されると、基本パッケージのハッシュ値をＴＰＭで検証し、さらに、基本パッケージによってアプリケーションのハッシュ値を計算して、ＴＰＭで正当性が検証されると、アプリケーションパッケージを起動させるという手順で行われる。
【０００７】
そして、従来、外部記憶媒体に記憶されているアプリケーションを実行する際の該アプリケーションの正当性を検証した後に該アプリケーションを実行する技術が提案されている（特許文献１参照）。この従来技術は、アプリケーションを記憶する外部記憶媒体に固有の媒体識別情報を格納し、該アプリケーションと該媒体識別情報とに対応付けられ該アプリケーションの実行を許可するか否かの許可情報を記憶手段に記憶して、該外部記憶媒体が接続されると、該外部記憶媒体に格納されている前記媒体識別情報と前記アプリケーション及び該記憶手段の許可情報に基づいて該外部記憶手段の該アプリケーションを実行するか否か判断して、実行すると判断すると、該アプリケーションを実行している。すなわち、この従来技術は、外部記憶媒体のアプリケーションの正当性を検証することで、該アプリケーションが動作することによる複合システムへの進入を防止しようとしている。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記公報記載の従来技術にあっては、外部記憶媒体に格納されているアプリケーションと媒体識別情報と本体の記憶手段に記憶されている許可情報を用いてアプリケーションの正当性を検証して該アプリケーションの動作を許可／不許可することで、セキュリティの確保を図っているため、複合システムにおけるセキュリティの確保を向上させる上で、改良の必要があった。また、この場合、正当性の検証に、ＴＰＭを用いても複合システムにおけるセキュリティの確保を、上記従来技術にあっては不十分である。
【０００９】
すなわち、上述のように、複合システムにおいては、メインシステムに、操作システム、画像形成システム、通信システム等の複数のサブシステムが接続されて構築されており、サブシステムは、必要に応じて適宜増設、切り離しが可能となっている。したがって、このような複合システムにおいては、サブシステムになりすました複合システムへの進入や情報の盗用、改竄等のセキュリティが脅かされるおそれがあるが、従来技術にあっては、このようななりすましによる進入等によるセキュリティを確保することが困難であり、改良が要望されている。
【００１０】
そこで、本発明は、サブシステムになりすました攻撃からセキュリティを確実に確保するメインシステムとサブシステムからなる複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【００１１】
本発明は、上記目的を達成するために、メインプログラムで動作するメインシステムとサブプログラムで動作するとともに該メインシステムの制御下で動作する複数のサブシステムとが所定の通信手段によって離接可能に接続されている複合システムにおいて、前記サブシステムは、起動後最初に前記通信手段を通して前記メインシステムと暗号化通信を行うための初期公開鍵を記憶するサブシステム側初期公開鍵用不揮発性記憶手段と、所定の一部が暗号化されている前記サブプログラム、及び、前記メインシステムとの間で前記通信手段を通して前記最初の暗号化通信後に暗号化通信を行うための暗号化されている次期公開鍵、を記憶するサブシステム側次期公開鍵用不揮発性記憶手段と、前記サブシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行うサブシステム側初期通信制御手段と、前記サブシステム側次期公開鍵用不揮発性記憶手段の暗号化されている前記サブプログラム及び前記次期公開鍵を前記メインシステムから受け取った暗号鍵を使用して解凍する解凍手段と、前記解凍手段が解凍した前記次期公開鍵を前記メインシステムに送信して、該メインシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信を行うサブシステム側次期通信制御手段と、を備え、前記メインシステムは、前記通信手段を通して前記サブシステムと暗号化通信を行うための初期公開鍵を暗号化して記憶するメインシステム側初期公開鍵用不揮発性記憶手段と、前記サブシステムの暗号化されている前記サブプログラム及び前記次期公開鍵を解凍するための前記暗号鍵、及び、該サブシステムの該次期公開鍵と鍵共有によって暗号化通信を行うための次期公開鍵、を暗号化して記憶するメインシステム側次期公開鍵用不揮発性記憶手段と、前記メインシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵と前記メインシステム側次期公開鍵用不揮発性記憶手段の前記暗号鍵及び前記次期公開鍵とを解凍するセキュリティチップと、前記サブシステムから前記初期公開鍵を受け取ると、前記メインシステム側初期公開鍵用不揮発性記憶手段の前記初期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該初期公開鍵の鍵共有による暗号化通信を行って前記暗号鍵を該サブシステムに送信するメインシステム側初期通信制御手段と、前記サブシステムから前記次期公開鍵を受け取ると、前記メインシステム側次期公開鍵用不揮発性記憶手段の前記次期公開鍵を該サブシステムに送信して該サブシステムと前記通信手段を通して該次期公開鍵の鍵共有による暗号化通信を行うメインシステム側次期通信制御手段と、を備えていることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、サブシステムになりすました攻撃からセキュリティを確実に確保することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施例を適用した複写装置の要部ブロック構成図。
【図２】本体制御部の詳細なブロック構成図。
【図３】メインシステム及びサブシステムの不揮発性メモリのデータ格納状態を示す図。
【図４】操作部の詳細なブロック構成図。
【図５】複写装置における起動時正当性検証処理を示す図。
【図６】ＢＬＯＢのＰＣＲレジスタ依存関係を示す図。
【図７】本体制御部と操作部の各データの依存関係を示す図。
【図８】一般的なＴＰＭを用いた起動時の正当性検証処理の説明図。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の必須の構成要件ではない。
【実施例１】
【００１７】
図１〜図７は、本発明の複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体の一実施例を示す図であり、図１は、本発明の複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体の一実施例を適用した複合装置１の要部ブロック構成図である。
【００１８】
図１において、複合装置（複合システム）１は、メインシステムとしての本体制御部２、サブシステムとしてのエンジン部３、ＦＡＸ部４、操作部５等を備えているとともに、図示しないが、ネットワークに接続するネットワーク通信部等を備えており、本体制御部２は、エンジン部３とは、要求と応答が分離されていて応答を待たずに次の要求を発行できる高速スプリットトランザクションのバスであるＰＣＩｅ（Peripheral Component Interconnect Express）６で、ＦＡＸ部４及び操作部５とは、ＵＳＢ（Universal Serial Bus）７で、それぞれ接続されている。上記ＰＣＩｅ６及びＵＳＢ７は、通信手段として機能している。
【００１９】
エンジン３は、スキャナシステムとプリンタシステムとを備え、スキャナシステムで、原稿の画像を主走査及び副走査して原稿の画像を所定の解像度で読み取って、画像データを出力し、プリンタシステムで、本体制御部２から受け取った画像データに基づいて所定の画像形成方式、例えば、電子写真方式で画像を記録紙に記録出力する。
【００２０】
ＦＡＸ部４は、公衆回線等のファクシミリ通信可能な回線に接続され、本体制御部２の制御下で、通常のファクシミリ通信手順を実行して、相手ファクシミリ装置からのファクシミリデータの受信処理とエンジン３のスキャナシステムで読み取られて必要な画像処理の施されたデータのファクシミリ送信処理を実行する。
【００２１】
操作部５は、例えば、タッチパネル付き液晶ディスプレイ、テンキー、クリア／ストップキー、スタートキー、ファックスキー等の操作キーが設けられており、タッチパネル付き液晶ディスプレイには、機能キー及びコピー部数、プリント部数や複合装置１の状態を示すメッセージ等の各種情報、例えば、複合装置１内での紙詰まり（ジャム）の発生情報、ドア・カバー類のオープン情報等の各種情報が表示される。すなわち、操作部５は、後述する図４に示すように、ＬＣＤ（Liquid Crystal Display）３５とＬＣＤ３５上に配設されたタッチパネル３６を備えている。
【００２２】
そして、本体制御部２は、図２に示すように、ＣＰＵ（Central Processing Unit ）１１、ＲＡＭ（Random Access Memory）１２、ＡＳＩＣ（Application Specific Integrated Circuit）１３、ＴＰＭ１４、不揮発性メモリ１５及びローカルバス１６等を備えており、ＡＳＩＣ１３にＰＣＩｅ６、ＵＳＢ７が接続されている。
【００２３】
不揮発性メモリ（初期公開鍵用不揮発性記憶手段、次期公開鍵用不揮発性記憶手段）１５は、複合装置１の電源がオフの場合にも記憶内容を保持するメモリであり、例えば、フラッシュＲＯＭ（Flash Read Only Memory）等が用いられている。不揮発性メモリ１５は、例えば、図３に示すように、複合装置１のカーネル（kernel）イメージのシステムＯＳ２１、ブートＲＯＭ（ＢＯＯＴ  ＲＯＭ）２２、ＢＬＯＢ(Binary Large OBject）化されているサブシステム通信用の２つの第１通信鍵（初期公開鍵）２３と第２通信鍵（次期公開鍵）２４及びＢＬＯＢ化（暗号化）されているサブシステムファーム暗号鍵２５等を格納している。
【００２４】
システムＯＳ２１は、複合装置１のメインプログラムであり、ＢＯＯＴ  ＲＯＭ２２は、装置起動時にシステムＯＳ２１を起動させるためのブートプログラムを格納している。第１通信鍵２３及び第２通信鍵２４は、デフィー・ヘルマン鍵共有による暗号化通信に使用する通信鍵であり、２段階でのセキュリティを確保するために、２つの通信鍵２３、２４を備えている。また、本体制御部２の不揮発性メモリ１５は、エンジン３、ＦＡＸ部４、操作部５等のサブシステムの不揮発性メモリ３８（図３参照）上の暗号化データを解凍するのに必要なサブシステムファーム暗号鍵２５が格納されている。このサブシステムの不揮発性メモリ３８上の暗号化データは、図３に示すように、サブシステム（図３では、操作部５）のサブシステムＯＳ（kernelイメージ）５１の起動に不可欠な一部分及びその後の通信で使用する第２通信鍵５３であり、サブシステムファーム暗号鍵２５は、この暗号化データを解凍するための暗号鍵である。
【００２５】
ＴＰＭ（セキュリティチップ）１４は、ＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリ、タイマー等を含むハードウェアチップであり、起動検証に必要な情報を不揮発性メモリに記録する。
【００２６】
ＴＰＭ１４は、公開鍵、秘密鍵の生成、保管、演算機能が実装されており、エンドースメント鍵やStorage Root Key等の重要な鍵のＴＰＭ１４内部での管理を可能としている。また、ＴＰＭ１４は、プラットフォーム構成情報（ソフトウェアの計測値）をＴＰＭ１４内のレジスタＰＣＲ（Platform Configuration Registers）に安全に保管し、通知する機能を有している。これらの機能はそれぞれＲＴＳ（Root of Trust for Storage）、ＲＴＲ（Root of Trust for Reporting）と呼ばれ、ＲＴＭ（Root of Trust for Measurements）で計測したソフトウェアのインテグリティ情報（ハッシュ値）を安全に保管、通知することを可能としている。
【００２７】
そして、ＴＰＭ１４は、起動検証に必要な情報として、例えば、図６に示すようなハッシュ値を保管、通知する。すなわち、ＴＰＭ１４は、ＰＣＲ１に、システムモニタハッシュ値が、ＰＣＲ２に、システムＯＳハッシュ値が、ＰＣＲ３に、サブシステムモニタハッシュ値が、そして、ＲＣＲ４に、サブシステムＯＳハッシュ値が、それぞれ格納されている。これらの情報は、いずれも複合装置１の出荷時あるいは初めての起動時にＴＰＭ１４内部の不揮発性メモリに格納される。
【００２８】
ＣＰＵ１１は、上記不揮発性メモリ１５のシステムＯＳ２１に基づいてＲＡＭ１２をワークメモリとして利用しつつ複合装置１の各部を制御して、複合装置１としての基本機能を実行するとともに、本発明のセキュリティ方法を実行する。
【００２９】
ＡＳＩＣ１３は、ＣＰＵ１１の制御下で、サブシステムであるエンジン３、ＦＡＸ部４及び操作部５との間でデータ及び信号の授受を行うとともに、画像データに必要な画像処理を行う。上記ＣＰＵ１１及びＡＳＩＣ１３は、全体として、初期通信制御手段及び次期通信制御手段として機能する。
【００３０】
操作部５は、図４に示すように、ＣＰＵ３１、ＵＳＢファンクション３２、ＬＣＤＣ（ＬＣＤコントローラ）３３、ローカルバスコントローラ３４、ＬＣＤ（Liquid Crystal Display）３５、タッチパネル３６、キーコントローラ３７、不揮発性メモリ３８、ＲＡＭ３９及びローカルバス４０等を備えている。
【００３１】
ＵＳＢファンクション３２は、本体制御部２のＡＳＩＣ１３に接続されているＵＳＢ７が接続され、ＣＰＵ３１の制御下で、本体制御部２との間でデータ及び信号の授受を行う。
【００３２】
不揮発性メモリ（初期公開鍵用不揮発性記憶手段、次期公開鍵用不揮発性記憶手段）３８は、例えば、複合装置１、特に、操作部５の電源がオフの場合にも記憶内容を保持するメモリであり、例えば、フラッシュＲＯＭ（Flash Read Only Memory）等が用いられている。不揮発性メモリ３８は、例えば、図３に示したように、操作部５のカーネル（kernel）イメージのサブシステムＯＳ５１、ブートＲＯＭ（ＢＯＯＴ ＲＯＭ）５２、サブシステム通信用の第１通信鍵（初期公開鍵）５４と第２通信鍵（次期公開鍵）５３等を格納している。なお、第１通信鍵５４は、不揮発性メモリ３８のうち、容易に書き換えができない領域に格納されている。
【００３３】
サブシステムＯＳ５１は、操作部５の動作プログラムであり、ＢＯＯＴ  ＲＯＭ５２は、操作部５の起動時にサブシステムＯＳ５１を起動させるためのブートプログラムを格納している。第１通信鍵５４及び第２通信鍵５３は、デフィー・ヘルマン鍵共有による本体制御部２との暗号化通信に使用する通信鍵であり、２段階でのセキュリティを確保するために、２つの通信鍵５３、５４を備えている。そして、サブシステムＯＳ５１の起動に不可欠な一部分及びその後の通信で使用する第２通信鍵５３は、所定の暗号化方式で暗号化された暗号化データとして不揮発性メモリ３８に格納されており、後述するように、操作部５のＣＰＵ３１は、不揮発性メモリ３８の暗号化データを本体制御部２から受け取ったサブシステムファーム暗号鍵２５を使用して解凍する。
【００３４】
ＣＰＵ（解凍手段）３１は、不揮発性メモリ３８のサブシステムＯＳ５１に基づいてＲＡＭ３９をワークメモリとして利用して、操作部５の各部を制御して複合装置５としての処理を実行させるとともに、本発明のセキュリティ処理を実行する。ＣＰＵ３１及びＵＳＢファンクション３２は、全体として初期通信制御手段及び次期通信制御手段として機能する。
【００３５】
ＬＣＤＣ３３は、ＣＰＵ３１の制御下で、本体制御部２から送られてきた表示情報や機能ボタンをＬＣＤ３５へ表示させ、タッチパネル３６に行われたタッチ操作の検出を行って本体制御部２に送信する。
【００３６】
キーコントローラ３７は、操作部５のハードキーの操作を検出して、ＵＳＢファンクション３２を介して本体制御部２に通知する。
【００３７】
ローカルバスコントローラ３４は、ローカルバス４０に接続されたキーコントローラ３７、不揮発性メモリ３８及びＲＡＭ３９とＣＰＵ３１等とのローカルバス４０を介した通信の制御を行う。
【００３８】
なお、複合装置１は、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory ）、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）、ＤＶＤ（Digital Versatile Disk）、ＳＤ（Secure Digital）カード、ＭＯ（Magneto-Optical Disc）等のコンピュータが読み取り可能な記録媒体に記録されている本発明のセキュリティ方法を実行するセキュリティプログラムを読み込んでＲＯＭや不揮発性メモリ１５等に導入することで、後述するなりすましを防止するセキュリティ方法を実行する複合システムとして構築されている。このセキュリティプログラムは、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
【００３９】
次に、本実施例の作用を説明する。本実施例の複合装置１は、起動時に、本体制御部２であるメインシステムに接続される複数のサブシステムのサブシステムＯＳ５１の一部を暗号化して、該暗号化部分を復号化するサブシステム暗号鍵２５を本体制御部２の不揮発性メモリ１５にＢＬＯＢ化して保管し、該サブシステムの正当性を確認した後に、サブシステムファーム暗号鍵２５を操作部５に渡すことで、サブシステムである操作部５になりすました進入、改竄を防止する。そして、本実施例の複合装置１は、正当性のルートオブトラストが、本体制御部２のＴＰＭ１４に一元的に管理されている。
【００４０】
なお、以下の説明では、サブシステムとして、操作部５を用いた場合について説明するが、他のサブシステム（エンジン３、ＦＡＸ部４等）についても、同様に適用することができる。
【００４１】
操作部５になりすます方法としては、サブシステムである操作部５（以下、適宜、サブシステムという。）とメインシステムである本体制御部２（以下、適宜、メインシステムという。）がＵＳＢ７で接続されているため、ＵＳＢ７によって操作部５とは別のデバイスを接続して、あたかも操作部５であるかのように振る舞って進入し、データの改竄や盗用を行う。
【００４２】
そこで、本実施例の複合装置１は、図５に示すように起動時正当性検証処理を行うことで、サブシステムとしてのなりすましによる進入を防止している。すなわち、複合装置１の電源が投入されると、本体制御部２が、ＢＯＯＴ  ＲＯＭ２２のブートプログラムによって起動を開始して、システムＯＳ２１の起動を行い、また、操作部５を含むサブシステムが、そのＢＯＯＴ  ＲＯＭ５２によって起動して、サブシステムＯＳ５１を起動させる。
【００４３】
本体制御部２は、システムＯＳ２１が起動すると、不揮発性メモリ１５に格納されているＢＬＯＢ化されている第１通信鍵２３を読み出して解凍して公開鍵（巨大素数をｐ、生成元をｇとする。）を取得し（ステップＳ１０１）、秘密の値ａを乱数生成して（ステップＳ１０２）、該秘密の値ａ、巨大素数ｐ及び生成元ｇを使用して公開鍵となるデータＡ（Ａ＝ｇ＊＊ａ  ｍｏｄ  ｐ）を求めて操作部（サブシステム）５を含むサブシステムに送信する（ステップＳ１０３）。
【００４４】
一方、サブシステムである操作部５は、サブシステムモニタ５Ｍを起動すると、サブシステムモニタ５Ｍが、第１通信鍵５４を不揮発性メモリ３８に格納されている第１通信鍵５４を読み出して解凍して公開鍵（巨大素数をｐ、生成元をｇとする。）を取得し（ステップＳ２０１）、秘密の値ｂを乱数生成して（ステップＳ２０２）、該秘密の値ｂ、巨大素数ｐ及び生成元ｇを使用して公開鍵となるデータＢ（Ｂ＝ｇ＊＊ｂ  ｍｏｄ  ｐ）を求めて本体制御部（メインシステム）２に送信する（ステップＳ２０３）。
【００４５】
本体制御部２は、操作部５から受け取ったデータＢから公開鍵Ｋａを次式により算出して以降の暗号鍵とし（ステップＳ１０４）、サブシステムからハッシュ値が送信されてくるのを待つ。
【００４６】
Ｋａ＝Ｂ＊＊ａ  ｍｏｄ  ｐ・・・（１）
同様に、操作部５は、本体制御部２から受け取ったデータＡから公開鍵Ｋｂを次式により算出して、以降の暗号鍵とする（ステップＳ２０４）。
【００４７】
Ｋｂ＝Ａ＊＊ｂ  ｍｏｄ  ｐ・・・（２）
上記暗号鍵をメインシステムである本体制御部２及びサブシステムである操作部５が取得することで、デフィー・ヘルマン鍵共有が成り立ち、本体制御部２と操作部５は、以降、公開鍵Ｋａ、Ｋｂを暗号鍵とした暗号化通信を行う。
【００４８】
操作部５は、公開鍵Ｋｂを算出すると、サブシステムモニタ５Ｍ自身のハッシュ値を暗号化通信によってメインシステムである本体制御部２に送信し（ステップＳ２０５）、本体制御部２は、送られてきたハッシュ値をＴＰＭ１４にレポートして（ステップＳ１０５）、正当性が確認されると、不揮発性メモリ１５にＢＬＯＢ化して格納されているサブシステムファーム暗号鍵２５を解凍して、サブシステムである操作部５に暗号化通信で送信する（ステップＳ２１６）。
【００４９】
操作部５は、サブシステムファーム暗号鍵２５が本体制御部２から送られてくると、該サブシステムファーム暗号鍵２５を使用してサブシステムＯＳ５１の暗号化部分を解凍してメモリ上に展開し（ステップＳ２０６）、サブシステムＯＳ５１の解凍後のハッシュ値（ファームハッシュ値）をメインシステムである本体制御部２に暗号化通信で送信する（ステップＳ２０７）。
【００５０】
本体制御部２は、操作部５からファームハッシュ値が送られてくると、該サブシステムファームハッシュ値をＴＰＭ１４にレポートして正当性が担保されると（ステップＳ１０７）、不揮発性メモリ１５にＢＬＯＢ化されて格納されている第２通信鍵２４を読み出して解凍して公開鍵（巨大素数をｐ、生成元をｇとする。）を取得し（ステップＳ１０８）、秘密の値ａを乱数生成して（ステップＳ１０９）、該秘密の値ａ、巨大素数ｐ及び生成元ｇを使用して公開鍵となるデータＡ（Ａ＝ｇ＊＊ａ  ｍｏｄ  ｐ）を求めて操作部５に暗号化通信で送信する（ステップＳ１１０）。
【００５１】
操作部５は、ファームハッシュ値を送信すると、ファームＯＳ５１の暗号化領域に含まれている第２通信鍵５３を解凍して公開鍵（巨大素数をｐ、生成元をｇとする。）を取得し（ステップＳ２０８）、秘密の値ｂを乱数生成して（ステップＳ２０９）、該秘密の値ｂ、巨大素数ｐ及び生成元ｇを使用して公開鍵となるデータＢ（Ｂ＝ｇ＊＊ｂ  ｍｏｄ  ｐ）を求めて本体制御部（メインシステム）２に暗号化通信で送信する（ステップＳ２１０）。
【００５２】
本体制御部２は、サブシステムである操作部５から受け取ったデータＢから公開鍵Ｋａを、上記式（１）により算出して以降の暗号鍵とし（ステップＳ１０４）、通常の暗号化通信を開始する。
【００５３】
同様に、操作部５は、本体制御部２から受け取ったデータＡから公開鍵Ｋｂを上記式（２）により算出して、以降の暗号鍵とし（ステップＳ２１１）、通常の暗号化通信を開始する。
【００５４】
そして、図５に示すように、サブシステムである操作部５は、ステップＳ２０１からステップＳ２０７の段階においては、サブシステムモニタ５Ｍ（図７参照）が動作し、ステップＳ２０８以降においては、サブシステムＯＳ５１が動作する。
【００５５】
すなわち、本実施例の複合装置１は、図６に本体制御部２の不揮発性メモリ１５に格納されているＢＬＯＢ化されている第１通信鍵２３、サブシステムファーム暗号鍵２５及び第２通信鍵２４のＴＰＭ１４内のＰＣＲに対する依存関係を示すように、第１通信鍵２３は、ＰＣＲ１のシステムモニタハッシュ値とＰＣＲ２のシステムＯＳハッシュ値が揃わないと、このＢＬＯＢを解凍することができず、サブシステムファーム暗号鍵２５は、ＰＣＲ１のシステムモニタハッシュ値、ＰＣＲ２のシステムＯＳハッシュ値及びＰＣＲ３のサブシステムモニタハッシュ値が揃わないと、このＢＬＯＢを解凍することができない。さらに、第２通信鍵２４は、サブシステムファーム暗号鍵２５は、ＰＣＲ１のシステムモニタハッシュ値、ＰＣＲ２のシステムＯＳハッシュ値、ＰＣＲ３のサブシステムモニタハッシュ値及びＰＣＲ４のサブシステムＯＳハッシュ値が揃わないと、このＢＬＯＢを解凍することができない。
【００５６】
サブシステムである操作部５は、通常のシステムブートと同様に、サブシステムモニタ５Ｍが最初にＢＯＯＴ  ＲＯＭ５２から起動され、ＣＰＵ３１等のハードウエアの初期化を行った後、サブシステムＯＳ５１をロードする。ところが、本実施例の複合装置１の操作部５は、通信路であるＵＳＢ７の安全性及びシステム動作の安全性を高めるために、不揮発性メモリ３８上のサブシステムＯＳ５１の一部及び第２通信鍵５３のデータが暗号化されている。
【００５７】
そこで、サブシステムモニタ５Ｍは、暗号化されているサブシステムＯＳ５１及び第２通信鍵５３を解凍するために、本体制御部２とデフィー・ヘルマン鍵共有により通信路の鍵を決定して暗号化通信を行って、本体制御部２がＢＬＯＢ化して不揮発性メモリ１５に格納しているサブシステムファーム暗号鍵２５を要求する。
【００５８】
そして、このサブシステムファーム暗号鍵２５を本体制御部２から安全に取得するために、不揮発性メモリ３８に本体制御部２と暗号化通信を行うための第１通信鍵５４を格納しており、この本体制御部２の第１通信鍵２３と操作部５の第１通信鍵５４を使用したデフィー・ヘルマン鍵共有の動作によって、本体制御部２と操作部５それぞれがランダムに選んだ値から通信鍵Ｋａ、Ｋｂを生成して、この通信鍵Ｋａ、Ｋｂを使用して暗号化通信する。
【００５９】
そして、サブシステムである操作部５は、モニタハッシュ値を本体制御部２に送信し、本体制御部２が、ＴＰＭ１４上のＰＣＲレジスタに、ハッシュ値を登録する。
【００６０】
本体制御部２は、サブシステムＯＳ及び第２通信鍵５３を解凍するためのサブシステムファーム暗号鍵２５を不揮発性メモリ１５から取り出して解凍し、デフィー・ヘルマン鍵共有で確立した暗号通信を利用して操作部５に鍵を提供する。
【００６１】
操作部５のサブシステムモニタ５Ｍは、この鍵でサブシステムＯＳ５１の暗号化領域及び第２通信鍵５３を解凍した後、ＲＡＭ３９上にサブシステムＯＳ５１をロードして、操作部５の制御をサブシステムＯＳ５１に移す（サブシステムＯＳ５１の起動）。
【００６２】
本体制御部２は、不揮発性メモリ１５からＢＬＯＢ化されている第２通信鍵２４を取り出し、操作部５の解凍された第２通信鍵５３同士で、再びデフィー・ヘルマン鍵共有を用いて通信鍵を生成して、暗号化通信を確立する。
【００６３】
上述のように、従来のＴＰＭを利用した正当性検証に比較して、メインシステムである本体制御部２とサブシステムである操作部５との暗号化通信を２重の通信鍵（第１通信鍵２３、５４、と第２通信鍵２４、５３）で確立するとともに、操作部５のサブシステムＯＳ５１の一部と第２通信鍵５３を暗号化して不揮発性メモリ３８に格納しておき、このサブシステムＯＳ５１と第２通信鍵５３を解凍するサブシステムファーム暗号鍵２５をＴＰＭ１４で正当性を検証して操作部５に提供することで、操作部５になりすましたデバイスによる進入を確実に防止し、複合装置１の本体側に蓄積されている情報のセキュリティを確保することができる。
【００６４】
すなわち、図７に示すように、本体制御部２のＢＬＯＢである第１通信鍵２３、サブシステムファーム暗号鍵２５及び第２通信鍵２４、そして、操作部５のサブシステムＯＳ５１と第２通信鍵５３は、システムモニタ２ＭとシステムＯＳ２１及びサブシステムモニタ５Ｍに対して矢印で示すような依存関係にある。なお、図８において、実線矢印及び破線矢印は、モジュールであるシステムモニタ２Ｍ、システムＯＳ２１及びサブシステムモニタ５ＭとＢＬＯＢのＰＣＲレジスタによる依存関係を示しており、２点鎖線矢印は、サブシステムＯＳ５１と第２通信鍵５３の暗号化領域と暗号鍵の関係を示している。この矢印で示す依存関係のうち、破線矢印及び２点鎖線矢印による依存関係は、上述のように暗号化通信で実現されている。
【００６５】
また、操作部５の第１通信鍵５４を、不揮発性メモリ３８の書き換えが容易に行うことができない領域に保存して、改ざんできないようになっており、本体制御部２の第１通信鍵２３は、システムモニタ２ＭとシステムＯＳ２１に依存していて、正しいシステムモニタ２ＭとシステムＯＳ２１の組み合わせでのみ解凍可能となっている。
【００６６】
したがって、第１通信鍵２３と第１通信鍵５４によるデフィー・ヘルマン鍵共有で暗号化通信が確立している状態は、本体制御部２のシステムＯＳ２１とシステムモニタ２Ｍが正当であることを示している。
【００６７】
さらに、サブシステムファーム暗号鍵２５は、ＢＬＯＢ化されており、第１通信鍵２３、５４による暗号化通信上で通信されるサブシステムモニタ５Ｍのハッシュ値が正しくないと、ＢＬＯＢ化されているサブシステムファーム暗号鍵２５を解凍することができないという依存関係がある。したがって、ＢＬＯＢ化されているサブシステムファーム暗号鍵２５を解凍することができることで、サブシステムモニタ５Ｍが正当であることが示される。
【００６８】
また、サブシステムファーム暗号鍵２５により解凍されるサブシステムＯＳ５１の一部と第２通信鍵５３が解凍され、サブシステムＯＳ５１のハッシュ値に、本体制御部２のＢＬＯＢ化されている第２通信鍵２４が依存しているため、ＢＬＯＢ化されている第２通信鍵２４が解凍できることで、サブシステムＯＳ５１が正当であることが示される。また、その後の第２通信鍵２４、５３による暗号化通信が確立することで、本体制御部２と操作部５双方の第２通信鍵２４、５３が正当であることが示される。
【００６９】
サブシステムＯＳ５１、第２通信鍵５３を暗号化して、そのサブシステムファーム暗号鍵２５をＢＬＯＢ化することで、操作部５だけの改ざんが行われると、最低でも第２通信鍵２４、５３による暗号化通信状態に入らないため、本体制御部２側にあるユーザデータ等の重要なデータが操作部５等のサブシステムのなりすましによる改竄や漏洩を確実に防止することができる。
【００７０】
すなわち、本実施例の複合装置１は、本体制御部２にのみＴＰＭ１４を搭載し、操作部５等のサブシステムには、ＴＰＭを搭載せずに、正当性の検証を全て本体制御部２のＴＰＭ１４から与えて、正当性のルートオブトラストを本体制御部２のＴＰＭ１４に一元化している。したがって、操作部５等のサブシステムになりすました進入や別システムで通信路がある場合には、システム間の通信を横取りするMain-In-The-Middleと呼ばれる攻撃を適切に防止することができる。
【００７１】
なお、本実施例の複合装置１は、通信鍵を、第１通信鍵２３、５４と第２通信鍵２４、５３の２段階にしているが、さらに多くの段階に通信鍵（公開鍵）を設定してもよいし、ＯＳが利用するファイルシステム、アプリケーションイメージを、サブシステムＯＳ５１と同様に、第３通信鍵やさらに次の通信鍵と一緒に暗号化して、第３通信鍵やさらに次の通信鍵を、本体制御部２の不揮発性メモリ１５にＢＬＯＢ化して保存するようにしてもよい。このようにすると、ファイルシステムやアプリケーション等の正当性を確保することができ、より一層セキュリティを向上させることができる。
【００７２】
このように、本実施例の複合装置１は、メインシステムである本体制御部２と複数のサブシステムであるエンジン３、ＦＡＸ部４、操作部５がＰＣＩｅ６やＵＳＢ７等の通信手段によって離接可能に接続されており、本体制御部２とサブシステムである操作部５との暗号化通信に用いる公開鍵の正当性を保護するセキュリティチップとしてのＴＰＭ１４を本体制御部２にのみ設ける。また、複合装置１は、操作部５が、操作部５のサブプログラムであるサブシステムＯＳ５１の一部と第２公開鍵５３を暗号化して不揮発性メモリ３８に記憶して、本体制御部２のＴＰＭ１４が、起動時に最初に操作部５から送られてきた第１公開鍵５４の正当性を確認して、鍵共有による暗号化通信に成功すると、サブシステムファーム暗号鍵２５を該暗号化通信で操作部５に送信して、操作部５が暗号化されたサブシステムＯＳ５１の一部と第２公開鍵５３を解凍して、以降、本体制御部２と操作部５が鍵共有による暗号化通信を行う。
【００７３】
したがって、サブシステムとしての操作部５になりすました本体制御部２への進入を確実に防止することができ、なりすましによる情報の盗用、改竄等のセキュリティが脅かされる事態の発生を確実に防止することができる。
【００７４】
また、本実施例の複合装置１は、操作部５が、サブシステムモニタ５Ｍを搭載し、該サブシステムモニタ５Ｍのハッシュ値及び解凍後のサブシステムＯＳ５１のハッシュ値を本体制御部２に送信して、本体制御部２が、不揮発性メモリ１５に第１公開鍵２３、サブシステムファーム暗号鍵２５及び第２公開鍵をＢＬＯＢ化（暗号化）して記憶する。本体制御部２は、ＴＰＭ１４が、操作部５から送られてきたサブシステムモニタ５Ｍのハッシュ値が正当であることを確認すると、暗号化された第１公開鍵２３を解凍し、また、サブシステムＯＳ５１のハッシュ値が正当であることを確認すると、サブシステムファーム暗号鍵２５と第２公開鍵２４を解凍して、操作部５に送信している。
【００７５】
したがって、操作部５のなりすましをより一層確実に防止することができ、なりすましによる情報の盗用、改竄等のセキュリティが脅かされる事態の発生をより一層確実に防止することができる。
【００７６】
さらに、本実施例の複合装置１は、操作部５が、所定順序で実行または利用するサブシステムＯＳ５１以外のプログラムまたは／及びデータの一部を暗号化された状態で不揮発性メモリ３８に記憶するとともに、それぞれ該プログラムまたは／及びデータとともに該プログラムまたは／及びデータが解凍された後の本体制御部２との間で暗号化通信を行うための暗号化されている公開鍵を記憶して、解凍した該公開鍵を使用して本体制御部２と暗号化通信を行い、本体制御部２が、操作部５の暗号化されているサブシステムＯＳ５１以外のプログラムまたは／及びデータと公開鍵を解凍するための暗号鍵及び該公開鍵の共有によって暗号化通信を行うための公開鍵を記憶し、操作部５から受け取った公開鍵の正当性がＴＰＭ１４によって確保されると、不揮発性メモリ１５の該公開鍵を操作部５に送信して、操作部５と該公開鍵の鍵共有による暗号化通信を行ってもよい。
【００７７】
このようにすると、操作部５の搭載するサブシステムＯＳ５１の正当性の確保だけでなく、主要なプログラムやデータの正当性をも確保することができ、セキュリティをより一層向上させることができる。
【００７８】
また、本実施例の複合装置１は、メインシステムである本体制御部２とＵＳＢ７で離接可能に接続された操作部５をサブシステムとした場合について、説明している。
【００７９】
したがって、容易に離接可能な操作部５になりすました進入を確実に防止することができ、セキュリティを向上させることができる。
【００８０】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００８１】
本発明は、サブシステムになりすましたメインシステムへの進入を防止する複合装置、複写装置等のメインシステムと複数のサブシステムで構成される複合システム、セキュリティ方法、セキュリティプログラム及び記録媒体に利用することができる。
【符号の説明】
【００８２】
１  複写装置
２  本体制御部
３  エンジン部
４  ＦＡＸ部
５  操作部
６  ＰＣＩｅ
７  ＵＳＢ
１１  ＣＰＵ
１２  ＲＡＭ
１３  ＡＳＩＣ
１４  ＴＰＭ
１５  不揮発性メモリ
１６  ローカルバス
２１  システムＯＳ
２２  ブートＲＯＭ
２３  第１通信鍵
２４  第２通信鍵
２５  サブシステムファーム暗号鍵
３１  ＣＰＵ
３２  ＵＳＢファンクション
３３  ＬＣＤＣ（ＬＣＤコントローラ）
３４  ローカルバスコントローラ
３５  ＬＣＤ
３６  タッチパネル
３７  キーコントローラ
３８  不揮発性メモリ
３９  ＲＡＭ
４０  ローカルバス
５１  サブシステムＯＳ
５２  ブートＲＯＭ（ＢＯＯＴ  ＲＯＭ）
５３  第２通信鍵
５４  第１通信鍵
【先行技術文献】
【特許文献】
【００８３】
【特許文献１】特開２００７−２１３２４６号公報
【図１】
0005493946.tif 000002
【図２】
0005493946.tif 000003
【図３】
0005493946.tif 000004
【図４】
0005493946.tif 000005
【図５】
0005493946.tif 000006
【図６】
0005493946.tif 000007
【図７】
0005493946.tif 000008
【図８】
0005493946.tif 000009