記憶装置、暗号化データ処理方法
【課題】更新前の暗号鍵によって暗号化されたデータが更新後の暗号鍵によって復号化され出力されることを防ぐ記憶装置、暗号化データ処理方法を提供する。
【解決手段】データを記憶媒体に保存する記憶装置であって、更新された暗号鍵と暗号鍵の識別情報を設定する暗号鍵更新部と、暗号化データに暗号鍵更新部により設定された識別情報を付加して記憶媒体に保存する保存部と、暗号化データと暗号化データに付加された識別情報を読み取る読み取り部と、読み取り部により読み取られた暗号化データに付加されて保存された識別情報と暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と判断部において、暗号化部により暗号化データに付加された識別情報と暗号鍵更新部により設定された識別情報とが一致する場合、暗号鍵更新部により設定された暗号鍵に基づいて暗号化データを復号化し、復号化されたデータを出力する復号化部を備えた。
【解決手段】データを記憶媒体に保存する記憶装置であって、更新された暗号鍵と暗号鍵の識別情報を設定する暗号鍵更新部と、暗号化データに暗号鍵更新部により設定された識別情報を付加して記憶媒体に保存する保存部と、暗号化データと暗号化データに付加された識別情報を読み取る読み取り部と、読み取り部により読み取られた暗号化データに付加されて保存された識別情報と暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と判断部において、暗号化部により暗号化データに付加された識別情報と暗号鍵更新部により設定された識別情報とが一致する場合、暗号鍵更新部により設定された暗号鍵に基づいて暗号化データを復号化し、復号化されたデータを出力する復号化部を備えた。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、暗号化され格納されたデータを復号化する記憶装置、暗号化データ処理方法に関するものである。
【背景技術】
【0002】
情報の機密保持において、特定のファイル単位でデータを暗号化するファイル暗号化方法に対して、記憶装置(例えばハードディスク)に格納されるデータ全てに暗号化がなされるドライブ暗号化方法が知られている。ドライブ暗号は、複数のファイルを暗号化する必要がある場合であっても、ハードディスクに格納される全てのデータを暗号化するため、ユーザは暗号化に対して意識する必要がなく、また、ファイルに対する暗号化のし忘れを防止することができるという利点がある。
【0003】
このような記憶装置に格納されるデータを暗号化するドライブ暗号化方法においても、セキュリティの観点から、一定期間ごとに暗号鍵が更新されることが望ましい。また、暗号鍵が盗難された可能性がある場合、異なる暗号鍵によってデータを暗号化しなければならないのは言うまでもない。
【0004】
なお、本発明の関連ある従来技術として、記憶装置に対してユーザ認証と格納データの暗号化とを併せて適用する場合に好適な格納データの暗号処理及び暗号鍵の管理を実現するデータ記憶装置、これを搭載した情報処理装置およびそのデータ処理方法並びにプログラムが知られている(例えば特許文献1)。
【特許文献1】特開2004−201038号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、暗号鍵が更新されることによって、更新前の鍵である旧暗号鍵によって暗号化されたデータと、更新後の鍵である新暗号鍵によって暗号化されたデータとの区別が付かず、旧暗号鍵によって暗号化されたデータを新暗号鍵によって復号化して読み込んでしまうという問題があった。
【0006】
本発明は上述した問題点を解決するためになされたものであり、更新前の暗号鍵によって暗号化されたデータが更新後の暗号鍵によって復号化され出力されることを防ぐ記憶装置、暗号化データ処理方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決するため、記憶装置は、データを記憶媒体に保存する装置であって、更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える。
【0008】
また、暗号化データ処理方法は、記憶媒体に保存された暗号化データを処理する方法であって、暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップとを実行する。
【発明の効果】
【0009】
本発明によれば、更新前の暗号鍵によって暗号化されたデータが更新後の暗号鍵によって復号化され出力されることを防ぐ記憶装置、暗号化データ処理方法を提供することができる。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。
【0011】
実施の形態1.
まず、本実施の形態に係る磁気ディスク装置の構成について説明する。図1は本実施の形態に係る磁気ディスク装置の構成を示す図である。
【0012】
図1に示すように、磁気ディスク装置1(記憶装置)は、ホスト2と通信を行い、媒体11(記憶媒体)、ヘッド12、リードチャネル13(読み取り部、保存部)、HDC(Hard Disk Controller)1a、MCU(Micro Control Unit、暗号鍵更新部、更新履歴部)16、SDRAM(Synchronous Dynamic Random Access Memory)17を備えるものである。また、HDC1aは、暗号化データ識別部14(判断部)、暗号化/復号化部15(暗号化部、復号化部)を備えるものである。
【0013】
媒体11は磁気ディスクであり面内記録方式であっても垂直記録方式であっても良い。また、媒体11はその記憶領域内にシステム領域を有し、システム領域内には後述する暗号鍵履歴情報と暗号鍵が対応付けられて保存されているものとする。をまた、ヘッド12は媒体11に対してデータの読み書きをするものであり、リードチャネル13はヘッド12により媒体11から読まれたアナログ信号をデジタル信号に変換し、ヘッド12により媒体11に書き込まれるデジタル信号をアナログ信号に変換するものである。
【0014】
また、暗号化データ識別部14は後述する暗号鍵履歴情報に基づいて、媒体11に格納されたデータの暗号鍵と更新された暗号鍵とが一致するかどうかを識別するものである。また、暗号化/復号化部15は格納されるデータを暗号化し、読み出されるデータを復号化するものである。
【0015】
また、MCU16(CPUやMPUであっても良い)は、ホスト2から送信されるコマンドまたは各種プログラムに従ってリードチャネル13、暗号化データ識別部14、暗号化/復号化部15を制御するものである。また、SDRAM17は、ホスト2と通信されるデータをバッファリングするものである。
【0016】
次に、データに付加される暗号鍵履歴情報について説明する。図2は、媒体に格納されるデータのセクタを示す図である。
【0017】
図2に示すように、暗号化/復号化部15により暗号化され、媒体11に格納されたデータのそれぞれのセクタには、誤り訂正符号としてECC(Error Correcting Code)と、どの暗号鍵で暗号化されたかを複数bitにより示す暗号鍵履歴情報が付加されている。この暗号鍵履歴情報は暗号鍵がn回更新されるとnとしてセクタに付加される情報である。この暗号鍵履歴情報によって、暗号鍵履歴情報0が付加されたセクタは初期暗号鍵によって暗号化されたデータのセクタであり、暗号鍵履歴情報1が付加されたセクタは1回目に更新された暗号鍵によって暗号化されたデータのセクタであることがわかる。なお、本実施の形態において、暗号鍵履歴情報nは最後に更新された暗号鍵(新暗号鍵)によって暗号化されたデータのセクタであることを示すものとする。
【0018】
次に、本実施の形態に係る磁気ディスクにおける暗号鍵更新処理について説明する。図3は暗号鍵更新処理の動作を示すフローチャートである。なお、図3において、ホストは磁気ディスク装置に対して暗号鍵を更新させるコマンドをすでに発行しているものとする。
【0019】
ホスト2からコマンドを受け取ったMCU16は、まず、エントロピーを作成し(S101)、作成したエントロピーに基づいて乱数を作成し(S102)、媒体11のシステム領域から最後に更新された暗号鍵履歴情報を読み込んでインクリメントし(S103)、作成した乱数を暗号鍵とし、この暗号鍵とインクリメントした暗号鍵履歴情報とを対応づけて、媒体11のシステム領域に保存する(S104)。
【0020】
なお、暗号鍵が媒体11のシステム領域に保存される際には、暗号鍵自体が暗号化されるものとする。また、システム領域に保存された暗号鍵と暗号鍵履歴情報はMPUによってリードチャネルを介して読み出され、HDCに設定される。以下、その動作を設定処理として説明する。図4は設定処理の動作を示すフローチャートである。
【0021】
磁気ディスク装置1が起動されると、まず、MCU16はリードチャネル13を介してヘッド12に媒体のシステム領域を読み込ませ(S201)、システム領域から暗号履歴情報を取得し(S202)、最後に更新された暗号鍵と対応する暗号鍵履歴情報をHDC1aに設定する(S203,暗号鍵設定ステップ)。
【0022】
上述のようにHDC1aに設定された暗号鍵によって、暗号化/復号化部15は、ホスト2から送られるデータを暗号化する。以下、暗号化処理について説明する。図5は暗号化処理の動作を示すフローチャートである。
【0023】
まず、HDC1aの暗号化/復号化部14は、ホスト2から転送されたデータを取得すると(S301)、設定された暗号鍵に基づいてデータをセクタごとに暗号化し(S302,暗号化ステップ)、設定された暗号鍵履歴情報と誤り訂正符号としてのECCとをそれぞれのセクタに付加し、リードチャネル13、ヘッド12を介して媒体11にデータを格納する(S303,保存ステップ)。
【0024】
上述のように暗号化され格納化された暗号化データは、HDC1aに設定された暗号鍵履歴情報と照らし合わされることによって、暗号化の際の鍵と現在の鍵が一致しているかどうかが確認される。以下、その動作をHDC1aにおける暗号鍵識別処理として説明する。図6は暗号鍵識別処理の動作を示すフローチャートである。なお、図6において、ホストは磁気ディスク装置に対してデータを要求するコマンドをすでに発行しているものとする。
【0025】
まず、MCU16は、リードチャネル13とヘッド12を介して媒体11からセクタごとに暗号鍵識別情報が付加されたデータを読み込ませ(S401,読み取りステップ)、セクタに付加された暗号鍵識別情報とHDC1aに設定された暗号鍵識別情報nとが同じ値であるかどうかを暗号化データ識別部に判断させる(S402,判断ステップ)。
【0026】
セクタに付加された暗号鍵識別情報がnである場合(S402,YES,復号化ステップ)、MCU16は、暗号化/復号化部15にデータを復号化させ(S403,復号化ステップ)、復号化したデータをホスト2へ転送させる(S404,復号化ステップ)。
【0027】
一方、セクタに付加された暗号鍵識別情報がnではない場合(S402,NO)、MCU16は、暗号化データ識別部14に、データを0または任意の値に置き換えてホスト2へ転送させる(S405)。また、暗号化データ識別部14は、暗号鍵不一致としてデータの転送を停止しても構わない。
【0028】
上述したように、媒体11に格納するデータのそれぞれのセクタに暗号鍵履歴情報を付加し、旧暗号鍵によって暗号化されたデータをホスト2に転送しないことにより、旧暗号鍵によって暗号化されたデータをプロテクトすることができる。また、旧暗号鍵によって暗号化されたデータを0または任意の値に書き換えてホスト2に転送することにより、ホスト2にとって旧暗号鍵により暗号化されたデータは初期化された状態と同等とすることができる。また、暗号化されていないデータであっても、暗号鍵履歴情報を変更するだけでデータを無効にすることができる。
【0029】
実施の形態2.
本実施の形態に係る磁気ディスク装置は、旧暗号鍵によって暗号化されたデータを新暗号鍵によって暗号化しなおすものである。以下、実施の形態1と異なる構成及び動作について説明する。
【0030】
まず、実施の形態1と異なる実施の形態2の構成について説明する。図7は暗号鍵履歴テーブルを示す図である。
【0031】
実施の形態1に係る磁気ディスク装置1においては、媒体11のシステム領域には、新暗号鍵nと新暗号鍵nと対応付けられた暗号鍵履歴情報nだけが保存されていた。図7に示す実施の形態2における暗号鍵履歴テーブルは、媒体11のシステム領域に保存され、新暗号鍵及び旧暗号鍵の暗号鍵履歴情報と暗号鍵履歴情報に対応する暗号鍵を示す暗号鍵IDを対応付けるものである。また、暗号鍵IDに対応する暗号鍵の全てがシステム領域に暗号化されて保存されている。
【0032】
次に、実施の形態1と異なる実施の形態2の動作について説明する。図8は再暗号化処理の動作を示すフローチャートである。なお、磁気ディスク装置は、ホストから転送された再暗号化コマンドをトリガとして再暗号化処理を行うものとする。
【0033】
まず、MCU16は、リードチャネル13にヘッド12を介して媒体11のデータのセクタを読み込ませ(S501,読み取りステップ)、暗号化データ識別部14にセクタに付加された暗号鍵識別情報がn、つまり更新された新暗号鍵によって暗号化されたセクタであるかどうかを判断させる(S502,判断ステップ)
【0034】
暗号鍵識別情報がnではない場合(S502,NO,暗号鍵設定ステップ)、MCU16は暗号鍵識別テーブルを参照し、暗号鍵識別情報に対応する旧暗号鍵を暗号化/復号化部15に設定し(S503,暗号鍵設定ステップ)、旧暗号鍵に基づいて暗号化/復号化部15にセクタを復号化させ(S504,復号化ステップ)、復号化されたセクタをSDRAM17にストアし(S505,復号化ステップ)、新暗号鍵を暗号化/復号化部15に設定し(S506,暗号鍵設定ステップ)、SDRAM17にストアされたセクタを新暗号鍵に基づいて暗号化させ(S507,暗号化ステップ)、新暗号鍵に対応する暗号鍵識別情報をセクタに付加してリードチャネル13にセクタを付加させ(S508,保存ステップ)、媒体11に保存されたデータの全セクタの暗号鍵履歴情報がnかどうかを判断する(S509)。
【0035】
全セクタの暗号鍵履歴情報がnである場合(S509,YES)、MCU16は再暗号化処理を終了する。
【0036】
一方、全セクタの暗号鍵履歴情報がnではない場合(S509,NO)、MCU16は、再度リードチャネル13にヘッド12を介して媒体11のデータのセクタを読み込ませる(S501)。
【0037】
また、ステップS502において、暗号鍵識別情報がnである場合(S502,YES)、MCU16は媒体11に保存されたデータの全セクタの暗号鍵履歴情報がnかどうかを判断する(S509)。
【0038】
以上の構成及び動作によって、実施の形態2に係る磁気ディスク装置1は、旧暗号鍵によって暗号化されたデータを新暗号鍵によって暗号化しなおすことができる。また、上述の再暗号化処理が途中で中断されても、それぞれのセクタに付加された暗号鍵履歴情報を参照して再暗号化処理を行っているため、中断されたセクタから処理を再開することができる。また、図8において、磁気ディスク装置1は再暗号化コマンドをトリガとして再暗号化処理を実行するが、例えば、旧暗号鍵によって暗号化されたデータが読み出されるたびに再暗号化処理を実行しても良い。また、新暗号鍵によってセクタが置き換えられた場合、媒体11のどのセクタにも付加されていない暗号鍵履歴情報に対応する旧暗号鍵が破棄されることでセキュリティはより強固なものとなる。
【0039】
実施の形態3.
本実施の形態に係る磁気ディスク装置は、同じ時期に複数の暗号鍵を用いるものであり、それぞれのセクタには暗号化時に暗号鍵履歴情報と共に暗号鍵種別情報が付加されて媒体に格納され、本実施の形態に係る磁気ディスク装置はこの暗号鍵種別情報を参照することによって複数の暗号鍵からセクタを復号化するための暗号鍵を選択する。以下、実施の形態2と異なる構成及び動作について説明する。
【0040】
まず、暗号鍵種別テーブルについて説明する。図9は、実施の形態3における暗号鍵種別テーブルを示す図である。
【0041】
図9に示すように、暗号鍵種別テーブルは、媒体11のシステム領域に暗号鍵と共に新暗号鍵の暗号鍵履歴情報と、暗号鍵の種別を示す暗号鍵種別情報と、暗号鍵を示す暗号鍵IDとを対応付けるものである。なお、暗号鍵種別情報においてaは192ビット鍵を示し、bは256ビット鍵を示すものとする。なお、本実施の形態においては鍵のビット長を暗号鍵の種別としているが、例えば暗号方式を暗号鍵種別とし、暗号化/復号化部15を暗号方式の数だけ用意しても良い。
【0042】
次に、本実施の形態における暗号鍵識別処理について説明する。図10は本実施の形態における暗号鍵識別処理の動作を示すフローチャートである。なお、図10において、ホストは磁気ディスク装置に対してデータを要求するコマンドをすでに発行しているものとする。
【0043】
まず、MCU16は、リードチャネル13とヘッド12を介して媒体からセクタごとに暗号鍵履歴情報が付加されたデータを読み込ませ(S601,読み取りステップ)、セクタに付加された暗号鍵履歴情報とHDC1aに設定された暗号鍵履歴情報nとが同じ値であるかどうかを暗号化データ識別部に判断させる(S602,判断ステップ)。
【0044】
セクタに付加された暗号鍵履歴情報がnである場合(S602,YES)、MCU16は、セクタの暗号鍵種別情報を参照し、暗号鍵種別情報に対応する暗号鍵を暗号化/復号化部15に設定し(S603,暗号鍵設定ステップ)、暗号化/復号化部15にデータを復号化させ(S604,復号化ステップ)、復号化したデータをホスト2へ転送させる(S605,復号化ステップ)。
【0045】
一方、セクタに付加された暗号鍵識別情報がnではない場合(S602,NO)、MCU16は、暗号化データ識別部14に、データを0または任意の値に置き換えてホスト2へ転送させる(S606)。また、暗号化データ識別部14は、暗号鍵不一致としてデータの転送を停止しても構わない。
【0046】
上述の構成及び動作によって、本実施の形態に係る磁気ディスク装置1は、セキュリティーレベルの異なる暗号鍵をデータに応じて使い分けることができる。なお、データを暗号化する暗号鍵は、データの格納時にユーザが選択することができるものとする。
【0047】
また、上述した夫々の実施の形態において、磁気ディスク装置は、データを記憶するものであれば、異なる方式による記憶装置であっても良い。
【0048】
(付記1) データを記憶媒体に保存する記憶装置であって、
更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、
前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、
前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、
前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、
前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、
前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える記憶装置。
(付記2) 付記1に記載の記憶装置において、
更新され前記暗号鍵更新部により設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴部をさらに備える記憶装置。
(付記3) 付記2に記載の記憶装置において、
前記暗号鍵更新部は、前記判断部において前記暗号鍵更新部により設定された識別情報と前記暗号化部により前記暗号化データに付加された識別情報が一致しない場合、前記更新履歴部により前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
(付記4) 付記3に記載の記憶装置において、
前記更新履歴部により前記記憶媒体に保存された新暗号鍵の識別情報と前記保存部により前記記憶媒体に保存された暗号化データに付加された識別情報が一致しない場合、前記暗号鍵更新部は前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵更新部は新暗号鍵と該新暗号鍵の識別情報を設定し、前記暗号鍵更新部により設定された新暗号鍵に基づいて前記復号化部により前記メモリに記憶されたデータを暗号化し、前記保存部は前記暗号化部により暗号化された暗号化データに前記暗号鍵更新部により設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存することを特徴とする記憶装置。
(付記5) 付記1乃至付記4のいずれかに記載の記憶装置において、
前記暗号鍵更新部はさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号化部は前記暗号鍵更新部により設定された暗号方式による暗号鍵に基づいてデータを暗号化し、前記保存部は前記暗号化部により保存された暗号化データに前記暗号鍵更新部により設定された識別情報と種別情報を付加して前記記憶媒体に保存し、前記暗号鍵更新部は前記判断部において前記暗号化部により前記暗号化データに付加された識別情報が前記暗号鍵更新部により設定された識別情報と一致する場合、前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
(付記6) 付記1乃至付記5のいずれかに記載の記憶装置において、
前記記憶媒体は磁気ディスクであることを特徴とする記憶装置。
(付記7) 付記1乃至付記6のいずれかに記載の記憶装置において、
前記所定の単位はセクタであることを特徴とする記憶装置。
(付記8) 記憶媒体に保存された暗号化データを処理する暗号化データ処理方法であって、
暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、
前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、
前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、
前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップと
を実行する暗号化データ処理方法。
(付記9) 付記8に記載の暗号化データ処理方法において、
前記暗号鍵更新ステップにより設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴ステップをさらに実行する記憶装置。
(付記10) 付記9に記載の暗号化データ処理方法において、
前記暗号鍵設定ステップにより設定された識別情報と前記暗号化データに付加された識別情報が前記判断ステップにより一致されない場合、前記暗号鍵設定ステップは前記更新履歴ステップにより前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする暗号化データ処理方法。
(付記11) 付記10に記載の暗号化データ処理方法において、
前記設定履歴ステップにより前記記憶媒体に保存された新暗号鍵の識別情報と前記記憶媒体に保存された暗号化データに付加された識別情報が前記判断ステップにより一致されない場合、前記暗号鍵設定ステップは前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵設定ステップは新暗号鍵と該新暗号鍵の識別情報を設定することを特徴とし、
前記暗号鍵設定ステップにより設定された新暗号鍵に基づいて前記復号化ステップにより前記メモリに記憶されたデータを暗号化する暗号化ステップと、
前記暗号化ステップにより暗号化された暗号化データに前記暗号鍵設定ステップにより設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存する保存ステップと
をさらに実行する暗号化データ処理方法。
(付記12) 付記8乃至付記11のいずれかに記載の暗号化データ処理方法において、
前記暗号鍵設定ステップはさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号鍵設定ステップは暗号化データに付加された識別情報が前記暗号鍵設定ステップにより設定された識別情報が前記判断ステップにより一致される場合に前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする暗号化データ処理方法。
(付記13) 付記8乃至付記12のいずれかに記載の暗号化データ処理方法において、
前記記憶媒体は磁気ディスクであることを特徴とする暗号化データ処理方法。
(付記14) 付記8乃至付記13のいずれかに記載の暗号化データ処理方法において、
前記所定の単位はセクタであることを特徴とする暗号化データ処理方法。
【図面の簡単な説明】
【0049】
【図1】実施の形態1に係る磁気ディスク装置の構成を示す図である。
【図2】媒体に格納されるデータのセクタを示す図である。
【図3】暗号鍵更新処理の動作を示すフローチャートである。
【図4】設定処理の動作を示すフローチャートである。
【図5】暗号化処理の動作を示すフローチャートである。
【図6】暗号鍵識別処理の動作を示すフローチャートである。
【図7】実施の形態2における暗号鍵履歴テーブルを示す図である。
【図8】実施の形態2における再暗号化処理の動作を示すフローチャートである。
【図9】実施の形態3における暗号鍵種別テーブルを示す図である。
【図10】実施の形態3における暗号鍵識別処理の動作を示すフローチャートである。
【符号の説明】
【0050】
1 磁気ディスク装置、1a HDC、2 ホスト、11 媒体、12 ヘッド、13 リードチャネル、14 暗号化データ識別部、15 暗号化/復号化部、16 MCU、17 SDRAM。
【技術分野】
【0001】
本発明は、暗号化され格納されたデータを復号化する記憶装置、暗号化データ処理方法に関するものである。
【背景技術】
【0002】
情報の機密保持において、特定のファイル単位でデータを暗号化するファイル暗号化方法に対して、記憶装置(例えばハードディスク)に格納されるデータ全てに暗号化がなされるドライブ暗号化方法が知られている。ドライブ暗号は、複数のファイルを暗号化する必要がある場合であっても、ハードディスクに格納される全てのデータを暗号化するため、ユーザは暗号化に対して意識する必要がなく、また、ファイルに対する暗号化のし忘れを防止することができるという利点がある。
【0003】
このような記憶装置に格納されるデータを暗号化するドライブ暗号化方法においても、セキュリティの観点から、一定期間ごとに暗号鍵が更新されることが望ましい。また、暗号鍵が盗難された可能性がある場合、異なる暗号鍵によってデータを暗号化しなければならないのは言うまでもない。
【0004】
なお、本発明の関連ある従来技術として、記憶装置に対してユーザ認証と格納データの暗号化とを併せて適用する場合に好適な格納データの暗号処理及び暗号鍵の管理を実現するデータ記憶装置、これを搭載した情報処理装置およびそのデータ処理方法並びにプログラムが知られている(例えば特許文献1)。
【特許文献1】特開2004−201038号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、暗号鍵が更新されることによって、更新前の鍵である旧暗号鍵によって暗号化されたデータと、更新後の鍵である新暗号鍵によって暗号化されたデータとの区別が付かず、旧暗号鍵によって暗号化されたデータを新暗号鍵によって復号化して読み込んでしまうという問題があった。
【0006】
本発明は上述した問題点を解決するためになされたものであり、更新前の暗号鍵によって暗号化されたデータが更新後の暗号鍵によって復号化され出力されることを防ぐ記憶装置、暗号化データ処理方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決するため、記憶装置は、データを記憶媒体に保存する装置であって、更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える。
【0008】
また、暗号化データ処理方法は、記憶媒体に保存された暗号化データを処理する方法であって、暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップとを実行する。
【発明の効果】
【0009】
本発明によれば、更新前の暗号鍵によって暗号化されたデータが更新後の暗号鍵によって復号化され出力されることを防ぐ記憶装置、暗号化データ処理方法を提供することができる。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。
【0011】
実施の形態1.
まず、本実施の形態に係る磁気ディスク装置の構成について説明する。図1は本実施の形態に係る磁気ディスク装置の構成を示す図である。
【0012】
図1に示すように、磁気ディスク装置1(記憶装置)は、ホスト2と通信を行い、媒体11(記憶媒体)、ヘッド12、リードチャネル13(読み取り部、保存部)、HDC(Hard Disk Controller)1a、MCU(Micro Control Unit、暗号鍵更新部、更新履歴部)16、SDRAM(Synchronous Dynamic Random Access Memory)17を備えるものである。また、HDC1aは、暗号化データ識別部14(判断部)、暗号化/復号化部15(暗号化部、復号化部)を備えるものである。
【0013】
媒体11は磁気ディスクであり面内記録方式であっても垂直記録方式であっても良い。また、媒体11はその記憶領域内にシステム領域を有し、システム領域内には後述する暗号鍵履歴情報と暗号鍵が対応付けられて保存されているものとする。をまた、ヘッド12は媒体11に対してデータの読み書きをするものであり、リードチャネル13はヘッド12により媒体11から読まれたアナログ信号をデジタル信号に変換し、ヘッド12により媒体11に書き込まれるデジタル信号をアナログ信号に変換するものである。
【0014】
また、暗号化データ識別部14は後述する暗号鍵履歴情報に基づいて、媒体11に格納されたデータの暗号鍵と更新された暗号鍵とが一致するかどうかを識別するものである。また、暗号化/復号化部15は格納されるデータを暗号化し、読み出されるデータを復号化するものである。
【0015】
また、MCU16(CPUやMPUであっても良い)は、ホスト2から送信されるコマンドまたは各種プログラムに従ってリードチャネル13、暗号化データ識別部14、暗号化/復号化部15を制御するものである。また、SDRAM17は、ホスト2と通信されるデータをバッファリングするものである。
【0016】
次に、データに付加される暗号鍵履歴情報について説明する。図2は、媒体に格納されるデータのセクタを示す図である。
【0017】
図2に示すように、暗号化/復号化部15により暗号化され、媒体11に格納されたデータのそれぞれのセクタには、誤り訂正符号としてECC(Error Correcting Code)と、どの暗号鍵で暗号化されたかを複数bitにより示す暗号鍵履歴情報が付加されている。この暗号鍵履歴情報は暗号鍵がn回更新されるとnとしてセクタに付加される情報である。この暗号鍵履歴情報によって、暗号鍵履歴情報0が付加されたセクタは初期暗号鍵によって暗号化されたデータのセクタであり、暗号鍵履歴情報1が付加されたセクタは1回目に更新された暗号鍵によって暗号化されたデータのセクタであることがわかる。なお、本実施の形態において、暗号鍵履歴情報nは最後に更新された暗号鍵(新暗号鍵)によって暗号化されたデータのセクタであることを示すものとする。
【0018】
次に、本実施の形態に係る磁気ディスクにおける暗号鍵更新処理について説明する。図3は暗号鍵更新処理の動作を示すフローチャートである。なお、図3において、ホストは磁気ディスク装置に対して暗号鍵を更新させるコマンドをすでに発行しているものとする。
【0019】
ホスト2からコマンドを受け取ったMCU16は、まず、エントロピーを作成し(S101)、作成したエントロピーに基づいて乱数を作成し(S102)、媒体11のシステム領域から最後に更新された暗号鍵履歴情報を読み込んでインクリメントし(S103)、作成した乱数を暗号鍵とし、この暗号鍵とインクリメントした暗号鍵履歴情報とを対応づけて、媒体11のシステム領域に保存する(S104)。
【0020】
なお、暗号鍵が媒体11のシステム領域に保存される際には、暗号鍵自体が暗号化されるものとする。また、システム領域に保存された暗号鍵と暗号鍵履歴情報はMPUによってリードチャネルを介して読み出され、HDCに設定される。以下、その動作を設定処理として説明する。図4は設定処理の動作を示すフローチャートである。
【0021】
磁気ディスク装置1が起動されると、まず、MCU16はリードチャネル13を介してヘッド12に媒体のシステム領域を読み込ませ(S201)、システム領域から暗号履歴情報を取得し(S202)、最後に更新された暗号鍵と対応する暗号鍵履歴情報をHDC1aに設定する(S203,暗号鍵設定ステップ)。
【0022】
上述のようにHDC1aに設定された暗号鍵によって、暗号化/復号化部15は、ホスト2から送られるデータを暗号化する。以下、暗号化処理について説明する。図5は暗号化処理の動作を示すフローチャートである。
【0023】
まず、HDC1aの暗号化/復号化部14は、ホスト2から転送されたデータを取得すると(S301)、設定された暗号鍵に基づいてデータをセクタごとに暗号化し(S302,暗号化ステップ)、設定された暗号鍵履歴情報と誤り訂正符号としてのECCとをそれぞれのセクタに付加し、リードチャネル13、ヘッド12を介して媒体11にデータを格納する(S303,保存ステップ)。
【0024】
上述のように暗号化され格納化された暗号化データは、HDC1aに設定された暗号鍵履歴情報と照らし合わされることによって、暗号化の際の鍵と現在の鍵が一致しているかどうかが確認される。以下、その動作をHDC1aにおける暗号鍵識別処理として説明する。図6は暗号鍵識別処理の動作を示すフローチャートである。なお、図6において、ホストは磁気ディスク装置に対してデータを要求するコマンドをすでに発行しているものとする。
【0025】
まず、MCU16は、リードチャネル13とヘッド12を介して媒体11からセクタごとに暗号鍵識別情報が付加されたデータを読み込ませ(S401,読み取りステップ)、セクタに付加された暗号鍵識別情報とHDC1aに設定された暗号鍵識別情報nとが同じ値であるかどうかを暗号化データ識別部に判断させる(S402,判断ステップ)。
【0026】
セクタに付加された暗号鍵識別情報がnである場合(S402,YES,復号化ステップ)、MCU16は、暗号化/復号化部15にデータを復号化させ(S403,復号化ステップ)、復号化したデータをホスト2へ転送させる(S404,復号化ステップ)。
【0027】
一方、セクタに付加された暗号鍵識別情報がnではない場合(S402,NO)、MCU16は、暗号化データ識別部14に、データを0または任意の値に置き換えてホスト2へ転送させる(S405)。また、暗号化データ識別部14は、暗号鍵不一致としてデータの転送を停止しても構わない。
【0028】
上述したように、媒体11に格納するデータのそれぞれのセクタに暗号鍵履歴情報を付加し、旧暗号鍵によって暗号化されたデータをホスト2に転送しないことにより、旧暗号鍵によって暗号化されたデータをプロテクトすることができる。また、旧暗号鍵によって暗号化されたデータを0または任意の値に書き換えてホスト2に転送することにより、ホスト2にとって旧暗号鍵により暗号化されたデータは初期化された状態と同等とすることができる。また、暗号化されていないデータであっても、暗号鍵履歴情報を変更するだけでデータを無効にすることができる。
【0029】
実施の形態2.
本実施の形態に係る磁気ディスク装置は、旧暗号鍵によって暗号化されたデータを新暗号鍵によって暗号化しなおすものである。以下、実施の形態1と異なる構成及び動作について説明する。
【0030】
まず、実施の形態1と異なる実施の形態2の構成について説明する。図7は暗号鍵履歴テーブルを示す図である。
【0031】
実施の形態1に係る磁気ディスク装置1においては、媒体11のシステム領域には、新暗号鍵nと新暗号鍵nと対応付けられた暗号鍵履歴情報nだけが保存されていた。図7に示す実施の形態2における暗号鍵履歴テーブルは、媒体11のシステム領域に保存され、新暗号鍵及び旧暗号鍵の暗号鍵履歴情報と暗号鍵履歴情報に対応する暗号鍵を示す暗号鍵IDを対応付けるものである。また、暗号鍵IDに対応する暗号鍵の全てがシステム領域に暗号化されて保存されている。
【0032】
次に、実施の形態1と異なる実施の形態2の動作について説明する。図8は再暗号化処理の動作を示すフローチャートである。なお、磁気ディスク装置は、ホストから転送された再暗号化コマンドをトリガとして再暗号化処理を行うものとする。
【0033】
まず、MCU16は、リードチャネル13にヘッド12を介して媒体11のデータのセクタを読み込ませ(S501,読み取りステップ)、暗号化データ識別部14にセクタに付加された暗号鍵識別情報がn、つまり更新された新暗号鍵によって暗号化されたセクタであるかどうかを判断させる(S502,判断ステップ)
【0034】
暗号鍵識別情報がnではない場合(S502,NO,暗号鍵設定ステップ)、MCU16は暗号鍵識別テーブルを参照し、暗号鍵識別情報に対応する旧暗号鍵を暗号化/復号化部15に設定し(S503,暗号鍵設定ステップ)、旧暗号鍵に基づいて暗号化/復号化部15にセクタを復号化させ(S504,復号化ステップ)、復号化されたセクタをSDRAM17にストアし(S505,復号化ステップ)、新暗号鍵を暗号化/復号化部15に設定し(S506,暗号鍵設定ステップ)、SDRAM17にストアされたセクタを新暗号鍵に基づいて暗号化させ(S507,暗号化ステップ)、新暗号鍵に対応する暗号鍵識別情報をセクタに付加してリードチャネル13にセクタを付加させ(S508,保存ステップ)、媒体11に保存されたデータの全セクタの暗号鍵履歴情報がnかどうかを判断する(S509)。
【0035】
全セクタの暗号鍵履歴情報がnである場合(S509,YES)、MCU16は再暗号化処理を終了する。
【0036】
一方、全セクタの暗号鍵履歴情報がnではない場合(S509,NO)、MCU16は、再度リードチャネル13にヘッド12を介して媒体11のデータのセクタを読み込ませる(S501)。
【0037】
また、ステップS502において、暗号鍵識別情報がnである場合(S502,YES)、MCU16は媒体11に保存されたデータの全セクタの暗号鍵履歴情報がnかどうかを判断する(S509)。
【0038】
以上の構成及び動作によって、実施の形態2に係る磁気ディスク装置1は、旧暗号鍵によって暗号化されたデータを新暗号鍵によって暗号化しなおすことができる。また、上述の再暗号化処理が途中で中断されても、それぞれのセクタに付加された暗号鍵履歴情報を参照して再暗号化処理を行っているため、中断されたセクタから処理を再開することができる。また、図8において、磁気ディスク装置1は再暗号化コマンドをトリガとして再暗号化処理を実行するが、例えば、旧暗号鍵によって暗号化されたデータが読み出されるたびに再暗号化処理を実行しても良い。また、新暗号鍵によってセクタが置き換えられた場合、媒体11のどのセクタにも付加されていない暗号鍵履歴情報に対応する旧暗号鍵が破棄されることでセキュリティはより強固なものとなる。
【0039】
実施の形態3.
本実施の形態に係る磁気ディスク装置は、同じ時期に複数の暗号鍵を用いるものであり、それぞれのセクタには暗号化時に暗号鍵履歴情報と共に暗号鍵種別情報が付加されて媒体に格納され、本実施の形態に係る磁気ディスク装置はこの暗号鍵種別情報を参照することによって複数の暗号鍵からセクタを復号化するための暗号鍵を選択する。以下、実施の形態2と異なる構成及び動作について説明する。
【0040】
まず、暗号鍵種別テーブルについて説明する。図9は、実施の形態3における暗号鍵種別テーブルを示す図である。
【0041】
図9に示すように、暗号鍵種別テーブルは、媒体11のシステム領域に暗号鍵と共に新暗号鍵の暗号鍵履歴情報と、暗号鍵の種別を示す暗号鍵種別情報と、暗号鍵を示す暗号鍵IDとを対応付けるものである。なお、暗号鍵種別情報においてaは192ビット鍵を示し、bは256ビット鍵を示すものとする。なお、本実施の形態においては鍵のビット長を暗号鍵の種別としているが、例えば暗号方式を暗号鍵種別とし、暗号化/復号化部15を暗号方式の数だけ用意しても良い。
【0042】
次に、本実施の形態における暗号鍵識別処理について説明する。図10は本実施の形態における暗号鍵識別処理の動作を示すフローチャートである。なお、図10において、ホストは磁気ディスク装置に対してデータを要求するコマンドをすでに発行しているものとする。
【0043】
まず、MCU16は、リードチャネル13とヘッド12を介して媒体からセクタごとに暗号鍵履歴情報が付加されたデータを読み込ませ(S601,読み取りステップ)、セクタに付加された暗号鍵履歴情報とHDC1aに設定された暗号鍵履歴情報nとが同じ値であるかどうかを暗号化データ識別部に判断させる(S602,判断ステップ)。
【0044】
セクタに付加された暗号鍵履歴情報がnである場合(S602,YES)、MCU16は、セクタの暗号鍵種別情報を参照し、暗号鍵種別情報に対応する暗号鍵を暗号化/復号化部15に設定し(S603,暗号鍵設定ステップ)、暗号化/復号化部15にデータを復号化させ(S604,復号化ステップ)、復号化したデータをホスト2へ転送させる(S605,復号化ステップ)。
【0045】
一方、セクタに付加された暗号鍵識別情報がnではない場合(S602,NO)、MCU16は、暗号化データ識別部14に、データを0または任意の値に置き換えてホスト2へ転送させる(S606)。また、暗号化データ識別部14は、暗号鍵不一致としてデータの転送を停止しても構わない。
【0046】
上述の構成及び動作によって、本実施の形態に係る磁気ディスク装置1は、セキュリティーレベルの異なる暗号鍵をデータに応じて使い分けることができる。なお、データを暗号化する暗号鍵は、データの格納時にユーザが選択することができるものとする。
【0047】
また、上述した夫々の実施の形態において、磁気ディスク装置は、データを記憶するものであれば、異なる方式による記憶装置であっても良い。
【0048】
(付記1) データを記憶媒体に保存する記憶装置であって、
更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、
前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、
前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、
前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、
前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、
前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える記憶装置。
(付記2) 付記1に記載の記憶装置において、
更新され前記暗号鍵更新部により設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴部をさらに備える記憶装置。
(付記3) 付記2に記載の記憶装置において、
前記暗号鍵更新部は、前記判断部において前記暗号鍵更新部により設定された識別情報と前記暗号化部により前記暗号化データに付加された識別情報が一致しない場合、前記更新履歴部により前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
(付記4) 付記3に記載の記憶装置において、
前記更新履歴部により前記記憶媒体に保存された新暗号鍵の識別情報と前記保存部により前記記憶媒体に保存された暗号化データに付加された識別情報が一致しない場合、前記暗号鍵更新部は前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵更新部は新暗号鍵と該新暗号鍵の識別情報を設定し、前記暗号鍵更新部により設定された新暗号鍵に基づいて前記復号化部により前記メモリに記憶されたデータを暗号化し、前記保存部は前記暗号化部により暗号化された暗号化データに前記暗号鍵更新部により設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存することを特徴とする記憶装置。
(付記5) 付記1乃至付記4のいずれかに記載の記憶装置において、
前記暗号鍵更新部はさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号化部は前記暗号鍵更新部により設定された暗号方式による暗号鍵に基づいてデータを暗号化し、前記保存部は前記暗号化部により保存された暗号化データに前記暗号鍵更新部により設定された識別情報と種別情報を付加して前記記憶媒体に保存し、前記暗号鍵更新部は前記判断部において前記暗号化部により前記暗号化データに付加された識別情報が前記暗号鍵更新部により設定された識別情報と一致する場合、前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
(付記6) 付記1乃至付記5のいずれかに記載の記憶装置において、
前記記憶媒体は磁気ディスクであることを特徴とする記憶装置。
(付記7) 付記1乃至付記6のいずれかに記載の記憶装置において、
前記所定の単位はセクタであることを特徴とする記憶装置。
(付記8) 記憶媒体に保存された暗号化データを処理する暗号化データ処理方法であって、
暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、
前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、
前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、
前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップと
を実行する暗号化データ処理方法。
(付記9) 付記8に記載の暗号化データ処理方法において、
前記暗号鍵更新ステップにより設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴ステップをさらに実行する記憶装置。
(付記10) 付記9に記載の暗号化データ処理方法において、
前記暗号鍵設定ステップにより設定された識別情報と前記暗号化データに付加された識別情報が前記判断ステップにより一致されない場合、前記暗号鍵設定ステップは前記更新履歴ステップにより前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする暗号化データ処理方法。
(付記11) 付記10に記載の暗号化データ処理方法において、
前記設定履歴ステップにより前記記憶媒体に保存された新暗号鍵の識別情報と前記記憶媒体に保存された暗号化データに付加された識別情報が前記判断ステップにより一致されない場合、前記暗号鍵設定ステップは前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵設定ステップは新暗号鍵と該新暗号鍵の識別情報を設定することを特徴とし、
前記暗号鍵設定ステップにより設定された新暗号鍵に基づいて前記復号化ステップにより前記メモリに記憶されたデータを暗号化する暗号化ステップと、
前記暗号化ステップにより暗号化された暗号化データに前記暗号鍵設定ステップにより設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存する保存ステップと
をさらに実行する暗号化データ処理方法。
(付記12) 付記8乃至付記11のいずれかに記載の暗号化データ処理方法において、
前記暗号鍵設定ステップはさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号鍵設定ステップは暗号化データに付加された識別情報が前記暗号鍵設定ステップにより設定された識別情報が前記判断ステップにより一致される場合に前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化ステップは前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする暗号化データ処理方法。
(付記13) 付記8乃至付記12のいずれかに記載の暗号化データ処理方法において、
前記記憶媒体は磁気ディスクであることを特徴とする暗号化データ処理方法。
(付記14) 付記8乃至付記13のいずれかに記載の暗号化データ処理方法において、
前記所定の単位はセクタであることを特徴とする暗号化データ処理方法。
【図面の簡単な説明】
【0049】
【図1】実施の形態1に係る磁気ディスク装置の構成を示す図である。
【図2】媒体に格納されるデータのセクタを示す図である。
【図3】暗号鍵更新処理の動作を示すフローチャートである。
【図4】設定処理の動作を示すフローチャートである。
【図5】暗号化処理の動作を示すフローチャートである。
【図6】暗号鍵識別処理の動作を示すフローチャートである。
【図7】実施の形態2における暗号鍵履歴テーブルを示す図である。
【図8】実施の形態2における再暗号化処理の動作を示すフローチャートである。
【図9】実施の形態3における暗号鍵種別テーブルを示す図である。
【図10】実施の形態3における暗号鍵識別処理の動作を示すフローチャートである。
【符号の説明】
【0050】
1 磁気ディスク装置、1a HDC、2 ホスト、11 媒体、12 ヘッド、13 リードチャネル、14 暗号化データ識別部、15 暗号化/復号化部、16 MCU、17 SDRAM。
【特許請求の範囲】
【請求項1】
データを記憶媒体に保存する記憶装置であって、
更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、
前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、
前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、
前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、
前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、
前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える記憶装置。
【請求項2】
請求項1に記載の記憶装置において、
更新され前記暗号鍵更新部により設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴部をさらに備える記憶装置。
【請求項3】
請求項2に記載の記憶装置において、
前記暗号鍵更新部は、前記判断部において前記暗号鍵更新部により設定された識別情報と前記暗号化部により前記暗号化データに付加された識別情報が一致しない場合、前記更新履歴部により前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
【請求項4】
請求項3に記載の記憶装置において、
前記更新履歴部により前記記憶媒体に保存された新暗号鍵の識別情報と前記保存部により前記記憶媒体に保存された暗号化データに付加された識別情報が一致しない場合、前記暗号鍵更新部は前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵更新部は新暗号鍵と該新暗号鍵の識別情報を設定し、前記暗号鍵更新部により設定された新暗号鍵に基づいて前記復号化部により前記メモリに記憶されたデータを暗号化し、前記保存部は前記暗号化部により暗号化された暗号化データに前記暗号鍵更新部により設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存することを特徴とする記憶装置。
【請求項5】
請求項1乃至請求項4のいずれかに記載の記憶装置において、
前記暗号鍵更新部はさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号化部は前記暗号鍵更新部により設定された暗号方式による暗号鍵に基づいてデータを暗号化し、前記保存部は前記暗号化部により保存された暗号化データに前記暗号鍵更新部により設定された識別情報と種別情報を付加して前記記憶媒体に保存し、前記暗号鍵更新部は前記判断部において前記暗号化部により前記暗号化データに付加された識別情報が前記暗号鍵更新部により設定された識別情報と一致する場合、前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
【請求項6】
記憶媒体に保存された暗号化データを処理する暗号化データ処理方法であって、
暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、
前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、
前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、
前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップと
を実行する暗号化データ処理方法。
【請求項1】
データを記憶媒体に保存する記憶装置であって、
更新された暗号鍵と該暗号鍵の識別情報を設定する暗号鍵更新部と、
前記暗号鍵更新部により設定された暗号鍵に基づいて所定の単位ごとにデータを暗号化する暗号化部と、
前記暗号化部により暗号化されてなる暗号化データに前記暗号鍵更新部により設定された識別情報を付加して前記記憶媒体に保存する保存部と、
前記保存部により保存された前記暗号化データと該暗号化データに付加された識別情報を読み取る読み取り部と、
前記読み取り部により読み取られた前記暗号化データに付加されて保存された識別情報と前記暗号鍵更新部により設定された識別情報とが一致するかどうかを判断する判断部と、
前記判断部において、前記暗号化部により前記暗号化データに付加された識別情報と前記暗号鍵更新部により設定された識別情報とが一致する場合、前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化部を備える記憶装置。
【請求項2】
請求項1に記載の記憶装置において、
更新され前記暗号鍵更新部により設定された暗号鍵である新暗号鍵と該新暗号鍵の識別情報とを対応付け、更新前の暗号鍵である旧暗号鍵と該旧暗号鍵の識別情報とを対応付けて、それぞれの暗号鍵と識別情報を履歴として前記記憶媒体に保存する更新履歴部をさらに備える記憶装置。
【請求項3】
請求項2に記載の記憶装置において、
前記暗号鍵更新部は、前記判断部において前記暗号鍵更新部により設定された識別情報と前記暗号化部により前記暗号化データに付加された識別情報が一致しない場合、前記更新履歴部により前記記憶媒体に保存された識別情報のうち前記暗号化データに付加された識別情報と一致する識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
【請求項4】
請求項3に記載の記憶装置において、
前記更新履歴部により前記記憶媒体に保存された新暗号鍵の識別情報と前記保存部により前記記憶媒体に保存された暗号化データに付加された識別情報が一致しない場合、前記暗号鍵更新部は前記暗号化データに付加された識別情報と該識別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化してメモリに記憶させ、前記暗号鍵更新部は新暗号鍵と該新暗号鍵の識別情報を設定し、前記暗号鍵更新部により設定された新暗号鍵に基づいて前記復号化部により前記メモリに記憶されたデータを暗号化し、前記保存部は前記暗号化部により暗号化された暗号化データに前記暗号鍵更新部により設定された新暗号鍵の識別情報を付加し、該暗号化データを前記記憶媒体に保存することを特徴とする記憶装置。
【請求項5】
請求項1乃至請求項4のいずれかに記載の記憶装置において、
前記暗号鍵更新部はさらに暗号化における暗号方式と該暗号方式による暗号鍵の種別情報を設定し、前記暗号化部は前記暗号鍵更新部により設定された暗号方式による暗号鍵に基づいてデータを暗号化し、前記保存部は前記暗号化部により保存された暗号化データに前記暗号鍵更新部により設定された識別情報と種別情報を付加して前記記憶媒体に保存し、前記暗号鍵更新部は前記判断部において前記暗号化部により前記暗号化データに付加された識別情報が前記暗号鍵更新部により設定された識別情報と一致する場合、前記暗号化データに付加された種別情報に対応する暗号鍵を設定し、前記復号化部は前記暗号鍵更新部により設定された暗号鍵に基づいて前記暗号化データを復号化することを特徴とする記憶装置。
【請求項6】
記憶媒体に保存された暗号化データを処理する暗号化データ処理方法であって、
暗号鍵と該暗号鍵の識別情報を設定する暗号鍵設定ステップと、
前記暗号鍵設定ステップにより設定された暗号鍵に基づいて所定の単位ごとに暗号化され、前記暗号鍵設定ステップにより設定された前記暗号鍵の識別情報が付加された暗号化データを前記記憶媒体から読み取る読み取りステップと、
前記読み取りステップにより読み出された暗号化データの識別情報と前記暗号鍵設定ステップにより設定された識別情報とが一致するかどうかを判断する判断ステップと、
前記暗号化データに付加された識別情報と前記暗号鍵設定ステップにより設定された識別情報とが前記判断ステップにより一致された場合、前記暗号鍵設定ステップにより設定された暗号鍵に基づいて前記暗号化データを復号化し、復号化された該データを出力する復号化ステップと
を実行する暗号化データ処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2009−111687(P2009−111687A)
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願番号】特願2007−281584(P2007−281584)
【出願日】平成19年10月30日(2007.10.30)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願日】平成19年10月30日(2007.10.30)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]