(57)【要約】【課題】効率よく意図した通りにストレージ内のデータを復元不能とし、安全性を向上かつ低廉化を図ること。【解決手段】ＲＡＩＤを構成する複数のストレージ１０２を制御するストレージ制御装置１００は、書込命令と書込データを取得部３０１により取得し、書込データが暗号化処理部３０２を経由し暗号化されて指定された対象ストレージに出力される第１の経路と書込データが暗号化処理部３０２を経由せず対象ストレージに出力される第２の経路とのうちいずれかの経路を選択部３０３により選択し、書込命令に基づき書込データが保存対象データか、無効化データかを判断部３０４により判断し、保存対象データであると判断された場合、第１の経路を選択し、無効化データであると判断された場合、第２の経路を選択するように選択部３０３を制御部３０５により制御する。【選択図】図３
2010134505.tif 000002
【特許請求の範囲】
【請求項１】
ＲＡＩＤを構成する複数のストレージを選択するＲＡＩＤコントローラにおいて、
複数のデータ入力端子を有するデータ入力部と、
経路設定に関する制御信号を入力する制御信号入力端子を有する制御信号入力部と、
複数のデータ出力端子を有するデータ出力部と、
前記制御信号が前記制御信号入力端子に入力されると、前記制御信号に基づいて、前記複数のデータ入力端子の中から選ばれたデータ入力端子と前記複数のデータ出力端子の中から選ばれたデータ出力端子とを接続する経路選択部と、を備え、
前記経路選択部は、
前記制御信号が、保存対象データを対象ストレージに保存する命令を示す場合、前記保存対象データを暗号化した暗号化データが入力されるデータ入力端子と前記対象ストレージに出力するデータ出力端子とを選択して接続し、前記制御信号が、前記対象ストレージ内の保存済データを無効化する無効化データを書き込む命令を示す場合、前記無効化データが入力されるデータ入力端子と前記データ出力端子とを選択して接続することを特徴とするＲＡＩＤコントローラ。
【請求項２】
ＲＡＩＤを構成する複数のストレージを制御するストレージ制御装置であって、
書込命令と前記書込命令に付随する書込データを取得する取得手段と、
入力された前記書込データを暗号化する暗号化手段と、
前記取得手段により取得された書込データが前記暗号化手段を経由し暗号化されて対象ストレージに出力される第１の経路と前記書込データが前記暗号化手段を経由せず前記対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、
前記取得手段により取得された書込命令に基づいて前記書込データが、前記対象ストレージに保存される保存対象データであるか、前記対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断手段と、
前記判断手段により前記保存対象データであると判断された場合、前記第１の経路を選択し、前記無効化データであると判断された場合、前記第２の経路を選択するように前記選択手段を制御する制御手段と、
を備えることを特徴とするストレージ制御装置。
【請求項３】
前記対象ストレージは、前記複数のストレージであることを特徴とする請求項２に記載のストレージ制御装置。
【請求項４】
前記無効化データは、前記対象ストレージのすべてのアドレスに対応する値がすべて０または１であることを特徴とする請求項２に記載のストレージ制御装置。
【請求項５】
ＲＡＩＤを構成する複数のストレージを制御するストレージ制御方法であって、
書込命令と前記書込命令に付随する書込データを取得する取得手段と、
入力された前記書込データを暗号化する暗号化手段と、
前記取得手段により取得された書込データが前記暗号化手段を経由し暗号化されて対象ストレージに出力される第１の経路と前記書込データが前記暗号化手段を経由せず前記対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、を備えるストレージ制御装置が、
前記取得手段により取得された書込命令に基づいて前記書込データが、前記対象ストレージに保存される保存対象データであるか、前記対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断工程と、
前記判断工程により前記保存対象データであると判断された場合、前記第１の経路を選択し、前記無効化データであると判断された場合、前記第２の経路を選択するように前記選択手段を制御する制御工程と、
を実行することを特徴とするストレージ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＲＡＩＤを構成する複数のストレージを選択するＲＡＩＤコントローラ、ストレージ制御装置、およびストレージ制御方法に関する。
【背景技術】
【０００２】
従来より、複数のストレージを組み合わせて１つのストレージとして運用するＲＡＩＤ（Ｒｅｄｕｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）という技術が知られている。そしてＲＡＩＤを構成する複数のストレージを制御するための装置としてストレージ制御装置が知られている。
【０００３】
ストレージ制御装置には、複数のストレージを選択するＲＡＩＤコントローラを備えている。さらに、ストレージ制御装置に暗号化回路を備えて書込データを必ず暗号化する技術が知られている（たとえば、下記特許文献１を参照。）。
【０００４】
また、ストレージごとに暗号化回路を備えて書込データを暗号化するか否かを選択できる技術が知られている（たとえば、下記特許文献２を参照。）。
【０００５】
【特許文献１】特開２００６−３１９５８９号公報
【特許文献２】特開２００６−２６０４９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、ストレージ内の保存済データを復元不能にする場合、上述した書込データを必ず暗号化する技術では、確実に保存済データを復元不能にすることができないという問題点があった。ストレージ内の保存済データを復元不能にするためには、保存済データを無効にする無効化データを保存済データに上書きする必要がある。
【０００７】
しかし、上述した書込データを必ず暗号化する技術では、無効化データであっても暗号化され書き込まれるため、ストレージ内のデータが無効化データであるか保存済データであるかが不明となる。そのため、復元不能にするために暗号化回路のない書込専用の機器等をストレージに接続して無効化データを書き込む手間が生じる問題点があった。
【０００８】
一方、上述した書込データを暗号化するか否かを選択できる技術では、各暗号化回路を制御することで保存済データを復元不能にすることができる。しかし、ストレージごとに暗号化回路を保持しているため製造コストがかかる問題点があった。さらに、ストレージの数に応じて暗号化回路の制御機能が増加し制御機能の処理が複雑になる問題点があった。
【０００９】
この発明は、上述した従来技術による問題点を解消するため、安全性の向上および低廉化を図ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、ＲＡＩＤコントローラは、ＲＡＩＤを構成する複数のストレージを選択するＲＡＩＤコントローラであって、複数のデータ入力端子を有し、経路設定に関する制御信号を入力する制御信号入力端子を有し、複数のデータ出力端子を有し、制御信号が制御信号入力端子に入力されると、制御信号に基づいて、複数のデータ入力端子の中から選ばれたデータ入力端子と複数のデータ出力端子の中から選ばれたデータ出力端子とを接続し、制御信号が、保存対象データを対象ストレージに保存する命令を示す場合、保存対象データを暗号化した暗号化データが入力されるデータ入力端子と対象ストレージに出力するデータ出力端子とを選択して接続し、制御信号が、対象ストレージ内の保存済データを無効化する無効化データを書き込む命令を示す場合、無効化データが入力されるデータ入力端子とデータ出力端子とを選択して接続することを要件とする。
【００１１】
このＲＡＩＤコントローラによれば、書込データが保存対象データの場合、どの対象ストレージが選択されても、暗号化手段を経由した暗号化データを書き込むことができる。書込データが無効化データの場合、対象ストレージ内の保存済データが無効化データに上書きされることで保存済データを復元不能とすることができる。
【００１２】
また、上述した課題を解決し、目的を達成するため、ストレージ制御装置は、ＲＡＩＤを構成する複数のストレージを制御するストレージ制御装置であって、書込命令と書込命令に付随する書込データを取得する取得手段と、入力された書込データを暗号化する暗号化手段と、取得された書込データが暗号化手段を経由し暗号化されて指定された対象ストレージに出力される第１の経路と書込データが暗号化手段を経由せず対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、取得された書込命令に基づいて書込データが、対象ストレージに保存される保存対象データであるか、対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断手段と、判断手段により保存対象データであると判断された場合、第１の経路を選択し、無効化データであると判断された場合、第２の経路を選択するように選択手段を制御する制御手段と、を備えることを要件とする。
【００１３】
このストレージ制御装置によれば、第１の経路の場合、どの対象ストレージが選択されても、暗号化手段を経由した経路により書込データを暗号化することができる。第２の経路の場合、対象ストレージ内の保存済データが無効化データに上書きされることで保存済データを復元不能とすることができる。
【発明の効果】
【００１４】
このストレージ制御装置によれば、ストレージのデータを効率よく意図した通りに復元不能とし、安全性の向上を図ることができる。また、どのストレージが選択されても暗号化回路を経由した経路とし、低廉化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１５】
以下に添付図面を参照して、このストレージ制御装置の好適な実施の形態を詳細に説明する。
【００１６】
（本実施の形態の概要）
本実施の形態では、保存対象データを暗号化回路で暗号化した暗号化データを対象ストレージに書き込む経路と無効化データを暗号化せずに全ストレージへ上書きする経路を選択することで、ストレージへのデータ保存から全ストレージ内の暗号化データを復元不能とする機能を切り替えることができる。図１に経路を選択する例を示す。
【００１７】
図１は、ストレージ制御装置による経路の選択を示す説明図である。ストレージ１０２内のデータが保存済データである。ストレージ制御装置１００内の経路選択回路１０１は、保存対象データが暗号化回路により暗号化された暗号化データと無効化データのいずれか一方のデータを制御信号に基づいて出力する。
【００１８】
経路選択回路１０１には、データ入力端子１０３と、制御信号入力端子１０４と、データ出力端子１０５を備えている。まず、無効化データと暗号化データはデータ入力端子１０３に入力され、制御信号が制御信号入力端子１０４に入力される。そして、制御信号に基づいていずれか一方のデータ入力端子１０３がデータ出力端子１０５と接続される。そして、経路選択回路１０１から出力されたデータがストレージ１０２に書き込まれる。
【００１９】
また、保存済データとは、ストレージ１０２内に保存されている暗号化されたデータである。たとえば、保存済データとは、テキストファイルや画像データ、音声データである。
【００２０】
無効化データとは、ストレージ１０２内の保存済データを無効にするためのデータであり、暗号化されないデータである。具体的には、ストレージ１０２内の値を特定の値に書き換えることでストレージ１０２内の保存済データをクリアすることができるデータである。たとえば、すべてのアドレスの値に０または１を書き込むようなデータである。ストレージ内のデータがすべて０または１のデータに上書きされることにより、ストレージ１０２内の保存済データが復元不能となったか否かが確認し易くなる。
【００２１】
（ストレージ制御装置１００のハードウェア構成）
図２は、実施の形態にかかるストレージ制御装置１００のハードウェア構成を示すブロック図である。図２において、ストレージ制御装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０２と、暗号化回路２０３と、ＨＤＤ  ＩＦ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ  ＩｎｔｅｒＦａｃｅ）２０４と、ＨＤＤ  ＩＦ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ  ＩｎｔｅｒＦａｃｅ）２０５と、ＲＡＩＤコントローラ２０６と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０８と、を備えている。また、各構成部は内部バス２０７によってそれぞれ接続されている。
【００２２】
そして、ストレージ１０２は、データを保存するための記憶装置である。本実施の形態では、磁気ディスク２１０と磁気ディスクドライブ２１１をストレージ１０２の一例とするが、たとえば、光ディスクと光ディスクドライブ、磁気テープと磁気テープ用のドライバ、フラッシュメモリーなどの複数回書込可能なストレージであってもよい。
【００２３】
ここで、ＣＰＵ２０１は、ストレージ制御装置１００の全体の制御を司る。ＲＯＭ２０８は、ストレージ制御プログラムを記憶している。ＲＡＭ２０２は、ＣＰＵ２０１のワークエリアとして使用される。
【００２４】
ＲＡＩＤコントローラ２０６は、複数のストレージ１０２の中から指定された対象ストレージ１０２を選択する。さらに、ＲＡＩＤコントローラ２０６は、対象ストレージ１０２に書き込むデータを選択する。
【００２５】
ＨＤＤ  ＩＦ２０４は、命令と書込データを保持できるバッファーである。ＨＤＤ  ＩＦ２０４は、保存した命令をＣＰＵ２０１へ出力し、保存した書込データをＲＡＩＤコントローラ２０６へ出力する。ＨＤＤ  ＩＦ２０５は、リード／ライトのデータや制御を保持できるバッファーである。ＲＡＩＤコントローラ２０６とＣＰＵ２０１の制御にしたがって磁気ディスクドライブ２１１へのリード／ライトのデータや制御を出力する。
【００２６】
磁気ディスクドライブ２１１は、ＣＰＵ２０１とＲＡＩＤコントローラ２０６の制御にしたがって磁気ディスク２１０に対するデータのリード／ライトを制御する。磁気ディスク２１０は、磁気ディスクドライブ２１１の制御で書き込まれたデータを記憶する。
【００２７】
外部主制御装置２０９は、書込命令と書込データをストレージ制御装置１００に入力する。この外部主制御装置２０９として、たとえば、スキャナやプリンタ、キーボードなどをストレージ制御装置１００に接続してもよい。そして、暗号化回路２０３は、ＣＰＵ２０１の制御に基づいて外部主制御装置２０９から入力されたデータを暗号化する。
【００２８】
（ストレージ制御装置１００の機能的構成）
つぎに、ストレージ制御装置１００の機能的構成について説明する。図３は、ストレージ制御装置１００の機能的構成を示すブロック図である。ストレージ制御装置１００は、取得部３０１と、暗号化処理部３０２と、選択部３０３と、判断部３０４と、制御部３０５とを含む構成である。この判断部３０４および制御部３０５は、具体的には、たとえば、図２に示したＲＯＭ２０８、ＲＡＭ２０２などの記憶装置に記憶されたストレージ制御プログラムをＣＰＵ２０１に実行させることにより、その機能を実現する。
【００２９】
まず、取得部３０１は、外部主制御装置２０９からの書込命令と書込データを取得する機能を有する。具体的には、たとえば、ＨＤＤ  ＩＦ２０４が、外部主制御装置２０９からの書込命令と書込データを受信したりする。また、ＨＤＤ  ＩＦ２０４によって書込命令が受信された後に、ＣＰＵ２０１がＲＡＭ２０２やＲＯＭ２０８などの記憶装置から書込データを読み出したりしてもよい。
【００３０】
暗号化処理部３０２は、取得部３０１により取得された書込データが入力されると暗号化する機能を有する。具体的には、たとえば、取得した書込データがＲＡＩＤコントローラ２０６を介して暗号化回路２０３へ入力されると、暗号化回路２０３が書込データを暗号化する。そして、暗号化回路２０３がＲＡＩＤコントローラ２０６へ暗号化データを出力する。
【００３１】
選択部３０３は、取得部３０１により取得された書込データと暗号化回路２０３により暗号化された暗号化データのいずれか一方を選択して出力する機能を有する。具体的には、ＲＡＩＤコントローラ２０６内の経路選択回路１０１が、データ入力端子１０３に入力された無効化データと暗号化データのいずれか一方のデータを選択する。つぎに、選択されたデータのデータ入力端子１０３とデータ出力端子１０５とを接続する。選択部３０３は、データ入力部３０６と、制御信号入力部３０７と、経路選択部３０８と、データ出力部３０９とを含む構成である。
【００３２】
また、選択部３０３により暗号化データが選択された場合を第１の経路とし、選択部３０３により無効化データが選択された場合を第２の経路とする。
【００３３】
データ入力部３０２は、取得部３０１により取得された書込データが暗号化処理部３０２を経由して暗号化された暗号化データをデータ入力端子１０３へ入力し、暗号化処理部３０２を経由していない無効化データをデータ入力端子１０３へ入力する。具体的には、たとえば、ＨＤＤ  ＩＦ２０４からの書込データと、書込データが暗号化回路２０３によって暗号化された暗号化データが各データ入力端子１０３に入力される。
【００３４】
制御信号入力部３０７は、後述する制御部３０５によって出力される制御信号の入力を制御信号入力端子１０４に入力する。具体的には、たとえば、ＣＰＵ２０１が出力した制御信号が経路選択回路１０１の制御信号入力端子１０４へ入力される。
【００３５】
経路選択部３０８は、データ入力部３０２によって入力された暗号化データと無効化データのいずれか一方のデータを制御信号入力部３０７によって入力された制御信号に基づいて選択する。そして、選択されたデータのデータ入力端子１０３と後述する出力部３０９のデータ出力端子１０５とを接続する。
【００３６】
具体的には、たとえば、ＲＡＩＤコントローラ２０６内の経路選択回路１０１が入力された無効化データと暗号化データのいずれか一方のデータを選択する。たとえば、制御信号が０の場合、経路選択回路１０１は暗号化データを選択して暗号化データのデータ入力端子１０３と後述する出力部３０９のストレージへ出力するデータ出力端子１０５とを接続する。一方、制御信号が１の場合、選択回路１０１は無効化データを選択して無効化データのデータ入力端子１０３と後述する出力部３０９のストレージへ出力するデータ出力端子１０５とを接続する。
【００３７】
また、経路選択部３０８は、書込データが保存対象データの場合、暗号化処理部３０２を経由していない書込データのデータ入力端子１０３と暗号化処理部３０２へ出力するデータ出力端子１０５とを接続する。具体的には、たとえば、制御信号が０の場合、保存対象データが入力されているデータ入力端子１０３と暗号化回路２０３に出力されるデータ出力端子１０５とを接続する。
【００３８】
これにより、書込命令に基づいて書込データを暗号化するか否かを選択することができる。したがって、書込データが無効化データの場合、暗号化回路２０３の処理を省くことができ、書込命令の処理時間が短縮される。
【００３９】
つぎに、データ出力部３０９は、データ出力端子１０５がデータをストレージへ出力する。具体的には、たとえば、経路選択回路１０１によって選択された暗号化データと無効化データのいずれか一方のデータをデータ出力端子１０５がストレージへ出力する。
【００４０】
また、データ出力部３０９は、データ出力端子１０５が暗号化処理部３０２へデータを出力する。具体的には、たとえば、データ出力端子１０５が、接続された保存対象データが入力されているデータ入力端子１０３の保存対象データを暗号化回路２０３へ出力する。図４−１に暗号化データが選択された例を示す。
【００４１】
図４−１は、経路選択回路１０１によって暗号化データが選択された例を示す説明図である。制御信号が０であるため、経路選択回路１０１によってストレージ１０２に書き込まれるデータとして暗号化データが選択される。そして、暗号化データが入力されているデータ入力端子１０３とデータ出力端子１０５とが接続される。図４−２に無効化データが選択された例を示す。
【００４２】
また、たとえば、第１の経路選択時には、保存対象データを保存する対象ストレージ１０２を、書込命令にストレージの情報を付随させ指定することによりＲＡＩＤコントローラ２０６が複数のストレージの中から選択する。
【００４３】
図４−２は、経路選択回路１０１によって無効化データが選択された例を示す説明図である。制御信号が１であるため、経路選択回路１０１によってストレージ１０２に書き込まれるデータとして無効化データが選択される。そして、無効化データが入力されているデータ入力端子１０３とデータ出力端子１０５とが接続される。
【００４４】
また、第２の経路選択時には、ＲＡＩＤコントローラ２０６が無効化データの対象ストレージ１０２を全ストレージ１０２とすることにより、無効化データの書込命令を一回実行することで全ストレージ１０２の保存済データを復元不能にすることができる。したがって、無効化データの書込命令を複数回実行する手間を省くことができる。
【００４５】
図３に戻って、判断部３０４は、取得部３０１により取得された書込命令に基づいて書込データが、対象となる磁気ディスク２１０に保存される保存対象データであるか、対象となる磁気ディスク２１０内の保存済データを無効化する無効化データであるかを判断する。
【００４６】
具体的には、たとえば、ＣＰＵ２０１は、ＣＰＵ２０１内の命令デコーダーにより書込命令のコードをデコードする。そして、デコードされた結果から書込命令の種類を識別して書込データが保存対象データであるか無効化データであるかを判断する。なお、判断結果はＲＡＭ２０２などの記憶装置に保存される。
【００４７】
制御部３０５は、判断部３０４により書込データが保存対象データであると判断された場合、第１の経路を選択し、無効化データであると判断された場合、第２の経路を選択するように選択部３０３を制御する。具体的には、たとえば、ＣＰＵ２０１が、命令デコーダーの結果により書込データが保存対象データであると判断された場合、ＲＡＩＤコントローラ２０６の経路選択回路１０１の入力信号である制御信号を０に設定する。そして、書込データが無効化データであると判断された場合、制御信号を１に設定する。つぎに、制御信号をＲＡＩＤコントローラ２０６へ出力する。
【００４８】
第１の経路の場合、どのストレージ１０２が選択されても、書込データは暗号化処理部３０２を経由した経路により暗号化される。第２の経路の場合、対象となる磁気ディスク２１０内の保存済データが無効化データに上書きされることで保存済データが復元不能となる。したがって、安全性の向上および低廉化を図ることができる。つぎに、図５および図６でシーケンス図を用いて書込命令の処理を示す。
【００４９】
まず、図５は、書込データが保存対象データの場合の書込命令の処理を示すシーケンス図である。まず、外部主制御装置２０９からＨＤＤ  ＩＦ２０４へデータ保存書込命令が入力され（ステップＳ５０１）、続いて保存対象データが入力される（ステップＳ５０２）。つぎに、ＨＤＤ  ＩＦ２０４がデータ保存書込命令をＣＰＵ２０１とＲＡＭ２０２へ出力する（ステップＳ５０３）。そして、ＣＰＵ２０１がデータ保存書込命令をデコードする。つぎに、書込命令に付随するデータが保存対象データであると判断して制御信号を０に設定する。そして、制御信号をＲＡＩＤコントローラ２０６へ出力する（ステップＳ５０４）。
【００５０】
つぎに、ＨＤＤ  ＩＦ２０４から保存対象データがＲＡＩＤコントローラ２０６を介して（ステップＳ５０５）、暗号化回路２０３に入力される（ステップＳ５０６）。そして、暗号化回路２０３により保存対象データが暗号化される。暗号化データがＲＡＩＤコントローラ２０６を介して（ステップＳ５０７）、ＨＤＤ  ＩＦ２０５に入力される（ステップＳ５０８）。つぎに、ＣＰＵ２０１からＨＤＤ  ＩＦ２０５へ書込要求が出力されると（ステップＳ５０９）、ＨＤＤ  ＩＦ２０５から磁気ディスクドライブ２１１へ暗号化データが出力される（ステップＳ５１０）。
【００５１】
さらに、磁気ディスクドライブ２１１によって磁気ディスク２１０へ暗号化データが書き込まれると、磁気ディスクドライブ２１１が書込応答をＨＤＤ  ＩＦ２０５へ入力する（ステップＳ５１１）。そして、ＨＤＤ  ＩＦ２０５が書込応答をＣＰＵ２０１へ出力し（ステップＳ５１２）、書込命令の処理を終了する。
【００５２】
したがって、どの対象ストレージ１０２が選択されても、書込データは暗号化回路２０３を経由した経路により暗号化される。ストレージ制御装置１００はストレージ１０２ごとに暗号化回路２０３を保持する必要がない。これにより、低廉化を図ることができる。
【００５３】
図６は、書込データが無効化データの場合の書込命令の処理を示すシーケンス図である。まず、外部主制御装置２０９からＨＤＤ  ＩＦ２０４へ無効化データの書込命令が入力され（ステップＳ６０１）、続いて無効化データが入力される（ステップＳ６０２）。つぎに、ＨＤＤ  ＩＦ２０４が無効化データの書込命令をＣＰＵ２０１とＲＡＭ２０２へ出力する（ステップＳ６０３）。そして、ＣＰＵ２０１が無効化のデータ書込命令をデコードする。つぎに、書込命令に付随するデータが無効化データであると判断して制御信号を１に設定する。そして、制御信号をＲＡＩＤコントローラ２０６へ出力する（ステップＳ６０４）。
【００５４】
つぎに、ＨＤＤ  ＩＦ２０４から無効化データがＲＡＩＤコントローラ２０６を介して（ステップＳ６０５）、ＨＤＤ  ＩＦ２０５へ入力される（ステップＳ６０６）。つぎに、ＣＰＵ２０１がＨＤＤ  ＩＦ２０５へ書込要求を出力すると（ステップＳ６０７）、ＨＤＤ  ＩＦ２０５から磁気ディスクドライブ２１１に対して無効化データが出力される（ステップＳ６０８）。
【００５５】
さらに、磁気ディスクドライブ２１１による磁気ディスク２１０への書込処理が終了すると、磁気ディスクドライブ２１１が書込応答をＨＤＤ  ＩＦ２０５へ入力する（ステップＳ６０９）。そして、ＨＤＤ  ＩＦ２０５が書込応答をＣＰＵ２０１へ出力し（ステップＳ６１０）、書込命令の処理を終了する。
【００５６】
また、図６では、無効化データは外部主制御装置２０９から入力されているが、ＲＯＭ２０８やＲＡＭ２０２などの記憶装置に記憶されている無効化データをＣＰＵ２０１がアクセスして読み出すこととしてもよい。
【００５７】
したがって、対象ストレージ１０２内の保存済データが無効化データに上書きされることで保存済データが復元不能となる。そして、ストレージ１０２内のデータが復元されても無効化データが復元される。復元された無効化データは画像や音声のような意味を持つデータではないため安全である。
【００５８】
（ストレージ制御装置１００の制御処理手順）
つぎに、本実施の形態にかかるストレージ制御装置１００のＣＰＵ２０１の制御処理手順について説明する。図７は、ストレージ制御装置１００の制御処理手順を示すフローチャートである。図７においてまず、書込命令を受付（ステップＳ７０１）、判断部３０４により、受け付けた書込命令がデータ保存書込命令であるか否かを判断する（ステップＳ７０２）。書込命令がデータ保存書込命令であるとき（ステップＳ７０２：Ｙｅｓ）、制御部３０５により、選択部３０３への制御信号を０に設定する（ステップＳ７０３）。一方、書込命令がデータ保存書込命令でないとき（ステップＳ７０２：Ｎｏ）、制御部３０５により、選択部３０３への制御信号を１に設定する（ステップＳ７０４）。
【００５９】
さらに、データ書込処理を実行し（ステップＳ７０５）、書込チェック処理を実行する（ステップＳ７０６）。そして、データ再書込処理を実行して（ステップＳ７０７）、一連の処理を終了する。
【００６０】
つぎに、上述したデータ書込処理（ステップＳ７０５）について説明する。図８は、データ書込処理の処理手順を示すフローチャートである。図８においてまず、ＨＤＤ  ＩＦ２０５へ書込信号を出力（ステップＳ８０１）、つぎに、書込応答を受信したか否かを判断する（ステップＳ８０２）。
【００６１】
書込応答を受信していないとき（ステップＳ８０２：Ｎｏ）、ステップＳ８０２に戻る。一方、書込応答を受信したとき（ステップＳ８０２：Ｙｅｓ）、ｋ＝リトライ数とし（ステップＳ８０３）、ステップＳ７０６へ移行する。リトライ数とは、ストレージ１０２への書込に失敗したときに、再び書込を行う上限回数である。
【００６２】
つぎに、上述した書込チェック処理（ステップＳ７０６）について説明する。図９は、書込チェック処理の処理手順を示すフローチャートである。図９においてまず、ｊ＝ストレージ数（ステップＳ９０１）とし、書込データを取得する（ステップＳ９０２）。ｊ番目のストレージ１０２のデータを読み出し（ステップＳ９０３）、書込データ＝読み出しデータであるか否かを判断する（ステップＳ９０４）。書込データ＝読み出しデータでないとき（ステップＳ９０４：Ｎｏ）、書込に失敗したストレージ１０２として情報を保存し（ステップＳ９０５）、ｊ＝１であるか否かを判断する（ステップＳ９０６）。
【００６３】
一方、書込データ＝読み出しデータであるとき（ステップＳ９０４：Ｙｅｓ）、ステップ９０６へ移行する。ｊ＝１でないとき（ステップＳ９０６：Ｎｏ）、ｊ＝ｊ−１の処理を実行して（ステップＳ９０７）、ステップＳ９０３に戻る。また、ｊ＝１であるとき（ステップＳ９０６：Ｙｅｓ）、ステップＳ７０７へ移行する。
【００６４】
つぎに、上述したデータ再書込処理（ステップＳ７０７）について説明する。図１０は、データ再書込処理の処理手順を示すフローチャートである。図１０においてまず全ストレージ１０２への書込に成功したか否かを判断する（ステップＳ１００１）。全ストレージへの書込に成功していないとき（ステップＳ１００１：Ｎｏ）、ｋ＝０であるか否かを判断する（ステップＳ１００２）。
【００６５】
ｋ＝０でないとき（ステップＳ１００２：Ｎｏ）、書込に失敗したストレージ１０２への書込信号を出力し（ステップＳ１００３）、書込応答を受信したか否かを判断する（ステップＳ１００４）。書込応答を受信していないとき（ステップＳ１００４：Ｎｏ）、ステップＳ１００４に戻る。一方、書込応答を受信したとき（ステップＳ１００４：Ｙｅｓ）、ｋ＝ｋ−１の計算処理を実行し（ステップＳ１００５）、ステップＳ７０６へ戻る。
【００６６】
一方、ｋ＝０であるとき（ステップＳ１００２：Ｙｅｓ）、書込に成功したストレージが存在するか否かを判断する（ステップＳ１００６）。書込に成功したストレージ１０２が存在しないと判断された場合（ステップＳ１００６：Ｎｏ）、書込エラーを出力し（ステップＳ１００７）、一連の処理を終了する。また、書込に成功したストレージ１０２が存在すると判断された場合（ステップＳ１００６：Ｙｅｓ）、一連の処理を終了する。
【００６７】
一方、全ストレージ１０２への書込に成功したと判断された場合（ステップＳ１００１：Ｙｅｓ）、一連の処理を終了する。
【００６８】
以上説明したように、本実施の形態によれば、保存対象データを単一の暗号化処理部３０２で暗号化してストレージ１０２に書き込む経路から無効化データを暗号化せずに対象ストレージ１０２へ上書きする経路に切り替えることで、対象ストレージ１０２内の暗号化データを復元不能とする。
【００６９】
また、対象ストレージ１０２を全ストレージ１０２とすることにより、無効化データの書込命令を一回実行することで全ストレージの保存済データを復元不能にすることができる。
【００７０】
したがって、第１の経路の場合、どのストレージ１０２が選択されても、暗号化処理部３０２を経由した経路により書込データを暗号化することができる。第２の経路の場合、全ストレージ１０２内の保存済データが無効化データに上書きされることで保存済データを復元不能とすることができる。
【００７１】
これにより、ストレージ１０２内のデータを読み出すことで、保存済みデータが復元不能であることを簡単に確認することができる。そして、ストレージ１０２内のデータが復元されても無効化データが復元される。復元された無効化データは画像や音声のような意味を持つデータではないため安全である。
【００７２】
このＲＡＩＤコントローラ２０６およびストレージ制御装置１００によれば、磁気ディスク２１０内のデータを効率よく意図した通りに復元不能とし、安全性の向上を図ることができる。また、どの磁気ディスク２１０が選択されても暗号化回路２０３を経由した経路とし、低廉化を図ることができるという効果を奏する。
【００７３】
また、本実施の形態で説明したストレージ制御装置１００は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述したストレージ制御装置１００の機能（取得部３０１〜データ出力部３０９）をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、ストレージ制御装置１００を製造することができる。
【００７４】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００７５】
（付記１）ＲＡＩＤを構成する複数のストレージを選択するＲＡＩＤコントローラにおいて、
複数のデータ入力端子を有するデータ入力部と、
経路設定に関する制御信号を入力する制御信号入力端子を有する制御信号入力部と、
複数のデータ出力端子を有するデータ出力部と、
前記制御信号が前記制御信号入力端子に入力されると、前記制御信号に基づいて、前記複数のデータ入力端子の中から選ばれたデータ入力端子と前記複数のデータ出力端子の中から選ばれたデータ出力端子とを接続する経路選択部と、を備え、
前記経路選択部は、
前記制御信号が、保存対象データを対象ストレージに保存する命令を示す場合、前記保存対象データを暗号化した暗号化データが入力されるデータ入力端子と前記対象ストレージに出力するデータ出力端子とを選択して接続し、前記制御信号が、前記対象ストレージ内の保存済データを無効化する無効化データを書き込む命令を示す場合、前記無効化データが入力されるデータ入力端子と前記データ出力端子とを選択して接続することを特徴とするＲＡＩＤコントローラ。
【００７６】
（付記２）前記経路選択部は、
前記制御信号が、保存対象データを対象ストレージに保存する命令を示す場合、前記保存対象データが入力されるデータ入力端子と前記保存対象データを暗号化回路へ出力するデータ出力端子とを選択して接続することを特徴とする付記１に記載のＲＡＩＤコントローラ。
【００７７】
（付記３）ＲＡＩＤを構成する複数のストレージを制御するストレージ制御装置であって、
書込命令と前記書込命令に付随する書込データを取得する取得手段と、
入力された前記書込データを暗号化する暗号化手段と、
前記取得手段により取得された書込データが前記暗号化手段を経由し暗号化されて対象ストレージに出力される第１の経路と前記書込データが前記暗号化手段を経由せず前記対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、
前記取得手段により取得された書込命令に基づいて前記書込データが、前記対象ストレージに保存される保存対象データであるか、前記対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断手段と、
前記判断手段により前記保存対象データであると判断された場合、前記第１の経路を選択し、前記無効化データであると判断された場合、前記第２の経路を選択するように前記選択手段を制御する制御手段と、
を備えることを特徴とするストレージ制御装置。
【００７８】
（付記４）前記対象ストレージは、前記複数のストレージであることを特徴とする付記３に記載のストレージ制御装置。
【００７９】
（付記５）前記無効化データは、前記対象ストレージのすべてのアドレスに対応する値がすべて０または１であることを特徴とする付記３に記載のストレージ制御装置。
【００８０】
（付記６）ＲＡＩＤを構成する複数のストレージを制御するストレージ制御方法であって、
書込命令と前記書込命令に付随する書込データを取得する取得手段と、
入力された前記書込データを暗号化する暗号化手段と、
前記取得手段により取得された書込データが前記暗号化手段を経由し暗号化されて対象ストレージに出力される第１の経路と前記書込データが前記暗号化手段を経由せず前記対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、を備えるストレージ制御装置が、
前記取得手段により取得された書込命令に基づいて前記書込データが、前記対象ストレージに保存される保存対象データであるか、前記対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断工程と、
前記判断工程により前記保存対象データであると判断された場合、前記第１の経路を選択し、前記無効化データであると判断された場合、前記第２の経路を選択するように前記選択手段を制御する制御工程と、
を実行することを特徴とするストレージ制御方法。
【００８１】
（付記７）ＲＡＩＤを構成する複数のストレージと、
書き込み命令と前記書き込み命令に付随する書込データを取得する取得手段と、
入力された前記書込データを暗号化する暗号化手段と、
前記取得手段により取得された書込データが前記暗号化手段を経由し暗号化されて指定された対象ストレージに出力される第１の経路と前記書込データが前記暗号化手段を経由せず前記対象ストレージに出力される第２の経路とのうちいずれかの経路を選択する選択手段と、
を備えるストレージ制御装置を、
前記取得手段により取得された書き込み命令に基づいて前記書込データが、前記対象ストレージに保存される保存対象データであるか、前記対象ストレージ内の保存済データを無効化する無効化データであるかを判断する判断手段、
前記判断手段により前記保存対象データであると判断された場合、前記第１の経路を選択し、前記無効化データであると判断された場合、前記第２の経路を選択するように前記選択手段を制御する制御手段、
として機能させることを特徴とするストレージ制御プログラム。
【図面の簡単な説明】
【００８２】
【図１】ストレージ制御装置による経路の選択を示す説明図である。
【図２】実施の形態にかかるストレージ制御装置１００のハードウェア構成を示すブロック図である。
【図３】ストレージ制御装置１００の機能的構成を示すブロック図である。
【図４−１】経路選択回路１０１によって暗号化データが選択された例を示す説明図である。
【図４−２】経路選択回路１０１によって無効化データが選択された例を示す説明図である。
【図５】書込データが保存対象データの場合の書込命令の処理を示すシーケンス図である。
【図６】書込データが無効化データの場合の書込命令の処理を示すシーケンス図である。
【図７】ストレージ制御装置１００の制御処理手順を示すフローチャートである。
【図８】データ書込処理の処理手順を示すフローチャートである。
【図９】書込チェック処理の処理手順を示すフローチャートである。
【図１０】データ再書込処理の処理手順を示すフローチャートである。
【符号の説明】
【００８３】
１００  ストレージ制御装置
１０２  ストレージ
１０３  データ入力端子
１０４  制御信号入力端子
１０５  データ出力端子
３０１  取得部
３０２  暗号化処理部
３０３  選択部
３０４  判断部
３０５  制御部
３０６  データ入力部
３０７  制御信号入力部
３０８  経路選択部
３０９  データ出力部
【図１】
2010134505.tif 000003
【図２】
2010134505.tif 000004
【図３】
2010134505.tif 000005
【図４−１】
2010134505.tif 000006
【図４−２】
2010134505.tif 000007
【図５】
2010134505.tif 000008
【図６】
2010134505.tif 000009
【図７】
2010134505.tif 000010
【図８】
2010134505.tif 000011
【図９】
2010134505.tif 000012
【図１０】
2010134505.tif 000013