(57)【要約】【課題】改竄による被害を防止可能な情報処理装置及び改竄無効化回路を提供する。【解決手段】改竄無効化回路１１０の設定回路１１５は、入出力端子１１１を介したアクセスが検出された場合、暗号復号処理部１２２に対して、書き込みデータを暗号化せず、読み出し時に復号させる設定、または、書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う。これにより、入出力端子１１１からの改竄を無効化する。【選択図】図１
2010193341.tif 000002
【特許請求の範囲】
【請求項１】
記憶部と、
前記記憶部へ記憶する書き込みデータの暗号化、または前記記憶部から読み出された読み出しデータの復号を行う暗号復号処理部と、
前記書き込みデータを入力、または前記読み出しデータを出力する第１の入出力端子と、前記第１の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、を具備した改竄無効化回路と、
を有することを特徴とする情報処理装置。
【請求項２】
前記改竄無効化回路は、前記第１の入出力端子を介した前記アクセスを監視するアクセス監視回路を有し、
前記アクセス監視回路は、前記第１の入出力端子を介して前記暗号復号処理部の設定を変更する旨のアクセスを検出した場合、当該アクセスを破棄することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記暗号復号処理部は、複数の暗号化方式に対応した複数の暗号処理回路または復号処理回路を有し、
前記設定回路は、前記第１の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを第１の暗号化方式により暗号化し、読み出し時に前記第１の暗号化方式とは異なる前記暗号化方式に対応した復号を行わせる設定を行うことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記改竄無効化回路は、ネットワークに接続されていない他の情報処理装置と接続する第２の入出力端子を有し、
前記暗号復号処理部は、前記第２の入出力端子を介して、前記他の情報処理装置から暗号化または復号を行うか否かの設定命令が入力された場合、前記設定命令に応じて暗号化または復号を実施することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
記憶部へ記憶する書き込みデータを入力、または前記記憶部から読み出された読み出しデータを出力する入出力端子と、
外部から前記入出力端子を介したアクセスが検出された場合、暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、
を有する改竄無効化回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの改竄による被害を防止する情報処理装置及び改竄無効化回路に関する。
【背景技術】
【０００２】
近年、ＰＣ（パーソナルコンピュータ）や、ワークステーション、ワードプロセッサなど、ネットワークに接続された情報処理装置のデータ（ソフトウェアも含む）が、悪意あるものにより改竄される被害が相次いでいる。
【０００３】
従来の改竄防止技術の１つとして、たとえば、ウェブサーバのソフトウェアにより、ウェブファイルを暗号化して保持し、アクセス要求があった場合には復号して送信する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１７５０１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来の改竄防止技術では、改竄防止機能を実行するプログラム自体が改竄されたり、リバースエンジニアリングされてしまう問題があった。
上記の点を鑑みて、本発明は、改竄による被害を防止可能な情報処理装置及び改竄無効化回路を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、以下のような情報処理装置が提供される。この情報処理装置は、記憶部と、前記記憶部へ記憶する書き込みデータの暗号化、または前記記憶部から読み出された読み出しデータの復号を行う暗号復号処理部と、前記書き込みデータを入力、または前記読み出しデータを出力する第１の入出力端子と、前記第１の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、を具備した改竄無効化回路と、を有する。
【発明の効果】
【０００７】
開示の情報処理装置によれば、改竄を無効化でき、改竄による被害を防止できる。
【図面の簡単な説明】
【０００８】
【図１】本実施の形態の情報処理装置を含む情報管理システムの構成を示す図である。
【図２】情報提供時の処理の流れを示すシーケンス図である。
【図３】ソフトウェア実行処理の流れを示すフローチャートである。
【図４】データ書き込み処理の流れを示すフローチャートである。
【図５】クライアントデータを利用するための処理の流れを示すシーケンス図である。
【図６】ソフトウェア実行処理の変形例を示すフローチャートである。
【図７】データ書き込み処理の変形例を示すフローチャートである。
【図８】複数の暗号処理回路及び復号処理回路を有する暗号化／復号処理部を備えた記憶装置の一例である。
【図９】改竄無効化回路の変形例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本実施の形態を図面を参照して詳細に説明する。
図１は、本実施の形態の情報処理装置を含む情報管理システムの構成を示す図である。
情報管理システムは、情報処理装置１００と、情報処理装置１００とインターネットなどのネットワーク２００を介して接続されたクライアント装置２０１−１〜２０１−ｎと、情報処理装置１００に接続された情報処理装置３００を有している。
【００１０】
情報処理装置１００は、たとえば、ウェブサーバである。
情報処理装置１００は、改竄無効化回路１１０と、記憶装置１２０と、通信Ｉ／Ｆ（インターフェース）１３１と、ＣＰＵ（Central Processing Unit）／ＤＭＡＣ（Direct Memory Access Controller）１３２と、メモリ１３３を有している。
【００１１】
改竄無効化回路１１０は、たとえば、ＬＳＩ（Large Scale Integrated circuit）であり、入出力端子１１１，１１２，１１３と、アクセス監視回路１１４と、設定回路１１５と、調停回路１１６を有している。
【００１２】
また、記憶装置１２０は、たとえば、ＨＤＤ（Hard Disk Drive）であり、入出力端子１２１と、暗号復号処理部１２２と、書き込み回路１２３と、読み出し回路１２４と、記憶部１２５を有している。
【００１３】
暗号復号処理部１２２は、暗号処理回路１２２ａと、復号処理回路１２２ｂと、選択回路１２２ｃ，１２２ｄと、制御回路１２２ｅを有している。
改竄無効化回路１１０において、入出力端子１１１は、通信Ｉ／Ｆ１３１とＣＰＵ／ＤＭＡＣ１３２に接続しており、入出力端子１１２は、外部の情報処理装置３００に専用線などで接続している。また、入出力端子１１３は、記憶装置１２０の入出力端子１２１に接続している。
【００１４】
アクセス監視回路１１４は、入出力端子１１１側から記憶装置１２０へのアクセスを監視する。そして、検出した入出力端子１１１側からのアクセスが、暗号化や復号を行うか否かの設定など、暗号化または復号の設定に関するアクセスである場合には、そのアクセスを破棄する。
【００１５】
これにより、後述する設定回路１１５が暗号復号処理部１２２に対して行った設定が、入出力端子１１１側のアクセスにより変更されることを防止できる。
なお、破棄するアクセスの種類や破棄の有無については、情報処理装置３００からのコマンドに応じて設定するようにしてもよい。
【００１６】
一方、検出したアクセスが、記憶装置１２０の記憶部１２５へのデータ書き込みコマンドである場合には、入出力端子１１２を介して、そのアクセスの内容を情報処理装置３００に通知する。情報処理装置３００側から通知削除の要求があった場合にはその通知を取り下げる。
【００１７】
また、検出したアクセスが、記憶装置１２０の記憶部１２５からのデータを読み出すための読み出しコマンドの場合には、そのまま記憶装置１２０にアクセスさせる。ただし、設定回路１１５からのウェイト指示がある場合には、ウェイト指示が解除されるまで、記憶装置１２０へのアクセスを保留しておく。
【００１８】
設定回路１１５は、暗号復号処理部１２２で行う暗号化または復号に関する設定状態を示す暗号／復号設定情報を保持する。
暗号／復号設定情報は、暗号復号処理部１２２が、書き込みデータを暗号化するのか、読み出しデータを復号するのかを示す情報である。
【００１９】
また、設定回路１１５は、入出力端子１１１からアクセスがあった場合、暗号／復号設定情報を確認する。暗号／復号設定情報が、暗号化及び復号の両方を行う設定または、両方とも行わない設定の場合、設定回路１１５は、暗号復号処理部１２２に対して次のような設定コマンドを発行する。
（１）書き込みデータを暗号化せずに記憶部１２５へ書き込ませ、読み出し時に復号を行った読み出しデータを出力させる設定コマンド
または、設定回路１１５は、暗号復号処理部１２２に対して次のような設定コマンドを発行する。
（２）書き込みデータに対して暗号化を施して記憶部１２５に書き込ませ、読み出し時に、書き込み時の暗号化方式に対応した復号をせずに読み出しデータを出力させる設定コマンド
これは、具体的には、書き込み時に暗号化させ、読み出し時には復号を行わないようにさせる設定コマンド、または、書き込み時に暗号化させ、読み出し時には書き込み時の暗号化方式とは異なる暗号化に対応した復号を行わせる設定コマンドである。
【００２０】
上記のような設定コマンドを発行し、暗号復号処理部１２２の設定を行うことで、入出力端子１１１を介した書き込みにより、記憶部１２５に記憶されているソフトウェアやデータが改竄されても、読み出されるデータは改竄者が意図したものでなくなる。すなわち、改竄が無効化される。
【００２１】
調停回路１１６は、入出力端子１１１，１１２及び設定回路１１５と、記憶装置１２０との間のアクセスを調停する。
記憶装置１２０において、暗号復号処理部１２２の暗号処理回路１２２ａは、制御回路１２２ｅの制御のもと、入出力端子１２１を介して入力された記憶部１２５への書き込みデータを暗号化する。
【００２２】
復号処理回路１２２ｂは、制御回路１２２ｅの制御のもと、読み出し回路１２４によって記憶部１２５から読み出されたデータを復号する。
選択回路１２２ｃは、制御回路１２２ｅの制御のもと、入出力端子１２１から入力された書き込みデータか、暗号処理回路１２２ａの出力のいずれかを選択して出力する。
【００２３】
選択回路１２２ｄは、制御回路１２２ｅの制御のもと、読み出し回路１２４から出力された読み出しデータか、復号処理回路１２２ｂの出力のいずれかを選択して出力する。
制御回路１２２ｅは、改竄無効化回路１１０から送られてくるコマンドに応じて、暗号復号処理部１２２の各部や、書き込み回路１２３及び読み出し回路１２４を制御する。
【００２４】
書き込み回路１２３は、選択回路１２２ｃから出力されたデータを、制御回路１２２ｅの制御のもと記憶部１２５に書き込む。
読み出し回路１２４は、制御回路１２２ｅの制御のもと、記憶部１２５からデータを読み出し、復号処理回路１２２ｂ及び選択回路１２２ｄに送出する。
【００２５】
記憶部１２５は、ウェブサーバ用のソフトウェアや、ＣＧＩ（Common Gateway Interface）スクリプトなどのデータを記憶する。
情報処理装置１００の通信Ｉ／Ｆ１３１は、たとえば、ＬＡＮ（Local Area Network）Ｉ／Ｆであり、インターネットなどのネットワーク２００と接続し、ネットワーク２００上のクライアント装置２０１−１〜２０１−ｎとの間で、情報の送受信を行う。
【００２６】
ＣＰＵ／ＤＭＡＣ１３２は、情報処理装置１００の各部を制御する。
メモリ１３３は、ＣＰＵ／ＤＭＡＣ１３２で実行途中のプログラムや、演算途中のデータを格納している。
【００２７】
情報処理装置３００は、ネットワーク２００には接続されておらず、情報処理装置１００の改竄無効化回路１１０の入出力端子１１２と接続されている。情報処理装置３００は、情報処理装置１００で必要なソフトウェア（ウェブサーバ用のソフトウェアなど）及びデータ（ウェブサーバ用制御ファイル、ＣＧＩスクリプトなど）を情報処理装置１００に提供する機能を有する。
【００２８】
また、改竄無効化回路１１０を介し、暗号復号処理部１２２の制御回路１２２ｅに対して、暗号化または復号を行うか否か設定するコマンド（以下暗号／復号設定コマンドという）などを発行する。さらには、記憶部１２５からデータを読み出し、暗号化や復号を行った後、再び記憶部１２５に書き戻す機能などを有する。
【００２９】
なお、情報処理装置３００のハードウェア構成については図示を省略する。情報処理装置３００は、たとえば、ＣＰＵ、メモリなどのほか、情報処理装置１００で必要なソフトウェア及びデータを格納するＨＤＤ及び情報処理装置１００との通信のための通信Ｉ／Ｆなどを備えたコンピュータである。また、暗号処理回路、復号処理回路を備えるようにしてもよい。
【００３０】
以下、本実施の形態の情報管理システムの動作を具体的に説明する。
まず、情報処理装置３００から情報処理装置１００に、必要な情報（ソフトウェアやデータなど）を提供する際の動作について説明する。
【００３１】
図２は、情報提供時の処理の流れを示すシーケンス図である。
まず、情報処理装置３００は、暗号／復号設定コマンドを情報処理装置１００に送る（処理Ｔ１）。このときの暗号／復号設定コマンドは、書き込みデータを暗号化し、読み出し時にも復号を行わせるコマンドである。
【００３２】
このような暗号／復号設定コマンドは、改竄無効化回路１１０の入出力端子１１２を介して入力され、設定回路１１５で保持されている暗号／復号設定情報を変更する（処理Ｔ２）。また、暗号／復号設定コマンドは、さらに調停回路１１６と入出力端子１１３を介して改竄無効化回路１１０から記憶装置１２０に送出され、制御回路１２２ｅに入力される。これにより、制御回路１２２ｅは、選択回路１２２ｃが暗号化された書き込みデータを出力し、選択回路１２２ｄが復号された読み出しデータを出力するような選択信号を送出する。
【００３３】
次に、情報処理装置３００は、情報処理装置１００に対して、必要なソフトウェアやデータを送信する（処理Ｔ３）。このようなソフトウェアやデータは、改竄無効化回路１１０の入出力端子１１２を介して入力され、さらに、調停回路１１６及び入出力端子１１３を介して記憶装置１２０に送出される。記憶装置１２０では、ソフトウェアやデータを、入出力端子１２１を介して入力すると、暗号処理回路１２２ａにてそれらを暗号化する（処理Ｔ４）。選択回路１２２ｃは、暗号処理回路１２２ａの出力を選択するように制御回路１２２ｅにより制御されているので、暗号化されたソフトウェアやデータが、書き込み回路１２３により記憶部１２５に書き込まれる（処理Ｔ５）。
【００３４】
以上のようにして、情報処理装置１００で必要なソフトウェアやデータが情報処理装置３００から提供される。
次に、記憶部１２５に記憶されたウェブサーバ用のソフトウェアなどを実行する際の情報処理装置１００の動作を説明する。
【００３５】
図３は、ソフトウェア実行処理の流れを示すフローチャートである。
ＣＰＵ／ＤＭＡＣ１３２により、読み出しコマンドが発行されると（ステップＳ１）、読み出しコマンドは、入出力端子１１１から改竄無効化回路１１０に入力される。このとき、アクセス監視回路１１４は、入出力端子１１１からのアクセスがあったことを、設定回路１１５に通知する（ステップＳ２）。この通知を受けると、設定回路１１５は、暗号／復号設定情報が、書き込みデータを暗号化せず、読み出し時に復号させるような設定となっているか否かを判断する（ステップＳ３）。上記の設定となっている場合、ステップＳ８の処理に進む。上記の設定となっていない場合、設定回路１１５は、アクセス監視回路１１４に対してウェイト指示を発行し、読み出しコマンドの記憶装置１２０への送出を待機させる（ステップＳ４）。そして、設定回路１１５は、記憶装置１２０の制御回路１２２ｅに対し、書き込みデータを暗号化せず、読み出し時に復号させるための設定コマンド（前述の（１）の設定コマンド）を発行する（ステップＳ５）。制御回路１２２ｅは、設定コマンドを受けると、書き込み時に暗号化を行わず、読み出し時に復号させるための設定に変更する（ステップＳ６）。その後、設定回路１１５は、アクセス監視回路１１４に対して発行していたウェイト指示を解除する（ステップＳ７）。
【００３６】
次に、アクセス監視回路１１４は、記憶装置１２０に対して、読み出しコマンドを送出する（ステップＳ８）。読み出しコマンドを受けた制御回路１２２ｅは、読み出し回路１２４に、読み出しコマンドで指定されるソフトウェアやデータを、記憶部１２５から読み出させる。このとき、制御回路１２２ｅにおいて、読み出し時は復号するような設定となっているため、制御回路１２２ｅは、選択回路１２２ｄに対して、復号処理回路１２２ｂの出力を選択させる。したがって、記憶装置１２０からは復号されたソフトウェアやデータが出力される（ステップＳ９）。読み出されたソフトウェアやデータは、改竄無効化回路１１０を介して入出力端子１１１と接続されたＣＰＵ／ＤＭＡＣ１３２に送られ、ソフトウェアの実行が行われる（ステップＳ１０）。
【００３７】
次に、記憶部１２５に、クライアント装置２０１−１〜２０１−ｎからのデータ（クライアントデータ）を書き込む場合の情報処理装置１００の動作を説明する。
クライアントデータは、たとえば、ウェブソフトウェア上でクライアント装置２０１−１〜２０１−ｎが入力したデータ（検索ワードや、ユーザ情報など）である。
【００３８】
図４は、データ書き込み処理の流れを示すフローチャートである。
ＣＰＵ／ＤＭＡＣ１３２は、クライアント装置２０１−１〜２０１−ｎからの、情報書き込み要求を受けると、改竄無効化回路１１０の入出力端子１１１に対して書き込みコマンドを発行する（ステップＳ１１）。アクセス監視回路１１４は、入出力端子１１１からの書き込みアクセスがあったことを、設定回路１１５に通知するとともに、入出力端子１１２を介して情報処理装置３００に通知する（ステップＳ１２）。この通知を受けると、設定回路１１５は、暗号／復号設定情報が、書き込みデータの暗号化をせず、読み出し時に復号させるような設定となっているか否かを判断する（ステップＳ１３）。上記の設定となっている場合、ステップＳ１８の処理に進む。上記の設定となっていない場合、設定回路１１５は、アクセス監視回路１１４に対してウェイト指示を発行し、書き込みコマンドの記憶装置１２０への送出を待機させる（ステップＳ１４）。そして、設定回路１１５は、記憶装置１２０の制御回路１２２ｅに対し、書き込みデータを暗号化せず、読み出し時に復号させるための設定コマンドを発行する（ステップＳ１５）。制御回路１２２ｅは、設定コマンドを受けると、書き込み時に暗号化を行わず、読み出し時に復号させるための設定に変更する（ステップＳ１６）。その後、設定回路１１５は、アクセス監視回路１１４に対して発行していたウェイト指示を解除する（ステップＳ１７）。
【００３９】
次に、アクセス監視回路１１４は、記憶装置１２０に対して、書き込みコマンドを送出する（ステップＳ１８）。情報処理装置１００に入力されたクライアント装置２０１−１〜２０１−ｎからのデータは、改竄無効化回路１１０を介して記憶装置１２０の入出力端子１２１に入力される。書き込みコマンドを受けた制御回路１２２ｅは、選択回路１２２ｃに入出力端子１２１からのデータを出力させる。そして、制御回路１２２ｅは、書き込み回路１２３により、データを記憶部１２５に書き込ませる（ステップＳ１９）。
【００４０】
以上のように、入出力端子１１１を介する読み出しアクセスまたは書き込みアクセスが発生した場合、設定回路１１５により、書き込みデータを暗号化せずに、読み出しの際には復号を行わせる設定とする。これにより、入出力端子１１１を介した書き込みアクセスにより、記憶部１２５に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは復号されるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【００４１】
ところで、図４で示した処理で記憶部１２５に書き込まれたクライアントデータを読み出して、ＣＰＵ／ＤＭＡＣ１３２により利用したい場合、以下の処理を行う。
図５は、クライアントデータを利用するための処理の流れを示すシーケンス図である。
【００４２】
情報処理装置１００のアクセス監視回路１１４は、入出力端子１１１に対してクライアントデータの書き込みアクセスがなされた場合、入出力端子１１２を介して情報処理装置３００に、その旨を通知する（処理Ｔ１０）。情報処理装置３００は、暗号／復号設定コマンドを情報処理装置１００に送る（処理Ｔ１１）。このときの暗号／復号設定コマンドは、書き込みデータを暗号化し、読み出し時に復号させるコマンドである。
【００４３】
このような暗号／復号設定コマンドは、改竄無効化回路１１０の入出力端子１１２を介して入力され、設定回路１１５で保持されている暗号／復号設定情報を変更する（処理Ｔ１２）。このとき、暗号／復号設定コマンドは、さらに調停回路１１６と入出力端子１１３を介して、記憶装置１２０の制御回路１２２ｅに入力される。これにより、制御回路１２２ｅは、書き込み時に暗号化し、読み出し時に復号させないための設定に変更する。
【００４４】
続いて情報処理装置３００は、情報処理装置１００に対してデータの読み出しコマンドを発行する（処理Ｔ１３）。読み出しコマンドは、改竄無効化回路１１０を介して記憶装置１２０の制御回路１２２ｅに入力される。制御回路１２２ｅは、記憶部１２５に記憶されたクライアントデータを、読み出し回路１２４により読み出させ、復号せずに記憶装置１２０から出力する。記憶装置１２０から出力されたクライアントデータは改竄無効化回路１１０を介して情報処理装置３００に送信される（処理Ｔ１４）。
【００４５】
情報処理装置３００は、クライアントデータを受信すると、それを暗号化する（処理Ｔ１５）。なお、このときの暗号化は、情報処理装置１００の暗号復号処理部１２２の復号処理回路１２２ｂで復号可能な暗号化方式で行う。続いて、情報処理装置３００は、暗号／復号設定コマンドを、再び情報処理装置１００に送る（処理Ｔ１６）。このときの暗号／復号設定コマンドは、書き込み時に暗号化せず、読み出し時に復号させるためのコマンドである。
【００４６】
このような暗号／復号設定コマンドは、改竄無効化回路１１０の入出力端子１１２を介して入力され、設定回路１１５で保持されていた暗号／復号設定情報を変更する（処理Ｔ１７）。また、入力された暗号／復号設定コマンドは、調停回路１１６と入出力端子１１３を介して記憶装置１２０の制御回路１２２ｅにも入力される。これにより、制御回路１２２ｅは、書き込み時に暗号化せず、読み出し時に復号させるための設定に変更する。
【００４７】
続いて、情報処理装置３００は、書き込みコマンドと暗号化されたクライアントデータを、改竄無効化回路１１０を介して記憶装置１２０に送信する（処理Ｔ１８）。書き込みコマンドは制御回路１２２ｅに入力され、制御回路１２２ｅは、書き込み回路１２３を制御して、暗号化されたクライアントデータを記憶部１２５に書き込む（処理Ｔ１９）。そして、情報処理装置３００は、アクセス監視回路１１４からの、クライアントデータの書き込みアクセスの通知の解除を要求し（処理Ｔ２０）、それを受けたアクセス監視回路１１４は、書き込みアクセスの通知を解除する（処理Ｔ２１）。
【００４８】
このように、情報処理装置３００からの暗号／復号設定コマンドにより暗号復号処理部１２２の設定を行うようにすることで、書き込まれたクライアントデータが、ＣＰＵ／ＤＭＡＣ１３２にて利用可能となる。
【００４９】
なお、図５で示した処理では、情報処理装置３００にて、クライアントデータを暗号化して情報処理装置１００の記憶装置１２０に書き戻す例を示したが、このような処理に限定されない。情報処理装置３００ではクライアントデータの暗号化を行わずに、記憶装置１２０に書き戻し、暗号復号処理部１２２の暗号処理回路１２２ａを用いて暗号化させたものを記憶部１２５に書き込むようにしてもよい。
【００５０】
以上の説明では、改竄無効化回路１１０の入出力端子１１１側からアクセスがあった場合、設定回路１１５が、暗号復号処理部１２２に対して、前述した（１）の設定コマンドを送出した場合について示した。すなわち、書き込みデータを暗号化せず、読み出し時に復号を行わせる設定コマンドを送出する場合について説明したが、前述の（２）の設定コマンドを送出するようにしてもよい。すなわち、書き込みデータに対して暗号化を施して記憶部１２５に書き込ませ、読み出し時に、書き込み時の暗号化方式に対応した復号をせずに読み出しデータを出力させる設定コマンドを送出するようにしてもよい。
【００５１】
以下、（２）の設定コマンドを用いた場合の情報処理装置１００の動作について説明する。
図６は、ソフトウェア実行処理の変形例を示すフローチャートである。
【００５２】
ステップＳ２１，Ｓ２２の処理については、前述した図３のステップＳ１，Ｓ２の処理と同様である。次のステップＳ２３の処理では、設定回路１１５は、暗号／復号設定情報が、書き込み時は暗号化を行い、読み出し時は復号させないような設定となっているか否かを判断する。上記の設定となっている場合、ステップＳ２８の処理に進む。上記の設定となっていない場合、設定回路１１５は、アクセス監視回路１１４に対してウェイト指示を発行し、読み出しコマンドの記憶装置１２０への送出を待機させる（ステップＳ２４）。そして、設定回路１１５は、記憶装置１２０の制御回路１２２ｅに対し、書き込みデータを暗号化し、読み出し時に復号させないための設定コマンドを発行する（ステップＳ２５）。制御回路１２２ｅは、設定コマンドを受けると、書き込み時に暗号化し、読み出し時に読み出しデータをそのまま出力させるための設定に変更する（ステップＳ２６）。その後、設定回路１１５は、アクセス監視回路１１４に対して発行していたウェイト指示を解除する（ステップＳ２７）。
【００５３】
次に、アクセス監視回路１１４は、記憶装置１２０に対して、読み出しコマンドを送出する（ステップＳ２８）。読み出しコマンドを受けた制御回路１２２ｅは、読み出し回路１２４に、読み出しコマンドで指定されるソフトウェアやデータを記憶部１２５から読み出させる。このとき、制御回路１２２ｅにおいて、読み出し時は復号しないような設定となっているため、制御回路１２２ｅは、選択回路１２２ｄに対して、読み出し回路１２４からの出力を選択させる。したがって、記憶装置１２０からは復号されずにソフトウェアやデータが出力される（ステップＳ２９）。そのため、本処理の場合、記憶部１２５に記憶されているソフトウェアやデータは暗号化されていないものとする。具体的には、情報処理装置３００からソフトウェアやデータが提供される際に、暗号化せずに記憶部１２５に書き込むようにする。
【００５４】
読み出されたソフトウェアやデータは、改竄無効化回路１１０を介して入出力端子１１１に接続されたＣＰＵ／ＤＭＡＣ１３２に送られ、ソフトウェアの実行が行われる（ステップＳ３０）。
【００５５】
次に、設定回路１１５が（２）の設定コマンドを送出する場合の、情報処理装置１００の書き込み動作について説明する。
図７は、データ書き込み処理の変形例を示すフローチャートである。
【００５６】
ステップＳ３１，Ｓ３２の処理については、前述した図４のステップＳ１１，Ｓ１２の処理と同様である。次のステップＳ３３の処理では、設定回路１１５は、暗号／復号設定情報が、書き込み時は暗号化を行い、読み出し時は復号させないような設定となっているか否かを判断する（ステップＳ３３）。上記の設定となっている場合、ステップＳ３８の処理に進む。上記の設定となっていない場合、設定回路１１５は、アクセス監視回路１１４に対してウェイト指示を発行し、書き込みコマンドの記憶装置１２０への送出を待機させる（ステップＳ３４）。そして、設定回路１１５は、制御回路１２２ｅに対して、書き込みデータを暗号化し、読み出し時は非復号とするための設定コマンドを発行する（ステップＳ３５）。制御回路１２２ｅは、設定コマンドを受けると、書き込み時に暗号化を行い、読み出し時に非復号とするための設定に変更する（ステップＳ３６）。その後、設定回路１１５は、アクセス監視回路１１４に対して発行していたウェイト指示を解除する（ステップＳ３７）。
【００５７】
次に、アクセス監視回路１１４は、記憶装置１２０に対して、書き込みコマンドを送出する（ステップＳ３８）。クライアント装置２０１−１〜２０１−ｎからのデータは、改竄無効化回路１１０を介して記憶装置１２０の入出力端子１２１に入力される。書き込みコマンドを受けた制御回路１２２ｅは、選択回路１２２ｃに暗号処理回路１２２ａで暗号化されたデータを出力させる。そして、制御回路１２２ｅは、書き込み回路１２３により、データを記憶部１２５に書き込ませる（ステップＳ３９）。
【００５８】
以上のように、入出力端子１１１を介する読み出しアクセスまたは書き込みアクセスが発生した場合、書き込みの際には常に暗号化して書き込みを行わせ、読み出しの際には常に復号を行わずに読み出しを行わせる。これにより、入出力端子１１１を介した書き込みアクセスにより、記憶部１２５に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは暗号化されたものとなるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【００５９】
なお、記憶部１２５に記憶した暗号化データをＣＰＵ／ＤＭＡＣ１３２で使用する場合には、暗号化データを情報処理装置３００で復号してから書き戻すようにすればよい。
上記の図６、図７の処理では、入出力端子１１１からのアクセスに対しては、復号を行わないで読み出しを行うようにしたが、書き込みの際の暗号化方式とは異なる暗号化方式に対応した復号を行うようにしても同様の効果が得られる。
【００６０】
たとえば、書き込み時は、ＤＥＳ（Data Encryption Standard）による暗号化を行い、読み出し時にはＡＥＳ（Advanced Encryption Standard）の復号を行うようにする。以下、その例を示す。
【００６１】
図８は、複数の暗号処理回路及び復号処理回路を有する暗号化／復号処理部を備えた記憶装置の一例である。
この記憶装置１２０ｘにおいて、暗号復号処理部１２２ｘは、複数の暗号処理回路１２２ａ−１〜１２２ａ−ｍと、複数の復号処理回路１２２ｂ−１〜１２２ｂ−ｍを有している。
【００６２】
暗号処理回路１２２ａ−１〜１２２ａ−ｍは、それぞれ異なる暗号化方式の暗号処理を行う。暗号化方式には、たとえば、ＤＥＳ、ＡＥＳ、ＲＣ４（Rivest's Cipher 4）、ＲＣ５などがある。
【００６３】
復号処理回路１２２ｂ−１〜１２２ｂ−ｍは、それぞれ異なる暗号化方式に対応した復号処理を行う。
制御回路１２２ｅｘは、暗号処理回路１２２ａ−１〜１２２ａ−ｍ及び復号処理回路１２２ｂ−１〜１２２ｂ−ｍを制御するとともに（制御線については一部図示を省略している）、選択回路１２２ｃｘ，１２２ｄｘに選択信号を送出する。この選択信号は、図１の設定回路１１５からの設定コマンドや、情報処理装置３００から送出される暗号化／復号設定コマンドにより変更可能である。これにより、選択回路１２２ｃｘは、入出力端子１２１から入力されたデータか、暗号処理回路１２２ａ−１〜１２２ａ−ｍのいずれかで暗号化したデータを選択して出力する。また、選択回路１２２ｄｘは、読み出し回路１２４からの読み出しデータか、復号処理回路１２２ｂ−１〜１２２ｂ−ｍのいずれかで復号したデータを選択して出力する。
【００６４】
改竄無効化回路１１０の入出力端子１１１からのアクセスに対して、設定回路１１５は、制御回路１２２ｅｘに対して、書き込み時に暗号化し、読み出し時に書き込み時の暗号化方式とは異なる暗号化方式に対応した復号を行うように設定する。
【００６５】
入出力端子１１１からのアクセスにより、記憶部１２５に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは書き込み時と異なる暗号化方式の復号処理を施されたデータとなるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【００６６】
なお、以上の説明では、暗号復号処理部１２２，１２２ｘが記憶装置１２０，１２０ｘに備えられている場合を示したが、改竄無効化回路１１０に内蔵するようにしてもよい。
図９は、改竄無効化回路の変形例を示す図である。
【００６７】
図１と同様の構成については同一符号を付している。
改竄無効化回路１１０ｘは、暗号復号処理部１１７を内蔵している。
暗号復号処理部１１７は、暗号処理回路１１７ａ−１〜１１７ａ−ｍ、復号処理回路１１７ｂ−１〜１１７ｂ−ｍ、選択回路１１７ｃ，１１７ｄ、制御回路１１７ｅを有している。
【００６８】
暗号処理回路１１７ａ−１〜１１７ａ−ｍは、それぞれ異なる暗号化方式の暗号化を行う。
復号処理回路１１７ｂ−１〜１１７ｂ−ｍは、それぞれ異なる暗号化方式に対応した復号を行う。
【００６９】
制御回路１１７ｅは、暗号処理回路１１７ａ−１〜１１７ａ−ｍ及び復号処理回路１１７ｂ−１〜１１７ｂ−ｍを制御するとともに（制御線については一部図示を省略している）、選択回路１１７ｃ，１１７ｄに選択信号を送出する。この選択信号は、設定回路１１５から発行される設定コマンドまたは、情報処理装置３００から送出される暗号化／復号設定コマンドにより変更可能である。これにより、選択回路１１７ｃは、調停回路１１６ｘの出力をそのまま選択するか、暗号処理回路１１７ａ−１〜１１７ａ−ｍのいずれかで暗号化したデータを選択して出力する。また、選択回路１１７ｄは、入出力端子１１３を介して入力される記憶部１２５からの読み出しデータか、復号処理回路１１７ｂ−１〜１１７ｂ−ｍのいずれかで復号したデータを選択して出力する。
【００７０】
調停回路１１６ｘは、入出力端子１１１，１１２及び設定回路１１５と、暗号復号処理部１１７との間のアクセスを調停する。
入出力端子１１１からのアクセスがあった場合、設定回路１１５は、前述の（１），（２）の設定コマンドまたは、読み出し時に書き込み時の暗号化方式とは異なる暗号化方式に対応した復号を行うような設定コマンドを制御回路１１７ｅに対して発行する。
【００７１】
これにより、前述の図１や図８の構成と同様の効果を得ることができる。また、暗号復号処理部１２２，１２２ｘを搭載していない記憶装置を使用することができるようになる。
【００７２】
以上、複数の実施の形態に基づき、本発明の一観点における情報処理装置及び改竄無効化回路について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
【００７３】
たとえば、記憶装置１２０は、情報処理装置１００に内蔵していなくてもよく、外付けのＨＤＤなどを用いてもよい。
【符号の説明】
【００７４】
１００，３００  情報処理装置
１１０  改竄無効化回路
１１１，１１２，１１３，１２１  入出力端子
１１４  アクセス監視回路
１１５  設定回路
１１６  調停回路
１２０  記憶装置
１２２  暗号復号処理部
１２２ａ  暗号処理回路
１２２ｂ  復号処理回路
１２２ｃ，１２２ｄ  選択回路
１２２ｅ  制御回路
１２３  書き込み回路
１２４  読み出し回路
１２５  記憶部
１３１  通信Ｉ／Ｆ
１３２  ＣＰＵ／ＤＭＡＣ
１３３  メモリ
２００  ネットワーク
２０１−１〜２０１−ｎ  クライアント装置
【図１】
2010193341.tif 000003
【図２】
2010193341.tif 000004
【図３】
2010193341.tif 000005
【図４】
2010193341.tif 000006
【図５】
2010193341.tif 000007
【図６】
2010193341.tif 000008
【図７】
2010193341.tif 000009
【図８】
2010193341.tif 000010
【図９】
2010193341.tif 000011