JP6513295B2 - 計算機システム - Google Patents

計算機システム Download PDF

Info

Publication number
JP6513295B2
JP6513295B2 JP2018525891A JP2018525891A JP6513295B2 JP 6513295 B2 JP6513295 B2 JP 6513295B2 JP 2018525891 A JP2018525891 A JP 2018525891A JP 2018525891 A JP2018525891 A JP 2018525891A JP 6513295 B2 JP6513295 B2 JP 6513295B2
Authority
JP
Japan
Prior art keywords
volatile storage
data
storage device
storage devices
encryption
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.)
Active
Application number
JP2018525891A
Other languages
English (en)
Other versions
JPWO2018008123A1 (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2018008123A1 publication Critical patent/JPWO2018008123A1/ja
Application granted granted Critical
Publication of JP6513295B2 publication Critical patent/JP6513295B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Description

本発明は、計算機システムにおける暗号処理を伴うデータ転送に関する。
近年、DRAMのような揮発メモリデバイスに加え、高速の不揮発メモリデバイス(以下高速メモリデバイス)をサーバへ搭載する取り組みが進んでいる。これは、デバイスの低レイテンシ性を活かし、アプリケーションの性能向上を図る。たとば、サーバは、外部のストレージシステムを利用すると共に、高速メモリデバイスをストレージシステムへのキャッシュや記憶階層構造における上位のTier領域として利用する。
高速メモリの例としては、フラッシュメモリの他に、MRAM(Magnetoresistive Random Access Memory)、PCM(Phase Change Memory)等のSCM(Storage Class Memory)をあげることができる。
しかし、不揮発メモリデバイスは電源がOFFされても情報を保持し続けるため、デバイスの抜き取りによる情報流出や、故障デバイスの処分時の情報流出等の、リスクが存在する。そのため、不揮発メモリに格納されるデータを暗号化することが必要である。
たとえば、装置内の記憶デバイスによる暗号処理が、米国特許出願公開第2015/0067349号に開示されている。装置は、記憶デバイス及びホストデバイスを含む。記憶デバイスは、書き込み及び読み出し操作のそれぞれの間に、ユーザデータを暗号化および暗号解読するように構成される。ホストデバイスは、記憶デバイスに通信可能に結合される。ホストデバイスは、第1の数の仮想バンドを第2の数の実バンドへ集信することにより書き込み及び読み出し操作を実行するように構成し、第2の数は第1の数より小さい(要約参照)。
米国特許出願公開第2015/0067349号
しかし、サーバSCMデバイス及び外部ストレージシステムのように、システム内の不揮発記憶装置それぞれが、独自に暗号処理を行う構成において、不揮発記憶装置間のデータ転送は、データの復号化と暗号化を繰り返すことを必要とする。そのため、システムにおける暗号処理負荷が大きくなる。
一例において、計算機システムは、プロセッサと、前記プロセッサにより実行されるプログラムを格納する揮発記憶装置と、データを格納する複数の不揮発記憶装置と、を含む。前記複数の不揮発記憶装置は、それぞれ、第1データを暗号処化及び復号化するための第1暗号鍵を保持する。前記複数の不揮発記憶装置における各不揮発記憶装置は、予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送する。
本発明の一態様によれば、複数の不揮発記憶装置を含むシステムにおいて、暗号処理を伴うデータ転送を効率化できる。上記以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
実施形態に係る計算機システムの構成例を示す。 不揮発記憶デバイスの構成例を示す。 管理装置のソフトウェア構成例を示す。 暗号鍵の及びルールの設定を模式的に示す。 処理サーバ装置及びストレージシステムのデバイスに実装されている機能の例を示す。 処理サーバ装置におけるルール(格納ルール及び転送ルール)を示す。 処理サーバ装置における他のルールを示す。 処理サーバ装置における他のルールを示す。 処理サーバ装置における他のルールを示す。 鍵管理テーブルの構成例を示す。 格納ルールテーブルの構成例を示す。 転送ルールテーブルの構成例を示す。 鍵管理プログラム及びルール管理プログラムによる、鍵設定及びルール設定の例を示す。 階層制御によるデータ転送の例を示す。 鍵管理プログラム及びルール管理プログラムによる、鍵設定及びルール設定の他の例を示す。 階層制御によるデータ転送の例を示す。 暗号鍵変更のフローチャートの例を示す。 暗号鍵の削除によるデータ削除のフローチャートの例を示す。 格納ルールの決定におけるユーザによる判定のフローチャート例を示す。 ユーザにより鍵情報の設定のためのGUI画像例を示す。 ユーザによるルール情報の設定のためのGUI画像例を示す。 階層制御における階層の設定のためのGUI画像例を示す。 他のシステム構成例を示す。 他のシステム構成例を示す。
以下、図面に基づいて、本発明の実施の形態を説明する。添付図面では、機能的に同じ要素を同じ番号で表示する場合がある。添付図面は、本発明の原理に則った具体的な実施形態と実施例とを示している。それらの実施形態及び実施例は、本発明の理解のためのものであり、本発明を限定的に解釈するために用いてはならない。
さらに、本発明の実施形態は、後述するように、汎用コンピュータ上で稼動するソフトウェアで実装してもよいし、専用ハードウェアで実装してもよいし、またはソフトウェアとハードウェアの組み合わせで実装してもよい。
以後の説明では、管理用の情報をテーブル形式で説明するが、管理用の情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、DB、キュー等のデータ構造やディレクトリ構造等その他の方法で表現されていてもよい。そのため、データ構造に依存しないことを示すために「テーブル」、「リスト」、「DB」、「キュー」等について単に「情報」と呼ぶことがある。
以下では「プログラム」を主語(動作主体)として本発明の実施形態における各処理について説明を行う場合がある。プログラムはプロセッサによって実行されることで定められた処理をメモリ及び通信ポート(通信制御装置)を用いながら行うため、プロセッサを主語とした説明としてもよい。
プロセッサは、プログラムに従って動作することによって、所定の機能を実現する機能部(手段)として動作する。プログラムの一部または全ては専用ハードウェアで実現してもよく、また、モジュール化されていてもよい。各種プログラムはプログラム配布サーバや非一時的記憶メディアによって各計算機にインストールされてもよい。
図1は、実施形態に係る計算機システムの構成例を示す。計算機システムは、管理装置12、処理サーバ装置13、及びストレージシステム14を含む。管理ネットワーク15及びストレージネットワーク16の種類は任意であり、これらが一つのネットワークに含まれていてもよい。
管理装置12は、管理ネットワーク15を介して、処理サーバ装置13及びストレージシステム14と通信し、それらを管理する。管理装置12は、処理サーバ装置13及びストレージシステム14に対して、運用上必要な各種設定や管理のための命令を送信する。
管理装置12は、1又は複数の計算機を含み、図1の例においては、一般的には計算機構成を有する。管理装置12は、不図示の内部ネットワーク(例えばバス)を介して接続された、プロセッサであるCPU121、揮発記憶デバイス122、不揮発記憶デバイス123、及び管理ネットワーク15に接続するためのインタフェース(I/F)124を含む。CPU121は、主記憶である揮発記憶デバイス122に格納されたプログラムを実行することで所定の機能を実現する。
揮発記憶デバイス122は、CPU121が実行するプログラム及びそれらプログラムが使用するデータを格納する。不揮発記憶デバイス123は、補助記憶であって、揮発記憶デバイス122にロードされるプログラム及びデータを格納する。
処理サーバ装置13は、不図示のクライアントに所定のサービスを提供する。例えば、処理サーバ装置13は、データベースシステムとして動作する。処理サーバ装置13は、プロセッサであるCPU131、揮発記憶デバイス132、第1不揮発記憶デバイス133及び第2不揮発記憶デバイス134を含む複数の不揮発記憶デバイス、及びI/F135、136を含む。これらは、不図示の内部ネットワークで接続される。I/F135は管理ネットワーク15に接続するためのI/Fであり、I/F136はストレージネットワーク16に接続するためのI/Fである。
CPU131は、主記憶である揮発記憶デバイス132に格納されたプログラムを実行することで所定の機能を実現する。たとえば、CPU131は、データベース管理システムプログラムや、ボリューム管理プログラムを実行する。揮発記憶デバイス132は、CPU131が実行するプログラム及びそれらプログラムが使用するデータを格納する。揮発記憶デバイス132は、不揮発記憶デバイスのデータを一時的に格納する、キャッシュ領域を含んでもよい。
処理サーバ装置13の不揮発記憶デバイスは同一性能(種類)でもよく、異なる性能(種類)の不揮発記憶デバイスを含んでもよい。たとえば、第1不揮発記憶デバイス133は、ストレージクラスメモリ(SCM)デバイスであり、第2不揮発記憶デバイス134は、フラッシュメモリデバイスである。
処理サーバ装置13は、例えば、インメモリ型データベースであり、不揮発記憶デバイスは、データベースのデータ(ユーザデータ)を格納する。少なくとも一部の不揮発記憶デバイスは、ユーザデータの最終的格納場所である。特定の不揮発記憶デバイスは、ユーザデータを一時的に格納するキャッシュとして動作してもよい。ユーザデータはデータベース又は他のアプリケーションが使用するデータである。
ストレージシステム14は、処理サーバ装置13の外部ストレージとして動作する。処理サーバ装置13は、ストレージネットワーク16を介して、ストレージシステム14にアクセスする。ストレージシステム14は、例えば、アクセス頻度の低いデータ、古いデータ、又はバックアップデータ等を格納する。
ストレージシステム14は、プロセッサであるCPU141、揮発記憶デバイス142、第1不揮発記憶デバイス143及び第2不揮発記憶デバイス144を含む複数の不揮発記憶デバイス、及びI/F145、146を含む。これらは、不図示の内部ネットワークで接続される。I/F145は管理ネットワーク15に接続するためのI/Fであり、I/F146はストレージネットワーク16に接続するためのI/Fである。
CPU141は、主記憶である揮発記憶デバイス142に格納されたプログラムを実行することで所定の機能を実現する。たとえば、CPU141は、処理サーバ装置13からのアクセス要求(リード要求/ライト要求)を処理する。揮発記憶デバイス142は、CPU131が実行するプログラム及びそれらプログラムが使用するデータを格納する。揮発記憶デバイス142は、データを一時的に格納するキャッシュ領域を含んでもよい。
ストレージシステム14の不揮発記憶デバイスは同一性能(種類)でもよく、異なる性能(種類)の不揮発記憶デバイスを含んでもよい。たとえば、第1不揮発記憶デバイス143は、フラッシュメモリデバイスであり、第2不揮発記憶デバイス144は、磁気ディスクデバイスである。
図2は、不揮発記憶デバイスの構成例を示す。不揮発記憶デバイスは、コントローラ381と不揮発メディア388とを含む。コントローラ381は、プロセッサ382、メモリ383、ロジック回路384、I/F385、386、及びそれらを接続する内部ネットワーク387を含む。I/F385はホストデバイスとの通信のためのI/Fであり、I/F386は不揮発メディア388との通信のためのI/Fである。
プロセッサ382は、主記憶であるメモリ383に格納されたプログラムに従って動作し、所定の機能を実現する。たとえば、プロセッサ382は、I/F385を介して受信したアクセス要求(リード要求/ライト要求)を処理する。ロジック回路384は、特定の処理を実行し、たとえば、データの暗号化/復号化や圧縮/伸長を実行する。特定機能がプロセッサ382とロジック回路384のいずれに実装されるかは設計に依存する。
図3は、管理装置12のソフトウェア構成例を示す。揮発記憶デバイス122は、鍵管理プログラム221及びルール管理プログラム222を格納する。揮発記憶デバイス122は、さらに、鍵管理テーブル223、格納ルールテーブル224、及び転送ルールテーブル225を格納する。これらプログラム及びテーブルは、例えば、不揮発記憶デバイス123からロードされる又は外部からダウンロードされる。
鍵管理プログラム221は、処理サーバ装置13及びストレージシステム14が使用する暗号鍵を管理し、処理サーバ装置13及びストレージシステム14に暗号鍵を設定する。ルール管理プログラム222は、処理サーバ装置13及びストレージシステム14におけるデータ格納時の暗号処理及びデータ転送時の暗号処理のルールを管理し、処理サーバ装置13及びストレージシステム14にルールを設定する。
CPU121は、たとえば、鍵管理プログラム221に従って動作することで鍵管理部(鍵管理手段)として機能し、ルール管理プログラム222に従って動作することでルール管理部(ルール管理手段)として機能する。したがって、管理装置12は、鍵管理装置であり、ルール管理装置でもある。CPU121は、このほか、ボリューム管理プログラムやOS等の不図示のプログラムを実行する。
鍵管理テーブル223は、処理サーバ装置13及びストレージシステム14で使用される暗号鍵の情報を保持する。格納ルールテーブル224は、処理サーバ装置13及びストレージシステム14におけるデータ格納時の暗号処理(データの暗号化/非暗号化の状態)のルールを示す。転送ルールテーブル225は、処理サーバ装置13及びストレージシステム14におけるデータ転送時の暗号処理(データの暗号化/非暗号化の状態)のルールを保持する。
図4は、暗号鍵の及びルールの設定を模式的に示す。鍵管理プログラム221は、処理サーバ装置13及びストレージシステム14において、暗号処理を実行するデバイスそれぞれに、必要な暗号鍵を設定する。ルール管理プログラム222は、処理サーバ装置13及びストレージシステム14において、記憶デバイス間のデータ転送を制御するデバイスに必要なルールを設定する。後述するように、例えば、プロセッサが記憶デバイス間のデータ転送を制御する場合、当該プロセッサのみがルールを参照してもよい。
図4の例において、処理サーバ装置13のCPU131(実行されるプログラム)、第1不揮発記憶デバイス133、第2不揮発記憶デバイス134、及びI/F136のそれぞれに、暗号鍵及びルールが設定される。さらに、ストレージシステム14のCPU141(アプリケーションプログラム)、第1不揮発記憶デバイス143、第2不揮発記憶デバイス144、及びI/F146のそれぞれに、暗号鍵及びルールが設定される。これらは、暗号機能を有しており、本例は暗号機能を有する全てのデバイスに鍵及びルールを設定する。
鍵管理プログラム221は、同一のユーザデータ、つまり、同一アドレスのユーザデータのために同一の鍵を、当該データを暗号化/復号化する全てのデバイスに与える。このアドレスは、ユーザデータに一対一に対応するアドレスであり、例えば、ボリュームに対して定義されているアドレス空間のアドレスである。なお、暗号アルゴリズムは全デバイスに共通である。
これにより、デバイスがそれぞれ、同一データを暗号化/復号化することができる。なお、使用されない鍵がデバイスに設定される必要はなく、暗号機能を有していても暗号処理(暗号/復号)を行わないデバイスに鍵が設定される必要はない。
設定されるルールは、データ転送におけるルールとデータ格納におけるルールとを含む。転送ルールは、データ転送におけるデータの状態が暗号文(暗号化データ)又は平文(非暗号化データ)のいずれであるかを示す。格納ルールは、データの格納におけるデータの状態が、暗号文(暗号化データ)又は平文(非暗号化データ)のいずれであるかを示す。一つデバイスには、一方又は双方のルールが設定される。ルールにより、セキュリティと処理効率が両立し得る。
なお、複数の不揮発記憶デバイスが一つの不揮発記憶装置を構成し、統合コントローラが複数の不揮発記憶デバイスそれぞれへのアクセスを制御してもよい。統合コントローラが暗号化機能を有する場合、暗号鍵及びルールが統合コントローラに設定される。ここで、一つの記憶デバイス及びストレージシステムは、それぞれ、記憶装置である。
また、暗号/復号、圧縮/伸張など処理機能を持たない不揮発記憶デバイスが搭載されてもよく、その場合はCPUまたは他の不揮発記憶デバイスがデータ転送におけるルールとデータ格納におけるルールを用いて、処理機能を持たない不揮発記憶デバイスの代わりに処理を実施できるようにしてもよい。
図5は、処理サーバ装置13及びストレージシステム14のデバイスに実装されている機能の例を示す。処理サーバ装置13において、CPU131(実行されるプログラム)、第1不揮発記憶デバイス133、第2不揮発記憶デバイス134、及びI/F136は、それぞれ、圧縮/伸長、及び暗号/復号を実行する。圧縮は、ビット演算による圧縮及び重複排除による圧縮を含む。なお、圧縮/伸長機能は省略されてもよい。
CPU131は、さらに、階層制御を実行する。階層制御は、複数種類の記憶デバイスを、近い性能を持つデバイスに分類し、複数の階層(記憶階層)を構成する。階層間の関係は性能の上下関係により定義される。外部ストレージであるストレージシステム14内の記憶デバイスは、最下位階層として管理されてもよいし、ストレージシステム14の性能に応じた階層に設定されてもよい。
階層制御は、例えば、データのアクセス(I/O)頻度に応じてデータを適切な記憶デバイス(階層)に自動的に格納することでシステム性能を向上させる。階層制御は、所定単位で記憶領域を管理し、一定の周期で、I/O頻度が高いページを高速な記憶デバイスで構成される上位階層へ移動し、I/O頻度が低いページを低速な記憶デバイスで構成される下位階層に移動する。
例えば、階層制御は、複数の論理ボリュームからなるプールを構成する。各論理ボリュームは、たとえば、パリティグループを構成する複数不揮発記憶デバイスの記憶領域が割り当てられている。上述のように、論理ボリュームは、複数の階層に区分される。階層制御は仮想ボリュームを構成し、仮想ボリュームのライトに応じて所定単位の記憶領域(ページ)をプールから割り当てる。
階層制御は、ページのI/O頻度に応じて、ページのデータの階層を決定し、必要に応じて当該データを他の階層の論理ボリュームに移動する。したがって、ページデータが、ある階層の記憶デバイスから他の階層の記憶デバイスに転送される。本実形態により、階層制御による頻繁なデータ転送において、暗号処理を伴う効率的なデータ転送を行うことができる。なお、本実施形態は、階層制御と異なる目的のデータ転送にも適用できる。
ストレージシステム14において、CPU141(実行されるプログラム)、第1不揮発記憶デバイス143、第2不揮発記憶デバイス144、及びI/F146は、それぞれ、圧縮/伸長、及び暗号/復号を実行する。圧縮は、ビット演算による圧縮及び重複排除による圧縮を含む。
CPU141は、さらに、階層制御を実行する。階層制御は、処理サーバ装置13について説明した通りであり、仮想ボリュームを処理サーバ装置13に適用し、仮想ボリュームに対して、複数の論理ボリュームからなるプールから動的に単位領域を割り当てる。
図6〜図9は、ルールの例を示す。図6は、処理サーバ装置13におけるルール(格納ルール及び転送ルール)を示す。当該ルールは以下のことを示す。揮発記憶デバイス132は、平文(非圧縮)を格納する。つまり、CPU141(アプリケーション)は、暗号化することなく、データを不揮発記憶デバイスに格納する。これにより、CPU141の処理負荷を低減する。
揮発記憶デバイス132と第1不揮発記憶デバイス133との間で、平文が転送される。第1不揮発記憶デバイス133は、暗号化された非圧縮文を格納する。第1不揮発記憶デバイス133と第2不揮発記憶デバイス134との間において、暗号化された非圧縮文が転送される。第2不揮発記憶デバイス134は、暗号化された非圧縮文を格納する。
図6に示すように、第1不揮発記憶デバイス133は、揮発記憶デバイス132から転送された平文を暗号化し、暗号文を格納する。第1不揮発記憶デバイス133は、暗号文を復号化することなく、第2不揮発記憶デバイス134へ転送する。第2不揮発記憶デバイス134は、受信した暗号文を、そのまま格納する。
また、第2不揮発記憶デバイス134は、暗号文を復号化することなく、第1不揮発記憶デバイス133へ転送する。第1不揮発記憶デバイス133は、受信した暗号文を、そのまま格納する。第1不揮発記憶デバイス133は、暗号文を復号化して、揮発記憶デバイス132に転送する。揮発記憶デバイス132は、受信した平文をそのまま格納する。
図7は、処理サーバ装置13における他のルールを示す。当該ルールは以下のことを示す。揮発記憶デバイス132は、平文(非圧縮)を格納する。揮発記憶デバイス132と第1不揮発記憶デバイス133との間で、平文が転送される。第1不揮発記憶デバイス133は、暗号化された非圧縮文を格納する。第1不揮発記憶デバイス133と第2不揮発記憶デバイス134との間で、暗号化された非圧縮文が転送される。これにより、セキュリティを向上する。第2不揮発記憶デバイス134は、暗号化された圧縮文を格納する。
図7に示すように、第1不揮発記憶デバイス133は、揮発記憶デバイス132から転送された平文を所定の暗号鍵で暗号化し、暗号文を格納する。第1不揮発記憶デバイス133は、暗号文を復号化することなく、第2不揮発記憶デバイス134へ転送する。
第1不揮発記憶デバイス133と第2不揮発記憶デバイス134とは、同一の暗号鍵を保持している。そのため、第2不揮発記憶デバイス134は、受信した暗号文をその暗号鍵で復号化することができる。第2不揮発記憶デバイス134は、受信した暗号文を復号化し、圧縮し、さらに、同一の暗号鍵で暗号化し、格納する。
また、第2不揮発記憶デバイス134は、格納されていたデータを復号化、伸長、さらに同一の暗号鍵で暗号化して、第1不揮発記憶デバイス133に転送する。第1不揮発記憶デバイス133は、受信した暗号文をそのまま格納する。第1不揮発記憶デバイス133は、暗号文を復号化して、揮発記憶デバイス132に転送する。揮発記憶デバイス132は、受信した平文をそのまま格納する。
暗号化された非圧縮文を受信した記憶デバイスが、復号化した上で圧縮することで、データを効率的に圧縮することができる。さらに、圧縮文を暗号化して格納することで、セキュリティを向上させる。
図8は、処理サーバ装置13における他のルールを示す。当該ルールは以下のことを示す。揮発記憶デバイス132は、平文(非圧縮)を格納する。揮発記憶デバイス132と第1不揮発記憶デバイス133との間で、平文が転送される。第1不揮発記憶デバイス133は、暗号化された圧縮文を格納する。第1不揮発記憶デバイス133と第2不揮発記憶デバイス134との間で、平文(非圧縮)が転送される。第2不揮発記憶デバイス134は、暗号化された圧縮文を格納する。
図8に示すように、第1不揮発記憶デバイス133は、揮発記憶デバイス132から転送された平文を圧縮かつ暗号化し、暗号化された圧縮文を格納する。第1不揮発記憶デバイス133は、暗号文を復号化し、さらに伸長して、生成した平文を第2不揮発記憶デバイス134へ転送する。第2不揮発記憶デバイス134は、受信した平文を圧縮し、さらに暗号文して、暗号化された圧縮文を格納する。
また、第2不揮発記憶デバイス134は、格納されていたデータを復号化、さらに伸長して、生成した平文を、第1不揮発記憶デバイス133に転送する。第1不揮発記憶デバイス133は、受信した平文を圧縮し、さらに、暗号化して、暗号化された圧縮文を格納する。第1不揮発記憶デバイス133は、暗号文を復号化し、さらに伸長して、生成した平文を揮発記憶デバイス132に転送する。揮発記憶デバイス132は、受信した平文をそのまま格納する。
図9は、処理サーバ装置13における他のルールを示す。当該ルールは以下のことを示す。揮発記憶デバイス132は、平文(非圧縮)を格納する。揮発記憶デバイス132と第1不揮発記憶デバイス133との間で、平文が転送される。第1不揮発記憶デバイス133は、暗号化された圧縮文を格納する。第1不揮発記憶デバイス133と第2不揮発記憶デバイス134との間で、暗号化された圧縮文が転送される。第2不揮発記憶デバイス134は、暗号化された圧縮文を格納する。
図9に示すように、第1不揮発記憶デバイス133は、揮発記憶デバイス132から転送された平文を圧縮かつ暗号化し、暗号化された圧縮文を格納する。第1不揮発記憶デバイス133は、暗号化された圧縮文を復号化することなく第2不揮発記憶デバイス134へ転送する。第2不揮発記憶デバイス134は、受信した暗号化された圧縮文を、そのまま格納する。これにより、各不揮発記憶デバイスで暗号化された圧縮文を格納し、そのための暗号化/復号化及び圧縮/伸長の回数を低減する。
また、第2不揮発記憶デバイス134は、暗号化された圧縮文を復号化することなく、第1不揮発記憶デバイス133に転送する。第1不揮発記憶デバイス133は、受信した暗号化された圧縮文を、そのまま格納する。第1不揮発記憶デバイス133は、暗号化された圧縮文を復号化し、さらに伸長して、生成した平文を揮発記憶デバイス132に転送する。揮発記憶デバイス132は、受信した平文をそのまま格納する。
第1不揮発記憶デバイス133及び第2不揮発記憶デバイス134は、同一の暗号鍵を保持している。一方の不揮発記憶デバイスにより暗号化されたデータを、他方の不揮発記憶デバイスが復号化できる。
そのため、データを復号化することなくデータを転送することができ、データの暗号化/復号化の回数を低減することができる。また、データ転送における暗号化/非暗号化の状態を任意に決定することができるので、システム内で最適なセキュリティを設定することができる。また、セキュリティを確保しつつ、記憶デバイスの圧縮機能を効果的に利用することができる。
図10は、鍵管理テーブル223の構成例を示す。鍵管理テーブル223は、暗号鍵と暗号鍵が適用される範囲との関係を示す。図10の例において、鍵管理テーブル223は、デバイス欄231、ボリューム(VOL)欄232、アドレス範囲欄233、及び鍵欄234を有する。鍵欄234は暗号鍵の識別子を示す。デバイス欄231は暗号鍵が適用される記憶デバイスの識別子を格納する。
VOL欄232は、暗号鍵が適用されるボリュームの識別子を示す。ボリュームは、ホストに提供されるボリュームであり、例えば仮想ボリュームである。他のテーブルにおいて示されるボリュームも同様である。アドレス範囲欄233はボリュームにおいて暗号鍵が適用されるアドレス範囲を示す。ボリュームの識別子とボリューム内論理アドレスとが、ボリュームI/Oアドレスを示す。
鍵管理テーブル223は、システム内の全ての暗号鍵の情報を保持する。各デバイスは、鍵管理テーブル223において使用する情報を少なくとも保持する。各デバイスは、鍵管理テーブル223全体を保持してもよい。鍵管理プログラム221は、デバイスそれぞれに、鍵管理テーブル223において必要な情報を配布する。
たとえば、記憶デバイスは、データのリード及びライトにおいて、コマンドにおいて指定された暗号鍵により暗号化/復号化を行う。記憶デバイスへのコマンドは、データのボリュームI/Oアドレスを示してもよい。記憶デバイスは、保持している鍵管理情情報と指定されたボリュームI/Oアドレスに基づいて、暗号鍵を同定する。
記憶デバイスは、当該記憶デバイスのデバイスI/OアドレスとボリュームI/Oアドレスとのマッピング情報を保持してもよい。デバイスI/Oアドレスは、記憶デバイス識別子と当該記憶デバイスにアクセスするときの論理アドレスとを示す。記憶デバイスは、コマンドで指定されたデバイスI/OアドレスからボリュームI/Oアドレスを決定できる。データを転送するデバイス(例えばI/F)も、同様に暗号鍵を決定できる。
図11は、格納ルールテーブル224の構成例を示す。格納ルールテーブル224は、記憶デバイスにおいて格納されるデータの状態を示す。具体的には、格納ルールテーブル224は、データのボリュームI/Oアドレスと、格納されるデータの暗号化/非暗号化の状態及び圧縮/非圧縮の状態を示す。
図11の例において、格納ルールテーブル224は、デバイス欄241、ボリューム(VOL)欄242、アドレス範囲欄243、暗号欄244、及び圧縮欄245を有する。デバイス欄241は記憶デバイスの識別子を示す。VOL欄232は、格納ルールが適用されるボリュームの識別子を示す。アドレス範囲欄242はボリュームにおけるアドレス範囲を示す。
暗号欄244は、各アドレス範囲が、暗号化されたデータ(暗号文)を格納するか、暗号化されていないデータ(平文)を格納するか、を示す。圧縮欄245は、各アドレス範囲が、圧縮されたデータを格納するか、圧縮されていないデータを格納するか、を示す。
格納ルールテーブル224は、システム内の全ての記憶デバイスの情報を保持する。各記憶デバイスは、格納ルールテーブル224における自装置に関する情報を少なくとも保持する。ルール管理プログラム222は、記憶デバイスに、格納ルールテーブル224における必要な情報を配布する。
記憶デバイスは、暗号鍵についての上記説明と同様に、データの格納状態を決定できる。例えば、コマンドが格納状態を指示してもよく、記憶デバイスは、コマンドにおいて指定されたボリュームI/Oアドレス及び格納ルールに基づいて、格納状態を決定してもよい。記憶デバイスは、保持しているマッピング情報を参照して、コマンドで指定されたデバイスI/OアドレスからボリュームI/Oアドレスを決定してもよい。
図12は、転送ルールテーブル225の構成例を示す。転送ルールテーブル225は、デバイス間のデータ転送におけるデータの暗号化/非暗号化及び圧縮/非圧縮の状態を示す。
転送ルールテーブル225は、送信元欄251、ボリューム(VOL)欄252、アドレス範囲欄253、送信先欄254、ボリューム(VOL)欄255、アドレス範囲欄256、暗号欄257、及び圧縮欄258を有する。
送信元欄251はデータ送信元デバイスの識別子を示す。VOL欄252は、データ送信元のボリュームの識別子を示す。アドレス範囲欄253は、データ送信元のボリューム内アドレス範囲を示す。送信先欄254はデータ送信先デバイスの識別子を示す。VOL欄255は、データ送信先のボリュームの識別子を示す。アドレス範囲欄256は、データ送信先のボリューム内アドレス範囲を示す。
暗号欄257は、転送データの暗号化/非暗号化の状態を示す。つまり、転送データが暗号化されているか暗号化されていないかを示す。圧縮欄258は、転送データの圧縮/非圧縮の状態を示す。つまり、転送データが圧縮されているか圧縮されていないかを示す。
なお、転送ルールテーブルは追加の項目を設定できてもよい。たとえば、図では省略しているが、違う暗号鍵の部位に転送するときは、送信元の鍵で復号し、再度、送信先の鍵で暗号化することを明示するフラグを設定できてもよい。この場合、送信元又は送信先のどちらでこの処理を実施するかについても、指定する項目がテーブルにあってもよい。なお、送信元又は送信先の処理を実施する方は、両方の鍵が設定されていることとする。
転送ルールテーブル225は、システム内の全てのデバイスについての情報を保持する。各デバイスは、転送ルールテーブル225において、少なくとも、制御するデータ転送についてのルールの情報を保持する。各デバイスは、転送ルールテーブル225の全情報を保持してもよい。ルール管理プログラム222は、デバイスに、格納ルールテーブル224における必要な情報を配布する。
デバイスは、暗号鍵及び格納ルールについての上記説明同様に、転送データの状態を決定することができる。つまり、コマンドが状態を指定する、又は、デバイスがボリュームI/Oアドレスと転送ルールとに基づいて状態を決定する。ボリュームI/Oアドレスはコマンドで指定されてもよく、コマンドで指定されたデバイスI/Oアドレスから変換されてもよい。
なお、データの階層制御において、転送先と転送元のボリューム及びボリューム内アドレスは常に同一である。したがって、図12に示す転送ルールテーブル225の例は、階層制御以外のデータ移動のためにも参照され得る。
本実施形態は、記憶デバイス内のアドレス範囲に対してルールや暗号鍵を決定する。これにより、記憶デバイスから独立してルールや暗号鍵を設定できる。特に、ボリュームのアドレス空間においてルールや暗号鍵を設定することが可能となる。ボリュームのアドレス空間におけるルールや暗号鍵の設定を受け付けることで、格納されるデータを使用するアプリケーションやデータの性質に応じて、ルールや暗号鍵を設定することができる。
図13及び図14を参照して、不揮発記憶デバイス間のデータ転送並びにそのための鍵及びルールの設定の例を説明する。本例は、図7に示すルールに対応する。本例において、データ転送を行う二つの不揮発記憶デバイスが、設定された転送ルール及び格納ルールを参照し、データ転送及びデータ格納を制御する。
図13は、鍵管理プログラム221及びルール管理プログラム222による、鍵設定及びルール設定の例を示す。鍵管理プログラム221は、処理サーバ装置13の第1、第2不揮発記憶デバイス133、134、さらに、ストレージシステムの第1、第2不揮発記憶デバイス143、144に、鍵を設定する。本例において、鍵管理プログラム221は、デバイスに、対応する鍵と鍵管理情報とを配布する。
ルール管理プログラム222は、処理サーバ装置13の第1、第2不揮発記憶デバイス133、134、さらに、ストレージシステム14の第1、第2不揮発記憶デバイス143、144に、ルールを設定する。具体的には、ルール管理プログラム222は、デバイスに、対応する格納ルール及び転送ルールを配布する。各デバイスは、そのコントローラの揮発又は不揮発のメモリに、受信した鍵、鍵管理情報、及びルールを格納する。
なお、処理機能を持たない不揮発記憶デバイスに関する鍵、鍵管理情報、各ルールテーブルはCPUが処理できるように、処理機能を持たない不揮発記憶デバイスに格納するか又は別の記憶デバイスに記憶するか、他の不揮発記憶デバイスで処理できるように他の不揮発記憶デバイスのコントローラの不揮発又は不揮発メモリに格納する。この場合、処理機能を持たない不揮発記憶デバイスに対する設定であることがわかるような項目をそれぞれのテーブルに持たせてもよい。
図14は、階層制御によるデータ転送の例を示す。図14の例において、データは処理サーバ装置13又はストレージシステム14における第1不揮発記憶デバイス133/143から第2不揮発記憶デバイス134/144へ転送される。第1不揮発記憶デバイス133/143は、暗号化された非圧縮データを格納する。転送データは、暗号化された非圧縮データである。第2不揮発記憶デバイス134/144は、暗号化された圧縮データを格納する。
図14において、処理サーバ装置13又はストレージシステム14の階層制御プログラム321/421は、I/O頻度の低いデータを第2不揮発記憶デバイス134/144に転送することを、第1不揮発記憶デバイス133/143に要求する(S11)。I/O頻度は不図示のプログラムによって監視及び管理されている。
転送要求は、転送元デバイスI/Oアドレス及び転送先デバイスI/Oアドレスに加え、対象データのボリュームI/Oアドレスを示す。階層制御プログラム321/421は、ボリュームI/OアドレスとデバイスI/Oアドレスとのマッピング情報を参照して転送元アドレスを特定し、さらに、新たに割り当てる記憶領域のアドレスを転送先と決定する。
第1不揮発記憶デバイス133/143は、保持している格納ルール及び転送ルールを参照し、指定されたボリュームI/Oアドレスの、格納データ及び転送データの状態を判定する(S12)。本例において、格納データの状態は暗号化及び非圧縮であり、転送データの状態は暗号化及び非圧縮である。
第1不揮発記憶デバイス133/143は、判定結果に応じて格納データを処理し、転送データを準備する(S13)。本例において、第1不揮発記憶デバイス133/143は、暗号化/復号化及び圧縮/伸長の処理を行うことなく、データを転送することを決定する。第1不揮発記憶デバイス133/143は、指定された暗号データを転送するために準備する。
次に、第2不揮発記憶デバイス134/144に、準備した暗号データをDMA転送することを要求する(S14)。転送要求は、ボリュームI/Oアドレス及び第2不揮発記憶デバイス134/144のデバイスI/Oアドレスを含む。
第2不揮発記憶デバイス134/144は、準備されている暗号データを、第1不揮発記憶デバイス133/143から読み出す(S15)。データ転送が完了すると、第2不揮発記憶デバイス134/144は、転送完了を第1不揮発記憶デバイス133/143に通知する(S16)。第1不揮発記憶デバイス133/143は、転送完了を階層制御プログラム321/421に通知する(S17)。
第2不揮発記憶デバイス134/144は、指定されたボリュームI/Oアドレス、転送ルール及び格納ルールに基づき、受信したデータの状態と格納するデータの状態を判定する。第2不揮発記憶デバイス134/144は、判定結果に応じて受信データを処理する。
本例において、第2不揮発記憶デバイス134/144は、受信した暗号化データを復号化し(S18)、さらに、圧縮する(S19)。第2不揮発記憶デバイス134/144は、圧縮データを暗号化して(S20)、暗号化された圧縮データを格納する。第2不揮発記憶デバイス134/144は、鍵管理情報を参照して、指定されたボリュームI/Oアドレスに対応する復号化/暗号化の鍵を同定する。
上述のように、二つの不揮発記憶デバイスが設定されたルールに従ってデータ転送することで、CPUを介在することなくデータ転送を行うことができる。
上記例と異なり、デバイスへの要求(コマンド)が、データの格納/転送状態及び/又は暗号鍵を指定してもよい。デバイスは、ボリュームI/OアドレスとデバイスI/Oアドレスとのマッピング情報を保持し、デバイスへの要求(コマンド)からボリュームI/Oアドレスが省略されてもよい。デバイスは、指定されたデバイスI/OアドレスからボリュームI/Oアドレスをマッピング情報に従って決定できる。
図15及び図16を参照して、不揮発記憶デバイス間のデータ転送並びにそのための鍵及びルールの設定の他の例を説明する。本例は、図7に示すルールに対応する。本例において、CPUが、設定された転送ルール及び格納ルールを参照し、データ転送及びデータ格納を制御する。
図15は、鍵管理プログラム221及びルール管理プログラム222による、鍵設定及びルール設定の他の例を示す。鍵管理プログラム221は、処理サーバ装置13の第1、第2不揮発記憶デバイス133、134、さらに、ストレージシステムの第1、第2不揮発記憶デバイス143、144に、鍵を設定する。具体的には、鍵管理プログラム221は、デバイスに、対応する鍵と鍵管理情報とを配布する。各デバイスは、そのコントローラの揮発又は不揮発のメモリに、受信した鍵及び鍵管理情報を格納する。
ルール管理プログラム222は、処理サーバ装置13のCPU131、及び、ストレージシステム14のCPU141に、ルールを設定する。具体的には、ルール管理プログラム222は、CPU131、141に、対応する格納ルール及び転送ルールを配布する。CPU131、141は、それぞれ、揮発記憶デバイス132、142に、受信したルールを格納する。
図16は、階層制御によるデータ転送の例を示す。図16の例において、データは処理サーバ装置13又はストレージシステム14における第1不揮発記憶デバイス133/143から第2不揮発記憶デバイス134/144へ転送される。第1不揮発記憶デバイス133/143は、暗号化された非圧縮データを格納する。転送データは、暗号化された非圧縮データである。第2不揮発記憶デバイス134/144は、暗号化された圧縮データを格納する。
図16において、処理サーバ装置13又はストレージシステム14の階層制御プログラム321/421(CPU131/141)は、I/O頻度の低いデータを、第1不揮発記憶デバイス133/143から第2不揮発記憶デバイス134/144に転送することを決定する。
階層制御プログラム321/421は、揮発記憶デバイス132/142に格納されている格納ルール及び転送ルールを参照し、対象データのボリュームアドレスに従って、格納データ及び転送データの状態を判定する(S31)。本例において、格納データの状態は暗号化及び非圧縮であり、転送データの状態は暗号化及び非圧縮である。階層制御プログラム321/421は、格納データを暗号化/復号化及び圧縮/非圧縮を行うことなく転送することを決定する。
階層制御プログラム321/421は、上記データを、揮発記憶デバイス132/142にDMA転送することを、第1不揮発記憶デバイス133/143に要求する(S32)。転送要求は、ボリュームI/Oアドレス、転送元の第1不揮発記憶デバイス133/143のデバイスI/Oアドレス、及び、転送先の揮発記憶デバイス132/142のアドレスを示す。階層制御プログラム321/421は、ボリュームI/OアドレスとデバイスI/Oアドレスとのマッピング情報を参照して転送元アドレスを特定する。
転送要求は、さらに、データ転送のための暗号化/復号化及び圧縮/非圧縮の処理についての指示を含む。本例において、転送要求は、暗号化/復号化及び圧縮/非圧縮のいずれも指示しない。
第1不揮発記憶デバイス133/143は、指定されたデータを暗号化/復号化及び圧縮/非圧縮することなく、転送データを準備し(S33)、DMA転送により揮発記憶デバイス132/142に転送する(S34)。その後、第1不揮発記憶デバイス133/143は、転送完了を階層制御プログラム321/421に通知する(S35)。
次に、階層制御プログラム321/421は、揮発記憶デバイス132/142に格納されているデータのDMA転送を、第2不揮発記憶デバイス134/144に要求する(S36)。転送要求は、転送元の揮発記憶デバイス132/142のアドレス、第2不揮発記憶デバイス134/144の格納先アドレス(デバイスI/Oアドレス)、及びボリュームI/Oアドレスを含む。階層制御プログラム321/421は、新たに割り当てる記憶領域のアドレスを転送先と決定する。
転送要求は、さらに、データ格納のための暗号化/復号化及び圧縮/非圧縮の処理についての指示を含む。階層制御プログラム321/421は、揮発記憶デバイス132/142に格納されている格納ルールを参照し、対象データの第2不揮発記憶デバイス134/144への格納時の状態を判定する。本例において、圧縮された暗号化データが格納される。したがって、階層制御プログラム321/421は、データの復号化、圧縮、及び暗号化を指示する。
第2不揮発記憶デバイス134/144は、データを、揮発記憶デバイス132/142にから読み出す(S37)。データ転送が完了すると、第2不揮発記憶デバイス134/144は、転送完了を階層制御プログラム321/421に通知する(S38)。
第2不揮発記憶デバイス134/144は、受信した暗号化データを復号化する(S39)。第2不揮発記憶デバイス134/144は、鍵管理情報を参照して、指定されたボリュームI/Oアドレスの鍵を同定し、当該鍵を使用してデータを復号化する。
第2不揮発記憶デバイス134/144は、復号化したデータを圧縮する(S40)。さらに、第2不揮発記憶デバイス134/144は、圧縮データを暗号化して(S41)、暗号化された圧縮データを格納する。
上述のように、階層制御プログラム321/421、つまりCPU131/141が設定されたルールに従ってデータ転送を制御することで、不揮発記憶デバイスがデータ転送制御のための機能を有していない場合でも、適切にデータ転送することができる。
上記例において、CPUは、転送ルールと格納ルールの双方を参照するが、CPUは転送ルールのみを保持、参照し、データ転送を実行する不揮発記憶デバイスが格納ルールを保持、参照してもよい。CPUは、鍵管理テーブルを保持し、不揮発記憶デバイスにデータの暗号化/復号化に使用する鍵を指定してもよい。この場合、転送要求におけるボリュームI/Oアドレスは省略される。デバイスは、ボリュームI/OアドレスとデバイスI/Oアドレスとのマッピング情報を保持し、デバイスへの要求(コマンド)からボリュームI/Oアドレスが省略されてもよい。
図17は、暗号鍵変更のフローチャートの例を示す。鍵管理プログラム221は、たとえば入力デバイスからのユーザ指示に応じて、鍵を変更する。鍵管理プログラム221は、交換する古い鍵を使用している全てのデバイスにおいて、古い暗号鍵を新しい暗号鍵に交換する。図17の例は、第1不揮発記憶デバイス133及び143及び第2不揮発記憶デバイス134及び144の古い暗号鍵を新しい暗号鍵に交換する。暗号鍵を使用しているデバイスは、鍵管理テーブル223に示されている。
鍵管理プログラム221は、処理サーバ装置13及びストレージシステム14の階層制御プログラム321及び421(CPU131/141)に、データの階層間の移動の停止要求を発行する(S51)。これにより、鍵変更後に古い鍵により暗号化されたデータが残ることを避ける。
次に、鍵管理プログラム221は、第1不揮発記憶デバイス133、143及び第2不揮発記憶デバイス134、144に、新しい暗号鍵と共に、暗号鍵変更の要求を送信する。交換要求は、交換する古い暗号鍵を指定する。新しい暗号鍵が配布済みである場合には、交換要求は新しい暗号鍵を伴うことなく、新しい暗号鍵を指定してもよい。
第1不揮発記憶デバイス133、143は、受信した要求に従って、指定された古い暗号鍵を受信した新しい暗号鍵に交換するための処理を行う(S52)。第1不揮発記憶デバイス133、143は、新しい暗号鍵により格納データを暗号化し、さらに、保持している鍵管理情報を更新する。
具体的には、第1不揮発記憶デバイス133、143は、保持している鍵管理情報を参照し、古い暗号鍵で暗号化されているデータを同定して読み出し、読み出したデータを古い暗号鍵で復号化する。第1不揮発記憶デバイス133、143は、復号化したデータを新しい鍵で暗号化して、暗号化したデータを格納する。第1不揮発記憶デバイス133、143は、鍵管理情報における古い暗号鍵の情報を新しい暗号鍵の情報に更新する。
鍵交換のための処理が完了すると、第1不揮発記憶デバイス133、143は、鍵管理プログラム221(管理装置12)に対して、暗号鍵の交換完了通知を送信する(S53)。
同様に、第2不揮発記憶デバイス134、144も、受信した要求に従って、指定された古い暗号鍵を受信した新しい暗号鍵に交換するための処理を行う(S54)。鍵交換のための処理が完了すると、第2不揮発記憶デバイス134、144は、鍵管理プログラム221(管理装置12)に対して、暗号鍵の交換完了通知を送信する(S55)。
鍵管理プログラム221は、鍵交換要求を送信した全てのデバイスから交換完了通知を受信すると、鍵管理テーブル223を更新する。さらに、階層制御プログラム321及び421に鍵交換完了通知を発行して、データの階層間の移動の再開を許可する(S56)。全てのデバイスからの鍵交換完了通知を待つことで、鍵交換完了前にデータ移動が開始されることを避ける。
図18は、暗号鍵の削除によるデータ削除のフローチャートの例を示す。本例は、不揮発記憶デバイスから暗号鍵を削除することによって、当該暗号鍵で暗号化されたデータを当該不揮発記憶デバイスから削除する。鍵管理プログラム221は、たとえば、入力デバイスからのユーザ指示に応じて、暗号鍵を削除することにより、データを削除する。
鍵管理プログラム221は、鍵管理テーブル223を参照して、削除する鍵を保持する全てのデバイスを同定する。鍵管理プログラム221は、同定したデバイスそれぞれに、暗号鍵を指定した削除要求を発行する(S71)。暗号鍵の削除要求を受信した各デバイスは、保持している暗号鍵を廃棄すると共に、保持している鍵管理情報におけるエントリから、指示された暗号鍵の情報を削除する。暗号鍵を削除したデバイスは、それぞれ、削除完了の通知を鍵管理プログラム221に返す。
鍵管理プログラム221は、暗号鍵の削除を要求した全てのデバイスから完了通知を受信すると、鍵管理テーブル223から、当該暗号鍵の情報を削除する。これにより、バックアップ、差分ファイル含めて、削除された暗号鍵で暗号化された全てのデータの削除が完了する(S72)。鍵管理プログラム221は、暗号鍵の削除によるデータ削除の完了を、要求元に通知する。
ルール管理プログラム222は、更新された鍵管理テーブル223に従って、格納ルールテーブル224及び転送ルールテーブル225を更新し、さらにルール更新情報を対応するデバイスに送信する。ルール管理プログラム222は、更新された転送ルールテーブル225を表示デバイスにおいてユーザに提示し、ユーザによる変更を受け付けてもよい。
このように、システム内で、同一データ(同一アドレスのデータ)に対して同一の暗号鍵が共有されているため、対応する暗号鍵の消去によりシステム内の対象データを瞬時に消去することができる。
図19は、格納ルールの決定におけるユーザによる判定のフローチャート例を示す。ユーザは、対象データが機密データであるか判定する(S91)。機密データでない場合(S91:N)、ユーザは、対象データについて、レイテンシと容量削減のいずれが重要か判定する(S92)。レイテンシが重要である場合(S92:N)、ユーザは、対象データを暗号化も圧縮もすることなく格納することを、決定する(S93)。容量削減が重要である場合(S92:Y)、ユーザは、対象データを暗号化せず圧縮して格納することを、決定する(S94)。
対象データが機密データである場合(S91:Y)、ユーザは、対象データについて、レイテンシと容量削減のいずれが重要か判定する(S95)。レイテンシが重要である場合(S95:N)、ユーザは、対象データを暗号化し、圧縮することなく格納することを、決定する(S96)。容量削減が重要である場合(S95:Y)、ユーザは、対象データを暗号化しさらに圧縮して格納することを、決定する(S97)。
ルール管理プログラム222は、対象データについての条件の入力を参照し、図19のフローチャートに従って、対象データに対する暗号処理及び圧縮処理のルールを決定してもよい。たとえば、ルール管理プログラム222は、管理装置12のGUIプログラムを介して、対象アドレス範囲、対象が機密か否か、対象についてレイテンシ/容量削減のいずれが重要であるか、の情報を取得する。
図20は、ユーザにより鍵情報の設定のためのGUI画像例を示す。鍵管理プログラム221は、GUIプログラムを使用して、入出力デバイスからの鍵情報設定のためのユーザ入力を受け付ける。図20において、鍵管理画像501における「設定」ボタンの選択が、ユーザに鍵生成・設定画像503における入力を可能とする。
鍵生成・設定画像503は、暗号鍵の入力又は暗号鍵の自動生成の入力を受け付ける。鍵生成・設定画像503は、さらに、暗号鍵を適用するデータのボリュームI/Oアドレスを受け付ける。図20の例においては、記憶デバイス、ボリューム識別子及びボリューム内アドレス(アドレス範囲)によって、暗号鍵の適用対象の選択を可能としている。
ボリュームはホスト(ユーザ)が使用するボリュームであり、例えば仮想ボリュームである。ボリュームの情報は、ボリューム管理プログラムが管理するボリューム管理情報(共に不図示)から取得できる。暗号鍵適用範囲は、ボリュームや容量プールの単位で指定されてもよい。
鍵生成・設定画像503における「確認」ボタンが選択されると、鍵管理プログラム221は、入力された情報を、鍵設定確認画像505において表示する。ユーザは、表示された情報に問題がある場合、鍵生成・設定画像503における「キャンセル」を選択し、問題がない場合、「完了」ボタンを選択する。
「完了」ボタンが選択されると、鍵管理プログラム221は、入力された情報に従って暗号鍵を生成し、さらに、鍵管理テーブル223を更新/生成する。図10に示すように、鍵管理テーブル223は、暗号鍵とボリュームI/Oアドレス(ボリューム識別子及びボリューム内アドレス)との関係を示す。
以上のように、暗号鍵の設定範囲のユーザ入力を受け付けることで、ユーザにとって適切な暗号処理をシステムに実行させることができる。
図21は、ユーザによるルール情報の設定のためのGUI画像例を示す。ルール管理プログラム222は、GUIプログラムを使用して、ルール情報設定のためのユーザ入力を受け付ける。図21において、ルール管理画像521における「設定」ボタンの選択は、ユーザによる格納ルール設定画像523における入力を可能とする。
格納ルール設定画像523は、ボリュームアドレス範囲それぞれにおける、格納データの暗号化/復号化及び圧縮/非圧縮の指定を受け付ける。格納ルール設定画像523は、ボリュームや容量プールの単位で格納データの暗号化/復号化及び圧縮/非圧縮の指定を受け付けてもよい。
格納ルール設定画像523における「確認」ボタンが選択されると、ルール管理プログラム222は、格納ルールテーブル224を更新/生成する。ルール管理プログラム222は、新たな格納ルールテーブル224に従って、一時的な転送ルールを更新/生成し、転送ルール設定画像525に表示する。
ルール管理プログラム222は、例えば、転送元と転送先の少なくとも一方が非暗号化(暗号OFF)である場合、それらの間のデータ転送に非暗号化(暗号OFF)を指定する。ルール管理プログラム222は、転送元と転送先の双方が暗号化(暗号ON)である場合、それらの間のデータ転送に暗号化(暗号ON)を指定する。
ルール管理プログラム222は、例えば、転送元と転送先の少なくとも一方が非圧縮(圧縮OFF)である場合、それらの間のデータ転送に非圧縮(圧縮OFF)を指定する。ルール管理プログラム222は、転送元と転送先の双方が圧縮(圧縮ON)である場合、それらの間のデータ転送に圧縮(圧縮ON)を指定する。
ルール管理プログラム222は、転送ルール設定画像525において、ユーザによる設定変更を受け付け、一次的な転送ルールに反映させる。転送ルール設定画像525における「確認」ボタンが選択されると、ルール管理プログラム222は、新たな転送ルールによって、転送ルールテーブル225を更新/生成する。
また、処理機能を持たない不揮発記憶デバイスの設定も可能とし、その場合は他の不揮発記憶デバイスの設定を引き継ぐか他の不揮発記憶デバイスまたはCPUが転送時に処理機能を持たない不揮発記憶デバイスの代わりに処理を実施するように設定する。たとえば、他の不揮発記憶デバイスが暗号ON、圧縮ONの設定の場合、その状態を引き継ぎ、処理機能を持たない不揮発記憶デバイスは暗号ONと圧縮ONの格納状態とする。もし、暗号OFFや圧縮OFFとする場合は、上位の不揮発記憶デバイスまたはCPUが処理機能を持たない不揮発記憶デバイスの代わりに処理を実施してもよい。
図22は、階層制御における階層の設定のためのGUI画像例を示す。ユーザは、階層の属する記憶デバイスをGUI画像において指定する。階層制御プログラム321、421は、管理装置11に表示されたGUI画像を介して入力された情報を受信し、設定情報に従って階層制御を行う。
図23は、他のシステム構成例を示す。計算機システムは、複数の監視装置を含む。図23において、二つの監視装置18A、18Bが例示されている。監視装置18A、18Bは、ネットワーク15を介して管理装置12と接続している。監視装置18A、18Bは、管理装置12と同様の計算機構成を有することがきる。
複数の管理者が監視装置を操作し、鍵管理情報及びルール管理情報の不適切な変更を監視し、運用上のセキュリティを担保する。例えば、ある管理者が、格納ルール又は転送ルールを変更すると、ルール管理プログラム222は、その変更内容を監視装置18A、18Bへ通知する。監視装置18A、18Bは、通知内容を表示する。例えば監視装置18Bでシステムを監視している他の管理者は、ルールの変更内容を知ることができる。
ルール管理プログラム222は、あらかじめ定められた規則からはずれた変更の場合、監視装置18A、18Bに警告を通知する。これにより、管理者は、不正な操作を知ることができる。鍵管理情報についても同様であり、不正操作、例えば不正鍵交換を、複数人で監視することができる。
監視装置は、一つのみであってもよい。複数の監視装置により、一人の管理者による操作を他の管理者が監視できる。また、一つの監視装置が停止しても、他の監視装置で監視を継続することができる。
図24は、他のシステム構成例を示す。物理サーバ装置19は、ネットワークを介して管理装置12に接続している。仮想化により、物理サーバ装置19において、複数の仮想マシンが動作している。例えば、仮想化のため、LPAR(Logical Partition)方式又はVM(Virtual Machine)方式が使用できる。
仮想マシンVM0、VM1は、仮想処理サーバ装置であり、仮想マシンVM2、VM3は仮想ストレージシステムである。物理サーバ装置19の物理リソースは、CPU、揮発記憶デバイス、複数の不揮発記憶デバイス、及びインタフェースを含む。仮想マシンのそれぞれに対して、物理リソースが割り当てられる。
物理処理サーバ装置13及び物理ストレージシステム14を含む構成における上述の内容は、図24に示すような仮想マシンを含むシステムにも適用することができる。物理処理サーバ装置13及び物理ストレージシステム14それぞれについての説明が、仮想処理サーバ装置及び仮想ストレージシステムに適用される。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。また、各装置の冗長パスは記載していないが、実際にはサーバ、ストレージ、管理装置、監視装置などのネットワークには冗長化のための接続があると考えてもよい。

Claims (11)

  1. プロセッサと、
    前記プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    データを格納する複数の不揮発記憶装置と、を含み、
    前記複数の不揮発記憶装置は、それぞれ、第1データを暗号処化及び復号化するための第1暗号鍵を保持し、
    前記複数の不揮発記憶装置における各不揮発記憶装置は、予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送し、
    前記複数の不揮発記憶装置における第1不揮発記憶装置は、
    暗号化された状態で受信した前記第1データを前記第1暗号鍵により復号化し、
    復号化した前記第1データを圧縮した後に前記第1暗号鍵により暗号化し、
    圧縮及び暗号化された前記第1データを格納する、計算機システム。
  2. プロセッサと、
    前記プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    データを格納する複数の不揮発記憶装置と、を含み、
    前記複数の不揮発記憶装置は、それぞれ、第1データを暗号処化及び復号化するための第1暗号鍵を保持し、
    前記複数の不揮発記憶装置における各不揮発記憶装置は、予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送し、
    前記ルールは、転送されるデータの圧縮又は非圧縮の状態を示し、
    前記複数の不揮発記憶装置における各不揮発記憶装置は、前記ルールに従って決定された圧縮又は非圧縮の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送する、計算機システム。
  3. プロセッサと、
    前記プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    データを格納する複数の不揮発記憶装置と、を含み、
    前記複数の不揮発記憶装置は、それぞれ、第1データを暗号処化及び復号化するための第1暗号鍵を保持し、
    前記複数の不揮発記憶装置における各不揮発記憶装置は、予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送し、
    前記複数の不揮発記憶装置の各不揮発記憶装置は、データを格納するアドレス範囲それぞれに対して決定された暗号化又は非暗号化の状態において、前記アドレス範囲それぞれのデータを、前記複数の不揮発記憶装置における他の不揮発記憶装置に転送する、計算機システム。
  4. 請求項3に記載の計算機システムであって、
    前記複数の不揮発記憶装置の各不揮発記憶装置は、前記アドレス範囲それぞれのデータの暗号化及び復号化において、前記アドレス範囲それぞれに対応付けられた暗号鍵を使用する、計算機システム。
  5. 請求項3に記載の計算機システムであって、
    前記アドレス範囲それぞれに対するボリュームのアドレス範囲に対して、データ転送における暗号化又は非暗号化の状態が予め設定されている、計算機システム。
  6. プロセッサと、
    前記プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    データを格納する複数の不揮発記憶装置と、を含み、
    前記複数の不揮発記憶装置は、それぞれ、第1データを暗号処化及び復号化するための第1暗号鍵を保持し、
    前記複数の不揮発記憶装置における各不揮発記憶装置は、予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送し、
    前記プロセッサは、ボリュームに格納されているデータのI/O頻度に基づく階層制御を実行し、
    前記複数の不揮発記憶装置は、それぞれ、一つの階層に属し、
    前記第1データは、前記階層制御によって、前記複数の不揮発記憶装置間において転送される、計算機システム。
  7. 請求項6に記載の計算機システムであって、
    前記プロセッサは、
    前記複数の不揮発記憶装置における暗号鍵の変更の開始前に、前記階層制御によるデータ転送を停止し、
    前記暗号鍵を変更する全ての不揮発記憶装置において前記暗号鍵が変更された後に、前記階層制御によるデータ転送を再開する、計算機システム。
  8. 計算機システムにおけるデータ転送方法であって、
    前記計算機システムは、
    プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    複数の不揮発記憶装置と、を含み、
    前記方法は、
    前記複数の不揮発記憶装置それぞれに、第1データを暗号処化及び復号化するための第1暗号鍵を設定し、
    予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを、前記複数の不揮発記憶装置における第2不揮発記憶装置から、前記複数の不揮発記憶装置における第1不揮発記憶装置に転送し、
    前記第2不揮発記憶装置から前記第1不揮発記憶装置に、暗号化された状態で前記第1データを転送し、
    前記第1不揮発記憶装置において
    受信した前記第1暗号鍵により復号化し、
    復号化した前記第1データを圧縮した後に前記第1暗号鍵により暗号化し、
    圧縮及び暗号化された前記第1データを格納する、方法。
  9. 計算機システムにおけるデータ転送方法であって、
    前記計算機システムは、
    プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    複数の不揮発記憶装置と、を含み、
    前記方法は、
    前記複数の不揮発記憶装置それぞれに、第1データを暗号処化及び復号化するための第1暗号鍵を設定し、
    予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを、前記複数の不揮発記憶装置における第2不揮発記憶装置から、前記複数の不揮発記憶装置における第1不揮発記憶装置に転送し、
    前記ルールは、転送されるデータの圧縮又は非圧縮の状態を示し、
    前記方法は、前記複数の不揮発記憶装置における各不揮発記憶装置から、前記ルールに従って決定された圧縮又は非圧縮の状態において、前記第1データを前記複数の不揮発記憶装置における他の不揮発記憶装置に転送する、方法。
  10. 計算機システムにおけるデータ転送方法であって、
    前記計算機システムは、
    プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    複数の不揮発記憶装置と、を含み、
    前記方法は、
    前記複数の不揮発記憶装置それぞれに、第1データを暗号処化及び復号化するための第1暗号鍵を設定し、
    予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを、前記複数の不揮発記憶装置における第2不揮発記憶装置から、前記複数の不揮発記憶装置における第1不揮発記憶装置に転送し、
    前記複数の不揮発記憶装置は、それぞれ、階層制御における一つの階層に属し、
    前記方法は、
    前記第1データのI/O頻度に応じて前記第1データの移動先の階層を決定し、
    前記移動先の階層に属する前記第2不揮発記憶装置に前記第1データを転送する、方法。
  11. 計算機システムにおけるデータ転送方法であって、
    前記計算機システムは、
    プロセッサにより実行されるプログラムを格納する揮発記憶装置と、
    複数の不揮発記憶装置と、を含み、
    前記方法は、
    前記複数の不揮発記憶装置それぞれに、第1データを暗号処化及び復号化するための第1暗号鍵を設定し、
    予め定められたルールに従って決定された暗号化又は非暗号化の状態において、前記第1データを、前記複数の不揮発記憶装置における第2不揮発記憶装置から、前記複数の不揮発記憶装置における第1不揮発記憶装置に転送し、
    前記複数の不揮発記憶装置の各不揮発記憶装置から、データを格納するアドレス範囲それぞれに対して決定された暗号化又は非暗号化の状態において、前記アドレス範囲それぞれのデータを、前記複数の不揮発記憶装置における他の不揮発記憶装置に転送する、方法。
JP2018525891A 2016-07-07 2016-07-07 計算機システム Active JP6513295B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/070128 WO2018008123A1 (ja) 2016-07-07 2016-07-07 計算機システム

Publications (2)

Publication Number Publication Date
JPWO2018008123A1 JPWO2018008123A1 (ja) 2018-11-29
JP6513295B2 true JP6513295B2 (ja) 2019-05-15

Family

ID=60912508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018525891A Active JP6513295B2 (ja) 2016-07-07 2016-07-07 計算機システム

Country Status (3)

Country Link
US (1) US10846441B2 (ja)
JP (1) JP6513295B2 (ja)
WO (1) WO2018008123A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10951406B2 (en) * 2018-01-24 2021-03-16 Salesforce.Com, Inc. Preventing encryption key recovery by a cloud provider
JP2021118370A (ja) * 2020-01-22 2021-08-10 キオクシア株式会社 メモリシステム、情報処理装置、および情報処理システム
US11595192B2 (en) * 2020-04-24 2023-02-28 Dell Products L.P. System and method of migrating one or more storage class memories from a first information handling system to a second information handling system
JP7118108B2 (ja) * 2020-05-20 2022-08-15 株式会社日立製作所 クラウドサーバ、ストレージシステム、及び計算機システム
JP7284796B2 (ja) * 2020-10-30 2023-05-31 銓安智慧科技股▲分▼有限公司 セキュアメモリカード及びその制御方法
US12081663B2 (en) * 2021-01-28 2024-09-03 EMC IP Holding Company LLC Key management and key policies for data encryption in a storage appliance
CN117708847B (zh) * 2023-12-04 2024-08-30 广州智租信息科技有限责任公司 基于数据压缩与加密的3c产品租赁平台数据处理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1128598A4 (en) * 1999-09-07 2007-06-20 Sony Corp SYSTEM, DEVICE, METHOD AND PROGRAM SUPPORT FOR CONTENT MANAGEMENT
US20040181811A1 (en) * 2003-03-13 2004-09-16 Rakib Selim Shlomo Thin DOCSIS in-band management for interactive HFC service delivery
JP4566668B2 (ja) * 2004-09-21 2010-10-20 株式会社日立製作所 記憶階層を有する計算機システムにおける暗号復号管理方法
US20070074292A1 (en) * 2005-09-28 2007-03-29 Hitachi, Ltd. Management of encrypted storage networks
JP4877962B2 (ja) * 2006-10-25 2012-02-15 株式会社日立製作所 暗号化機能を備えたストレージサブシステム
US9395929B2 (en) * 2008-04-25 2016-07-19 Netapp, Inc. Network storage server with integrated encryption, compression and deduplication capability
US20090319772A1 (en) * 2008-04-25 2009-12-24 Netapp, Inc. In-line content based security for data at rest in a network storage system
JP4848443B2 (ja) * 2009-04-22 2011-12-28 株式会社日立製作所 暗号化/復号化機能を有するストレージシステムを制御する計算機
US10552385B2 (en) * 2012-05-20 2020-02-04 Microsoft Technology Licensing, Llc System and methods for implementing a server-based hierarchical mass storage system
JP2014066831A (ja) * 2012-09-25 2014-04-17 Fujitsu Ltd データ処理プログラム、データ処理装置及びデータ処理システム
US9117086B2 (en) 2013-08-28 2015-08-25 Seagate Technology Llc Virtual bands concentration for self encrypting drives
US9350550B2 (en) * 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US9665303B1 (en) * 2016-10-12 2017-05-30 Divergent Storage Systems, Inc. Method and apparatus for storing information using an intelligent block storage controller

Also Published As

Publication number Publication date
US20190095651A1 (en) 2019-03-28
JPWO2018008123A1 (ja) 2018-11-29
WO2018008123A1 (ja) 2018-01-11
US10846441B2 (en) 2020-11-24

Similar Documents

Publication Publication Date Title
JP6513295B2 (ja) 計算機システム
TWI789904B (zh) 控制非揮發性記憶體之記憶體系統及方法
US11789614B2 (en) Performance allocation among users for accessing non-volatile memory devices
US20220214967A1 (en) Management of Storage Resources Allocated from Non-volatile Memory Devices to Users
US9824228B2 (en) Preserving redundancy in data deduplication systems by encryption
US20170317991A1 (en) Offloading storage encryption operations
EP3777014B1 (en) Encryption by default in an elastic computing system
JP5786611B2 (ja) ストレージ装置およびストレージシステム
US9916095B2 (en) Fork-safe memory allocation from memory-mapped files with anonymous memory behavior
US20190235792A1 (en) Storage system and control method thereof
US20200320226A1 (en) System and Method to Negotiate Encryption Responsibilities between an Encryption Capable Controller and a Self Encrypting Drive
CN113420308A (zh) 用于加密存储器的数据访问控制方法及控制系统
US10089125B2 (en) Virtual machines accessing file data, object data, and block data
JP6033420B2 (ja) ストレージシステムおよびストレージシステムの制御方法
JP2009064055A (ja) 計算機システム及びセキュリティ管理方法
US20170139842A1 (en) Storage system and cache control apparatus for storage system
JP4848443B2 (ja) 暗号化/復号化機能を有するストレージシステムを制御する計算機
US20160267050A1 (en) Storage subsystem technologies
US20220326975A1 (en) Transparent data reduction in private/public cloud environments for host encrypted data
US11748272B2 (en) Shared keys for no PCBA cartridges
JP2024088960A (ja) 情報処理システム及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190322

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: 20190402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190409

R150 Certificate of patent or registration of utility model

Ref document number: 6513295

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111