JP4957577B2 - Disk controller - Google Patents

Disk controller Download PDF

Info

Publication number
JP4957577B2
JP4957577B2 JP2008032642A JP2008032642A JP4957577B2 JP 4957577 B2 JP4957577 B2 JP 4957577B2 JP 2008032642 A JP2008032642 A JP 2008032642A JP 2008032642 A JP2008032642 A JP 2008032642A JP 4957577 B2 JP4957577 B2 JP 4957577B2
Authority
JP
Japan
Prior art keywords
data
cache
key information
information
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008032642A
Other languages
Japanese (ja)
Other versions
JP2009193285A (en
Inventor
長憲 福山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2008032642A priority Critical patent/JP4957577B2/en
Publication of JP2009193285A publication Critical patent/JP2009193285A/en
Application granted granted Critical
Publication of JP4957577B2 publication Critical patent/JP4957577B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、外部装置とハードディスクドライブ装置との間のデータの授受を制御するディスク制御装置に関する。   The present invention relates to a disk control device that controls data exchange between an external device and a hard disk drive.

複数のハードディスクドライブ装置(HDD)を備えるディスク制御装置が知られている。ところで、HDDが単位時間あたりに記憶し得る最大のデータ量は、揮発性メモリが単位時間あたりに記憶し得る最大のデータ量よりも少ない。   A disk control device including a plurality of hard disk drive devices (HDDs) is known. By the way, the maximum data amount that the HDD can store per unit time is smaller than the maximum data amount that the volatile memory can store per unit time.

そこで、この種のディスク制御装置の一つは、キャッシュメモリとしての揮発性メモリを備える。キャッシュメモリは、外部装置とHDDとの間で授受されるデータを一時的に記憶する。   Therefore, one of the disk control devices of this type includes a volatile memory as a cache memory. The cache memory temporarily stores data exchanged between the external device and the HDD.

これによれば、例えば、特定の記憶領域にてHDDにデータを記憶させる(書き込む)旨を表す指示が比較的短い時間内に複数回発生した場合、それらの指示が発生する毎にキャッシュメモリに記憶されているデータが更新される。従って、ディスク制御装置は、最後に発生した指示に基づくデータのみをHDDに記憶させることができる。即ち、HDDへのアクセス回数(HDDからデータを読み出す回数及び/又はHDDにデータを書き込む回数)を減少させることができる。   According to this, for example, when an instruction indicating that data is to be stored (written) in the HDD in a specific storage area is generated a plurality of times within a relatively short time, each time the instruction is generated, it is stored in the cache memory. The stored data is updated. Therefore, the disk control device can store only data based on the last generated instruction in the HDD. That is, the number of accesses to the HDD (the number of times data is read from the HDD and / or the number of times data is written to the HDD) can be reduced.

ところで、ディスク制御装置に供給されている電力が不意に遮断された場合(例えば、停電時等)、キャッシュメモリへ供給される電力も遮断されるのでキャッシュメモリ内のデータは消去される。従って、HDDに未だ記憶させていない(転送していない)データが、キャッシュメモリ内に存在していた場合、このデータをHDDに記憶させることができない。   By the way, when the power supplied to the disk control device is cut off unexpectedly (for example, during a power failure), the power supplied to the cache memory is also cut off, so that the data in the cache memory is erased. Therefore, when data that has not yet been stored (transferred) in the HDD exists in the cache memory, this data cannot be stored in the HDD.

そこで、特許文献1に記載のディスク制御装置は、バッテリと不揮発性メモリとを備える。このディスク制御装置は、ディスク制御装置に供給される電力が不意に遮断された場合、バッテリによりキャッシュメモリへ電力を供給するとともに、キャッシュメモリ内のデータを不揮発性メモリに記憶(退避)させる。これによれば、停電時においても、キャッシュメモリ内のデータを不揮発性メモリに保持させることができる。
特開2006−268419号公報
Therefore, the disk control device described in Patent Document 1 includes a battery and a nonvolatile memory. When the power supplied to the disk control device is cut off unexpectedly, the disk control device supplies power to the cache memory by a battery and stores (saves) data in the cache memory in the nonvolatile memory. According to this, even in the event of a power failure, the data in the cache memory can be held in the nonvolatile memory.
JP 2006-268419 A

しかしながら、上記ディスク制御装置においては、不揮発性メモリがディスク制御装置の外部へ取り出された場合、不揮発性メモリ内のデータも容易に取得されてしまうという問題があった。   However, the disk control device has a problem that when the nonvolatile memory is taken out of the disk control device, the data in the nonvolatile memory is easily acquired.

このため、本発明の目的は、上述した課題である「キャッシュメモリに供給される電力が遮断された場合にキャッシュデータを保持したとき、データが外部に漏洩する場合が生じること」を解決することが可能なディスク制御装置を提供することにある。   For this reason, the object of the present invention is to solve the above-mentioned problem “when the cache data is held when the power supplied to the cache memory is cut off, the data may leak to the outside”. It is an object of the present invention to provide a disk control device capable of performing the above.

かかる目的を達成するため本発明の一形態であるディスク制御装置は、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送る装置である。
In order to achieve such an object, a disk control apparatus according to one aspect of the present invention is
This is a device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device.

更に、このディスク制御装置は、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を備える。
Furthermore, this disk controller is
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
Is provided.

また、本発明の他の形態であるディスクシステムは、
データを記憶するハードディスクドライブ装置と、外部装置から受け取ったデータを前記ハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るディスク制御装置と、を含むシステムである。
Further, a disk system according to another aspect of the present invention is
A hard disk drive device that stores data, and a disk control device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device. .

更に、このディスクシステムは、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を備える。
In addition, this disk system
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
Is provided.

また、本発明の他の形態であるディスク制御方法は、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置を制御するための方法である。
Further, a disk control method according to another embodiment of the present invention includes:
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. It is a method for controlling a disk control device comprising a cache memory, which is a volatile memory for storing information.

更に、このディスク制御方法は、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理工程と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理工程と、
を含む。
Furthermore, this disk control method
An encryption processing step for encrypting data stored in the cache memory;
A first storage processing step of storing the encrypted data in a first nonvolatile memory;
including.

また、本発明の他の形態であるディスク制御プログラムは、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置に、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を実現させるためのプログラムである。
A disk control program according to another embodiment of the present invention is
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. In a disk control device provided with a cache memory that is a volatile memory to store automatically,
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
It is a program for realizing.

本発明は、以上のように構成されることにより、キャッシュメモリに供給される電力が遮断された場合にキャッシュデータを保持しながら、そのデータが外部に漏洩することを防止することができる。   According to the present invention configured as described above, when the power supplied to the cache memory is cut off, it is possible to prevent the data from leaking to the outside while holding the cache data.

本発明の一形態であるディスク制御装置は、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送る装置である。
A disk control apparatus according to one aspect of the present invention
This is a device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device.

更に、このディスク制御装置は、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を備える。
Furthermore, this disk controller is
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
Is provided.

これによれば、キャッシュメモリ内のデータ(キャッシュデータ)が暗号化され、暗号化されたデータが第1の不揮発性メモリに記憶される。従って、電力の供給が遮断されることにより、キャッシュメモリ内のデータが消去された場合であっても、第1の不揮発性メモリにデータを保持させることができる。   According to this, the data in the cache memory (cache data) is encrypted, and the encrypted data is stored in the first nonvolatile memory. Accordingly, even when the data in the cache memory is erased by cutting off the power supply, the data can be held in the first nonvolatile memory.

更に、第1の不揮発性メモリに記憶されるデータは暗号化されたデータである。従って、第1の不揮発性メモリ内の暗号化されたデータが不正に取得された場合であっても、暗号化前のデータ(キャッシュデータ)が容易に取得されることを防止することができる。即ち、キャッシュデータが外部に漏洩することを防止することができる。   Further, the data stored in the first nonvolatile memory is encrypted data. Therefore, even when the encrypted data in the first nonvolatile memory is illegally acquired, it is possible to prevent the data (cache data) before encryption from being easily acquired. That is, the cache data can be prevented from leaking outside.

この場合、上記ディスク制御装置は、
外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するバッテリを備え、
前記第1の記憶処理手段は、前記バッテリが前記キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されることが好適である。
In this case, the disk control device
A battery for supplying power to the cache memory when the supply of power to the cache memory from the outside is interrupted;
The first storage processing unit is preferably configured to store the encrypted data in the first nonvolatile memory when the battery supplies power to the cache memory. is there.

これによれば、例えば、バッテリがキャッシュメモリへ電力を供給していない場合においても暗号化されたデータを第1の不揮発性メモリに記憶させる場合と比較して、第1の不揮発性メモリにデータを記憶させる回数を減少させることができる。この結果、第1の不揮発性メモリに障害が発生する(第1の不揮発性メモリの状態が異常状態となる)可能性を低減することができる。   According to this, for example, even when the battery does not supply power to the cache memory, the data in the first nonvolatile memory is compared with the case where the encrypted data is stored in the first nonvolatile memory. The number of times of storing can be reduced. As a result, it is possible to reduce the possibility that a failure occurs in the first nonvolatile memory (the state of the first nonvolatile memory becomes an abnormal state).

更に、この場合、
前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
上記ディスク制御装置は、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を備えることが好適である。
Furthermore, in this case
The encryption processing means is configured to encrypt data stored in the cache memory based on encryption key information,
The disk controller is
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory It is preferable to provide means.

これによれば、第1の不揮発性メモリ内の暗号化されたデータが不正に取得された場合であっても、第1の不揮発性メモリが復号化キー情報を記憶している場合と比較して、第1の不揮発性メモリ内の暗号化されたデータが復号化される可能性を低減することができる。   According to this, even when the encrypted data in the first non-volatile memory is obtained illegally, it is compared with the case where the first non-volatile memory stores the decryption key information. Thus, the possibility that the encrypted data in the first nonvolatile memory is decrypted can be reduced.

加えて、上記ディスク制御装置は、
前記暗号化キー情報を生成するキー情報生成手段を備え、
前記暗号化処理手段は、前記生成された暗号化キー情報を受け付け、当該受け付けた暗号化キー情報に基づいて前記キャッシュメモリが記憶しているデータを暗号化するように構成されることが好適である。
In addition, the disk control device
Key information generating means for generating the encryption key information,
It is preferable that the encryption processing unit is configured to receive the generated encryption key information and encrypt data stored in the cache memory based on the received encryption key information. is there.

これによれば、キャッシュメモリ内のデータを暗号化する基となる暗号化キー情報を変更することができる。従って、一定の暗号化キー情報に基づいてデータが暗号化される場合と比較して、第1の不揮発性メモリ内の暗号化されたデータから暗号化前のデータが取得される可能性をより一層低減することができる。   According to this, it is possible to change the encryption key information that is the basis for encrypting the data in the cache memory. Therefore, compared with the case where data is encrypted based on certain encryption key information, the possibility that pre-encrypted data is obtained from the encrypted data in the first nonvolatile memory is increased. Further reduction can be achieved.

更に、前記キー情報生成手段は、前記復号化キー情報を生成するように構成され、
前記第2の記憶処理手段は、前記生成された復号化キー情報を受け付け、当該受け付けた復号化キー情報を前記第2の不揮発性メモリに記憶させるように構成されることが好適である。
Further, the key information generating means is configured to generate the decryption key information,
It is preferable that the second storage processing unit is configured to receive the generated decryption key information and store the received decryption key information in the second nonvolatile memory.

加えて、上記ディスク制御装置は、
前記第1の不揮発性メモリと、前記キャッシュメモリと、前記暗号化処理手段と、前記第1の記憶処理手段と、を含むキャッシュ用モジュールを備えることが好適である。
In addition, the disk control device
It is preferable that a cache module including the first nonvolatile memory, the cache memory, the encryption processing unit, and the first storage processing unit is provided.

また、本発明の他の態様におけるディスク制御装置は、
前記第1の不揮発性メモリと、前記キャッシュメモリを構成する第1のキャッシュメモリと、前記暗号化処理手段を構成し且つ第1の暗号化キー情報に基づいて前記第1のキャッシュメモリが記憶しているデータを暗号化する第1の暗号化処理手段と、前記第1の暗号化処理手段によって暗号化された第1のデータを前記第1の不揮発性メモリに記憶させるように構成された前記第1の記憶処理手段と、を含む第1のキャッシュ用モジュールと、
前記第2の不揮発性メモリと、前記キャッシュメモリを構成する第2のキャッシュメモリと、前記第1のデータを復号化するための情報である第1の復号化キー情報を前記第2の不揮発性メモリに記憶させるように構成された前記第2の記憶処理手段と、を含む第2のキャッシュ用モジュールと、
を備えることが好適である。
Further, the disk control device according to another aspect of the present invention provides:
The first non-volatile memory, the first cache memory constituting the cache memory, the encryption processing means, and the first cache memory stored based on the first encryption key information First encryption processing means for encrypting data stored in the first nonvolatile memory, and the first data encrypted by the first encryption processing means is stored in the first nonvolatile memory. A first storage module; a first cache module including:
The second nonvolatile memory, the second cache memory constituting the cache memory, and the first decryption key information, which is information for decrypting the first data, are stored in the second nonvolatile memory. A second cache processing unit configured to store in a memory, a second cache module,
Is preferably provided.

この場合、前記第2のキャッシュ用モジュールは、前記暗号化処理手段を構成し且つ第2の暗号化キー情報に基づいて前記第2のキャッシュメモリが記憶しているデータを暗号化する第2の暗号化処理手段を含み、
前記第2の記憶処理手段は、前記第2の暗号化処理手段によって暗号化された第2のデータを前記第2の不揮発性メモリに記憶させるように構成され、
前記第1の記憶処理手段は、前記第2のデータを復号化するための情報である第2の復号化キー情報を前記第1の不揮発性メモリに記憶させるように構成されることが好適である。
In this case, the second cache module encrypts data stored in the second cache memory based on the second encryption key information and constituting the encryption processing means. Including encryption processing means,
The second storage processing unit is configured to store the second data encrypted by the second encryption processing unit in the second nonvolatile memory,
The first storage processing means is preferably configured to store second decryption key information, which is information for decrypting the second data, in the first nonvolatile memory. is there.

また、本発明の他の態様におけるディスク制御装置は、
前記キャッシュ用モジュールと、前記外部装置又は前記ハードディスクドライブ装置と、の間のデータの授受を制御するとともに、不揮発性メモリを有する制御用モジュールを備え、
前記制御用モジュールが有する不揮発性メモリは、前記第2の不揮発性メモリを構成することが好適である。
Further, the disk control device according to another aspect of the present invention provides:
Controlling data exchange between the cache module and the external device or the hard disk drive device, and a control module having a nonvolatile memory,
It is preferable that the non-volatile memory included in the control module constitutes the second non-volatile memory.

これによれば、キャッシュ用モジュールが第2の不揮発性メモリを有する場合(即ち、復号化キー情報をキャッシュ用モジュール内の不揮発性メモリが記憶している場合)と比較して、第1の不揮発性メモリ内の暗号化されたデータが復号化される可能性を低減することができる。   According to this, the first nonvolatile memory is compared with the case where the cache module has the second nonvolatile memory (that is, the decryption key information is stored in the nonvolatile memory in the cache module). The possibility that the encrypted data in the memory is decrypted can be reduced.

この場合、上記ディスク制御装置は、
前記制御用モジュールを複数備え、
前記第2の記憶処理手段は、前記復号化キー情報を分割した部分情報を前記複数の制御用モジュールのそれぞれが有する前記不揮発性メモリに分散して記憶させるように構成されることが好適である。
In this case, the disk control device
A plurality of the control modules are provided,
The second storage processing unit is preferably configured to distribute and store the partial information obtained by dividing the decryption key information in the nonvolatile memory included in each of the plurality of control modules. .

これによれば、復号化キー情報を分割した部分情報が、複数の制御用モジュールのそれぞれが有する不揮発性メモリに分散して記憶される。従って、1つの不揮発性メモリが復号化キー情報を記憶している場合と比較して、第1の不揮発性メモリ内の暗号化されたデータが復号化される可能性を低減することができる。   According to this, the partial information obtained by dividing the decryption key information is distributed and stored in the nonvolatile memory included in each of the plurality of control modules. Therefore, it is possible to reduce the possibility that the encrypted data in the first nonvolatile memory is decrypted as compared with the case where one nonvolatile memory stores the decryption key information.

更に、この場合、上記ディスク制御装置は、
前記キャッシュ用モジュールと前記外部装置との間のデータの授受を制御する外部装置制御用モジュールと、
前記キャッシュ用モジュールと前記ハードディスクドライブ装置との間のデータの授受を制御するディスク制御用モジュールと、
前記外部装置と前記ハードディスクドライブ装置との間の経路を切り替える切替器と、
を備え、
前記外部装置制御用モジュール、前記ディスク制御用モジュール及び前記切替器のそれぞれが、前記制御用モジュールを構成することが好適である。
In this case, the disk control device
An external device control module for controlling the exchange of data between the cache module and the external device;
A disk control module that controls data exchange between the cache module and the hard disk drive;
A switcher for switching a path between the external device and the hard disk drive device;
With
Each of the external device control module, the disk control module, and the switch preferably constitutes the control module.

加えて、この場合、
前記復号化キー情報は、第1の部分情報と、第2の部分情報と、第3の部分情報と、からなり、
前記第2の記憶処理手段は、前記外部装置制御用モジュールが有する前記不揮発性メモリに前記第1の部分情報を記憶させ、前記ディスク制御用モジュールが有する前記不揮発性メモリに前記第2の部分情報を記憶させ、且つ、前記切替器が有する前記不揮発性メモリに前記第3の部分情報を記憶させるように構成されることが好適である。
In addition, in this case
The decryption key information includes first partial information, second partial information, and third partial information,
The second storage processing means stores the first partial information in the nonvolatile memory included in the external device control module, and the second partial information stored in the nonvolatile memory included in the disk control module. And the third partial information is preferably stored in the nonvolatile memory of the switch.

更に、この場合、上記ディスク制御装置は、
前記外部装置制御用モジュール、前記ディスク制御用モジュール、及び、前記切替器のそれぞれを複数備え、
前記外部装置と前記ハードディスクドライブ装置との間の経路であって、前記外部装置制御用モジュール、前記ディスク制御用モジュール、及び、前記切替器のそれぞれを1つずつ経由する経路を複数形成するように構成されることが好適である。
In this case, the disk control device
A plurality of the external device control module, the disk control module, and the switch;
A plurality of paths between the external device and the hard disk drive device, each routed through each of the external device control module, the disk control module, and the switch, are formed. It is preferable to be configured.

これによれば、外部装置制御用モジュール、ディスク制御用モジュール、及び、切替器の状態が異常状態となった場合であっても、正常状態にある外部装置制御用モジュール、ディスク制御用モジュール、及び、切替器を経由する経路を使用することができる。この結果、外部装置とハードディスクドライブ装置との間でデータを正常に授受することができる。更に、いずれの経路が使用される場合であっても、経路上の外部装置制御用モジュール、ディスク制御用モジュール、及び、切替器から復号化キー情報を生成するために必要なすべての部分情報(第1の部分情報、第2の部分情報及び第3の部分情報)を取得することができる。   According to this, even when the external device control module, the disk control module, and the switch are in an abnormal state, the external device control module, the disk control module, and , A route via a switch can be used. As a result, data can be normally exchanged between the external device and the hard disk drive device. Further, regardless of which path is used, all the partial information necessary for generating the decryption key information from the external device control module, the disk control module, and the switch on the path ( First partial information, second partial information, and third partial information) can be acquired.

また、上記ディスク制御装置のいずれかは、
前記第1の記憶処理手段により前記暗号化されたデータが前記第1の不揮発性メモリに記憶された後に前記キャッシュメモリ内のデータを消去するデータ消去手段を備えることが好適である。
Any of the above disk control devices
It is preferable that data erasure means for erasing data in the cache memory after the encrypted data is stored in the first nonvolatile memory by the first storage processing means.

これによれば、キャッシュメモリ内のデータが漏洩することを確実に防止することができる。   According to this, it is possible to reliably prevent the data in the cache memory from leaking.

また、本発明の他の形態であるディスクシステムは、
データを記憶するハードディスクドライブ装置と、外部装置から受け取ったデータを前記ハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るディスク制御装置と、を含むシステムである。
Further, a disk system according to another aspect of the present invention is
A hard disk drive device that stores data, and a disk control device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device. .

更に、上記ディスクシステムは、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を備える。
Furthermore, the disk system
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
Is provided.

この場合、上記ディスクシステムは、
外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するバッテリを備え、
前記第1の記憶処理手段は、前記バッテリが前記キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されることが好適である。
In this case, the disk system is
A battery for supplying power to the cache memory when the supply of power to the cache memory from the outside is interrupted;
The first storage processing unit is preferably configured to store the encrypted data in the first nonvolatile memory when the battery supplies power to the cache memory. is there.

更に、この場合、前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
上記ディスクシステムは、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を備えることが好適である。
Further, in this case, the encryption processing means is configured to encrypt the data stored in the cache memory based on encryption key information,
The above disk system
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory It is preferable to provide means.

また、本発明の他の形態であるディスク制御方法は、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置を制御するための方法である。
Further, a disk control method according to another embodiment of the present invention includes:
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. It is a method for controlling a disk control device comprising a cache memory, which is a volatile memory for storing information.

更に、このディスク制御方法は、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理工程と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理工程と、
を含む。
Furthermore, this disk control method
An encryption processing step for encrypting data stored in the cache memory;
A first storage processing step of storing the encrypted data in a first nonvolatile memory;
including.

この場合、前記第1の記憶処理工程は、外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するように構成されたバッテリが、当該キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されることが好適である。   In this case, in the first storage processing step, the battery configured to supply power to the cache memory when the supply of power to the cache memory from the outside is cut off is supplied to the cache memory. It is preferable that the encrypted data is stored in the first non-volatile memory when the data is supplied.

更に、この場合、前記暗号化処理工程は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
上記ディスク制御方法は、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理工程を含むことが好適である。
Furthermore, in this case, the encryption processing step is configured to encrypt the data stored in the cache memory based on encryption key information,
The disk control method is
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory It is preferable to include a process.

また、本発明の他の形態であるディスク制御プログラムは、
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置に、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を実現させるためのプログラムである。
A disk control program according to another embodiment of the present invention is
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. In a disk control device provided with a cache memory that is a volatile memory to store automatically,
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
It is a program for realizing.

この場合、前記第1の記憶処理手段は、外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するように構成されたバッテリが、当該キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されることが好適である。   In this case, the first storage processing unit has a battery configured to supply power to the cache memory when power supply from the outside to the cache memory is interrupted. It is preferable that the encrypted data is stored in the first non-volatile memory when the data is supplied.

更に、この場合、前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
上記ディスク制御プログラムは、更に、上記ディスク制御装置に、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を実現させるためのプログラムであることが好適である。
Further, in this case, the encryption processing means is configured to encrypt the data stored in the cache memory based on encryption key information,
The disk control program is further stored in the disk control device.
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory A program for realizing the means is preferable.

上述した構成を有するディスクシステム、ディスク制御方法、又は、ディスク制御プログラムの発明であっても、上記ディスク制御装置と同様の作用を有するために、上述した本発明の目的を達成することができる。   Even the invention of the disk system, the disk control method, or the disk control program having the above-described configuration can achieve the above-described object of the present invention because it has the same operation as the above-described disk control apparatus.

以下、本発明に係る、ディスク制御装置、ディスクシステム、ディスク制御方法、及び、ディスク制御プログラムの各実施形態について図1〜図7を参照しながら説明する。   Hereinafter, embodiments of a disk control device, a disk system, a disk control method, and a disk control program according to the present invention will be described with reference to FIGS.

<第1実施形態>
図1に示したように、第1実施形態に係るディスクシステム1は、RAID(Redundant Arrays of Inexpensive Disks)を構成するシステムである。ディスクシステム1は、図示しない外部の商用電源から電力が供給されることにより駆動される。ディスクシステム1は、プロセッサ及びメモリ等を備えるホスト装置(外部装置)30に接続されている。
<First Embodiment>
As shown in FIG. 1, the disk system 1 according to the first embodiment is a system that configures a RAID (Redundant Arrays of Independent Disks). The disk system 1 is driven by power supplied from an external commercial power source (not shown). The disk system 1 is connected to a host device (external device) 30 including a processor, a memory, and the like.

ディスクシステム1は、ディスクエンクロージャ10と、ディスク制御装置20と、を備える。ディスクエンクロージャ10は、複数(本例では、8個)のハードディスクドライブ装置(HDD)10a〜10hを有する。   The disk system 1 includes a disk enclosure 10 and a disk control device 20. The disk enclosure 10 includes a plurality (eight in this example) of hard disk drive devices (HDDs) 10a to 10h.

ディスク制御装置20は、複数(本例では、2つ)のホストディレクタ(外部装置制御用モジュール)21a,21bと、複数(本例では、2つ)のディスクディレクタ(ディスク制御用モジュール)22a,22bと、複数(本例では、4つ)のキャッシュディレクタ(キャッシュ用モジュール)23a〜23dと、複数(本例では、4つ)のバッテリ24a〜24dと、複数(本例では、2つ)のスイッチ(切替器)25a,25bと、サービスプロセッサ26と、を含む。   The disk control device 20 includes a plurality (two in this example) host directors (external device control modules) 21a and 21b, a plurality (two in this example) disk directors (disk control modules) 22a, 22b, a plurality (four in this example) of cache directors (cache modules) 23a-23d, a plurality (four in this example) of batteries 24a-24d, and a plurality (two in this example). Switches (switches) 25a and 25b, and a service processor 26.

ホストディレクタ21a,21b、ディスクディレクタ22a,22b、キャッシュディレクタ23a〜23d、バッテリ24a〜24d、及び、スイッチ25a,25bのそれぞれは、ディスク制御装置20の本体に着脱可能に装着されている。   The host directors 21a and 21b, the disk directors 22a and 22b, the cache directors 23a to 23d, the batteries 24a to 24d, and the switches 25a and 25b are detachably mounted on the main body of the disk controller 20.

なお、本明細書においては、ホストディレクタ21aは、ホストディレクタ#0とも表記され、ホストディレクタ21bは、ホストディレクタ#1とも表記される。ディスクディレクタ22a,22b、キャッシュディレクタ23a〜23d、バッテリ24a〜24d、及び、スイッチ25a,25bも、図1に示したように、ホストディレクタ21a,21bと同様に、ディスクディレクタ#0,#1、キャッシュディレクタ#0〜#3、バッテリ#0〜#3、及び、スイッチ#0,#1とも表記される。   In the present specification, the host director 21a is also referred to as host director # 0, and the host director 21b is also referred to as host director # 1. As shown in FIG. 1, the disk directors 22a and 22b, the cache directors 23a to 23d, the batteries 24a to 24d, and the switches 25a and 25b are similar to the host directors 21a and 21b. Also indicated as cache directors # 0 to # 3, batteries # 0 to # 3, and switches # 0 and # 1.

各ホストディレクタ21a,21bは、ホスト装置30とキャッシュディレクタ23a〜23dとの間のデータの授受を制御するモジュールである。各ホストディレクタ21a,21bは、ホスト装置30と接続されている。各ホストディレクタ21a,21bは、スイッチ25a,25bのそれぞれと接続されている。各ホストディレクタ21a,21bは、図示しないプロセッサとファームウェア等を記憶する不揮発性メモリとを備える。各ホストディレクタ21a,21bは、プロセッサがそのファームウェアを実行することにより、後述するように作動する。   Each of the host directors 21a and 21b is a module that controls data exchange between the host device 30 and the cache directors 23a to 23d. Each of the host directors 21 a and 21 b is connected to the host device 30. The host directors 21a and 21b are connected to the switches 25a and 25b, respectively. Each of the host directors 21a and 21b includes a processor (not shown) and a nonvolatile memory that stores firmware and the like. Each of the host directors 21a and 21b operates as described later when the processor executes its firmware.

各ディスクディレクタ22a,22bは、ディスクエンクロージャ10とキャッシュディレクタ23a〜23dとの間のデータの授受を制御するモジュールである。各ディスクディレクタ22a,22bは、ディスクエンクロージャ10と接続されている。各ディスクディレクタ22a,22bは、スイッチ25a,25bのそれぞれと接続されている。各ディスクディレクタ22a,22bは、図示しないプロセッサとファームウェア等を記憶する不揮発性メモリとを備える。各ディスクディレクタ22a,22bは、プロセッサがそのファームウェアを実行することにより、後述するように作動する。   Each of the disk directors 22a and 22b is a module that controls data exchange between the disk enclosure 10 and the cache directors 23a to 23d. Each of the disk directors 22 a and 22 b is connected to the disk enclosure 10. The disk directors 22a and 22b are connected to the switches 25a and 25b, respectively. Each of the disk directors 22a and 22b includes a processor (not shown) and a nonvolatile memory that stores firmware and the like. Each of the disk directors 22a and 22b operates as described later when the processor executes its firmware.

各キャッシュディレクタ23a〜23dは、スイッチ25a,25bのそれぞれと接続されている。キャッシュディレクタ23a〜23dには、バッテリ24a〜24dが1つずつ接続されている。キャッシュディレクタ23a〜23dは、プロセッサ23a1〜23d1(プロセッサ#0〜#3)と、揮発性メモリ(本例では、DRAM(Dynamic Random Access Memory))であるキャッシュメモリ23a2〜23d2(キャッシュメモリ#0〜#3)と、ファームウェア等を記憶する不揮発性メモリ(本例では、フラッシュメモリ)23a3〜23d3(不揮発性メモリ#0〜#3)と、をそれぞれ1つずつ含む。
更に、各キャッシュディレクタ23a〜23dは、接続されたバッテリ24a〜24dから供給される電流を検出するように構成されている。
Each of the cache directors 23a to 23d is connected to each of the switches 25a and 25b. One battery 24a-24d is connected to each of the cache directors 23a-23d. The cache directors 23a to 23d include processors 23a1 to 23d1 (processors # 0 to # 3) and cache memories 23a2 to 23d2 (cache memories # 0 to # 3) which are volatile memories (DRAM (Dynamic Random Access Memory) in this example). # 3) and a nonvolatile memory (flash memory in this example) 23a3 to 23d3 (nonvolatile memories # 0 to # 3) each storing firmware and the like.
Further, each of the cache directors 23a to 23d is configured to detect a current supplied from the connected batteries 24a to 24d.

また、各キャッシュディレクタ23a〜23dは、プロセッサ23a1〜23d1がそのファームウェアを実行することにより、後述するように作動する。
なお、本例では、キャッシュメモリ23a2〜23d2はDRAMであったが、SRAM(Static Random Access Memory)等、他の揮発性メモリであってもよい。また、本例では、不揮発性メモリは、フラッシュメモリであったが、MRAM(Magnetic Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)等、他の不揮発性メモリであってもよく、HDDであってもよい。
The cache directors 23a to 23d operate as will be described later when the processors 23a1 to 23d1 execute the firmware.
In this example, the cache memories 23a2 to 23d2 are DRAMs, but may be other volatile memories such as SRAM (Static Random Access Memory). In this example, the non-volatile memory is a flash memory, but may be another non-volatile memory such as an MRAM (Magnetic Random Access Memory) or an FeRAM (Ferroelectric Random Access Memory), or an HDD. Also good.

各バッテリ24a〜24dは、外部の商用電源からキャッシュディレクタ23a〜23dへ供給される電力が遮断されることにより、接続されたキャッシュディレクタ23a〜23dに電力を供給するように構成されている。   Each of the batteries 24a to 24d is configured to supply power to the connected cache directors 23a to 23d when power supplied to the cache directors 23a to 23d from an external commercial power supply is cut off.

本例では、外部の商用電源からディスクシステム1へ供給される電力を、キャッシュディレクタ23a〜23dへ供給するための配線(電力供給線)と、バッテリ24a〜24dの出力端子と、が接続されている。即ち、この実施形態においては、外部の商用電源からキャッシュディレクタ23a〜23dへ供給される電力が遮断されると、バッテリ24a〜24dが放電することにより電力供給線の電圧が維持される。即ち、バッテリ24a〜24dからキャッシュディレクタ23a〜23dへ電力が供給される。   In this example, the wiring (power supply line) for supplying the power supplied from the external commercial power source to the disk system 1 to the cache directors 23a to 23d and the output terminals of the batteries 24a to 24d are connected. Yes. That is, in this embodiment, when the power supplied from the external commercial power source to the cache directors 23a to 23d is cut off, the batteries 24a to 24d are discharged to maintain the voltage of the power supply line. That is, power is supplied from the batteries 24a to 24d to the cache directors 23a to 23d.

各スイッチ25a,25bは、ホスト装置30とディスクエンクロージャ10との間の経路を切り替えるモジュールである。各スイッチ25a,25bは、サービスプロセッサ26と接続されている。各スイッチ25a,25bは、図示しないプロセッサとファームウェア等を記憶する不揮発性メモリとを備える。各スイッチ25a,25bは、プロセッサがそのファームウェアを実行することにより、下記のように作動する。   Each of the switches 25 a and 25 b is a module that switches a path between the host device 30 and the disk enclosure 10. Each switch 25a, 25b is connected to a service processor 26. Each switch 25a, 25b includes a processor (not shown) and a nonvolatile memory for storing firmware and the like. Each switch 25a, 25b operates as follows when the processor executes its firmware.

各スイッチ25a,25bは、サービスプロセッサ26からの接続指示情報に応じて、各ホストディレクタ21a,21bと1つのキャッシュディレクタ23a〜23dとを接続するとともに、各ディスクディレクタ22a,22bと1つのキャッシュディレクタ23a〜23dとを接続する。   Each switch 25a, 25b connects each host director 21a, 21b and one cache director 23a-23d according to connection instruction information from the service processor 26, and each disk director 22a, 22b and one cache director. 23a to 23d are connected.

即ち、ホストディレクタ21a,21b、ディスクディレクタ22a,22b及びスイッチ25a,25bのそれぞれは、キャッシュディレクタ23a〜23dと、ホスト装置30又はディスクエンクロージャ10と、の間のデータの授受を制御する制御用モジュールを構成している。   That is, each of the host directors 21a and 21b, the disk directors 22a and 22b, and the switches 25a and 25b is a control module that controls data exchange between the cache directors 23a to 23d and the host device 30 or the disk enclosure 10. Is configured.

また、サービスプロセッサ26は、ファームウェア等を記憶する図示しない不揮発性メモリを備える。サービスプロセッサ26は、そのファームウェアを実行することにより、下記のように作動する。   The service processor 26 includes a non-illustrated non-volatile memory that stores firmware and the like. The service processor 26 operates as follows by executing the firmware.

サービスプロセッサ26は、ホスト装置30とディスクエンクロージャ10との間の経路であって、ホストディレクタ21a,21b、ディスクディレクタ22a,22b、キャッシュディレクタ23a〜23d、及び、スイッチ25a,25bのそれぞれを1つずつ経由する経路を形成するように、接続指示情報をスイッチ25a,25bへ送る。   The service processor 26 is a path between the host device 30 and the disk enclosure 10, and includes one each of the host directors 21a and 21b, the disk directors 22a and 22b, the cache directors 23a to 23d, and the switches 25a and 25b. Connection instruction information is sent to the switches 25a and 25b so as to form a route through each.

更に、サービスプロセッサ26は、制御用モジュール(ホストディレクタ21a,21b、ディスクディレクタ22a,22b、キャッシュディレクタ23a〜23d、及び、スイッチ25a,25b)のそれぞれの状態が異常状態であるか否かを検出するように構成されている。サービスプロセッサ26は、制御用モジュールのいずれかの状態が異常状態であることを検出した場合、制御用モジュールのうちの正常状態にある制御用モジュールのみを経由する経路を形成するように、接続指示情報をスイッチ25a,25bへ送る。
加えて、サービスプロセッサ26は、上記ファームウェアを実行することにより、後述するようにも作動する。
Further, the service processor 26 detects whether or not each of the control modules (host directors 21a and 21b, disk directors 22a and 22b, cache directors 23a to 23d, and switches 25a and 25b) is abnormal. Is configured to do. When the service processor 26 detects that one of the control modules is in an abnormal state, the service processor 26 instructs the connection so as to form a path that passes only through the control module in the normal state among the control modules. Information is sent to the switches 25a and 25b.
In addition, the service processor 26 operates as described later by executing the firmware.

ホスト装置30は、書込要求情報又は読出要求情報をディスクアレイ装置1へ送る(出力する)。
書込要求情報は、書込データと、書込位置を表す書込位置情報と、を含み、書込データをその書込位置にてHDD10a〜10hに書き込む(記憶させる)ことを要求する旨を表す情報である。また、読出要求情報は、読出位置を表す読出位置情報を含み、その読出位置にてHDD10a〜10hに記憶されているデータを読み出すことを要求する旨を表す情報である。
The host device 30 sends (outputs) write request information or read request information to the disk array device 1.
The write request information includes write data and write position information indicating a write position, and indicates that the write data is requested to be written (stored) in the HDD 10a to 10h at the write position. It is information to represent. The read request information includes read position information indicating a read position, and is information indicating that data stored in the HDDs 10a to 10h is requested to be read at the read position.

次に、上記のように構成されたディスクシステム1の作動について説明する。
先ず、ホスト装置30からの書込要求情報に従って書込データをHDD10a〜10hに記憶させるためのディスクシステム1の作動について説明する。
Next, the operation of the disk system 1 configured as described above will be described.
First, the operation of the disk system 1 for storing write data in the HDDs 10a to 10h according to the write request information from the host device 30 will be described.

各ホストディレクタ21a,21bは、ホスト装置30からの書込要求情報を受け取る。各ホストディレクタ21a,21bは、受け取った書込要求情報を、スイッチ25a,25bにより接続されたキャッシュディレクタ23a〜23dへ送る。   Each of the host directors 21 a and 21 b receives write request information from the host device 30. Each host director 21a, 21b sends the received write request information to the cache directors 23a-23d connected by the switches 25a, 25b.

各キャッシュディレクタ23a〜23dは、ホストディレクタ21a,21bから書込要求情報を受け取る。各キャッシュディレクタ23a〜23dは、受け取った書込要求情報をキャッシュメモリ23a2〜23d2に記憶させる。このとき、各キャッシュディレクタ23a〜23dは、受け取った書込要求情報に含まれる書込位置情報と同一の書込位置情報を含む書込要求情報が既にキャッシュメモリ23a2〜23d2に記憶されている場合、記憶されている書込要求情報を受け取った書込要求情報に置換(更新)する。   Each of the cache directors 23a to 23d receives write request information from the host directors 21a and 21b. Each cache director 23a to 23d stores the received write request information in the cache memories 23a2 to 23d2. At this time, each of the cache directors 23a to 23d has the write request information including the same write position information as the write position information included in the received write request information already stored in the cache memories 23a2 to 23d2. The stored write request information is replaced (updated) with the received write request information.

各キャッシュディレクタ23a〜23dは、受け取った書込要求情報の記憶が完了すると、書込完了情報をホストディレクタ21a,21bへ送る。
なお、本明細書において、キャッシュメモリ23a2〜23d2に記憶されている書込要求情報は、キャッシュデータとも呼ばれるデータである。
When the storage of the received write request information is completed, each of the cache directors 23a to 23d sends the write completion information to the host directors 21a and 21b.
In this specification, the write request information stored in the cache memories 23a2 to 23d2 is data also called cache data.

各ディスクディレクタ22a,22bは、予め設定されたタイミングにて(例えば、予め設定された時間が経過する毎に)、キャッシュメモリ23a2〜23d2に記憶されている書込要求情報を読み出す。   Each of the disk directors 22a and 22b reads the write request information stored in the cache memories 23a2 to 23d2 at a preset timing (for example, every time a preset time elapses).

各ディスクディレクタ22a,22bは、読み出した書込要求情報に含まれる書込データを、その書込要求情報に含まれる書込位置情報に応じた位置にてHDD10a〜10hに記憶させる(書き込む)。更に、各ディスクディレクタ22a,22bは、読み出した書込要求情報をキャッシュメモリ23a2〜23d2から消去する。
即ち、キャッシュメモリ23a2〜23d2は、ホスト装置30とHDD10a〜10hとの間で授受されるデータを一時的に記憶している、と言うことができる。
Each of the disk directors 22a and 22b stores (writes) the write data included in the read write request information in the HDDs 10a to 10h at positions corresponding to the write position information included in the write request information. Further, each of the disk directors 22a and 22b erases the read write request information from the cache memories 23a2 to 23d2.
That is, it can be said that the cache memories 23a2 to 23d2 temporarily store data exchanged between the host device 30 and the HDDs 10a to 10h.

次に、ホスト装置30からの読出要求情報に従ってHDD10a〜10hに記憶されているデータを読み出すためのディスクシステム1の作動について説明する。   Next, the operation of the disk system 1 for reading data stored in the HDDs 10a to 10h in accordance with the read request information from the host device 30 will be described.

各ホストディレクタ21a,21bは、ホスト装置30からの読出要求情報を受け取る。各ホストディレクタ21a,21bは、受け取った読出要求情報を、スイッチ25a,25bにより接続されたキャッシュディレクタ23a〜23dへ送る。   Each of the host directors 21 a and 21 b receives read request information from the host device 30. Each host director 21a, 21b sends the received read request information to the cache directors 23a-23d connected by the switches 25a, 25b.

各キャッシュディレクタ23a〜23dは、ホストディレクタ21a,21bから読出要求情報を受け取る。各キャッシュディレクタ23a〜23dは、受け取った読出要求情報に含まれる読出位置情報と同一の読出位置情報を含む被読出情報がキャッシュメモリ23a2〜23d2に記憶されている場合、その被読出情報をホストディレクタ21a,21bへ送る。被読出情報は、HDD10a〜10hから読み出された読出データと、その読出データが記憶されているHDD10a〜10h内の位置に応じた読出位置情報と、を含む情報である。   Each of the cache directors 23a to 23d receives read request information from the host directors 21a and 21b. When read information including read position information identical to the read position information included in the received read request information is stored in the cache memories 23a2 to 23d2, each of the cache directors 23a to 23d transmits the read information to the host director. Send to 21a, 21b. The read information is information including read data read from the HDDs 10a to 10h and read position information corresponding to positions in the HDDs 10a to 10h in which the read data are stored.

一方、各キャッシュディレクタ23a〜23dは、受け取った読出要求情報に含まれる読出位置情報と同一の読出位置情報を含む被読出情報がキャッシュメモリ23a2〜23d2に記憶されていない場合、その読出要求情報をディスクディレクタ22a,22bへ送る。   On the other hand, when the read information including the read position information identical to the read position information included in the received read request information is not stored in the cache memories 23a2 to 23d2, each of the cache directors 23a to 23d receives the read request information. The data is sent to the disk directors 22a and 22b.

各ディスクディレクタ22a,22bは、各キャッシュディレクタ23a〜23dから読出要求情報を受け取ると、その読出要求情報に含まれる読出位置情報に応じた位置にてHDD10a〜10hに記憶されているデータをHDD10a〜10hから読み出す。各ディスクディレクタ22a,22bは、読み出した読出データと読出位置情報とを含む被読出情報をキャッシュディレクタ23a〜23dへ送る。   When the disk directors 22a and 22b receive the read request information from the cache directors 23a to 23d, the data stored in the HDDs 10a to 10h at the positions corresponding to the read position information included in the read request information are stored in the HDDs 10a to 10h. Read from 10h. Each of the disk directors 22a and 22b sends read information including read data and read position information to the cache directors 23a to 23d.

各キャッシュディレクタ23a〜23dは、受け取った被読出情報をキャッシュメモリ23a2〜23d2に記憶させるとともにホストディレクタ21a,21bへ送る。更に、ホストディレクタ21a,21bは、キャッシュディレクタ23a〜23dから被読出情報を受け取ると、受け取った被読出情報をホスト装置30へ送る。   Each of the cache directors 23a to 23d stores the received read information in the cache memories 23a2 to 23d2 and sends it to the host directors 21a and 21b. Further, when the host directors 21 a and 21 b receive the read information from the cache directors 23 a to 23 d, the host directors 21 a and 21 b send the received read information to the host device 30.

次に、外部の商用電源からのディスクシステム1への電力の供給が不意に遮断されることにより、ディスク制御装置20の作動が正常に終了しなかった場合に、キャッシュメモリ23a2〜23d2に記憶されているキャッシュデータ(書込要求情報)を保持するためのディスクシステム1の作動について説明する。   Next, when the operation of the disk control device 20 does not end normally due to an unexpected interruption of the power supply from the external commercial power source to the disk system 1, it is stored in the cache memories 23a2 to 23d2. The operation of the disk system 1 for holding the cache data (write request information) is described.

先ず、サービスプロセッサ26は、乱数を生成し生成した乱数に基づいて、暗号化キー情報(本例では、96バイトの情報)と、その暗号化キー情報に基づいて暗号化されたデータを復号化するための復号化キー情報(本例では、96バイトの情報)と、からなる組を表すキー組情報を生成する(キー情報生成手段)。具体的には、サービスプロセッサ26は、ディスク制御装置20の起動時に4つのキー組情報を生成する。   First, the service processor 26 generates a random number and decrypts the encryption key information (in this example, 96-byte information) and the data encrypted based on the encryption key information based on the generated random number. Key combination information (key information generation means) representing a combination of the decryption key information (in this example, 96-byte information) and Specifically, the service processor 26 generates four key set information when the disk controller 20 is activated.

この4つのキー組情報は、暗号化キー情報#0及び復号化キー情報#0を表すキー組情報、暗号化キー情報#1及び復号化キー情報#1を表すキー組情報、暗号化キー情報#2及び復号化キー情報#2を表すキー組情報、並びに、暗号化キー情報#4及び復号化キー情報#4を表すキー組情報からなる。   The four key set information includes key set information indicating encryption key information # 0 and decryption key information # 0, key set information indicating encryption key information # 1 and decryption key information # 1, and encryption key information. It consists of key set information representing # 2 and decryption key information # 2, and key set information representing encryption key information # 4 and decryption key information # 4.

そして、サービスプロセッサ26は、キャッシュディレクタ23a〜23dへ、生成した4つの暗号化キー情報#0〜#4を1つずつ送る。更に、サービスプロセッサ26は、キャッシュディレクタ23a〜23dへ、そのキャッシュディレクタ23a〜23dへ送る暗号化キー情報を含むキー組情報以外の3つのキー組情報に含まれる復号化キー情報を送る。   Then, the service processor 26 sends the generated four pieces of encryption key information # 0 to # 4 to the cache directors 23a to 23d one by one. Further, the service processor 26 sends the decryption key information included in the three key set information other than the key set information including the encryption key information to be sent to the cache directors 23a to 23d to the cache directors 23a to 23d.

即ち、サービスプロセッサ26は、キャッシュディレクタ23a(キャッシュディレクタ#0)へ、暗号化キー情報#0と、復号化キー情報#1〜#3と、を送る(配布する)。同様に、サービスプロセッサ26は、キャッシュディレクタ#1へ暗号化キー情報#1と復号化キー情報#0,#2,#3とを送り、キャッシュディレクタ#2へ暗号化キー情報#2と復号化キー情報#0,#1,#3とを送り、キャッシュディレクタ#3へ暗号化キー情報#3と復号化キー情報#0〜#2とを送る。   That is, the service processor 26 sends (distributes) the encryption key information # 0 and the decryption key information # 1 to # 3 to the cache director 23a (cache director # 0). Similarly, the service processor 26 sends the encryption key information # 1 and the decryption key information # 0, # 2, # 3 to the cache director # 1, and decrypts the encryption key information # 2 to the cache director # 2. Key information # 0, # 1, and # 3 are sent, and encryption key information # 3 and decryption key information # 0 to # 2 are sent to cache director # 3.

各キャッシュディレクタ23a〜23dは、サービスプロセッサ26からの、1つの暗号化キー情報と3つの復号化キー情報とを受け付ける。各キャッシュディレクタ23a〜23dは、受け付けた暗号化キー情報及び復号化キー情報をキャッシュメモリ23a2〜23d2に記憶させる。これにより、各キャッシュメモリ23a2〜23d2に記憶されている情報は、図2に示したように、1つの暗号化キー情報と、その暗号化キー情報を含むキー組情報以外の3つのキー組情報に含まれる復号化キー情報(即ち、その暗号化キー情報と対応しない復号化キー情報)と、を含む。   Each of the cache directors 23 a to 23 d receives one encryption key information and three decryption key information from the service processor 26. Each of the cache directors 23a to 23d stores the received encryption key information and decryption key information in the cache memories 23a2 to 23d2. As a result, the information stored in each of the cache memories 23a2 to 23d2 includes three pieces of key set information other than one encryption key information and key set information including the encryption key information as shown in FIG. Decryption key information (that is, decryption key information not corresponding to the encryption key information).

更に、サービスプロセッサ26は、予め設定された時間(本例では、1時間)が経過する毎に、新たな4つのキー組情報の生成と、暗号化キー情報及び復号化キー情報のキャッシュディレクタ23a〜23dへの配布と、を行う。   Further, the service processor 26 generates a new four key set information and a cache director 23a for the encryption key information and the decryption key information every time a preset time (1 hour in this example) elapses. To 23d.

ここでは、キャッシュディレクタ23a(キャッシュディレクタ#0)に着目して説明を続ける。
キャッシュディレクタ#0のプロセッサ#0は、図3にフローチャートにより示したキャッシュデータ保持処理プログラムを起動時に実行する。
Here, the description is continued focusing on the cache director 23a (cache director # 0).
The processor # 0 of the cache director # 0 executes the cache data holding processing program shown by the flowchart in FIG.

具体的には、プロセッサ#0は、ステップ305にて、バッテリ#0からキャッシュディレクタ#0に電力が供給されるまで待機する。本例では、プロセッサ#0は、バッテリ#0からキャッシュディレクタ#0へ供給される電流であってキャッシュディレクタ#0によって検出された電流が閾値電流以上である場合にバッテリ#0からキャッシュディレクタ#0に電力が供給されていると判定する。   Specifically, processor # 0 stands by in step 305 until power is supplied from battery # 0 to cache director # 0. In this example, the processor # 0 receives the current supplied from the battery # 0 to the cache director # 0, and the current detected by the cache director # 0 is equal to or greater than the threshold current, the battery # 0 to the cache director # 0. It is determined that power is being supplied to.

いま、外部の商用電源からのディスクシステム1への電力の供給が不意に遮断されることにより、バッテリ#0からキャッシュディレクタ#0へ供給される電流が閾値電流以上となった場合を想定して説明を続ける。   It is assumed that the current supplied from the battery # 0 to the cache director # 0 exceeds the threshold current due to unexpected power interruption from the external commercial power supply to the disk system 1. Continue the explanation.

この場合、プロセッサ#0は、ステップ305にて「Yes」と判定してステップ310に進み、暗号化処理を行う。即ち、プロセッサ#0は、キャッシュメモリ#0に記憶されている、キャッシュデータ#0と、暗号化キー情報#0と、復号化キー情報#1〜#3と、を読み出す。次いで、プロセッサ#0は、読み出したキャッシュデータ#0を、読み出した暗号化キー情報#0に基づいて暗号化する。なお、ステップ305の処理が実行されることは、暗号化処理手段(暗号化処理工程)の機能が達成されることに対応している。   In this case, the processor # 0 determines “Yes” in step 305, proceeds to step 310, and performs encryption processing. That is, the processor # 0 reads the cache data # 0, the encryption key information # 0, and the decryption key information # 1 to # 3 stored in the cache memory # 0. Next, the processor # 0 encrypts the read cache data # 0 based on the read encryption key information # 0. Note that the execution of the processing of step 305 corresponds to the achievement of the function of the encryption processing means (encryption processing step).

更に、プロセッサ#0は、ステップ315にて、暗号化した暗号化データ#0と、読み出した復号化キー情報#1〜#3と、を不揮発性メモリ#0に記憶させる(書き込む)。即ち、書込処理が実行される。なお、ステップ315の処理が実行されることは、第1の記憶処理手段(第1の記憶処理工程)の機能及び第2の記憶処理手段(第2の記憶処理工程)の機能が達成されることに対応している。   Further, in step 315, the processor # 0 stores (writes) the encrypted encrypted data # 0 and the read decryption key information # 1 to # 3 in the nonvolatile memory # 0. That is, the writing process is executed. Note that the execution of the processing of step 315 achieves the function of the first storage processing means (first storage processing step) and the function of the second storage processing means (second storage processing step). It corresponds to that.

そして、プロセッサ#0は、ステップ320にて、キャッシュメモリ#0からすべての情報を消去する。即ち、消去処理が実行される。これによれば、キャッシュメモリ#0内のデータが漏洩することを確実に防止することができる。なお、ステップ320の処理が実行されることは、データ消去手段の機能が達成されることに対応している。
また、キャッシュディレクタ23b〜23d(キャッシュディレクタ#1〜#3)も、キャッシュディレクタ#0と同様に作動する。
In step 320, the processor # 0 erases all information from the cache memory # 0. That is, the erasing process is executed. According to this, it is possible to reliably prevent the data in the cache memory # 0 from leaking. Note that the execution of the process of step 320 corresponds to the achievement of the function of the data erasing means.
Also, the cache directors 23b to 23d (cache directors # 1 to # 3) operate in the same manner as the cache director # 0.

これにより、各不揮発性メモリ#0〜#3に記憶されている情報は、図4に示したように、1つの暗号化データと、その暗号化データを暗号化する基となった暗号化キー情報を含むキー組情報以外の3つのキー組情報に含まれる復号化キー情報と、を含む。   As a result, the information stored in each of the non-volatile memories # 0 to # 3 includes, as shown in FIG. 4, one encrypted data and an encryption key that is a basis for encrypting the encrypted data. And decryption key information included in the three key set information other than the key set information including the information.

即ち、不揮発性メモリ#0には暗号化キー情報#0に基づいて暗号化された暗号化データ#0と復号化キー情報#1〜#3とが記憶され、不揮発性メモリ#1には暗号化キー情報#1に基づいて暗号化された暗号化データ#1と復号化キー情報#0,#2,#3とが記憶され、不揮発性メモリ#2には暗号化キー情報#2に基づいて暗号化された暗号化データ#2と復号化キー情報#0,#1,#3とが記憶され、不揮発性メモリ#3には暗号化キー情報#3に基づいて暗号化された暗号化データ#3と復号化キー情報#0〜#2とが記憶されている。   That is, encrypted data # 0 and decryption key information # 1 to # 3 encrypted based on the encryption key information # 0 are stored in the nonvolatile memory # 0, and encrypted data is stored in the nonvolatile memory # 1. Encryption data # 1 encrypted based on the encryption key information # 1 and decryption key information # 0, # 2, # 3 are stored, and the nonvolatile memory # 2 is based on the encryption key information # 2. Encrypted data # 2 and decryption key information # 0, # 1, # 3 are stored, and the non-volatile memory # 3 is encrypted based on the encryption key information # 3. Data # 3 and decryption key information # 0 to # 2 are stored.

このように、上述したディスク制御装置20において、
キャッシュディレクタ#0は、不揮発性メモリ#0(第1の不揮発性メモリ)と、キャッシュメモリ#0(第1のキャッシュメモリ)と、暗号化キー情報#0(第1の暗号化キー情報)に基づいてキャッシュメモリ#0が記憶しているデータを暗号化する第1の暗号化処理手段と、暗号化された暗号化データ#0(第1のデータ)と復号化キー情報#1(第2の復号化キー情報)とを不揮発性メモリ#0に記憶させる第1の記憶処理手段と、を含む第1のキャッシュ用モジュールを構成し、
キャッシュディレクタ#1は、不揮発性メモリ#1(第2の不揮発性メモリ)と、キャッシュメモリ#1(第2のキャッシュメモリ)と、暗号化キー情報#1(第2の暗号化キー情報)に基づいてキャッシュメモリ#1が記憶しているデータを暗号化する第2の暗号化処理手段と、暗号化された暗号化データ#1(第2のデータ)と復号化キー情報#0(第1の復号化キー情報)とを不揮発性メモリ#1に記憶させる第2の記憶処理手段と、を含む第2のキャッシュ用モジュールを構成している、と言うことができる。
As described above, in the disk control device 20 described above,
The cache director # 0 includes a nonvolatile memory # 0 (first nonvolatile memory), a cache memory # 0 (first cache memory), and encryption key information # 0 (first encryption key information). Based on the first encryption processing means for encrypting the data stored in the cache memory # 0, encrypted encrypted data # 0 (first data) and decryption key information # 1 (second And a first storage processing means for storing the decryption key information) in the nonvolatile memory # 0,
The cache director # 1 includes a nonvolatile memory # 1 (second nonvolatile memory), a cache memory # 1 (second cache memory), and encryption key information # 1 (second encryption key information). Based on the second encryption processing means for encrypting the data stored in the cache memory # 1, encrypted encrypted data # 1 (second data), and decryption key information # 0 (first It is possible to say that the second cache module includes a second storage processing unit that stores the decryption key information) in the nonvolatile memory # 1.

同様に、暗号化キー情報#0を第1の暗号化キー情報として扱うとともに、暗号化キー情報#2を第2の暗号化キー情報として扱うと、キャッシュディレクタ#0は、第1のキャッシュ用モジュールを構成し、キャッシュディレクタ#2は、第2のキャッシュ用モジュールを構成している、と言うことができる。同様に、暗号化キー情報#0を第1の暗号化キー情報として扱うとともに、暗号化キー情報#3を第2の暗号化キー情報として扱うと、キャッシュディレクタ#0は、第1のキャッシュ用モジュールを構成し、キャッシュディレクタ#3は、第2のキャッシュ用モジュールを構成している、と言うことができる。なお、暗号化キー情報#1、暗号化キー情報#2又は暗号化キー情報#3を第1の暗号化キー情報として扱う場合も、上述した場合と同様である。   Similarly, when the encryption key information # 0 is handled as the first encryption key information and the encryption key information # 2 is handled as the second encryption key information, the cache director # 0 is used for the first cache. It can be said that the cache director # 2 constitutes a second cache module. Similarly, when the encryption key information # 0 is handled as the first encryption key information and the encryption key information # 3 is handled as the second encryption key information, the cache director # 0 is used for the first cache. It can be said that the cache director # 3 constitutes a second cache module. Note that the case where the encryption key information # 1, the encryption key information # 2, or the encryption key information # 3 is handled as the first encryption key information is the same as described above.

次に、外部の商用電源からのディスクシステム1への電力の供給が不意に遮断された後にその電力の供給が再開した場合に、不揮発性メモリ#0〜#3に保持しておいたデータに基づいてキャッシュメモリ#0〜#3にキャッシュデータを復元するためのディスクシステム1の作動について説明する。   Next, when the power supply to the disk system 1 from the external commercial power supply is unexpectedly cut off and then the power supply is resumed, the data stored in the nonvolatile memories # 0 to # 3 The operation of the disk system 1 for restoring cache data to the cache memories # 0 to # 3 will be described based on the above.

サービスプロセッサ26は、ディスク制御装置20の作動が終了する場合(例えば、シャットダウンが指示された場合)、ディスク制御装置20の作動が正常に終了した旨を表す正常終了情報を、サービスプロセッサ26が備える不揮発性メモリに記憶させる。即ち、例えば、外部の商用電源からの電力の供給が不意に遮断されることにより、ディスク制御装置20の作動が正常に終了しなかった場合(異常終了時)、不揮発性メモリは正常終了情報を記憶していない。   When the operation of the disk controller 20 ends (for example, when a shutdown is instructed), the service processor 26 includes normal end information indicating that the operation of the disk controller 20 has ended normally. Store in non-volatile memory. That is, for example, if the operation of the disk control device 20 does not end normally due to unexpected power interruption from an external commercial power supply (at the time of abnormal end), the nonvolatile memory stores normal end information. I don't remember.

一方、サービスプロセッサ26は、ディスク制御装置20の作動が開始する場合(起動が指示された場合)において、サービスプロセッサ26が備える不揮発性メモリに正常終了情報が記憶されていないとき、キー要求情報をキャッシュディレクタ#0〜#3のそれぞれへ送る。キー要求情報は、復号化キー情報の送信を要求する旨を表す情報である。   On the other hand, when the operation of the disk controller 20 starts (when activation is instructed), the service processor 26 receives the key request information when the normal end information is not stored in the nonvolatile memory included in the service processor 26. The data is sent to each of the cache directors # 0 to # 3. The key request information is information indicating that transmission of decryption key information is requested.

各キャッシュディレクタ#0〜#3は、キー要求情報を受け取ると、不揮発性メモリ#0〜#3に記憶されている3つの復号化キー情報を読み出し、読み出した3つの復号化キー情報をサービスプロセッサ26へ送る。   When the cache directors # 0 to # 3 receive the key request information, the cache directors # 0 to # 3 read the three decryption key information stored in the non-volatile memories # 0 to # 3, and the read three decryption key information to the service processor 26.

サービスプロセッサ26は、キャッシュディレクタ#0〜#3から復号化キー情報を受け取ると、各キャッシュディレクタ#0〜#3へ、対応する1つの復号化キー情報#0〜#3を含む復号指示情報を送る。即ち、サービスプロセッサ26は、キャッシュディレクタ#0へ復号化キー情報#0を送る。同様に、サービスプロセッサ26は、キャッシュディレクタ#1へ復号化キー情報#1を送り、キャッシュディレクタ#2へ復号化キー情報#2を送り、キャッシュディレクタ#3へ復号化キー情報#3を送る。   When the service processor 26 receives the decryption key information from the cache directors # 0 to # 3, the service processor 26 sends decryption instruction information including one corresponding decryption key information # 0 to # 3 to each cache director # 0 to # 3. send. That is, the service processor 26 sends the decryption key information # 0 to the cache director # 0. Similarly, the service processor 26 sends the decryption key information # 1 to the cache director # 1, sends the decryption key information # 2 to the cache director # 2, and sends the decryption key information # 3 to the cache director # 3.

ここでは、キャッシュディレクタ23a(キャッシュディレクタ#0)に着目して説明を続ける。
キャッシュディレクタ#0のプロセッサ#0は、図5にフローチャートにより示したキャッシュデータ復元処理プログラムを起動時に実行する。
Here, the description is continued focusing on the cache director 23a (cache director # 0).
The processor # 0 of the cache director # 0 executes the cache data restoration processing program shown by the flowchart in FIG.

具体的には、プロセッサ#0は、ステップ505にて、復号指示情報を受信するまで待機する。この状態においては、プロセッサ#0は、サービスプロセッサ26から復号指示情報を受け取っている(受信している)。   Specifically, processor # 0 waits until receiving decoding instruction information in step 505. In this state, the processor # 0 receives (receives) the decryption instruction information from the service processor 26.

従って、プロセッサ#0は、ステップ505にて「Yes」と判定してステップ510に進み、復号化処理を行う。即ち、プロセッサ#0は、不揮発性メモリ#0から暗号化データ#0を読み出す。更に、プロセッサ#0は、読み出した暗号化データ#0を、復号指示情報に含まれる復号化キー情報#0に基づいて復号化する。   Therefore, the processor # 0 determines “Yes” in step 505, proceeds to step 510, and performs a decoding process. That is, the processor # 0 reads the encrypted data # 0 from the nonvolatile memory # 0. Further, the processor # 0 decrypts the read encrypted data # 0 based on the decryption key information # 0 included in the decryption instruction information.

次いで、プロセッサ#0は、ステップ515にて、復号化したデータ(キャッシュデータ)#0をキャッシュメモリ#0に書き込む。即ち、書込処理が実行される。そして、プロセッサ#0は、ステップ520にて、不揮発性メモリ#0からすべての情報を消去する。即ち、消去処理が実行される。   Next, the processor # 0 writes the decrypted data (cache data) # 0 into the cache memory # 0 in step 515. That is, the writing process is executed. Then, in step 520, the processor # 0 erases all information from the nonvolatile memory # 0. That is, the erasing process is executed.

なお、キャッシュディレクタ23b〜23d(キャッシュディレクタ#1〜#3)も、キャッシュディレクタ#0と同様に作動する。
これにより、各キャッシュメモリ#0〜#3がキャッシュデータ#0〜#3を記憶している状態(即ち、外部の商用電源からのディスクシステム1への電力の供給が不意に遮断される直前のキャッシュメモリ#0〜#3の状態)が復元(再現)される。
The cache directors 23b to 23d (cache directors # 1 to # 3) also operate in the same manner as the cache director # 0.
As a result, the cache memories # 0 to # 3 store the cache data # 0 to # 3 (that is, immediately before the power supply from the external commercial power supply to the disk system 1 is unexpectedly cut off). The state of the cache memories # 0 to # 3) is restored (reproduced).

以上、説明したように、本発明によるディスクシステムの第1実施形態によれば、キャッシュメモリ#0〜#3内のデータが暗号化され、暗号化されたデータ#0〜#3が第1の不揮発性メモリ#0〜#3に記憶される。従って、電力の供給が遮断されることにより、キャッシュメモリ#0〜#3内のデータが消去された場合であっても、不揮発性メモリ#0〜#3にそのデータ(暗号化データ)を保持させることができる。   As described above, according to the first embodiment of the disk system of the present invention, the data in the cache memories # 0 to # 3 is encrypted, and the encrypted data # 0 to # 3 is the first data. Stored in the non-volatile memories # 0 to # 3. Therefore, even if the data in the cache memories # 0 to # 3 is erased by cutting off the power supply, the data (encrypted data) is retained in the nonvolatile memories # 0 to # 3. Can be made.

更に、不揮発性メモリ#0〜#3に記憶されるデータは暗号化されたデータ(暗号化データ)#0〜#3である。従って、不揮発性メモリ#0〜#3内の暗号化されたデータ(暗号化データ)#0〜#3が不正に取得された場合であっても、暗号化前のデータ(キャッシュデータ)が容易に取得されることを防止することができる。即ち、キャッシュデータが外部に漏洩することを防止することができる。   Furthermore, the data stored in the nonvolatile memories # 0 to # 3 are encrypted data (encrypted data) # 0 to # 3. Therefore, even if the encrypted data (encrypted data) # 0 to # 3 in the non-volatile memories # 0 to # 3 are illegally acquired, the data (cache data) before encryption is easy. Can be prevented. That is, the cache data can be prevented from leaking outside.

また、上記第1実施形態は、バッテリ#0〜#3がキャッシュディレクタ#0〜#3(キャッシュメモリ#0〜#3)へ電力を供給している場合に暗号化されたデータ#0〜#3を不揮発性メモリ#0〜#3に記憶させるように構成されている。   In the first embodiment, the data # 0 to # 3 encrypted when the batteries # 0 to # 3 supply power to the cache directors # 0 to # 3 (cache memories # 0 to # 3). 3 is stored in the non-volatile memories # 0 to # 3.

これによれば、バッテリ#0〜#3がキャッシュメモリ#0〜#3へ電力を供給していない場合においても暗号化されたデータ#0〜#3を不揮発性メモリ#0〜#3に記憶させる場合と比較して、不揮発性メモリ#0〜#3にデータを記憶させる回数を減少させることができる。この結果、不揮発性メモリ#0〜#3に障害が発生する(不揮発性メモリ#0〜#3の状態が異常状態となる)可能性を低減することができる。   According to this, even when the batteries # 0 to # 3 are not supplying power to the cache memories # 0 to # 3, the encrypted data # 0 to # 3 are stored in the nonvolatile memories # 0 to # 3. Compared with the case where it makes it, the frequency | count of memorize | storing data in non-volatile memory # 0- # 3 can be decreased. As a result, it is possible to reduce the possibility that a failure occurs in the nonvolatile memories # 0 to # 3 (the state of the nonvolatile memories # 0 to # 3 becomes an abnormal state).

また、上記第1実施形態は、暗号化されたデータ(暗号化データ)#0〜#3を復号化するための情報である復号化キー情報#0〜#3を、その暗号化データ#0〜#3が記憶されている第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させるように構成されている。即ち、上記第1実施形態は、暗号化データ#0を復号化するための情報である復号化キー情報#0を、その暗号化データ#0が記憶されている第1の不揮発性メモリ#0と異なる第2の不揮発性メモリ#1〜#3に記憶させるように構成されている。   In the first embodiment, decryption key information # 0 to # 3, which is information for decrypting encrypted data (encrypted data) # 0 to # 3, is stored as encrypted data # 0. Are configured to be stored in a second non-volatile memory different from the first non-volatile memory storing # 3. That is, in the first embodiment, the decryption key information # 0, which is information for decrypting the encrypted data # 0, is stored in the first nonvolatile memory # 0 in which the encrypted data # 0 is stored. Are configured to be stored in second non-volatile memories # 1 to # 3 different from the above.

これによれば、第1の不揮発性メモリ内の暗号化データが不正に取得された場合であっても、第1の不揮発性メモリがその暗号化データを復号化するための復号化キー情報を記憶している場合と比較して、その暗号化データが復号化される可能性を低減することができる。   According to this, even when the encrypted data in the first non-volatile memory is illegally acquired, the decryption key information for the first non-volatile memory to decrypt the encrypted data is obtained. Compared with the case where it is stored, the possibility that the encrypted data is decrypted can be reduced.

また、上記第1実施形態は、暗号化キー情報を生成し、生成した暗号化キー情報に基づいてキャッシュメモリ#0〜#3が記憶しているデータを暗号化するように構成されている。   Further, the first embodiment is configured to generate encryption key information and encrypt data stored in the cache memories # 0 to # 3 based on the generated encryption key information.

これによれば、キャッシュメモリ#0〜#3内のデータを暗号化する基となる暗号化キー情報#0〜#3を変更することができる。従って、一定の暗号化キー情報に基づいてデータが暗号化される場合と比較して、不揮発性メモリ#0〜#3内の暗号化されたデータ(暗号化データ)#0〜#3から暗号化前のデータ(キャッシュデータ)が取得される可能性をより一層低減することができる。   According to this, it is possible to change the encryption key information # 0 to # 3 that is the basis for encrypting the data in the cache memories # 0 to # 3. Therefore, the encrypted data (encrypted data) # 0 to # 3 in the non-volatile memories # 0 to # 3 is encrypted compared to the case where the data is encrypted based on the fixed encryption key information. The possibility that data before conversion (cache data) is acquired can be further reduced.

加えて、上記第1実施形態は、各不揮発性メモリ#0〜#3に、1つの暗号化データと、その暗号化データを復号化するための復号化キー情報以外のすべての復号化キー情報と、を記憶させるように構成されている。即ち、上記第1実施形態は、1つの復号化キー情報を複数の不揮発性メモリに記憶させるように構成されている。   In addition, in the first embodiment, in each of the non-volatile memories # 0 to # 3, one piece of encrypted data and all the decryption key information other than the decryption key information for decrypting the encrypted data Are stored. That is, the first embodiment is configured to store one decryption key information in a plurality of nonvolatile memories.

これによれば、不揮発性メモリ#0〜#3の1つから復号化キー情報#0〜#3を取得できない場合(例えば、キャッシュディレクタ#0〜#3の1つが取り外された場合、又は、キャッシュディレクタ#0〜#3の1つに障害が発生している場合)であっても、他の不揮発性メモリ#0〜#3から復号化キー情報#0〜#3を取得することができる。従って、不揮発性メモリ#0〜#3に記憶されている暗号化データ#0〜#3を確実に復号化することができる。   According to this, when the decryption key information # 0 to # 3 cannot be obtained from one of the non-volatile memories # 0 to # 3 (for example, when one of the cache directors # 0 to # 3 is removed, or Even if a failure occurs in one of the cache directors # 0 to # 3, the decryption key information # 0 to # 3 can be obtained from the other nonvolatile memories # 0 to # 3. . Therefore, the encrypted data # 0 to # 3 stored in the nonvolatile memories # 0 to # 3 can be reliably decrypted.

なお、上記第1実施形態においては、各不揮発性メモリ#0〜#3に、1つの暗号化データと、その暗号化データを復号化するための復号化キー情報以外のすべての復号化キー情報と、を記憶させるように構成されていた。ところで、上記第1実施形態は、各不揮発性メモリ#0〜#3に、1つの暗号化データと、その暗号化データを復号化するための復号化キー情報以外の復号化キー情報のうちの1つと、を記憶させるように構成されていてもよい。即ち、上記第1実施形態は、1つの復号化キー情報を1つの不揮発性メモリにのみ記憶させるように構成されていてもよい。   In the first embodiment, all the decryption key information other than one encryption data and the decryption key information for decrypting the encrypted data is stored in each of the nonvolatile memories # 0 to # 3. And was configured to memorize. By the way, in the first embodiment, each of the non-volatile memories # 0 to # 3 includes one piece of encrypted data and decryption key information other than the decryption key information for decrypting the encrypted data. One of them may be stored. That is, the first embodiment may be configured to store only one decryption key information in one non-volatile memory.

次に、本発明の第2実施形態に係るディスクシステムについて説明する。第2実施形態に係るディスクシステムは、上記第1実施形態に係るディスクシステムに対して、復号化キー情報を分割した部分情報をホストディレクタ、ディスクディレクタ、及び、スイッチに分散して記憶させる点のみにおいて相違している。従って、以下、かかる相違点を中心として説明する。   Next, a disk system according to a second embodiment of the present invention will be described. In the disk system according to the second embodiment, only the partial information obtained by dividing the decryption key information is distributed and stored in the host director, the disk director, and the switch in the disk system according to the first embodiment. Is different. Accordingly, the following description will focus on such differences.

サービスプロセッサ26は、上記第1実施形態と同様に、4つのキー組情報を生成する。そして、サービスプロセッサ26は、生成したキー組情報に含まれる復号化キー情報#0〜#3を3つのキー部分情報(本例では、32バイトの情報)に分割する。即ち、復号化キー情報#0は、キー部分情報#0A(第1の部分情報)、キー部分情報#0B(第2の部分情報)及びキー部分情報#0C(第3の部分情報)に分割される。同様に、復号化キー情報#1はキー部分情報#1A、キー部分情報#1B及びキー部分情報#1Cに分割され、復号化キー情報#2はキー部分情報#2A、キー部分情報#2B及びキー部分情報#2Cに分割され、復号化キー情報#3はキー部分情報#3A、キー部分情報#3B及びキー部分情報#3Cに分割される。   The service processor 26 generates four key set information as in the first embodiment. Then, the service processor 26 divides the decryption key information # 0 to # 3 included in the generated key set information into three pieces of key part information (32-byte information in this example). That is, the decryption key information # 0 is divided into key part information # 0A (first part information), key part information # 0B (second part information), and key part information # 0C (third part information). Is done. Similarly, decryption key information # 1 is divided into key part information # 1A, key part information # 1B, and key part information # 1C, and decryption key information # 2 is divided into key part information # 2A, key part information # 2B, and key part information # 1B. Divided into key part information # 2C, decryption key information # 3 is divided into key part information # 3A, key part information # 3B, and key part information # 3C.

そして、サービスプロセッサ26は、ホストディレクタ#0,#1のそれぞれへ、分割されたキー部分情報(第1の部分情報)#0A〜#3Aを送る。ホストディレクタ#0は、図6に示したように、サービスプロセッサ26からのキー部分情報#0A〜#3Aを受け取り、受け取ったキー部分情報#0A〜#3Aを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#10に記憶させる。同様に、ホストディレクタ#1も、キー部分情報#0A〜#3Aを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#11に記憶させる。   Then, the service processor 26 sends the divided key part information (first partial information) # 0A to # 3A to each of the host directors # 0 and # 1. As shown in FIG. 6, the host director # 0 receives the key part information # 0A to # 3A from the service processor 26, and receives the received key part information # 0A to # 3A in the nonvolatile memory (first memory module). 2 non-volatile memory) # 10. Similarly, the host director # 1 stores the key part information # 0A to # 3A in the nonvolatile memory (second nonvolatile memory) # 11 in its own module.

更に、サービスプロセッサ26は、ディスクディレクタ#0,#1のそれぞれへ、分割されたキー部分情報(第2の部分情報)#0B〜#3Bを送る。ディスクディレクタ#0は、サービスプロセッサ26からのキー部分情報#0B〜#3Bを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#20に記憶させる。同様に、ディスクディレクタ#1も、キー部分情報#0B〜#3Bを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#21に記憶させる。   Further, the service processor 26 sends the divided key part information (second part information) # 0B to # 3B to each of the disk directors # 0 and # 1. The disk director # 0 stores the key part information # 0B to # 3B from the service processor 26 in the nonvolatile memory (second nonvolatile memory) # 20 in the own module. Similarly, the disk director # 1 stores the key part information # 0B to # 3B in the nonvolatile memory (second nonvolatile memory) # 21 in its own module.

加えて、サービスプロセッサ26は、スイッチ#0,#1のそれぞれへ、分割されたキー部分情報(第3の部分情報)#0C〜#3Cを送る。スイッチ#0は、サービスプロセッサ26からのキー部分情報#0C〜#3Cを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#30に記憶させる。同様に、スイッチ#1も、キー部分情報#0C〜#3Cを自モジュール内の不揮発性メモリ(第2の不揮発性メモリ)#31に記憶させる。   In addition, the service processor 26 sends the divided key part information (third part information) # 0C to # 3C to each of the switches # 0 and # 1. The switch # 0 stores the key part information # 0C to # 3C from the service processor 26 in the nonvolatile memory (second nonvolatile memory) # 30 in its own module. Similarly, the switch # 1 also stores the key part information # 0C to # 3C in the nonvolatile memory (second nonvolatile memory) # 31 in its own module.

このように、復号化キー情報#0〜#3を分割したキー部分情報#0C〜#3Cは、複数の制御用モジュールのそれぞれが有する不揮発性メモリ#10〜#31に分散して記憶される。即ち、この処理が実行されることは、第2の記憶処理手段の機能が達成されることに対応している。   In this way, the key part information # 0C to # 3C obtained by dividing the decryption key information # 0 to # 3 is distributed and stored in the nonvolatile memories # 10 to # 31 included in each of the plurality of control modules. . That is, the execution of this process corresponds to the achievement of the function of the second storage processing means.

また、サービスプロセッサ26は、キャッシュディレクタ#0〜#3へ、暗号化キー情報#0〜#3を1つずつ送る。キャッシュディレクタ#0〜#3のそれぞれは、受け取った暗号化キー情報#0〜#3をキャッシュメモリ#0〜#3に記憶させる。   Further, the service processor 26 sends the encryption key information # 0 to # 3 one by one to the cache directors # 0 to # 3. Each of the cache directors # 0 to # 3 stores the received encryption key information # 0 to # 3 in the cache memories # 0 to # 3.

これにより、上記第1実施形態と同様に、外部の商用電源からのディスクシステム1への電力の供給が遮断された場合には、キャッシュメモリ#0〜#3に記憶されているキャッシュデータ#0〜#3が暗号化キー情報#0〜#3に基づいて暗号化され、暗号化された暗号化データ#0〜#3が不揮発性メモリ#0〜#3に記憶される(図7を参照。)。   As a result, as in the first embodiment, when the supply of power from the external commercial power source to the disk system 1 is interrupted, the cache data # 0 stored in the cache memories # 0 to # 3 is stored. To # 3 are encrypted based on the encryption key information # 0 to # 3, and encrypted encrypted data # 0 to # 3 are stored in the non-volatile memories # 0 to # 3 (see FIG. 7). .)

一方、サービスプロセッサ26は、ディスク制御装置20の作動が開始する場合(起動が指示された場合)において、サービスプロセッサ26が備える不揮発性メモリに正常終了情報が記憶されていないとき、キー要求情報を、制御用モジュール(ホストディレクタ#0,#1、ディスクディレクタ#0,#1及びスイッチ#0,#1)のそれぞれへ送る。   On the other hand, when the operation of the disk controller 20 starts (when activation is instructed), the service processor 26 receives the key request information when the normal end information is not stored in the nonvolatile memory included in the service processor 26. , And control modules (host directors # 0 and # 1, disk directors # 0 and # 1, and switches # 0 and # 1).

各制御用モジュールは、キー要求情報を受け取ると、不揮発性メモリ#10〜#31に記憶されているキー部分情報#0A〜#3Cを読み出し、読み出したキー部分情報#0A〜#3Cをサービスプロセッサ26へ送る。   Upon receiving the key request information, each control module reads the key part information # 0A to # 3C stored in the non-volatile memories # 10 to # 31, and the read key part information # 0A to # 3C is service processor 26.

サービスプロセッサ26は、制御用モジュールからキー部分情報#0A〜#3Cを受け取ると、受け取ったキー部分情報#0A〜#3Cから復号化キー情報#0〜#3を生成する。サービスプロセッサ26は、各キャッシュディレクタ#0〜#3へ、生成した復号化キー情報#0〜#3であって、送り先のキャッシュディレクタに対応する復号化キー情報#0〜#3を含む復号指示情報を送る。   Upon receiving the key part information # 0A to # 3C from the control module, the service processor 26 generates decryption key information # 0 to # 3 from the received key part information # 0A to # 3C. The service processor 26 instructs the cache directors # 0 to # 3 to include the generated decryption key information # 0 to # 3 and include the decryption key information # 0 to # 3 corresponding to the destination cache director. Send information.

これにより、上記第1実施形態と同様に、キャッシュディレクタ#0〜#3は、不揮発性メモリ#0〜#3に記憶されている暗号化された暗号化データ#0〜#3を復号化し、復号化したデータ(キャッシュデータ)をキャッシュメモリ#0〜#3に記憶させる。   As a result, as in the first embodiment, the cache directors # 0 to # 3 decrypt the encrypted encrypted data # 0 to # 3 stored in the nonvolatile memories # 0 to # 3. The decrypted data (cache data) is stored in the cache memories # 0 to # 3.

以上、説明したように、本発明によるディスクシステムの第2実施形態は、復号化キー情報#0〜#3を、制御用モジュール内の不揮発性メモリ#10〜#31に記憶させるように構成されている。これによれば、復号化キー情報#0〜#3をキャッシュディレクタ(キャッシュ用モジュール)23a〜23d内の不揮発性メモリ23a3〜23d3に記憶させる場合と比較して、不揮発性メモリ23a3〜23d3内の暗号化されたデータが復号化される可能性を低減することができる。   As described above, the second embodiment of the disk system according to the present invention is configured to store the decryption key information # 0 to # 3 in the nonvolatile memories # 10 to # 31 in the control module. ing. According to this, compared with the case where the decryption key information # 0 to # 3 is stored in the nonvolatile memories 23a3 to 23d3 in the cache directors (cache modules) 23a to 23d, the contents in the nonvolatile memories 23a3 to 23d3 are compared. The possibility that the encrypted data is decrypted can be reduced.

更に、上記第2実施形態は、復号化キー情報#0〜#3のそれぞれを分割したキー部分情報#0C〜#3Cを、複数の制御用モジュールのそれぞれが有する不揮発性メモリ#10〜#31に分散して記憶させるように構成されている。   Further, in the second embodiment, non-volatile memories # 10 to # 31 each having key part information # 0C to # 3C obtained by dividing the decryption key information # 0 to # 3, respectively. Are distributed and stored.

これによれば、1つの不揮発性メモリが復号化キー情報#0〜#3を記憶している場合と比較して、復号化キー情報#0〜#3が取得される可能性を低減することができる。即ち、不揮発性メモリ23a3〜23d3内の暗号化されたデータが復号化される可能性を低減することができる。   According to this, compared with the case where one non-volatile memory has memorize | stored decoding key information # 0- # 3, reducing possibility that decoding key information # 0- # 3 will be acquired. Can do. That is, the possibility that the encrypted data in the nonvolatile memories 23a3 to 23d3 is decrypted can be reduced.

加えて、上記第2実施形態は、ホストディレクタ、ディスクディレクタ、及び、スイッチのそれぞれを複数備える。
これによれば、ホストディレクタ、ディスクディレクタ、及び、スイッチの状態が異常状態となった場合であっても、正常状態にあるホストディレクタ、ディスクディレクタ、及び、スイッチを経由する経路を使用することができる。この結果、ホスト装置30とディスクエンクロージャ10との間でデータを正常に授受することができる。
In addition, the second embodiment includes a plurality of host directors, disk directors, and switches.
According to this, even when the status of the host director, disk director, and switch becomes an abnormal state, it is possible to use a route that passes through the host director, disk director, and switch in a normal state. it can. As a result, data can be normally exchanged between the host device 30 and the disk enclosure 10.

更に、上記第2実施形態は、複数のホストディレクタ21a,21bのそれぞれの不揮発性メモリ#10,#11に同一のキー部分情報#0A〜#3Aを記憶させる。加えて、上記第2実施形態は、複数のディスクディレクタ22a,22bのそれぞれの不揮発性メモリ#20,#21に同一のキー部分情報#0B〜#3Bを記憶させる。更に、上記第2実施形態は、複数のスイッチ25a,25bのそれぞれの不揮発性メモリ#30,#31に同一のキー部分情報#0C〜#3Cを記憶させる。   Furthermore, in the second embodiment, the same key part information # 0A to # 3A is stored in the nonvolatile memories # 10 and # 11 of the plurality of host directors 21a and 21b. In addition, in the second embodiment, the same key part information # 0B to # 3B is stored in the nonvolatile memories # 20 and # 21 of the plurality of disk directors 22a and 22b, respectively. Further, in the second embodiment, the same key part information # 0C to # 3C is stored in the nonvolatile memories # 30 and # 31 of the plurality of switches 25a and 25b, respectively.

これによれば、ホストディレクタ、ディスクディレクタ、及び、スイッチの状態が異常状態となることにより、上記経路が変更された場合であっても(即ち、いずれの経路が使用される場合であっても)、経路上のホストディレクタ、ディスクディレクタ、及び、スイッチから復号化キー情報を生成するために必要なすべてのキー部分情報を取得することができる。   According to this, even if the path is changed due to the abnormal state of the host director, the disk director, and the switch (that is, which path is used) ), All the key part information necessary for generating the decryption key information can be obtained from the host director, the disk director, and the switch on the path.

なお、本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態は、暗号化されたデータを不揮発性メモリ23a3〜23d3に記憶させた後にキャッシュメモリ23a2〜23d2内のデータを消去するように構成されていた。ところで、上記各実施形態は、キャッシュメモリ23a2〜23d2内のデータを消去しないように構成されていてもよい。この場合であっても、キャッシュディレクタ23a〜23dがディスク制御装置20から取り外されることにより、キャッシュメモリ23a2〜23d2に電力が供給されなくなると、キャッシュメモリ23a2〜23d2内のデータは消去される(揮発する)ので、キャッシュメモリ23a2〜23d2内のデータが漏洩することを防止することができる。   In addition, this invention is not limited to said each embodiment, A various modification can be employ | adopted within the scope of the present invention. For example, each of the above embodiments is configured to erase the data in the cache memories 23a2 to 23d2 after storing the encrypted data in the nonvolatile memories 23a3 to 23d3. By the way, each said embodiment may be comprised so that the data in cache memory 23a2-23d2 may not be erased. Even in this case, when the cache directors 23a to 23d are removed from the disk controller 20 and no power is supplied to the cache memories 23a2 to 23d2, the data in the cache memories 23a2 to 23d2 is erased (volatile). Therefore, it is possible to prevent the data in the cache memories 23a2 to 23d2 from leaking.

また、上記各実施形態は、暗号化キー情報と異なる復号化キー情報に基づいて暗号化データを復号化するように構成されていたが、暗号化キー情報と同一の復号化キー情報(即ち、暗号化キー情報)に基づいて暗号化データを復号化するように構成されていてもよい。   Each of the above embodiments is configured to decrypt the encrypted data based on the decryption key information different from the encryption key information. However, the same decryption key information as the encryption key information (that is, The encryption data may be decrypted based on the encryption key information.

また、上記各実施形態は、復号化キー情報を、キャッシュディレクタ#0〜#3内の不揮発性メモリ#0〜#3、又は、制御用モジュール内の不揮発性メモリ#10〜#31に記憶させるように構成されていたが、その他の不揮発性メモリ(例えば、サービスプロセッサ26が有する不揮発性メモリ)に記憶させるように構成されていてもよく、HDD10a〜10hに記憶させるように構成されていてもよい。   In each of the above embodiments, the decryption key information is stored in the nonvolatile memories # 0 to # 3 in the cache directors # 0 to # 3 or the nonvolatile memories # 10 to # 31 in the control module. However, it may be configured to be stored in another nonvolatile memory (for example, a nonvolatile memory included in the service processor 26), or may be configured to be stored in the HDDs 10a to 10h. Good.

本発明は、複数のハードディスクドライブ装置を備えるディスクアレイシステム等に適用可能である。   The present invention is applicable to a disk array system including a plurality of hard disk drive devices.

本発明の第1実施形態に係るディスクシステムの概略構成を表す図である。1 is a diagram illustrating a schematic configuration of a disk system according to a first embodiment of the present invention. 図1に示したキャッシュディレクタのキャッシュメモリ及び不揮発性メモリに記憶されている情報を表す図である。It is a figure showing the information memorize | stored in the cache memory and non-volatile memory of the cache director shown in FIG. 図1に示したキャッシュディレクタのプロセッサが実行するキャッシュデータ保持処理プログラムを示したフローチャートである。2 is a flowchart showing a cache data holding processing program executed by a processor of the cache director shown in FIG. 図1に示したキャッシュディレクタのキャッシュメモリ及び不揮発性メモリに記憶されている情報を表す図である。It is a figure showing the information memorize | stored in the cache memory and non-volatile memory of the cache director shown in FIG. 図1に示したキャッシュディレクタのプロセッサが実行するキャッシュデータ復元処理プログラムを示したフローチャートである。2 is a flowchart showing a cache data restoration processing program executed by a processor of the cache director shown in FIG. 本発明の第2実施形態に係る制御用モジュールの不揮発性メモリ及びキャッシュディレクタの不揮発性メモリに記憶されている情報を表す図である。It is a figure showing the information memorize | stored in the non-volatile memory of the control module which concerns on 2nd Embodiment of this invention, and the non-volatile memory of a cache director. 本発明の第2実施形態に係る制御用モジュールの不揮発性メモリ及びキャッシュディレクタの不揮発性メモリに記憶されている情報を表す図である。It is a figure showing the information memorize | stored in the non-volatile memory of the control module which concerns on 2nd Embodiment of this invention, and the non-volatile memory of a cache director.

符号の説明Explanation of symbols

1 ディスクシステム
10 ディスクエンクロージャ
10a〜10h HDD
20 ディスク制御装置
21a,21b ホストディレクタ
22a,22b ディスクディレクタ
23a,23b キャッシュディレクタ
23a1〜23d1 プロセッサ
23a2〜23d2 キャッシュメモリ
23a3〜23d3 不揮発性メモリ
24a〜24d バッテリ
25a,25b スイッチ
26 サービスプロセッサ
30 ホスト装置
1 disk system 10 disk enclosure 10a to 10h HDD
20 disk controllers 21a, 21b host directors 22a, 22b disk directors 23a, 23b cache directors 23a1-23d1 processors 23a2-23d2 cache memories 23a3-23d3 non-volatile memories 24a-24d batteries 25a, 25b switches 26 service processors 30 host devices

Claims (19)

外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るディスク制御装置であって、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するバッテリと、
を備え、
前記第1の記憶処理手段は、前記バッテリが前記キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されたディスク制御装置。
A disk control device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device,
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
A battery for supplying power to the cache memory when the supply of power to the cache memory from the outside is interrupted;
With
The disk control device configured to store the encrypted data in the first nonvolatile memory when the battery is supplying power to the cache memory .
請求項1に記載のディスク制御装置であって、
前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を備えるディスク制御装置。
The disk control device according to claim 1 ,
The encryption processing means is configured to encrypt data stored in the cache memory based on encryption key information,
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory A disk control device comprising means.
請求項1又は請求項2に記載のディスク制御装置であって、
前記暗号化キー情報を生成するキー情報生成手段を備え、
前記暗号化処理手段は、前記生成された暗号化キー情報を受け付け、当該受け付けた暗号化キー情報に基づいて前記キャッシュメモリが記憶しているデータを暗号化するように構成されたディスク制御装置。
The disk control device according to claim 1 or 2 ,
Key information generating means for generating the encryption key information,
The disk control device configured to receive the generated encryption key information and to encrypt data stored in the cache memory based on the received encryption key information.
請求項3に記載のディスク制御装置であって、
前記キー情報生成手段は、前記復号化キー情報を生成するように構成され、
前記第2の記憶処理手段は、前記生成された復号化キー情報を受け付け、当該受け付けた復号化キー情報を前記第2の不揮発性メモリに記憶させるように構成されたディスク制御装置。
The disk control device according to claim 3 ,
The key information generating means is configured to generate the decryption key information;
The disk controller configured to receive the generated decryption key information and store the received decryption key information in the second nonvolatile memory, the second storage processing means.
請求項1乃至請求項4のいずれか一項に記載のディスク制御装置であって、
前記第1の不揮発性メモリと、前記キャッシュメモリと、前記暗号化処理手段と、前記第1の記憶処理手段と、を含むキャッシュ用モジュールを備えるディスク制御装置。
The disk control device according to any one of claims 1 to 4 ,
A disk control device comprising a cache module including the first nonvolatile memory, the cache memory, the encryption processing means, and the first storage processing means.
請求項2に記載のディスク制御装置であって、
前記第1の不揮発性メモリと、前記キャッシュメモリを構成する第1のキャッシュメモリと、前記暗号化処理手段を構成し且つ第1の暗号化キー情報に基づいて前記第1のキャッシュメモリが記憶しているデータを暗号化する第1の暗号化処理手段と、前記第1の暗号化処理手段によって暗号化された第1のデータを前記第1の不揮発性メモリに記憶させるように構成された前記第1の記憶処理手段と、を含む第1のキャッシュ用モジュールと、
前記第2の不揮発性メモリと、前記キャッシュメモリを構成する第2のキャッシュメモリと、前記第1のデータを復号化するための情報である第1の復号化キー情報を前記第2の不揮発性メモリに記憶させるように構成された前記第2の記憶処理手段と、を含む第2のキャッシュ用モジュールと、
を備えるディスク制御装置。
The disk control device according to claim 2 ,
The first non-volatile memory, the first cache memory constituting the cache memory, the encryption processing means, and the first cache memory stored based on the first encryption key information First encryption processing means for encrypting data stored in the first nonvolatile memory, and the first data encrypted by the first encryption processing means is stored in the first nonvolatile memory. A first storage module; a first cache module including:
The second nonvolatile memory, the second cache memory constituting the cache memory, and the first decryption key information, which is information for decrypting the first data, are stored in the second nonvolatile memory. A second cache processing unit configured to store in a memory, a second cache module,
A disk control device comprising:
請求項6に記載のディスク制御装置であって、
前記第2のキャッシュ用モジュールは、前記暗号化処理手段を構成し且つ第2の暗号化キー情報に基づいて前記第2のキャッシュメモリが記憶しているデータを暗号化する第2の暗号化処理手段を含み、
前記第2の記憶処理手段は、前記第2の暗号化処理手段によって暗号化された第2のデータを前記第2の不揮発性メモリに記憶させるように構成され、
前記第1の記憶処理手段は、前記第2のデータを復号化するための情報である第2の復号化キー情報を前記第1の不揮発性メモリに記憶させるように構成されたディスク制御装置。
The disk control device according to claim 6 ,
The second cache module configures the encryption processing means and encrypts data stored in the second cache memory based on second encryption key information. Including means,
The second storage processing unit is configured to store the second data encrypted by the second encryption processing unit in the second nonvolatile memory,
The disk controller configured to store the second decryption key information, which is information for decrypting the second data, in the first nonvolatile memory.
請求項5に記載のディスク制御装置であって、
前記キャッシュ用モジュールと、前記外部装置又は前記ハードディスクドライブ装置と、の間のデータの授受を制御するとともに、不揮発性メモリを有する制御用モジュールを備え、
前記制御用モジュールが有する不揮発性メモリは、前記第2の不揮発性メモリを構成するディスク制御装置。
The disk control device according to claim 5 ,
Controlling data exchange between the cache module and the external device or the hard disk drive device, and a control module having a nonvolatile memory,
The non-volatile memory included in the control module is a disk control device that constitutes the second non-volatile memory.
請求項8に記載のディスク制御装置であって、
前記制御用モジュールを複数備え、
前記第2の記憶処理手段は、前記復号化キー情報を分割した部分情報を前記複数の制御用モジュールのそれぞれが有する前記不揮発性メモリに分散して記憶させるように構成されたディスク制御装置。
The disk control device according to claim 8 , wherein
A plurality of the control modules are provided,
The disk control apparatus configured to distribute and store the partial information obtained by dividing the decryption key information in the nonvolatile memory included in each of the plurality of control modules.
請求項9に記載のディスク制御装置であって、
前記キャッシュ用モジュールと前記外部装置との間のデータの授受を制御する外部装置制御用モジュールと、
前記キャッシュ用モジュールと前記ハードディスクドライブ装置との間のデータの授受を制御するディスク制御用モジュールと、
前記外部装置と前記ハードディスクドライブ装置との間の経路を切り替える切替器と、
を備え、
前記外部装置制御用モジュール、前記ディスク制御用モジュール及び前記切替器のそれぞれが、前記制御用モジュールを構成するディスク制御装置。
The disk control device according to claim 9 , wherein
An external device control module for controlling the exchange of data between the cache module and the external device;
A disk control module that controls data exchange between the cache module and the hard disk drive;
A switcher for switching a path between the external device and the hard disk drive device;
With
A disk control device in which each of the external device control module, the disk control module, and the switch constitutes the control module.
請求項10に記載のディスク制御装置であって、
前記復号化キー情報は、第1の部分情報と、第2の部分情報と、第3の部分情報と、からなり、
前記第2の記憶処理手段は、前記外部装置制御用モジュールが有する前記不揮発性メモリに前記第1の部分情報を記憶させ、前記ディスク制御用モジュールが有する前記不揮発性メモリに前記第2の部分情報を記憶させ、且つ、前記切替器が有する前記不揮発性メモリに前記第3の部分情報を記憶させるように構成されたディスク制御装置。
The disk control device according to claim 10 , wherein
The decryption key information includes first partial information, second partial information, and third partial information,
The second storage processing means stores the first partial information in the nonvolatile memory included in the external device control module, and the second partial information stored in the nonvolatile memory included in the disk control module. And the third partial information is stored in the nonvolatile memory of the switch.
請求項11に記載のディスク制御装置であって、
前記外部装置制御用モジュール、前記ディスク制御用モジュール、及び、前記切替器のそれぞれを複数備え、
前記外部装置と前記ハードディスクドライブ装置との間の経路であって、前記外部装置制御用モジュール、前記ディスク制御用モジュール、及び、前記切替器のそれぞれを1つずつ経由する経路を複数形成するように構成されたディスク制御装置。
The disk control device according to claim 11 ,
A plurality of the external device control module, the disk control module, and the switch;
A plurality of paths between the external device and the hard disk drive device, each routed through each of the external device control module, the disk control module, and the switch, are formed. Configured disk controller.
請求項1乃至請求項12のいずれか一項に記載のディスク制御装置であって、
前記第1の記憶処理手段により前記暗号化されたデータが前記第1の不揮発性メモリに記憶された後に前記キャッシュメモリ内のデータを消去するデータ消去手段を備えるディスク制御装置。
A disk control device according to any one of claims 1 to 12 ,
A disk control device comprising data erasure means for erasing data in the cache memory after the encrypted data by the first storage processing means is stored in the first nonvolatile memory.
データを記憶するハードディスクドライブ装置と、外部装置から受け取ったデータを前記ハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るディスク制御装置と、を含むディスクシステムであって、
前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリと、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するバッテリと、
を備え、
前記第1の記憶処理手段は、前記バッテリが前記キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されたディスクシステム。
A hard disk drive device that stores data, and a disk control device that stores data received from an external device in the hard disk drive device and sends data stored in the hard disk drive device to the external device. There,
A cache memory that is a volatile memory that temporarily stores data exchanged between the external device and the hard disk drive device;
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
A battery for supplying power to the cache memory when the supply of power to the cache memory from the outside is interrupted;
With
The first storage processing means is a disk system configured to store the encrypted data in the first nonvolatile memory when the battery supplies power to the cache memory .
請求項14に記載のディスクシステムであって、
前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を備えるディスクシステム。
15. The disk system according to claim 14 , wherein
The encryption processing means is configured to encrypt data stored in the cache memory based on encryption key information,
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory A disk system comprising means.
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置を制御するためのディスク制御方法であって、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理工程と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理工程と、
を含み、
前記第1の記憶処理工程は、外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するように構成されたバッテリが、当該キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されたディスク制御方法。
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. A disk control method for controlling a disk control device comprising a cache memory, which is a volatile memory for storing data,
An encryption processing step for encrypting data stored in the cache memory;
A first storage processing step of storing the encrypted data in a first nonvolatile memory;
Including
In the first storage processing step, a battery configured to supply power to the cache memory when power supply from the outside to the cache memory is interrupted supplies power to the cache memory. A disk control method configured to store the encrypted data in the first non-volatile memory when the data is stored .
請求項16に記載のディスク制御方法であって、
前記暗号化処理工程は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理工程を含むディスク制御方法。
The disk control method according to claim 16 , comprising:
The encryption processing step is configured to encrypt data stored in the cache memory based on encryption key information,
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory A disk control method including a process.
外部装置から受け取ったデータをハードディスクドライブ装置に記憶させるとともに当該ハードディスクドライブ装置に記憶されているデータを当該外部装置へ送るとともに、前記外部装置と前記ハードディスクドライブ装置との間で授受されるデータを一時的に記憶する揮発性メモリであるキャッシュメモリを備えるディスク制御装置に、
前記キャッシュメモリが記憶しているデータを暗号化する暗号化処理手段と、
前記暗号化されたデータを第1の不揮発性メモリに記憶させる第1の記憶処理手段と、
を実現させるとともに、
前記第1の記憶処理手段は、外部からの前記キャッシュメモリへの電力の供給が遮断された場合に当該キャッシュメモリへ電力を供給するように構成されたバッテリが、当該キャッシュメモリへ電力を供給している場合に前記暗号化されたデータを前記第1の不揮発性メモリに記憶させるように構成されたディスク制御プログラム。
The data received from the external device is stored in the hard disk drive device, the data stored in the hard disk drive device is sent to the external device, and data exchanged between the external device and the hard disk drive device is temporarily performed. In a disk control device provided with a cache memory that is a volatile memory to store automatically,
Encryption processing means for encrypting data stored in the cache memory;
First storage processing means for storing the encrypted data in a first nonvolatile memory;
With to realize,
A battery configured to supply power to the cache memory when power supply from the outside to the cache memory is interrupted, the first storage processing means supplies power to the cache memory. A disk control program configured to store the encrypted data in the first nonvolatile memory .
請求項18に記載のディスク制御プログラムであって、
前記暗号化処理手段は、前記キャッシュメモリが記憶しているデータを暗号化キー情報に基づいて暗号化するように構成され、
前記暗号化キー情報に基づいて暗号化されたデータを復号化するための情報である復号化キー情報を前記第1の不揮発性メモリと異なる第2の不揮発性メモリに記憶させる第2の記憶処理手段を備えるディスク制御プログラム。
A disk control program according to claim 18 ,
The encryption processing means is configured to encrypt data stored in the cache memory based on encryption key information,
Second storage processing for storing decryption key information, which is information for decrypting data encrypted based on the encryption key information, in a second nonvolatile memory different from the first nonvolatile memory A disk control program comprising means.
JP2008032642A 2008-02-14 2008-02-14 Disk controller Expired - Fee Related JP4957577B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008032642A JP4957577B2 (en) 2008-02-14 2008-02-14 Disk controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008032642A JP4957577B2 (en) 2008-02-14 2008-02-14 Disk controller

Publications (2)

Publication Number Publication Date
JP2009193285A JP2009193285A (en) 2009-08-27
JP4957577B2 true JP4957577B2 (en) 2012-06-20

Family

ID=41075246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008032642A Expired - Fee Related JP4957577B2 (en) 2008-02-14 2008-02-14 Disk controller

Country Status (1)

Country Link
JP (1) JP4957577B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8738843B2 (en) * 2010-12-20 2014-05-27 Lsi Corporation Data manipulation during memory backup
US9043642B2 (en) * 2010-12-20 2015-05-26 Avago Technologies General IP Singapore) Pte Ltd Data manipulation on power fail
JP5569821B2 (en) 2012-02-29 2014-08-13 日本電気株式会社 Disk array device and data management method for disk array device
WO2015118630A1 (en) * 2014-02-05 2015-08-13 株式会社日立製作所 Storage system and cache control device for storage system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250274A (en) * 1992-03-04 1993-09-28 Mitsubishi Electric Corp Disk cache device
JP2004088453A (en) * 2002-08-27 2004-03-18 Fuji Photo Film Co Ltd Method and system for ciphered data recording and system for ciphered data reproduction
JP4252828B2 (en) * 2003-03-19 2009-04-08 株式会社日立製作所 Cache control method, node device, and program
JP2008015918A (en) * 2006-07-07 2008-01-24 Toshiba Corp Disk drive and disk controller
JP5026102B2 (en) * 2007-02-07 2012-09-12 株式会社日立製作所 Storage control device and data management method
JP5200410B2 (en) * 2007-04-19 2013-06-05 富士通株式会社 Storage device

Also Published As

Publication number Publication date
JP2009193285A (en) 2009-08-27

Similar Documents

Publication Publication Date Title
US9614674B2 (en) Virtual bands concentration for self encrypting drives
JP2012114773A (en) Data storage device, control device and encryption method
KR100969758B1 (en) Method and apparatus for encrypting and processing data in flash translation layer
KR101047213B1 (en) Encryption apparatus, encryption method and computer readable recording medium
JPWO2005004382A1 (en) Cryptographic processing device
JP4957577B2 (en) Disk controller
CN100414488C (en) Disk array control device, storage system, and method of controlling disk array
US20170039397A1 (en) Encryption/decryption apparatus, controller and encryption key protection method
JP5338306B2 (en) Data storage device and data management method in data storage device
JP2009111687A (en) Storage device, and encrypted data processing method
KR20160080742A (en) Memory controller, operating method thereof and memory system including the same
KR20090123614A (en) Solid-state-disk and input/output method thereof
JP2010224644A (en) Control device, storage device, and data leakage preventing method
US20100138670A1 (en) Storage apparatus and data writing method
JP2013011986A (en) Memory device
JP6941971B2 (en) Semiconductor storage device, memory controller and memory monitoring method
JP5532516B2 (en) Storage apparatus and encryption key changing method
US20200026442A1 (en) Computer and control method
JP2009025947A (en) Backup system
JP5380854B2 (en) Disk device, data transfer method, data transfer processing program, and data backup system
JP2005172866A (en) Encryption/decryption system
JP2011066926A (en) System and method for preventing leakage of data
KR20110034436A (en) Structure of hybrid memory and data storing method thereof
JP2012104170A (en) Hard disk device
JP2010130459A (en) Backup system and method of changing encryption key of the same

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110905

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120305

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4957577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees