説明

情報処理装置及び改竄無効化回路

【課題】改竄による被害を防止可能な情報処理装置及び改竄無効化回路を提供する。
【解決手段】改竄無効化回路110の設定回路115は、入出力端子111を介したアクセスが検出された場合、暗号復号処理部122に対して、書き込みデータを暗号化せず、読み出し時に復号させる設定、または、書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う。これにより、入出力端子111からの改竄を無効化する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データの改竄による被害を防止する情報処理装置及び改竄無効化回路に関する。
【背景技術】
【0002】
近年、PC(パーソナルコンピュータ)や、ワークステーション、ワードプロセッサなど、ネットワークに接続された情報処理装置のデータ(ソフトウェアも含む)が、悪意あるものにより改竄される被害が相次いでいる。
【0003】
従来の改竄防止技術の1つとして、たとえば、ウェブサーバのソフトウェアにより、ウェブファイルを暗号化して保持し、アクセス要求があった場合には復号して送信する技術がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−175010号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来の改竄防止技術では、改竄防止機能を実行するプログラム自体が改竄されたり、リバースエンジニアリングされてしまう問題があった。
上記の点を鑑みて、本発明は、改竄による被害を防止可能な情報処理装置及び改竄無効化回路を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、以下のような情報処理装置が提供される。この情報処理装置は、記憶部と、前記記憶部へ記憶する書き込みデータの暗号化、または前記記憶部から読み出された読み出しデータの復号を行う暗号復号処理部と、前記書き込みデータを入力、または前記読み出しデータを出力する第1の入出力端子と、前記第1の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、を具備した改竄無効化回路と、を有する。
【発明の効果】
【0007】
開示の情報処理装置によれば、改竄を無効化でき、改竄による被害を防止できる。
【図面の簡単な説明】
【0008】
【図1】本実施の形態の情報処理装置を含む情報管理システムの構成を示す図である。
【図2】情報提供時の処理の流れを示すシーケンス図である。
【図3】ソフトウェア実行処理の流れを示すフローチャートである。
【図4】データ書き込み処理の流れを示すフローチャートである。
【図5】クライアントデータを利用するための処理の流れを示すシーケンス図である。
【図6】ソフトウェア実行処理の変形例を示すフローチャートである。
【図7】データ書き込み処理の変形例を示すフローチャートである。
【図8】複数の暗号処理回路及び復号処理回路を有する暗号化/復号処理部を備えた記憶装置の一例である。
【図9】改竄無効化回路の変形例を示す図である。
【発明を実施するための形態】
【0009】
以下、本実施の形態を図面を参照して詳細に説明する。
図1は、本実施の形態の情報処理装置を含む情報管理システムの構成を示す図である。
情報管理システムは、情報処理装置100と、情報処理装置100とインターネットなどのネットワーク200を介して接続されたクライアント装置201−1〜201−nと、情報処理装置100に接続された情報処理装置300を有している。
【0010】
情報処理装置100は、たとえば、ウェブサーバである。
情報処理装置100は、改竄無効化回路110と、記憶装置120と、通信I/F(インターフェース)131と、CPU(Central Processing Unit)/DMAC(Direct Memory Access Controller)132と、メモリ133を有している。
【0011】
改竄無効化回路110は、たとえば、LSI(Large Scale Integrated circuit)であり、入出力端子111,112,113と、アクセス監視回路114と、設定回路115と、調停回路116を有している。
【0012】
また、記憶装置120は、たとえば、HDD(Hard Disk Drive)であり、入出力端子121と、暗号復号処理部122と、書き込み回路123と、読み出し回路124と、記憶部125を有している。
【0013】
暗号復号処理部122は、暗号処理回路122aと、復号処理回路122bと、選択回路122c,122dと、制御回路122eを有している。
改竄無効化回路110において、入出力端子111は、通信I/F131とCPU/DMAC132に接続しており、入出力端子112は、外部の情報処理装置300に専用線などで接続している。また、入出力端子113は、記憶装置120の入出力端子121に接続している。
【0014】
アクセス監視回路114は、入出力端子111側から記憶装置120へのアクセスを監視する。そして、検出した入出力端子111側からのアクセスが、暗号化や復号を行うか否かの設定など、暗号化または復号の設定に関するアクセスである場合には、そのアクセスを破棄する。
【0015】
これにより、後述する設定回路115が暗号復号処理部122に対して行った設定が、入出力端子111側のアクセスにより変更されることを防止できる。
なお、破棄するアクセスの種類や破棄の有無については、情報処理装置300からのコマンドに応じて設定するようにしてもよい。
【0016】
一方、検出したアクセスが、記憶装置120の記憶部125へのデータ書き込みコマンドである場合には、入出力端子112を介して、そのアクセスの内容を情報処理装置300に通知する。情報処理装置300側から通知削除の要求があった場合にはその通知を取り下げる。
【0017】
また、検出したアクセスが、記憶装置120の記憶部125からのデータを読み出すための読み出しコマンドの場合には、そのまま記憶装置120にアクセスさせる。ただし、設定回路115からのウェイト指示がある場合には、ウェイト指示が解除されるまで、記憶装置120へのアクセスを保留しておく。
【0018】
設定回路115は、暗号復号処理部122で行う暗号化または復号に関する設定状態を示す暗号/復号設定情報を保持する。
暗号/復号設定情報は、暗号復号処理部122が、書き込みデータを暗号化するのか、読み出しデータを復号するのかを示す情報である。
【0019】
また、設定回路115は、入出力端子111からアクセスがあった場合、暗号/復号設定情報を確認する。暗号/復号設定情報が、暗号化及び復号の両方を行う設定または、両方とも行わない設定の場合、設定回路115は、暗号復号処理部122に対して次のような設定コマンドを発行する。
(1)書き込みデータを暗号化せずに記憶部125へ書き込ませ、読み出し時に復号を行った読み出しデータを出力させる設定コマンド
または、設定回路115は、暗号復号処理部122に対して次のような設定コマンドを発行する。
(2)書き込みデータに対して暗号化を施して記憶部125に書き込ませ、読み出し時に、書き込み時の暗号化方式に対応した復号をせずに読み出しデータを出力させる設定コマンド
これは、具体的には、書き込み時に暗号化させ、読み出し時には復号を行わないようにさせる設定コマンド、または、書き込み時に暗号化させ、読み出し時には書き込み時の暗号化方式とは異なる暗号化に対応した復号を行わせる設定コマンドである。
【0020】
上記のような設定コマンドを発行し、暗号復号処理部122の設定を行うことで、入出力端子111を介した書き込みにより、記憶部125に記憶されているソフトウェアやデータが改竄されても、読み出されるデータは改竄者が意図したものでなくなる。すなわち、改竄が無効化される。
【0021】
調停回路116は、入出力端子111,112及び設定回路115と、記憶装置120との間のアクセスを調停する。
記憶装置120において、暗号復号処理部122の暗号処理回路122aは、制御回路122eの制御のもと、入出力端子121を介して入力された記憶部125への書き込みデータを暗号化する。
【0022】
復号処理回路122bは、制御回路122eの制御のもと、読み出し回路124によって記憶部125から読み出されたデータを復号する。
選択回路122cは、制御回路122eの制御のもと、入出力端子121から入力された書き込みデータか、暗号処理回路122aの出力のいずれかを選択して出力する。
【0023】
選択回路122dは、制御回路122eの制御のもと、読み出し回路124から出力された読み出しデータか、復号処理回路122bの出力のいずれかを選択して出力する。
制御回路122eは、改竄無効化回路110から送られてくるコマンドに応じて、暗号復号処理部122の各部や、書き込み回路123及び読み出し回路124を制御する。
【0024】
書き込み回路123は、選択回路122cから出力されたデータを、制御回路122eの制御のもと記憶部125に書き込む。
読み出し回路124は、制御回路122eの制御のもと、記憶部125からデータを読み出し、復号処理回路122b及び選択回路122dに送出する。
【0025】
記憶部125は、ウェブサーバ用のソフトウェアや、CGI(Common Gateway Interface)スクリプトなどのデータを記憶する。
情報処理装置100の通信I/F131は、たとえば、LAN(Local Area Network)I/Fであり、インターネットなどのネットワーク200と接続し、ネットワーク200上のクライアント装置201−1〜201−nとの間で、情報の送受信を行う。
【0026】
CPU/DMAC132は、情報処理装置100の各部を制御する。
メモリ133は、CPU/DMAC132で実行途中のプログラムや、演算途中のデータを格納している。
【0027】
情報処理装置300は、ネットワーク200には接続されておらず、情報処理装置100の改竄無効化回路110の入出力端子112と接続されている。情報処理装置300は、情報処理装置100で必要なソフトウェア(ウェブサーバ用のソフトウェアなど)及びデータ(ウェブサーバ用制御ファイル、CGIスクリプトなど)を情報処理装置100に提供する機能を有する。
【0028】
また、改竄無効化回路110を介し、暗号復号処理部122の制御回路122eに対して、暗号化または復号を行うか否か設定するコマンド(以下暗号/復号設定コマンドという)などを発行する。さらには、記憶部125からデータを読み出し、暗号化や復号を行った後、再び記憶部125に書き戻す機能などを有する。
【0029】
なお、情報処理装置300のハードウェア構成については図示を省略する。情報処理装置300は、たとえば、CPU、メモリなどのほか、情報処理装置100で必要なソフトウェア及びデータを格納するHDD及び情報処理装置100との通信のための通信I/Fなどを備えたコンピュータである。また、暗号処理回路、復号処理回路を備えるようにしてもよい。
【0030】
以下、本実施の形態の情報管理システムの動作を具体的に説明する。
まず、情報処理装置300から情報処理装置100に、必要な情報(ソフトウェアやデータなど)を提供する際の動作について説明する。
【0031】
図2は、情報提供時の処理の流れを示すシーケンス図である。
まず、情報処理装置300は、暗号/復号設定コマンドを情報処理装置100に送る(処理T1)。このときの暗号/復号設定コマンドは、書き込みデータを暗号化し、読み出し時にも復号を行わせるコマンドである。
【0032】
このような暗号/復号設定コマンドは、改竄無効化回路110の入出力端子112を介して入力され、設定回路115で保持されている暗号/復号設定情報を変更する(処理T2)。また、暗号/復号設定コマンドは、さらに調停回路116と入出力端子113を介して改竄無効化回路110から記憶装置120に送出され、制御回路122eに入力される。これにより、制御回路122eは、選択回路122cが暗号化された書き込みデータを出力し、選択回路122dが復号された読み出しデータを出力するような選択信号を送出する。
【0033】
次に、情報処理装置300は、情報処理装置100に対して、必要なソフトウェアやデータを送信する(処理T3)。このようなソフトウェアやデータは、改竄無効化回路110の入出力端子112を介して入力され、さらに、調停回路116及び入出力端子113を介して記憶装置120に送出される。記憶装置120では、ソフトウェアやデータを、入出力端子121を介して入力すると、暗号処理回路122aにてそれらを暗号化する(処理T4)。選択回路122cは、暗号処理回路122aの出力を選択するように制御回路122eにより制御されているので、暗号化されたソフトウェアやデータが、書き込み回路123により記憶部125に書き込まれる(処理T5)。
【0034】
以上のようにして、情報処理装置100で必要なソフトウェアやデータが情報処理装置300から提供される。
次に、記憶部125に記憶されたウェブサーバ用のソフトウェアなどを実行する際の情報処理装置100の動作を説明する。
【0035】
図3は、ソフトウェア実行処理の流れを示すフローチャートである。
CPU/DMAC132により、読み出しコマンドが発行されると(ステップS1)、読み出しコマンドは、入出力端子111から改竄無効化回路110に入力される。このとき、アクセス監視回路114は、入出力端子111からのアクセスがあったことを、設定回路115に通知する(ステップS2)。この通知を受けると、設定回路115は、暗号/復号設定情報が、書き込みデータを暗号化せず、読み出し時に復号させるような設定となっているか否かを判断する(ステップS3)。上記の設定となっている場合、ステップS8の処理に進む。上記の設定となっていない場合、設定回路115は、アクセス監視回路114に対してウェイト指示を発行し、読み出しコマンドの記憶装置120への送出を待機させる(ステップS4)。そして、設定回路115は、記憶装置120の制御回路122eに対し、書き込みデータを暗号化せず、読み出し時に復号させるための設定コマンド(前述の(1)の設定コマンド)を発行する(ステップS5)。制御回路122eは、設定コマンドを受けると、書き込み時に暗号化を行わず、読み出し時に復号させるための設定に変更する(ステップS6)。その後、設定回路115は、アクセス監視回路114に対して発行していたウェイト指示を解除する(ステップS7)。
【0036】
次に、アクセス監視回路114は、記憶装置120に対して、読み出しコマンドを送出する(ステップS8)。読み出しコマンドを受けた制御回路122eは、読み出し回路124に、読み出しコマンドで指定されるソフトウェアやデータを、記憶部125から読み出させる。このとき、制御回路122eにおいて、読み出し時は復号するような設定となっているため、制御回路122eは、選択回路122dに対して、復号処理回路122bの出力を選択させる。したがって、記憶装置120からは復号されたソフトウェアやデータが出力される(ステップS9)。読み出されたソフトウェアやデータは、改竄無効化回路110を介して入出力端子111と接続されたCPU/DMAC132に送られ、ソフトウェアの実行が行われる(ステップS10)。
【0037】
次に、記憶部125に、クライアント装置201−1〜201−nからのデータ(クライアントデータ)を書き込む場合の情報処理装置100の動作を説明する。
クライアントデータは、たとえば、ウェブソフトウェア上でクライアント装置201−1〜201−nが入力したデータ(検索ワードや、ユーザ情報など)である。
【0038】
図4は、データ書き込み処理の流れを示すフローチャートである。
CPU/DMAC132は、クライアント装置201−1〜201−nからの、情報書き込み要求を受けると、改竄無効化回路110の入出力端子111に対して書き込みコマンドを発行する(ステップS11)。アクセス監視回路114は、入出力端子111からの書き込みアクセスがあったことを、設定回路115に通知するとともに、入出力端子112を介して情報処理装置300に通知する(ステップS12)。この通知を受けると、設定回路115は、暗号/復号設定情報が、書き込みデータの暗号化をせず、読み出し時に復号させるような設定となっているか否かを判断する(ステップS13)。上記の設定となっている場合、ステップS18の処理に進む。上記の設定となっていない場合、設定回路115は、アクセス監視回路114に対してウェイト指示を発行し、書き込みコマンドの記憶装置120への送出を待機させる(ステップS14)。そして、設定回路115は、記憶装置120の制御回路122eに対し、書き込みデータを暗号化せず、読み出し時に復号させるための設定コマンドを発行する(ステップS15)。制御回路122eは、設定コマンドを受けると、書き込み時に暗号化を行わず、読み出し時に復号させるための設定に変更する(ステップS16)。その後、設定回路115は、アクセス監視回路114に対して発行していたウェイト指示を解除する(ステップS17)。
【0039】
次に、アクセス監視回路114は、記憶装置120に対して、書き込みコマンドを送出する(ステップS18)。情報処理装置100に入力されたクライアント装置201−1〜201−nからのデータは、改竄無効化回路110を介して記憶装置120の入出力端子121に入力される。書き込みコマンドを受けた制御回路122eは、選択回路122cに入出力端子121からのデータを出力させる。そして、制御回路122eは、書き込み回路123により、データを記憶部125に書き込ませる(ステップS19)。
【0040】
以上のように、入出力端子111を介する読み出しアクセスまたは書き込みアクセスが発生した場合、設定回路115により、書き込みデータを暗号化せずに、読み出しの際には復号を行わせる設定とする。これにより、入出力端子111を介した書き込みアクセスにより、記憶部125に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは復号されるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【0041】
ところで、図4で示した処理で記憶部125に書き込まれたクライアントデータを読み出して、CPU/DMAC132により利用したい場合、以下の処理を行う。
図5は、クライアントデータを利用するための処理の流れを示すシーケンス図である。
【0042】
情報処理装置100のアクセス監視回路114は、入出力端子111に対してクライアントデータの書き込みアクセスがなされた場合、入出力端子112を介して情報処理装置300に、その旨を通知する(処理T10)。情報処理装置300は、暗号/復号設定コマンドを情報処理装置100に送る(処理T11)。このときの暗号/復号設定コマンドは、書き込みデータを暗号化し、読み出し時に復号させるコマンドである。
【0043】
このような暗号/復号設定コマンドは、改竄無効化回路110の入出力端子112を介して入力され、設定回路115で保持されている暗号/復号設定情報を変更する(処理T12)。このとき、暗号/復号設定コマンドは、さらに調停回路116と入出力端子113を介して、記憶装置120の制御回路122eに入力される。これにより、制御回路122eは、書き込み時に暗号化し、読み出し時に復号させないための設定に変更する。
【0044】
続いて情報処理装置300は、情報処理装置100に対してデータの読み出しコマンドを発行する(処理T13)。読み出しコマンドは、改竄無効化回路110を介して記憶装置120の制御回路122eに入力される。制御回路122eは、記憶部125に記憶されたクライアントデータを、読み出し回路124により読み出させ、復号せずに記憶装置120から出力する。記憶装置120から出力されたクライアントデータは改竄無効化回路110を介して情報処理装置300に送信される(処理T14)。
【0045】
情報処理装置300は、クライアントデータを受信すると、それを暗号化する(処理T15)。なお、このときの暗号化は、情報処理装置100の暗号復号処理部122の復号処理回路122bで復号可能な暗号化方式で行う。続いて、情報処理装置300は、暗号/復号設定コマンドを、再び情報処理装置100に送る(処理T16)。このときの暗号/復号設定コマンドは、書き込み時に暗号化せず、読み出し時に復号させるためのコマンドである。
【0046】
このような暗号/復号設定コマンドは、改竄無効化回路110の入出力端子112を介して入力され、設定回路115で保持されていた暗号/復号設定情報を変更する(処理T17)。また、入力された暗号/復号設定コマンドは、調停回路116と入出力端子113を介して記憶装置120の制御回路122eにも入力される。これにより、制御回路122eは、書き込み時に暗号化せず、読み出し時に復号させるための設定に変更する。
【0047】
続いて、情報処理装置300は、書き込みコマンドと暗号化されたクライアントデータを、改竄無効化回路110を介して記憶装置120に送信する(処理T18)。書き込みコマンドは制御回路122eに入力され、制御回路122eは、書き込み回路123を制御して、暗号化されたクライアントデータを記憶部125に書き込む(処理T19)。そして、情報処理装置300は、アクセス監視回路114からの、クライアントデータの書き込みアクセスの通知の解除を要求し(処理T20)、それを受けたアクセス監視回路114は、書き込みアクセスの通知を解除する(処理T21)。
【0048】
このように、情報処理装置300からの暗号/復号設定コマンドにより暗号復号処理部122の設定を行うようにすることで、書き込まれたクライアントデータが、CPU/DMAC132にて利用可能となる。
【0049】
なお、図5で示した処理では、情報処理装置300にて、クライアントデータを暗号化して情報処理装置100の記憶装置120に書き戻す例を示したが、このような処理に限定されない。情報処理装置300ではクライアントデータの暗号化を行わずに、記憶装置120に書き戻し、暗号復号処理部122の暗号処理回路122aを用いて暗号化させたものを記憶部125に書き込むようにしてもよい。
【0050】
以上の説明では、改竄無効化回路110の入出力端子111側からアクセスがあった場合、設定回路115が、暗号復号処理部122に対して、前述した(1)の設定コマンドを送出した場合について示した。すなわち、書き込みデータを暗号化せず、読み出し時に復号を行わせる設定コマンドを送出する場合について説明したが、前述の(2)の設定コマンドを送出するようにしてもよい。すなわち、書き込みデータに対して暗号化を施して記憶部125に書き込ませ、読み出し時に、書き込み時の暗号化方式に対応した復号をせずに読み出しデータを出力させる設定コマンドを送出するようにしてもよい。
【0051】
以下、(2)の設定コマンドを用いた場合の情報処理装置100の動作について説明する。
図6は、ソフトウェア実行処理の変形例を示すフローチャートである。
【0052】
ステップS21,S22の処理については、前述した図3のステップS1,S2の処理と同様である。次のステップS23の処理では、設定回路115は、暗号/復号設定情報が、書き込み時は暗号化を行い、読み出し時は復号させないような設定となっているか否かを判断する。上記の設定となっている場合、ステップS28の処理に進む。上記の設定となっていない場合、設定回路115は、アクセス監視回路114に対してウェイト指示を発行し、読み出しコマンドの記憶装置120への送出を待機させる(ステップS24)。そして、設定回路115は、記憶装置120の制御回路122eに対し、書き込みデータを暗号化し、読み出し時に復号させないための設定コマンドを発行する(ステップS25)。制御回路122eは、設定コマンドを受けると、書き込み時に暗号化し、読み出し時に読み出しデータをそのまま出力させるための設定に変更する(ステップS26)。その後、設定回路115は、アクセス監視回路114に対して発行していたウェイト指示を解除する(ステップS27)。
【0053】
次に、アクセス監視回路114は、記憶装置120に対して、読み出しコマンドを送出する(ステップS28)。読み出しコマンドを受けた制御回路122eは、読み出し回路124に、読み出しコマンドで指定されるソフトウェアやデータを記憶部125から読み出させる。このとき、制御回路122eにおいて、読み出し時は復号しないような設定となっているため、制御回路122eは、選択回路122dに対して、読み出し回路124からの出力を選択させる。したがって、記憶装置120からは復号されずにソフトウェアやデータが出力される(ステップS29)。そのため、本処理の場合、記憶部125に記憶されているソフトウェアやデータは暗号化されていないものとする。具体的には、情報処理装置300からソフトウェアやデータが提供される際に、暗号化せずに記憶部125に書き込むようにする。
【0054】
読み出されたソフトウェアやデータは、改竄無効化回路110を介して入出力端子111に接続されたCPU/DMAC132に送られ、ソフトウェアの実行が行われる(ステップS30)。
【0055】
次に、設定回路115が(2)の設定コマンドを送出する場合の、情報処理装置100の書き込み動作について説明する。
図7は、データ書き込み処理の変形例を示すフローチャートである。
【0056】
ステップS31,S32の処理については、前述した図4のステップS11,S12の処理と同様である。次のステップS33の処理では、設定回路115は、暗号/復号設定情報が、書き込み時は暗号化を行い、読み出し時は復号させないような設定となっているか否かを判断する(ステップS33)。上記の設定となっている場合、ステップS38の処理に進む。上記の設定となっていない場合、設定回路115は、アクセス監視回路114に対してウェイト指示を発行し、書き込みコマンドの記憶装置120への送出を待機させる(ステップS34)。そして、設定回路115は、制御回路122eに対して、書き込みデータを暗号化し、読み出し時は非復号とするための設定コマンドを発行する(ステップS35)。制御回路122eは、設定コマンドを受けると、書き込み時に暗号化を行い、読み出し時に非復号とするための設定に変更する(ステップS36)。その後、設定回路115は、アクセス監視回路114に対して発行していたウェイト指示を解除する(ステップS37)。
【0057】
次に、アクセス監視回路114は、記憶装置120に対して、書き込みコマンドを送出する(ステップS38)。クライアント装置201−1〜201−nからのデータは、改竄無効化回路110を介して記憶装置120の入出力端子121に入力される。書き込みコマンドを受けた制御回路122eは、選択回路122cに暗号処理回路122aで暗号化されたデータを出力させる。そして、制御回路122eは、書き込み回路123により、データを記憶部125に書き込ませる(ステップS39)。
【0058】
以上のように、入出力端子111を介する読み出しアクセスまたは書き込みアクセスが発生した場合、書き込みの際には常に暗号化して書き込みを行わせ、読み出しの際には常に復号を行わずに読み出しを行わせる。これにより、入出力端子111を介した書き込みアクセスにより、記憶部125に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは暗号化されたものとなるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【0059】
なお、記憶部125に記憶した暗号化データをCPU/DMAC132で使用する場合には、暗号化データを情報処理装置300で復号してから書き戻すようにすればよい。
上記の図6、図7の処理では、入出力端子111からのアクセスに対しては、復号を行わないで読み出しを行うようにしたが、書き込みの際の暗号化方式とは異なる暗号化方式に対応した復号を行うようにしても同様の効果が得られる。
【0060】
たとえば、書き込み時は、DES(Data Encryption Standard)による暗号化を行い、読み出し時にはAES(Advanced Encryption Standard)の復号を行うようにする。以下、その例を示す。
【0061】
図8は、複数の暗号処理回路及び復号処理回路を有する暗号化/復号処理部を備えた記憶装置の一例である。
この記憶装置120xにおいて、暗号復号処理部122xは、複数の暗号処理回路122a−1〜122a−mと、複数の復号処理回路122b−1〜122b−mを有している。
【0062】
暗号処理回路122a−1〜122a−mは、それぞれ異なる暗号化方式の暗号処理を行う。暗号化方式には、たとえば、DES、AES、RC4(Rivest's Cipher 4)、RC5などがある。
【0063】
復号処理回路122b−1〜122b−mは、それぞれ異なる暗号化方式に対応した復号処理を行う。
制御回路122exは、暗号処理回路122a−1〜122a−m及び復号処理回路122b−1〜122b−mを制御するとともに(制御線については一部図示を省略している)、選択回路122cx,122dxに選択信号を送出する。この選択信号は、図1の設定回路115からの設定コマンドや、情報処理装置300から送出される暗号化/復号設定コマンドにより変更可能である。これにより、選択回路122cxは、入出力端子121から入力されたデータか、暗号処理回路122a−1〜122a−mのいずれかで暗号化したデータを選択して出力する。また、選択回路122dxは、読み出し回路124からの読み出しデータか、復号処理回路122b−1〜122b−mのいずれかで復号したデータを選択して出力する。
【0064】
改竄無効化回路110の入出力端子111からのアクセスに対して、設定回路115は、制御回路122exに対して、書き込み時に暗号化し、読み出し時に書き込み時の暗号化方式とは異なる暗号化方式に対応した復号を行うように設定する。
【0065】
入出力端子111からのアクセスにより、記憶部125に記憶されているソフトウェアなどの改竄が行われた場合、読み出されるデータは書き込み時と異なる暗号化方式の復号処理を施されたデータとなるので、改竄者が意図したデータとして読み出されない。すなわち、改竄が無効化され、改竄されたデータによる被害を防止することができる。
【0066】
なお、以上の説明では、暗号復号処理部122,122xが記憶装置120,120xに備えられている場合を示したが、改竄無効化回路110に内蔵するようにしてもよい。
図9は、改竄無効化回路の変形例を示す図である。
【0067】
図1と同様の構成については同一符号を付している。
改竄無効化回路110xは、暗号復号処理部117を内蔵している。
暗号復号処理部117は、暗号処理回路117a−1〜117a−m、復号処理回路117b−1〜117b−m、選択回路117c,117d、制御回路117eを有している。
【0068】
暗号処理回路117a−1〜117a−mは、それぞれ異なる暗号化方式の暗号化を行う。
復号処理回路117b−1〜117b−mは、それぞれ異なる暗号化方式に対応した復号を行う。
【0069】
制御回路117eは、暗号処理回路117a−1〜117a−m及び復号処理回路117b−1〜117b−mを制御するとともに(制御線については一部図示を省略している)、選択回路117c,117dに選択信号を送出する。この選択信号は、設定回路115から発行される設定コマンドまたは、情報処理装置300から送出される暗号化/復号設定コマンドにより変更可能である。これにより、選択回路117cは、調停回路116xの出力をそのまま選択するか、暗号処理回路117a−1〜117a−mのいずれかで暗号化したデータを選択して出力する。また、選択回路117dは、入出力端子113を介して入力される記憶部125からの読み出しデータか、復号処理回路117b−1〜117b−mのいずれかで復号したデータを選択して出力する。
【0070】
調停回路116xは、入出力端子111,112及び設定回路115と、暗号復号処理部117との間のアクセスを調停する。
入出力端子111からのアクセスがあった場合、設定回路115は、前述の(1),(2)の設定コマンドまたは、読み出し時に書き込み時の暗号化方式とは異なる暗号化方式に対応した復号を行うような設定コマンドを制御回路117eに対して発行する。
【0071】
これにより、前述の図1や図8の構成と同様の効果を得ることができる。また、暗号復号処理部122,122xを搭載していない記憶装置を使用することができるようになる。
【0072】
以上、複数の実施の形態に基づき、本発明の一観点における情報処理装置及び改竄無効化回路について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
【0073】
たとえば、記憶装置120は、情報処理装置100に内蔵していなくてもよく、外付けのHDDなどを用いてもよい。
【符号の説明】
【0074】
100,300 情報処理装置
110 改竄無効化回路
111,112,113,121 入出力端子
114 アクセス監視回路
115 設定回路
116 調停回路
120 記憶装置
122 暗号復号処理部
122a 暗号処理回路
122b 復号処理回路
122c,122d 選択回路
122e 制御回路
123 書き込み回路
124 読み出し回路
125 記憶部
131 通信I/F
132 CPU/DMAC
133 メモリ
200 ネットワーク
201−1〜201−n クライアント装置

【特許請求の範囲】
【請求項1】
記憶部と、
前記記憶部へ記憶する書き込みデータの暗号化、または前記記憶部から読み出された読み出しデータの復号を行う暗号復号処理部と、
前記書き込みデータを入力、または前記読み出しデータを出力する第1の入出力端子と、前記第1の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、を具備した改竄無効化回路と、
を有することを特徴とする情報処理装置。
【請求項2】
前記改竄無効化回路は、前記第1の入出力端子を介した前記アクセスを監視するアクセス監視回路を有し、
前記アクセス監視回路は、前記第1の入出力端子を介して前記暗号復号処理部の設定を変更する旨のアクセスを検出した場合、当該アクセスを破棄することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記暗号復号処理部は、複数の暗号化方式に対応した複数の暗号処理回路または復号処理回路を有し、
前記設定回路は、前記第1の入出力端子を介したアクセスが検出された場合、前記暗号復号処理部に対して、前記書き込みデータを第1の暗号化方式により暗号化し、読み出し時に前記第1の暗号化方式とは異なる前記暗号化方式に対応した復号を行わせる設定を行うことを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記改竄無効化回路は、ネットワークに接続されていない他の情報処理装置と接続する第2の入出力端子を有し、
前記暗号復号処理部は、前記第2の入出力端子を介して、前記他の情報処理装置から暗号化または復号を行うか否かの設定命令が入力された場合、前記設定命令に応じて暗号化または復号を実施することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
記憶部へ記憶する書き込みデータを入力、または前記記憶部から読み出された読み出しデータを出力する入出力端子と、
外部から前記入出力端子を介したアクセスが検出された場合、暗号復号処理部に対して、前記書き込みデータを暗号化せず、読み出し時に復号させる設定、または、前記書き込みデータを暗号化し、読み出し時に書き込み時の暗号化方式に対応した復号をせずに読み出す設定を行う設定回路と、
を有する改竄無効化回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−193341(P2010−193341A)
【公開日】平成22年9月2日(2010.9.2)
【国際特許分類】
【出願番号】特願2009−37546(P2009−37546)
【出願日】平成21年2月20日(2009.2.20)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】