JP4892382B2 - 記憶装置及びデータ管理方法 - Google Patents

記憶装置及びデータ管理方法 Download PDF

Info

Publication number
JP4892382B2
JP4892382B2 JP2007081194A JP2007081194A JP4892382B2 JP 4892382 B2 JP4892382 B2 JP 4892382B2 JP 2007081194 A JP2007081194 A JP 2007081194A JP 2007081194 A JP2007081194 A JP 2007081194A JP 4892382 B2 JP4892382 B2 JP 4892382B2
Authority
JP
Japan
Prior art keywords
key
encryption key
shared resource
logical volume
data stored
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
JP2007081194A
Other languages
English (en)
Other versions
JP2008242720A (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
Priority to JP2007081194A priority Critical patent/JP4892382B2/ja
Priority to US12/016,355 priority patent/US8090100B2/en
Publication of JP2008242720A publication Critical patent/JP2008242720A/ja
Application granted granted Critical
Publication of JP4892382B2 publication Critical patent/JP4892382B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/80Protecting 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 storage media based on magnetic or optical technology, e.g. disks with sectors
    • G06F21/805Protecting 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 storage media based on magnetic or optical technology, e.g. disks with sectors using a security table for the storage sub-system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は記憶装置及びデータ管理方法に関し、特に記憶装置が提供する共有リソースの暗号化又は復号化を行う技術に関する。
計算機システムの大規模化に伴い、記憶装置同士間や記憶装置と計算機間等をファイバチャネル(Fibre Channel)のような記憶装置専用のネットワークで接続する、ストレージエリアネットワークが普及してきている。上記計算機システムでは、膨大化するデータの効率的な管理やデータの可用性を高めるための様々な技術が開発されている。
例えば、一つの記憶装置を複数の論理的な記憶資源(以下、SLPR:Storage management logical partition という)に分割してユーザに提供することで、計算機や管理計算機が、各SLPRを物理的に異なる記憶装置として認識する技術がある(例えば特許文献1参照)。具体的に特許文献1では、記憶装置が備える複数の記憶領域や複数のポート等のリソースをそれぞれのSLPRに割当てる技術である。上記技術によれば、例えば企業の各部門にそれぞれSLPRを割当てて、計算機システムを部門毎に独立して管理させることが可能となる。
また他の技術として、記憶領域のデータを任意時点の状態に復元するための、スナップショットやCDP(Continuous Data Protection:継続的なデータの保護)といった技術がある(例えば特許文献2参照)。スナップショットとは、ある指定時点における記憶領域のデータイメージのことである。特許文献2では、複数の記憶領域間でデータを復元するために共有するジャーナルボリュームのような、共有リソースを使用する。共有リソースは、1又は複数の記憶領域からなる記憶領域である。記憶領域にあるデータを更新する際に、予め記憶領域に格納される更新前のデータを更新データとして共有リソースに格納する。共有リソースは、任意時点毎に区分した更新データ(世代の更新データ)を格納する。そして、更新データは記憶領域内のデータを復元することが必要になった際に使用される。例えば、管理者は所定のスナップショットに対して、共有リソース内に格納された更新データを復元したい時点まで取得しリストアを行う事で、任意時点時におけるデータに復元することが可能である。
さらに別の技術として、計算機システムのセキュリティを高めることを目的として記憶領域のデータを暗号化する技術がある。この技術により、データへの不正アクセス及びディスクが盗難された際のデータ漏洩を防止することが可能である。
特開2005−165441号公報 特開2005−235058号公報
しかしながら上述の技術によると、記憶装置が有する記憶領域やポート等のリソースを論理的に分割し各SLPRへ割当てることが可能だが、共有リソース内に格納される更新データの論理分割については考慮されていない。
また、共有リソースを利用する記憶領域の構成が記憶装置を論理的に分割する等を契機に変更された場合、例えばある記憶領域が所属するSLPRが変更された場合等には、記憶領域の構成の変更を共有リソース内の更新データにも反映させる必要があるが、そのような方法については考慮されていない。
このため、格納されたデータの暗号化を行う記憶装置で論理的な分割を行う場合には、次のような問題が生じる。
まず、一つ目の問題として、次のような問題がある。
記憶装置を論理的に分割する前は、一つの暗号化鍵で記憶装置内の全ての記憶領域を暗号化しているとする。そして記憶装置を論理的に分割した後は、SLPRごとに異なる管理者を設け独立して管理させる場合を考える。この場合、互いの管理者は自らが管理するSLPR以外のSLPRで使用される暗号化鍵を知らないようにする必要があり、SLPRごとに異なる暗号化鍵で記憶領域を暗号化することが考えられる。
しかし仮にSLPRごとに異なる暗号化鍵で記憶領域が暗号化されても、上述のように、共有リソース内の更新データを論理的に分割することについては考慮されていない。このため、共有リソース内の更新データは単一の暗号化鍵で暗号化されたままである。
即ち、記憶装置を論理的に分割するにあたり、一つの共有リソース内に異なるSLPRに所属する記憶領域の更新データがそれぞれ格納される場合であっても、共有リソース内の更新データは、SLPRごとに異なる暗号化鍵で暗号化されない。したがって、一つの共有リソースが属するSLPRで使われる単一の暗号化鍵で共有リソース内の更新データが暗号化されるにとどまる、という問題が生じる。
二つ目の問題として、次のような問題がある。
例えば、記憶装置を論理的に分割することにより、記憶装置が第一のSLPRと第二のSLPRに論理的に分割され、共有リソースは第一のSLPRに所属するとする。また、共有リソース内には第一のSLPR内の記憶領域の更新データと第二のSLPR内の記憶領域の更新データとが混在しているとする。そして、第一のSLPRは管理者aが管理し、第二のSLPRは管理者bが管理しているとする。
この場合、管理者aのミスによって管理者aが管理する第一のSLPRの暗号化鍵が漏洩すると、第一のSLPR内のデータが漏洩するのみならず、管理者aとは独立に計算機システムの運用管理を行っており、暗号化鍵の漏洩ミスをしていない管理者bの第二のSLPR内のデータ(共有リソースに格納された、第二のSLPRに所属する記憶領域の更新データ)までもが漏洩してしまうという問題が生じる。
加えてこのような問題は、記憶装置の論理的な分割や論理的な結合の際に使用する暗号化鍵を変更する場合や、当該暗号化鍵を管理する管理者の変更の場合に限られず、共有リソースを利用する記憶領域の暗号化鍵を変更する場合や、当該暗号化鍵を管理する管理者を変更する場合にも生じる。
三つ目の問題として、次のような問題がある。
例えば、二つ目の問題を防ぐために、共有リソース自体の暗号化は行なわず、共有リソース内に、共有リソースを利用する各記憶領域の暗号化鍵を使用して暗号化した更新データを格納することを考える。この場合、共有リソース内には、SLPRごとに(又は記憶領域ごとに)異なる暗号化鍵で暗号化された記憶領域の更新データがそれぞれ格納される。しかしながら、記憶領域の暗号化鍵を変更することによって、共有リソース内には暗号化鍵を変更した後の記憶領域の更新データと、暗号化鍵を変更する前の記憶領域の更新データとが混在してしまう可能性がある。
この場合、暗号化鍵を変更した後の記憶領域の更新データを、暗号化鍵を変更する前の記憶領域にリストアした場合や、暗号化鍵を変更する前の記憶領域の更新データを、暗号化鍵を変更した後の記憶領域にリストアした場合には、データを正しく復元することができないため、データが破壊されてしまうという問題が生じる。
このような問題は、記憶装置の論理的な分割や論理的な結合の際の暗号化鍵を変更する場合や当該暗号化鍵を管理する管理者の変更の場合に限られず、記憶領域に使用する暗号化鍵を更新する(re-key)際に伴って暗号化鍵を変更する場合にも生じる。
本発明は、上記の点を鑑みて考えられたものであり、記憶装置を論理的に分割又は結合することを契機として、記憶領域に使用される暗号化鍵が変更又は管理者が変更された場合であっても、共有リソースに格納される更新データのセキュリティを高めると同時に管理者が共有リソース内の更新データを正しく利用できる記憶装置及びデータ管理方法を提供することにある。
かかる課題を解決するため本発明は、計算機からのデータの入出力を制御する記憶装置において、計算機からのデータを記憶する論理ボリュームと、計算機からの次データを論理ボリュームに記憶するために、予め論理ボリュームに記憶されるデータを更新データとして記憶する共有リソースと、論理ボリュームに記憶されるデータ又は共有リソースに記憶される更新データを暗号化又は復号化する暗号化復号化部と、論理ボリュームに記憶されるデータを暗号化又は復号化するための鍵を変更し、論理ボリュームに記憶されるデータに使用した鍵の情報に基づいて、共有リソース内に記憶される更新データを暗号化又は復号化するための鍵を変更する鍵変更部と、を備えることを特徴とする。
この結果、論理ボリュームに使用される鍵の変更に伴って、記憶装置は、論理ボリュームに記憶されるデータの更新データを保存する共有リソース内の記憶領域に使用される鍵も変更することができる。
また、本発明は、計算機からのデータの入出力を制御する記憶装置のデータ管理方法において、計算機からのデータを論理ボリュームで記憶し、計算機からの次データを論理ボリュームに記憶するために、予め論理ボリュームに記憶されるデータを更新データとして共有リソースで記憶し、論理ボリュームに記憶されるデータ又は共有リソースに記憶される更新データを暗号化又は復号化する暗号化復号化ステップと、論理ボリュームに記憶されるデータを暗号化又は復号化するための鍵を変更し、論理ボリュームに記憶されるデータに使用した前記鍵の情報に基づいて、共有リソース内に記憶される更新データを暗号化又は復号化するための鍵を変更する鍵変更ステップと、を備えることを特徴とする。
この結果、論理ボリュームに使用される鍵の変更に伴って、記憶装置は、論理ボリュームに記憶されるデータの更新データを保存する共有リソース内の記憶領域に使用される鍵も変更することができる。
その他、記憶装置は管理計算機から自記憶装置の論理分割/論理結合要求を受信し自記憶装置の論理分割/論理結合を行う。記憶装置は論理分割/論理結合を行なうにあたり新たな鍵を生成し、SLPRで使用する鍵を変更する。記憶装置は、SLPRの鍵変更に伴って鍵変更される記憶領域が共有リソースを利用しているか確認する。当該記憶領域が共有リソースを利用している場合は、共有リソース内の当該記憶領域の更新データを鍵変更前の鍵で復号し、鍵変更後の新規鍵で再暗号化する。また記憶装置は、共有リソースを利用する記憶領域のうち鍵変更中のものに対して計算機から書き込み要求をうけた場合、書き込み場所の鍵変更状態を確認する。記憶装置は、当該鍵変更状態に応じて、記憶領域の更新データを復号化せずに暗号化されたまま、または、鍵変更前の鍵で復号化し鍵変更後の新規鍵で再暗号化して、共有リソース内に書き込む。さらに記憶装置は、鍵変更中の記憶領域に関して計算機からリストア要求を受信した場合は、当該記憶領域及び共有リソース内の当該記憶領域の更新データの鍵変更状態に応じたリストア処理を行なう。
本発明によれば、共有リソースに格納される記憶領域の更新データのセキュリティを高め、管理者が共有リソース内の更新データを正しく利用することができる。
以下、本発明の実施の形態を第1の実施の形態、第2の実施の形態及び第3の実施の形態として説明する。なお、以下に説明する実施の形態は一例であって、本発明はこれに限定されるものではない。また以下では、記憶装置を論理的に分割又は論理的に結合することをSLPR分割又はSLPR結合と称し、記憶領域を論理ボリュームLU(Logical Unit)と称す。
(1) 第1の実施の形態
以下に、図1から図19を用いて、第1の実施の形態を説明する。
(1−1) 物理的なシステム構成
図1は、本実施形態のシステム構成である。
1は、本実施の形態の計算機システムを示す。
本実施の形態の計算機システム1は、複数の計算機101がファイバチャネルスイッチ(以下、FCスイッチと呼ぶ)401を介して記憶装置201Aに接続され、記憶装置201Aが管理計算機301と接続される構成である。
それぞれの計算機101は、CPU110、メモリ120、ファイバチャネルインタフェース130(以下、FCインタフェースと呼ぶ)を備える。メモリ120には、CPU110が実行するプログラムや、記憶装置201Aから読み出したデータ及び記憶装置201Aに書き込むデータを保持する。
計算機101は、FCインタフェース130を介してFCスイッチ401に接続される。
記憶装置201Aは、FCスイッチ401に接続されるFCインタフェース230(図中、FC I/Fと示す)、管理計算機301に接続される管理インタフェース220(図中、管理 I/Fと示す)、計算機101が利用するデータを保持するためのディスク装置211、ディスク装置211に接続されるディスクインタフェース240(図中、ディスク I/Fと示す)、記憶装置201A内のプログラムを制御するためのCPU221、CPU221が実行するプログラムや記憶装置201Aを管理するための各種管理情報を保持するメモリ223、CPU221とメモリ223との間のデータ転送や各インタフェース220、230、240とメモリ223との間のデータ転送等の各種データ転送を制御するブリッジ222を備える。
記憶装置201Aは、FCインタフェース230を介して計算機101からのRead/Write要求を受け取り、要求されたデータをディスク装置211の記憶領域から提供される論理ボリュームLUから取得及び要求されたデータを論理ボリュームLUへ書き込みを、ディスクインタフェース240を介して行う。なお、記憶装置201Aはデータの暗号化・復号化機能を備えている。計算機101からのRead/Write要求受信時の記憶装置201Aでのデータの暗号化・復号化の処理の詳細については後述する。また記憶装置201Aは管理計算機301との間で、記憶装置201Aを管理するための各種管理情報の送受信を、管理インタフェース220を介して行う。
なお、FCインタフェース230、管理インタフェース220、ディスクインタフェース240は、それぞれ複数あってもよい。
管理計算機301は、記憶装置201Aに接続される管理インタフェース310と、管理計算機301内の処理を行うCPU311と、CPU311が実行するプログラムや管理インタフェース310が送受信するデータなどを保持するメモリ313と、を備える。
図2に、管理計算機301のメモリ313が備えるプログラムを示す。管理計算機301のメモリ313は、記憶装置201Aの管理操作の実行を要求する記憶装置管理要求プログラム315を備える。CPU311が記憶装置管理要求プログラム515を実行することで、記憶装置201Aに対して論理ボリュームLUの作成や削除など、記憶装置201Aの構成や状態を管理する操作の実行を要求することができる。
(1−2) 論理的なシステム構成
図3は、記憶装置201Aの論理的なシステム構成を示す図である。以下、図3を用いて、記憶装置201AのSLPR分割・SLPR結合の一例を示す。記憶装置201Aは論理ボリュームLU1〜LU3と共有リソース213を備える。共有リソース213内には、論理ボリュームLU1の更新データと論理ボリュームLU3の更新データが格納されている。
ここで更新データとは、論理ボリュームLUのある時点のスナップショット取得後に、論理ボリュームLUへのデータ書換えが生じる際に生じる、書換え前のデータのことである。
共有リソース213内では、スナップショット取得後の最初のデータ書換えで生じる更新データを1世代更新データ、次のデータ書換えで生じる更新データを2世代更新データとし、更新データの世代管理がなされている。共有リソース213は、1又は複数の論理ボリュームLUからなる記憶領域である。
また図示していないが、記憶装置201Aは論理ボリュームLU以外のリソース、例えば通信ポートやキャッシュメモリ等も備えるとする。
なお、記憶装置201Aは図示する以外の論理ボリュームLU及び共有リソースを備えていてもよい。
以下、図3の例での記憶装置201AのSLPR分割・SLPR結合に伴う、記憶装置201A内の構成変更の詳細について説明する。
記憶装置201AはSLPR1とSLPR2に論理的に分割される。これにあたり、記憶装置201Aが備える論理ボリュームLU1、LU2と共有リソース213はSLPR1に割当てられ、論理ボリュームLU3はSLPR2に割当てられる。
そしてSLPR1にはSLPR1を管理する管理者が存在し、SLPR2にはSLPR2管理者が存在する。各SLPR管理者は、自身に割り当てられたSLPRのリソースの範囲内で、SLPRの管理を行う。SLPRの管理とは、例えば論理ボリュームLUの容量設定や、計算機から論理ボリュームLUへアクセスするためのパスの設定等である。
記憶装置201A全体を管理する全体管理者はSLPR1とSLPR2の管理が可能であり、例えばSLPR1とSLPR2の結合等が可能である。
なお、図示していないが、論理ボリュームLU以外のリソース(通信ポートやキャッシュメモリ等)も記憶装置201AのSLPR分割の際に何れかのSLPRへ分配される。
またSLPR1とSLPR2の結合に関しては、SLPR分割の逆の処理として行なわれる。
(1−3) メモリ内の各種プログラム及び各種情報
図4に、記憶装置201Aのメモリ223が備えるプログラム及び情報を示す。記憶装置201Aのメモリ223は、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227、アカウント認証・認可プログラム228、リストア制御プログラム229、物理ディスク管理情報243、LU管理情報244、鍵情報245、鍵変更情報246、共有リソース内データ管理情報247、アカウント情報248、及び役割定義情報249を備える。
記憶装置管理プログラム225は、SLPR分割やSLPR結合、論理ボリュームLUの新規作成・削除、アカウント情報の設定等、記憶装置201Aの管理を行なう。
鍵変更プログラム226は、論理ボリュームLUのデータの暗号化・復号化に用いる鍵(以下、LUの鍵という)の変更を行なう。LUの鍵の変更は、例えば記憶装置201AのSLPR分割やSLPR結合によってある論理ボリュームLUの所属SLPRが変更になった時等に、当該プログラムを用いて行なわれる。
暗号化・復号化プログラム227は、論理ボリュームLUや共有リソース213に書き込むデータの暗号化、また、論理ボリュームLUや共有リソース213に格納された暗号化データの復号化を行なう。なお、暗号化・復号化プログラム227に基づいた暗号化・復号化処理の詳細については後述する。
アカウント認証・認可プログラム228は、記憶装置201Aに対して管理操作を要求する管理者が正当な管理者であるか、また、当該管理操作を行なう権限を当該管理者が有しているかの検証を行なう。
リストア制御プログラム229は、管理計算機301から受信したリストア要求を受けリストアに使用する論理ボリュームLU及び共有リソース213内の当該論理ボリュームLUの更新データが鍵変更中であるか否かを判定して、当該鍵変更状態に応じたリストア処理を行なう。
物理ディスク管理情報243、LU管理情報244、鍵情報245、鍵変更情報246、共有リソース内データ管理情報247、アカウント情報248、及び役割定義情報249については、後述で説明する。
図5に、記憶装置201Aのメモリ223が備える物理ディスク管理情報243を示す。
物理ディスク管理情報243は、記憶装置201Aに備えられるディスク装置211を管理するための情報であり、当該情報には記憶装置201A内の物理的な構成や配置に依存する物理的な管理情報が格納される。
物理ディスク管理情報243では、各ディスク装置211を特定するための「ディスク番号」フィールド243A、各ディスク装置211の容量を示す「容量」フィールド243B、各ディスク装置211のRAID(Redundant Arrays of Inexpensive Disks)構成を示す「RAID」フィールド243C、各ディスク装置211が所属する「RAIDグループ番号」フィールド243Dが構成される。
なお、RAIDグループとは、各ディスク装置211が有し、一つのRAIDを構成する複数のハードディスクドライブからなるグループである。
図6に、記憶装置201Aのメモリ223が備えるLU管理情報244を示す。
LU管理情報244は、複数のディスク装置211上に論理的に作成される複数の論理ボリュームLUを管理するための情報である。
LU管理情報244では、複数の論理ボリュームLUを特定するための「LU番号」フィールド244A、各論理ボリュームLUを構成するディスク装置211を示す「ディスク番号」フィールド244B、各論理ボリュームLUの容量を示す「容量」フィールド244C、各LU212のRAID構成を示す「RAID」フィールド244D、各論理ボリュームLUが所属するSLPRを示す「所属SLPR」フィールド244E、各論理ボリュームLUが共有リソース213を使用しているか否かを示す「共有リソースフラグ」フィールド244F、各論理ボリュームLUが鍵を変更中であるか否かを示す「変更状態」フィールド244Gが構成される。
例えば、図6に示すように、「共有リソースフラグ」フィールド244Fが「OFF」の場合には、共有リソースを設定おらず、更新データが保存されていない状態を示す。一方、「共有リソースフラグ」フィールド244Fが「ON」の場合には、共有リソース213が設定されており、更新データが保存されている状態を示す。
「変更状態」フィールド244Gの「変更中(ブロック番号10)」は、対象となる論理ボリュームLU内のブロック10番目までの鍵変更が終了していることを示している。
図6に示した論理ボリュームLUの作成例を、図7に示す。
論理ボリュームLU1はRAIDグループ0を構成するディスク番号001〜005のディスク装置211上に作成される。論理ボルームLU2も同様にRAIDグループ0を構成するディスク番号001〜005のディスク装置211上に作成される。そしてLU3は、RAIDグループ1を構成するディスク番号006、007のディスク装置211上に作成される。
図8に、記憶装置201Aのメモリ223が備える鍵情報245を示す。
鍵情報245は、論理ボリュームLUの暗号化・復号化に使用する鍵の情報である。
鍵情報245は、SLPRを示す「SLPR番号」フィールド245Aと、当該SLPR内の論理ボリュームLUの暗号化・復号化に使用する鍵の「鍵番号」フィールド245B、鍵のデータ情報である「鍵データ」フィールド245C、SLPRに所属する論理ボリュームLUで鍵変更中のものが存在するか否かを示す「変更状態」フィールド245Dから構成される。
なお、図8においてSLPRごとに鍵を設定しているが、LUごとに鍵を設定してもよい。また、「変更状態」フィールド245Dが「変更中」のSLPRはSLPR分割及び結合ができず、変更が終了してからSLPRの分割及び結合が可能となる。
図9に、記憶装置201Aのメモリ223が備える鍵変更情報246を示す。
鍵変更情報246は、LUの暗号化・復号化に使用する鍵を変更中であるか否かを示す情報である。
鍵変更情報246は、鍵変更を行う論理ボリュームLUの番号を示す「LU番号」フィールド246A、論理ボリュームLUの鍵変更における変更前の鍵を示す「鍵(変更前)」フィールド246B、「鍵(変更前)」フィールド246Bの鍵番号を示す「鍵番号」フィールド246B1、「鍵(変更前)」フィールド246Bの鍵データを示す「鍵データ」フィールド246B2、当該論理ボリュームLUの鍵変更における変更後の鍵を示す「鍵(変更後)」フィールド246C、「鍵(変更後)」フィールド246Cの鍵番号を示す「鍵番号」フィールド246C1、「鍵(変更後)」フィールド246Cの鍵データを示す「鍵データ」フィールド246C2、当該論理ボリュームLUの鍵変更の状態を示す「変更状態」フィールド246Dから構成される。
なお、「変更状態」フィールド246Dが空欄の論理ボリュームLUは、当該論理ボリュ無LUの鍵変更が完了済みまたは鍵変更が行なわれていないことを示す。また、「変更状態」フィールド246Dが「変更中」の論理ボリュームLUは、当該論理ボリュームLUの鍵が変更中であることを示す。具体的には、当該論理ボリュームLUのデータまたは共有リソース213内の当該論理ボリュームLUの更新データを、変更前の鍵と変更後の鍵とを使って変更中であることを示す。
図9には明記していないが、ある論理ボリュームLUに使用する鍵の変更が完了した場合、鍵(変更後)の「鍵番号」フィールド246C1の値を、鍵(変更前)の「鍵番号」フィールド246B1の欄に上書きして更新するため、鍵(変更後)の「鍵番号」フィールド246C1及び「変更状態」フィールド246Dは空欄となる。
例えばLU番号3の論理ボリュームLU3は、「変更状態」フィールド246Dが「変更中」であるため、当該論理ボリュームLU3のデータ及び共有リソース213内の当該論理ボリュームLUの更新データを、変更前の鍵(鍵番号246B1が1の鍵)を使って復号し、変更後の鍵(鍵番号246C1が2の鍵)を使って再暗号化中であることを示す。
なお、「鍵番号」フィールド246B1及び「鍵番号」フィールド246C1内の値は、「鍵番号」フィールド245B内の値と対応しており、鍵番号が同じ鍵は同一の鍵であることを示している。
図10に、記憶装置201Aのメモリ223が備える共有リソース内データ管理情報247を示す。
共有リソース内データ管理情報247は、各共有リソース213に格納されている論理ボリュームLUの更新データを管理するための情報である。
共有リソース内データ管理情報247は、共有リソース213の番号を示す「共有リソース番号」フィールド247A、当該共有リソース213が所属するSLPRの番号を示す「SLPR番号」フィールド247B、当該共有リソース213を使用する論理ボリュームLUの番号を示す「LU番号」フィールド247C、当該論理ボリュームLUが所属するSLPRの番号を示す「SLPR番号」フィールド247D、当該論理ボリュームLUの共有リソース213内の更新データの鍵変更の状態を示す「変更状態」フィールド247Eから構成される。
例えば、「変更状態」フィールド247Eが空欄の場合は、共有リソース213内の更新データの鍵変更が完了済み又は鍵変更が行なわれていないことを示す。また「変更状態」フィールド247Eが「変更中」の場合は、共有リソース213内の更新データが、変更前の鍵と変更後の鍵とを使って変更中であることを示す。例えばLU番号3の論理ボリュームLU3は、「変更状態」フィールド247E内が「変更中(ブロック番号5)」であるため、共有リソース213内の更新データ内のブロック番号5まで鍵変更が完了済みであることを示している。
図11に、記憶装置201Aのメモリ223が備えるアカウント情報248を示す。
アカウント情報248には、管理者のユーザID、パスワード、役割の情報が格納される。
アカウント情報248は、管理者が記憶装置201Aに対して管理操作を行う際に使用する「ユーザID」フィールド248A、「パスワード」フィールド248B、記憶装置201Aにおいて管理者の操作権限を示す「役割」フィールド248Cを備える。
なお、アカウント情報248は、一つのユーザID248aが複数の役割248cを有する形態であってもよい。役割の詳細については、図11を用いて後述する。
なお、本実施例では管理者を識別するためのアカウント情報としてユーザID、パスワードを使用しているが、それ以外に記憶装置201Aと管理計算機301との間でセッションを確立し、確立したセッションIDなどを使用してもよい。
図12に、記憶装置201Aのメモリ223が備える役割定義情報249を示す。
役割定義情報249は、記憶装置201Aにおいて管理者の実行可能な操作を規定する情報である。
役割定義情報249は、「役割名」フィールド249A、管理者が管理可能なSLPRを示す「SLPR」フィールド249B、管理者が管理可能な鍵を示す「鍵」フィールド249Cから構成される。ここで鍵の管理とは、鍵のバックアップや更新等、鍵に関する操作のことである。図12において、例えばSLPR1管理者はSLPR1内のリソースの管理であるSLPR1内の論理ボリュームLUの作成や、SLPR1内の論理ボリュームLUの暗号化・復号化に使用する鍵の参照や、論理ボリュームLUのバックアップが可能である。
また、役割をさらに細かく分離させてもよい。例えば、SLPR1管理者の役割を、ユーザID・パスワードの設定等のアカウント管理を行なうアカウント管理役割、論理ボリュームLUの作成等のストレージ管理を行なうストレージ管理役割に分離する等である。
図12において、全体管理者は「SLPR」の「全て」及び「鍵」の「全て」において管理権限を有しているが、これらの権限を各SLPR管理者に委譲して全体管理者はこれらのリソースの管理権限を有さない運用としても良い。
(1−4) 鍵変更中でない論理ボリュームのRead/Write処理
それでは次に、計算機101からRead/Write要求を受信した記憶装置201Aのデータの暗号化・復号化の処理を説明する。
まず、図13に示すように、論理ボリュームLUに使用する鍵の変更処理を実行していない場合に、論理ボリュームLUに対して計算機101からRead/Write要求を受信したフローチャートについて説明する。Read/Write処理は、記憶装置201AのCPU221が暗号化・復号化プログラム227に基づいて実行する。
具体的にはまず、記憶装置201AのCPU221は、計算機101からデータのRead/Write要求を受信するとRead/Write処理を開始する(S1301A)。計算機101から受信する情報には、計算機101が要求する操作がRead/Writeの何れであるかを示す情報、Read/Write要求先の論理ボリュームLUの情報、Write要求の場合の書き込みデータ、が含まれる。
次にCPU221はステップS1301で受信した情報に基づいて、Read/Write要求先の論理ボリュームLUを特定する(S1302)。そしてCPU221は、LU管理情報244を参照して、特定した論理ボリュームLUが所属するSLPRの特定を行なう(S1302)。またCPU221は、鍵情報245を参照して、特定したSLPRで使用する鍵の特定を行なう(S1302)。
次にCPU221は、ステップS1301で受信した計算機101からの要求がRead要求であるか、Write要求であるかを判別する(S1303)。
CPU221は、Read要求であると判別した場合(S1303:YES)、ステップS1302で特定した鍵を用いて、論理ボリュームLU内に保存されている暗号化されたデータを復号する(S1308)。そしてCPU221は、復号化したデータを計算機101へ送信し(S1309)、この処理を終了する(S1311)。
一方、ステップS1303においてCPU221は、Write要求であると判別した場合(S1303:NO)、LU管理情報244を参照して、Write要求先の論理ボリュームLUが共有リソース213を使用しているか否か判別する(S1304)。
ステップS1304において、CPU221は、Write要求先の論理ボリュームLUが共有リソース213を使用していると判定した場合(S1304:YES)、計算機101から受信した書き込みデータをステップS1302で特定した鍵を用いて暗号化する。
そしてCPU221は、Write要求先の論理ボリュームLUに暗号化したデータを書き込んでデータを更新する前に、予め論理ボリュームLU内に保存されている更新前のデータを特定する(S1305)。
次にCPU221は、予め保存されている更新前のデータをWrite要求先の論理ボリュームLUから復号化しないまま読み取り、共有リソース213へ書き込む(S1306)。この書き込み処理により、共有リソース213内に保存される更新データが更新される。
そしてCPU221は、暗号化されたデータを、計算機101が指定するWrite要求先の論理ボリュームLUへ書き込むと(S1307)、この処理を終了する(S1311)。
一方、ステップ1304において、CPU221は、Write要求先の論理ボリュームLUが共有リソース213を使用していないと判定した場合(S1304:NO)、計算機101から受信した書き込みデータをステップS1302で特定した鍵を用いて暗号化し、Write要求先の論理ボリュームLUに暗号化したデータを書き込むと(S1310)、この処理を終了する(S1311)。
なお、ステップS1306の他の形態として、次の形態が挙げられる。すなわち、CPU221は、ステップS1305で更新される論理ボリュームLU内のデータを、ステップS1302で特定した鍵を用いて復号化する。そしてCPU221は、復号化したデータを共有リソース213が所属するSLPRの鍵で再暗号化した後、暗号化したデータを共有リソース213に書き込む。この他の形態の場合、CPU221は共有リソース213がどのSLPRに所属するかを示す管理情報を別途参照する必要がある。
(1−5) SLPR分割処理
次に、論理ボリュームLUに使用する鍵の変更処理を実行する場合に、論理ボリュームLUに対して暗号化・復号化処理を行うことについて説明する。論理ボリュームLUに使用する鍵の変更処理は、記憶装置201AがSLPR分割・SLPR結合の際に行われる。
まず、記憶装置201AがSLPR分割を行うことに伴って鍵の変更処理が行われる場合を、図14に示すフローチャートに基づいて説明する。図14では、記憶装置201AのCPU221が、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227及びアカウント認証・認可プログラム228に基づいて実行する。
記憶装置201AのCPU221は、管理計算機301からSLPR分割要求を受信すると、この処理を開始する(S1401)。例えば、CPU221は、SLPR1とSLPR2とに分割する要求を受信する。
なお、ステップS1401で管理計算機301から受信する情報には、管理計算機301を使用する管理者のユーザID情報とパスワード情報、当該管理者が要求する操作の内容(記憶装置201AのSLPR1とSLPR2への分割)が含まれる。
次に、CPU221は、アカウント認証・認可プログラム228に基づいてアカウント情報248を参照する。そしてCPU221は、管理計算機301から受信したユーザID情報とパスワード情報が正当であるか否か、及び、管理計算機301からSLPR分割要求を行った管理者が操作を行う権限を有しているか否かを判別する(S1402)。
CPU221は、ユーザID情報とパスワード情報が正当であって、管理者が正当な管理者であると判定した場合には(S1402:YES)、記憶装置管理プログラム225に基づいて、SLPR分割を開始する(S1403)。
このフローチャートにおいてSLPR分割とは、記憶装置201Aの管理管轄を論理的に分割することであって、具体的には記憶装置201Aが備える論理ボリュームLUやポート等のリソースをSLPR毎(例えば、SLPR1又はSLPR2)に割当て、それぞれのSLPRで割当てられたリソースを別個に管理できるようにすることである。
CPU221は、鍵変更プログラム226に基づいて新規鍵の生成を行う(S1404)。加えてCPU221は、SLPR分割によって割当てられた論理ボリュームLUや論理ボリュームLUが使用する鍵の生成に伴って、LU管理情報244、鍵情報245、鍵変更情報246及び共有リソース内データ管理情報247を更新する(S1404)。
ここで、鍵情報245、鍵変更情報246及び共有リソース内データ管理情報247の更新の様子を図16から図18に示す。
まず図16(A)から(C)は、SLPR分割前・分割中・分割後における鍵情報245の様子を示している。
図16(A)の「SLPR番号」フィールド245Aは「−」となっているため、記憶装置201A内にSLPRが存在せず、SLPR分割が行われていないことを示している。また「鍵番号」フィールド245Bの値が「1」となっていることから、SLPR分割前における記憶装置201Aでは全ての論理ボリュームLU及び共有リソース213内の更新データに対して、鍵番号「1」の鍵を用いてデータの暗号化・復号化が行われていることを示している。さらに「変更状態」フィールド245Dが空欄のため、鍵変更中の論理ボリュームLUは存在しないことを示している。
図16(B)の「SLPR番号」フィールド245Aには、SLPR「1」とSLPR「2」が存在することがわかる。またSLPR1ではSLPR分割前と同じ鍵(鍵番号245bが1の鍵)を使用しているのに対し、SLPR2ではSLPR分割前と異なる新規鍵(鍵番号245bが2の鍵)を使用している。このことから、SLPR分割によって新規鍵の作成と鍵変更が行われていることがわかる。
鍵変更が行われるSLPR2では、SLPR2内にある論理ボリュームLUの鍵変更が行われる。ここで、論理ボリュームLUの鍵変更とは、鍵変更情報246に基づいて、鍵変更が行われる前までに格納されている論理ボリュームLU内のデータ、及び、論理ボリュームLUが共有リソース213を利用する場合に共有リソース213内にある論理ボリュームLUの更新データについて、変更前の鍵を使用して復号した後、変更後の鍵を使用して再暗号化してデータを更新することである。鍵を変更した後は、論理ボリュームLUのデータ及び共有リソース213内にある論理ボリュームLUの更新データは変更後の鍵を使って暗号化・復号化される。SLPR2の「変更状態」フィールド245Dは「変更中」であることから、SLPR2内に鍵を変更中の論理ボリュームLUが存在することがわかる。
そうして、SLPR2において鍵の変更が終了した場合、鍵情報245は図16(C)の状態になる。
次に、図17(A)から(C)は、SLPR分割前・分割中・分割後における鍵変更情報246の様子を示している。
図17(A)では、「変更状態」フィールド246Dが、「空欄」のため、現時点において論理ボリュームLUに使用する鍵の変更は行われていないことを示している。
図17(B)では、論理ボリュームLU3の「変更状態」フィールド246Dは「変更中」であるため、鍵番号「1」の鍵から鍵番号「2」の鍵に変更中であることを示している。
そして鍵の変更を終了した後の鍵変更情報246は、図17(C)のようになる。
次に、図18(A)から(C)は、SLPR分割前・分割中・分割後における共有リソース内データ管理情報247の様子を示している。
図18(A)では、論理ボリュームLU「1」及びLU「3」が共有リソース「1」を利用していることを示している。また論理ボリュームLU1及びLU3の「変更状態」フィールド247Eは、「空欄」となっており、現在共有リソース213内にあるLU1及びLU3の更新データの鍵変更は行われていないことを示している。
図18(B)では、論理ボリュームLU3の「変更状態」フィールド247Eが「変更中(ブロック番号5)」であるため、共有リソース213内にある論理ボリュームLU3の更新データの5番目のブロックまで鍵の変更が完了済みであることを示している。鍵の変更が終了した後の共有リソース内データ管理情報247は、図18(C)に示す状態になる。
次にCPU221は、共有リソース内データ管理情報247を参照して、鍵の変更が行われる論理ボリュームLUが共有リソース213を使用しているか否か判定する(S1405)。
そしてCPU221は、鍵の変更が行なわれる論理ボリュームLUが共有リソース213を使用していると判定した場合には(S1405:YES)、鍵変更情報246を参照して、SLPR分割前まで共有リソース213内に格納された論理ボリュームLUの更新データを、変更前の鍵で復号化し、変更後の鍵で再暗号化する(S1406)。
例えば、論理ボリュームLU3は共有リソース213を使用しており、SLPR分割によって図17(B)に示すように鍵変更されるため、共有リソース213内の論理ボリュームLU3の更新データは、鍵番号が「1」の鍵で復号化され、鍵番号が「2」の鍵で再暗号化される。
CPU221は、鍵の変更が行なわれる論理ボリュームLUが共有リソース213を使用していないと判定した場合(S1405:NO)又はステップS1406の処理を実行した場合に、鍵変更情報246を参照して、論理ボリュームLUのデータを変更前の鍵で復号化し、変更後の鍵で再暗号化する(S1407)。
例えば論理ボリュームLU3のデータは、図17(B)に示す鍵変更情報246に基づき、鍵番号が「1」の鍵で復号化され、鍵番号が「2」の鍵で再暗号化される。
なお、本フローチャートでは、ステップS1406の後にステップS1407を行なっているが、両ステップを並列して行なうフローチャートとしても良い。またステップS1406で鍵の変更処理が終了した場合、論理ボリュームLUの「変更状態」フィールド247Eは「変更中」から「空欄」へ更新され、ステップS1407での鍵の変更処理が終了した場合、論理ボリュームLUの「変更状態」フィールド244Gは「変更中」から「空欄」へ更新される。
次にCPU221は、論理ボリュームLUに使用する鍵の変更を終了した後、鍵の変更をした論理ボリュームLUの鍵変更情報246を更新する(S1408)。具体的には、鍵変更情報246の「鍵(変更後)」フィールド246Cの鍵情報を、「鍵(変更前)」フィールド246Bの鍵情報に上書きし、「鍵(変更後)」フィールド246C及び「変更状態」フィールド246Dを「空欄」にする。
引き続きCPU221は、鍵情報245を更新する(S1408)。具体的には、ステップS1404の処理後の鍵情報245において、SLPR内の全ての論理ボリュームLUに使用する鍵の変更を終了した後、「変更状態」フィールド245Dを「変更中」から「空欄」にする(S1409)。
CPU221は、ステップS1409の処理が終了すると、SLPR分割の処理を終了する(S1410)。
なお、ステップS1402において、CPU221は、各種の情報が正当でなく、管理者が正当な管理者でないと判定した場合には(S1402:NO)、SLPR分割の処理を終了する(S1410)。
(1−6) SLPR結合処理
次に、記憶装置201AのCPU221がSLPR結合を行うことに伴って鍵の変更処理が行われる場合を、図15に示すフローチャートに基づいて説明する。図15では、図14と同様に、記憶装置201AのCPU221が、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227及びアカウント認証・認可プログラム228に基づいて実行する。
なお、SLPR結合処理のステップ処理において、上述したSLPR分割処理と同様のステップ処理の場合には、詳細な説明は省略する。
まず、CPU221は、管理計算機301からSLPR結合要求を受信すると、SLPR結合処理を開始する(S1501)。例えば、CPU221は、SLPR1とSLPR2とを結合する要求を管理計算機301から受信する。
このフローチャートにおいてSLPR結合とは、記憶装置201Aの管理管轄を論理的に結合することであって、具体的にはSLPR毎に別個独立に管理されていた論理ボリュームLUやポート等のリソースを、結合するSLPR毎又は記憶装置201A全体に割当て、結合単位でリソースを管理できるようにすることである。
そして、CPU221は、アカウント認証・認可プログラム228を用いて、ステップS1501の操作を要求する管理者を認証し、管理者が操作を行う権限を有しているか判別する(S1502)。
ステップS1502において、CPU221は、管理者が正当な管理者であり記憶装置201Aへの操作を行う権限を有していると判定した場合には(S1502:YES)、CPU221は、記憶装置管理プログラム225を用いてSLPR結合を開始する(S1503)。
次にCPU221は、鍵変更プログラム226を用いて、SLPR結合によって生じる鍵の変更を行い、LU管理情報244、鍵情報245、鍵変更情報246及び共有リソース内データ管理情報247を更新する(S1504)。
ここで、本ステップS1504における、鍵情報245、共有リソース内データ管理情報247と鍵変更情報246の更新の模様を図16、図17、図18を用いて説明する。
図16、図17、図18の共通の事項として、各図(C)はSLPR結合前の状態、各図(B)はSLPR結合中の状態、各図(A)はSLPR結合後の状態を示している。
なお、本SLPR結合処理では、図16(C)と図16(A)とを比較してわかるように、SLPR2についてのみ鍵番号が「2」から「1」に鍵の変更が行なわれ、それに伴いSLPR2に所属していた論理ボリュームLU3のみに使用する鍵の変更が行なわれる。
鍵情報245の更新については、SLPR結合前は図16(C)に示すように、SLPR1、SLPR2の「変更状態」フィールド245Dは「空欄」である。そしてCPU221がSLPR結合を実行すると、図16(B)に示すように「変更状態」フィールド245Dは「変更中」となる。そしてSLPR2の鍵変更が終了してSLPR結合が終了すると、鍵情報245は図16(A)に示す状態になる。
次に鍵変更情報246については、図17(C)に示すように、SLPR結合前の初期状態では、論理ボリュームLU3の「鍵(変更後)」フィールド246Cにある「鍵番号」フィールド246C1、「鍵データ」フィールド246C2及び「変更状態」フィールド246Dが空欄である。CPU221が、SLPR結合を実行すると、論理ボリュームLU3の「鍵(変更後)」フィールド246Cに、図16(A)の鍵番号「1」の情報がセットされ、「変更状態」フィールド246Dが「変更中」となる。そして論理ボリュームLU3の鍵の変更が終了すると、鍵変更情報246は図17(A)のようになる。
次に、共有リソース内データ管理情報247については、図18(C)に示すように、SLPR結合前の初期状態では論理ボリュームLU3の「変更状態」フィールド247Eが「空欄」である。CPU221がSLPR結合を実行すると、図18(B)に示すように「変更状態」フィールド247Eは「変更中(ブロック番号5)」となる。そして共有リソース213内の論理ボリュームLU3の更新データに使用する鍵の変更処理が終了すると、共有リソース内データ管理情報247は図18(A)のようになる。
CPU221は、共有リソース内データ管理情報247を参照して、鍵変更が行われる論理ボリュームLUが共有リソース213を使用しているか否か判定する(S1505)。
CPU221は、鍵変更が行なわれる論理ボリュームLUが共有リソース213を使用していると判定した場合には(S1505:YES)、鍵変更情報246を参照して、SLPR結合前までに共有リソース213内に格納された論理ボリュームLUの更新データを、変更前の鍵で復号化し、変更後の鍵で再暗号化する(S1506)。
次に、CPU221は、鍵変更が行なわれる論理ボリュームLUが共有リソース213を使用していないと判定した場合には(S1505:NO)、又はステップS1506を実行した場合、鍵変更情報246を参照して、論理ボリュームLUのデータを、変更前の鍵で復号化し、変更後の鍵で再暗号化する(S1506)。
なお、本フローチャートではステップS1506の後にステップS1507を行なっているが、両ステップを並列して行なうフローチャートとしても良い。
またステップS1506での鍵の変更処理が終了した場合、LUの「変更状態」フィールド247Eは「変更中」から「空欄」へ更新され、ステップS1507での鍵の変更処理が終了した場合、LUの「変更状態」フィールド244Gは「変更中」から「空欄」へ更新される。
次にCPU221は、論理ボリュームLUに使用する鍵の変更を終了した後、鍵変更情報246を更新する(S1508)。具体的にCPU221は、鍵変更情報246を参照し、論理ボリュームLUに使用した「鍵(変更後)」フィールド246Cの情報を「鍵(変更前)」フィールド246Bに上書きし、「鍵(変更後)」フィールド245C及び「変更状態」フィールド246Dを「空欄」にする。
またCPU221は、SLPR内の全ての論理ボリュームLUに使用する鍵の変更を終了した後、鍵情報245を更新する(S1509)。具体的には、CPU221は、ステップS15044において「変更状態」フィールド245Dが「変更中」となっているSLPRにおいて、SLPR内の全ての論理ボリュームLUに使用する鍵の変更を終了した後、「変更状態」フィールド245Dを「空欄」にする(S1509)。
CPU221は、ステップS1509の処理を終了すると、SLPR結合の処理を終了する(S1510)。
なお、ステップS1502において、CPU221は、各種の情報が正当でなく、管理者が正当な管理者でないと判定した場合には(S1502:NO)、SLPR結合の処理を終了する(S1510)。
(1−7) 鍵変更中のLUについての共有リソースへの新規書き込み処理
次に記憶装置201AのCPU221が論理ボリュームLUにあるデータに使用する鍵の変更を実行中に、計算機101から鍵を変更中の論理ボリュームLUへのWrite要求を受信した場合の共有リソース213への新規書き込み処理について、図19を用いて説明をする。
なお、鍵の変更を実行していない論理ボリュームLUに対し計算機101からのWrite要求を受信した場合の処理は、図13のフローチャートで既に説明済みである。
新規書き込み処理は、記憶装置201AのCPU221が暗号化・復号化プログラム227に基づいて実行する。
CPU221は、鍵を変更中の論理ボリュームLUに対し、計算機からWrite要求を受信すると、この新規書き込み処理を開始する(S1901)。
ここで鍵を変更中の論理ボリュームLUとは、LU管理情報244の「変更状態」フィールド244G、鍵変更情報246の「鍵(変更後)」246フィールドC及び「変更状態」フィールド246Dを更新している状態をいう。
CPU221は、計算機101からWrite要求を受信すると、Write要求先の論理ボリュームLUに該当する鍵変更情報246とLU管理情報244の「変更状態」フィールド244Gを特定する(S1902)。
次に、CPU221は、計算機101から受信したデータを変更後の鍵で暗号化し、この暗号化されたデータを論理ボリュームLUに書き込むにあたり、書き込み予定である論理ボリュームLUのブロックは、鍵の変更済みか否か判定する(S1903)。
なお、本ステップでの判定は、CPU221が、計算機101から要求される書き込み予定のブロック番号と、現在論理ボリュームLUのどのブロックまで鍵の変更が終了済みかを示す「変更状態」フィールド244Gのブロック番号とを比較して判定する。CPU221は、書き込み予定のブロック番号が「変更状態」フィールド244Gのブロック番号より小さな番号である場合に、書き込み予定である論理ボリュームLUのブロックは、鍵の変更済みと判定する。
CPU221は、書き込み予定である論理ボリュームLUのブロックが鍵の変更済みであると判定した場合には(S1903:YES)、計算機101からのデータを書き込む前の状態の論理ボリュームLUに保存されるデータを復号化しないまま更新データとして共有リソース213に書き込み、計算機101からの書き込みデータを暗号化して、暗号化したデータを論理ボリュームに書き込む(S1904)。
CPU221は、書き込み予定のブロックが鍵の変更済みでないと判定した場合(にはS1903:NO)、書き込み予定のブロックは鍵の変更済みと鍵の未変更の両方の状態を含むか否か判定する(S1905)。
ここで、書き込み対象の論理ボリュームLU内において、1から100ブロックまでのブロック範囲がある場合を考える。例えば、両方の状態とは、1ブロックから45ブロックまでの範囲では鍵の変更済み処理が終了しているが、46ブロックから100ブロックまでの範囲では鍵の変更が未処理である状態をいう。
CPU221は、書き込み予定のブロックが鍵変更済みと鍵未変更の両方を含むと判定した場合(S1905:YES)、一定時間待機した後(S1906)、再びステップS1903へ戻る。
一方、CPU221は、書き込み予定のブロックが鍵変更済みと鍵未変更の両方は含んでいないと判定した場合(S1905:NO)、すなわち、全てのブロックが前記鍵の未変更ブロックであると判定した場合には、計算機101からのデータを書き込む前の状態の論理ボリュームLUに保存されるデータを変更前の鍵で復号化し、変更後の鍵で暗号化して共有リソースに書き込む(S1907)。
その後、CPU221は、計算機101から受信したデータを変更前の鍵で暗号化し、暗号化されたデータを論理ボリュームLUに書き込むと(S1908)。新規書き込み処理を終了する(S1909)。
なお本フローチャートでは、鍵の変更に伴って保存される論理ボリュームLU内の暗号化されたデータについては、共有リソース213内へ新規に書き込みを行なわない。これは、鍵の変更に伴って保存される論理ボリュームLU内の暗号化されたデータを共有リソース213内に書き込む場合、暗号化鍵が異なるだけで復号化時に同じ内容となるデータを二重に書き込まないためである。これにより、共有リソース213の圧迫を防止することができる。
但し、本実施の形態は図19のフローチャートに限定されず、共有リソース213に十分な容量を確保できる場合、鍵の変更に伴って保存される論理ボリュームLU内の暗号化されたデータを共有リソース213内に新規書き込むフローチャートとしてもよい。
(1−8) 鍵変更中の論理ボリュームLUについてのリストア処理
次に、共有リソース213を使用する論理ボリュームLUの鍵を変更中に、管理計算機301が論理ボリュームLUに対してリストア要求をした場合に、記憶装置201AのCPU221が、リ共有リソース213内にあるストア対象の論理ボリュームLUの更新データを論理ボリュームLUにリストアして、論理ボリュームLU内のデータを復元する場合の、リストア処理のフローチャートについて説明する。リストア処理のフローチャートは、図20及び図21を用いて説明する。
リストア処理は、CPU221がリストア制御プログラム229及び暗号化・復号化プログラム227に基づいて実行する。
なお、以下では論理ボリュームLUの鍵変更に伴う論理ボリュームLUのデータ自体の変更処理については、上述で説明済みのため省略する。また本フローチャートでは、共有リソース内データ管理情報247や鍵変更情報246の更新方法の詳細については、既にSLPR分割・SLPR結合処理等で説明済みのため省略する。
まず記憶装置201AのCPU221は、管理計算機301から鍵を変更中の論理ボリュームLU内のデータに対してリストア要求を受信するとリストア処理を開始する(S2001)。
鍵の変更とは、リストア対象の論理ボリュームLUに使用する鍵の変更と、鍵を変更する論理ボリュームLUに対応する共有リソース213内の更新データに使用する鍵の変更と、を実行することをいう。具体的には、CPU221が共有リソース内データ管理情報247と論理ボリュームLUの鍵変更情報246を更新する。
次に、CPU221は、リストア要求先(リストア対象)の論理ボリュームLUの鍵変更情報248、LU管理情報244の「変更状態」フィールド244G及び共有リソース内データ管理情報247の「変更状態」フィールド247Eを特定する(S2002)。
そして、CPU221は、ステップS1802で取得した情報に基づいて、リストア要求先の論理ボリュームLU内のデータに使用する鍵の変更は終了済みであり、かつ、リストア要求先の論理ボリュームLUに対応する共有リソース213内の更新データに使用する鍵の変更も終了済みであるか否かを判定する(S2003)。
なお、リストア要求先の論理ボリュームLUとは、ある時点における論理ボリュームLUをいう。ある指定時点における論理ボリューム内には複製データが保存されている。このような複製データは定期的に取得される。ある時点での論理ボリュームLUに共有リソース213内の更新データを上書きすることで、任意の時点における論理ボリュームLUのデータを復元することができる。
CPU221は、リストア要求先の論理ボリュームLU及びこの論理ボリュームLUに対応する共有リソース213内の更新データに使用する鍵の変更が終了済みであると判定した場合(S2003:YES)、リストア要求先の論理ボリュームLUに、共有リソース213内にある更新データをリストアし、データを復元する(S2008)。
一方、CPU221は、リストア要求先の論理ボリュームLU及びこの論理ボリュームLUに対応する共有リソース213内の更新データに使用する鍵の変更が終了済みではないと判定した場合(S2003:NO)、リストア要求先の論理ボリュームLUに使用する鍵の変更は終了済みであり、かつ、この論理ボリュームLUに対応する共有リソース213に使用する鍵は変更中か否かを判定する(S2004)。
CPU221は、リストア要求先の論理ボリュームLUに使用する鍵の変更は終了済みであり、かつ、この論理ボリュームLUに対応する共有リソース213の更新データに使用する鍵は変更中であると判定した場合(S2004:YES)、引き続き、更新データには更新データに使用する鍵の変更済み部分と鍵の未変更部分との両方を含むか否かを判定する(S2005)。
CPU221は、新データには更新データに使用する鍵の変更済み部分と鍵の未変更部分との両方を含むと判定した場合には(S2005:YES)、一定時間待機した後(S2006)、再びステップS2003に戻る。
一方、CPU221は、更新データには更新データに使用する鍵の変更済み部分と鍵の未変更部分との両方を含まないと判定した場合には(S2005:NO)、すなわち全てのブロックが前記鍵の未変更ブロックであると判定した場合には、更新データを変更前の鍵で復号化し、変更後の鍵で暗号化する(S2007)。その後、CPU221は、ステップS2008の処理を行ってデータを復元すると、リストア処理を終了する(S2014)。
ステップS2004において、CPU221は、リストア要求先の論理ボリュームLUに使用する鍵の変更は終了済みではなく、かつ、この論理ボリュームLUに対応する共有リソース213の更新データに使用する鍵は変更中ではないと判定した場合(S2004:NO)、引き続き、CPU221は、リストア要求先の論理ボリュームLUに使用する鍵は変更中であり、かつ、この論理ボリュームLUに対応する共有リソース213の更新データに使用する鍵の変更は終了済みか否かを判定する(S2009)。
CPU221は、リストア要求先の論理ボリュームLUに使用する鍵は変更中であり、かつ、この論理ボリュームLUに対応する共有リソース213の更新データに使用する鍵の変更は終了済みであると判定した場合(S2009:YES)、リストア要求先の論理ボリュームLUに使用する鍵の変更が終了した後、リストア要求先の論理ボリュームLUに共有リソース213内の更新データをリストアしデータを復元して(S2013)この処理を終了する(S2014)。
一方、CPU221は、リストア要求先の論理ボリュームLUに使用する鍵は変更中ではなく、かつ、この論理ボリュームLUに対応する共有リソース213の更新データに使用する鍵の変更は終了済みではないと判定した場合(S2009:NO)、更新データには更新データに使用する鍵の変更済み部分と鍵の未変更部分との両方を含むか否かを判定する(S2010)。
そうして、CPU221は、ステップS2010からS2013までの処理を、ステップS2005からS2008までの処理と同様の手順で実行し、この処理を終了する(S2014)。
(1−9) 第1の実施の形態の効果
本実施の形態によれば、記憶装置が、SLPR分割又はSLPR結合によって生じる論理ボリュームLUに使用する鍵の変更、鍵の変更中に共有リソース内に保存される更新データの書き込み処理、及び、鍵を変更中の論理ボリュームLUの更新データを使用したリストア処理を行なうことができる。
本実施の形態によれば、共有リソース内に論理ボリュームの更新データを保存し、論理ボリュームの鍵と共有リソースに使用する鍵とを対応付けて管理するため、更新データのセキュリティを高めることができる。
また、本実施の形態によれば、管理者が正しく論理ボリュームLUの更新データを利用することができる。
(2) 第2の実施の形態
次に、第2の実施の形態による計算機システムについて、以下に説明する。図1の10は、第2の実施の形態の計算機システムである。第2の実施の形態では、第1の実施の形態と同じ構成には同一の符号を付す。第2の実施の形態の説明では、第1の実施の形態と異なる構成についてのみ説明をする。
本実施の形態と第1の実施の形態との差異は、第1の実施の形態の記憶装置201AではSLPR分割又はSLPR結合後も従来の鍵を使用しているSLPRが存在するのに対し、本実施の形態の記憶装置201BではSLPR分割又はSLPR結合にあたっては従来の鍵を破棄し、全てのSLPRに対して新規な鍵の割当て、従来鍵から新規鍵への変更を行なう点にある。
(2−1) SLPR分割処理
まず図22において、第2の実施の形態におけるSLPR分割処理について説明する。第2の実施の形態におけるSLPR分割処理は、記憶装置201BのCPU221が、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227及びアカウント認証・認可プログラム228に基づいて実行する。
具体的には、CPU221が、ステップS2201からS2203の処理をS1401からS1403の処理と同様の手順で実行する。
次に、CPU221は、鍵変更プログラム226に基づいて、各SLPRに対して新規鍵の生成を行い、各SLPRの鍵変更を行なう(S2204)。
鍵の変更については、図23を用いて説明をする。
図23(A)はSLPR分割前の鍵情報245である。そして図23(B)はSLPR分割後の鍵情報245である。
ここで、CPU221は、記憶装置201BをSLPR1とSLPR2に分割する。この分割処理にあたり、SLPR1に対しては鍵番号が「2」の新規鍵を割当て、SLPR2に対しては鍵番号が「3」の新規鍵を割当て、各SLPRの鍵変更を行なう。記CPU221は、鍵の変更を終了すると、従来使用していた鍵(鍵番号が「1」の鍵)を破棄する。
その後、CPU221は、ステップS2205からS2210までの処理をS1405からS1410の処理と同様の手順で実行して、SLPR分割処理を終了する。
(2−2) SLPR結合処理
次に、記憶装置201BのCPU221がSLPR結合を行うことに伴って鍵の変更処理が行われる場合を、図24に示すフローチャートに基づいて説明する。図24では、図22と同様に、記憶装置201BのCPU221が、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227及びアカウント認証・認可プログラム228に基づいて実行する。
具体的には、CPU221が、ステップS2401からS2403の処理をS1501からS1503の処理と同様の手順で実行する。
次にCPU221は、鍵変更プログラム226に基づいて、SLPR結合後に使用する新規鍵を生成し、結合対象の各SLPRの鍵変更を行なう(S2404)。
鍵の変更については、図23を用いて説明する。
図23(A)はSLPR結合前の鍵情報245である。そして、図23(B)はSLPR結合後の鍵情報245である。
ここで、CPU221は、SLPR1とSLPR2を結合する。結合処理は、SLPR1とSLPR2とを結合する処理は、鍵番号が「4」の新規鍵を割当て、SLPR1とSLPR2の鍵変更を行なう。CPU221は、鍵の変更を終了すると、従来使用していた鍵(鍵番号が「2」の鍵と「3」の鍵)を破棄する。
その後、CPU221は、ステップS2405からS2410までの処理をS1505からS1510の処理と同様の手順で実行して、SLPR結合処理を終了する。
(2−3) 第2の実施の形態の効果
本実施の形態によれば、記憶装置が、SLPR分割又はSLPR結合によって生じるSLPRに使用する鍵の変更の伴い、分割前又は結合前に使用していた従来鍵を破棄することができる。
また、本実施の形態によれば、共有リソース内に論理ボリュームの更新データを保存し、論理ボリュームの鍵と共有リソースに使用する鍵とを対応付けて管理するため、更新データのセキュリティを高めることができる。
さらに、本実施の形態によれば、管理者が正しく論理ボリュームLUの更新データを利用することができる。
(3) 第3の実施の形態
次に、第3の実施の形態による計算機システムについて、以下に説明する。図1の100は、第3の実施の形態の計算機システムである。第3の実施の形態では、第1の実施の形態と同じ構成には同一の符号を付す。第3の実施の形態の説明では、第1の実施の形態と異なる構成についてのみ説明をする。
本実施の形態では、記憶装置201CをSLPR分割するにあたり、共有リソース213A内に共有リソースが属するSLPRと異なるSLPRに属することとなった論理ボリュームLUの更新データを保存する場合、異なるSLPR内に新規共有リソース213Bを作成し、共有リソース213A内に格納されている当該LUの更新データを、当該新規共有リソース213Bへ移行する点で、第1の実施の形態と相違する。
(3−1) 論理的なシステム構成
本実施の形態の論理的なシステム構成は、第1の実施の形態で説明をした論理的なシステム構成(図2)とは異なる。
具体的には、図25に示すように、記憶装置201Cを論理的に分割したSLPR1とSLPR2において、SLPR1に共有リソース213Aを有するだけではなく、SLPR2にも共有リソース213Bを有する。第1の実施の形態では、SLPR1又はSLPR2のいずれか一方に共有リソース213を有する場合について説明したので、この点で本実施の形態とは相違する。
(3−2) SLPR分割処理
次に、本実施の形態で記憶装置201Cが行う処理と第1の実施の形態で記憶装置201Aが行なう処理の差異を説明する。
第1の実施の形態では、図14のステップS1405からS1407において、SLPR分割にあたって鍵変更がなされるLUの共有リソース内の更新データを、SLPR分割時に割り当てられる当該LUの新規鍵で再暗号化することを説明した。
これに対し、本実施の形態では、SLPR分割にあたって共有リソース内に共有リソースが属すSLPRと異なるSLPRに属すLUの更新データが生じた場合に、当該異なるSLPR用に新規共有リソースを作成し、共有リソース内の当該異なるSLPRに属すLUの更新データを、SLPR分割時に割り当てられる当該LUの新規鍵で再暗号化して当該新規共有リソースへ移行する。
具体的には、図26及び図26において、第3の実施の形態におけるSLPR分割処理について説明する。第3の実施の形態におけるSLPR分割処理は、記憶装置201BのCPU221が、記憶装置管理プログラム225、鍵変更プログラム226、暗号化・復号化プログラム227及びアカウント認証・認可プログラム228に基づいて実行する。
まず、CPU221が、ステップS2601からS2605の処理をS1401からS1405の処理と同様の手順で実行する。
次にCPU221は、鍵の変更が行なわれる論理ボリュームLUが共有リソースを使用していると判定した場合(S2605:YES)、鍵の変更が行なわれる論理ボリュームLUのうち、共有リソース213が所属するSLPRと異なるSLPRに所属しているものはあるか判別する(S2606)。
例えば、図25に示すように、CPU221は、鍵の変更が行なわれる論理ボリュームLUのうち、共有リソース213Aが所属するSLPR1と異なるSPLRであるSLPR2に所属する論理ボリュームLUがあるか否かを判別する。
そしてCPU221は、鍵の変更が行なわれる論理ボリュームLUのうち、共有リソース213が所属するSLPRと異なるSLPRに所属する論理ボリュームはあると判定した場合には(S2606:YES)、異なるSLPRに所属する新規な共有リソースを作成する(S2607)。
例えば、図25に示すように、CPU221は、SLPR2に所属する新規な共有リソース213Bを作成する。
CPU221は、SLPRに所属する共有リソース内の更新データを、変更前の鍵で復号化し、変更後の鍵で再暗号化する(S2608)。
そしてCPU221は、再暗号化した更新データを新規な共有リソースに移行して、保存する(S2609)。
図28(A)から(C)を用いて上記の処理の具体的な例を説明する。
図28(A)はSLPR分割前の共有リソース内データ管理情報である。図28(B)はSLPR分割中の共有リソース内データ管理情報である。図28(C)はSLPR分割後の共有リソース内データ管理情報である。
図28(A)に示すように、まず、SLPR分割前は論理ボリュームLU1、LU3が共有リソース1を使用していることがわかる。その後、図28(B)よりSLPR分割処理を行うことにより、「1」の共有リソース213及び論理ボリュームLU1がSLPR1に所属し、論理ボリュームLU3がSLPR2に所属する。この時論理ボリュームLU3は、「1」の共有リソース213が所属するSLPR1とは異なるSLPR2に所属する。
このため、CPU221は、ステップS2607からS2609の処理を実行する。具体的な処理としては、図25に示すように新規の共有リソース213Bを作成し、共有リソース213Aに格納されていた論理ボリュームLU3の更新データをSLPR分割前に使用していた鍵で復号し、SLPR分割後に新規に割当てられた鍵で再暗号化して共有リソース213Bに移行する。移行処理終了後は、共有リソース内データ管理情報247は図28(C)に示すようになる。
一方、ステップS2606において、CPU221は、鍵の変更が行なわれる論理ボリュームLUのうち、共有リソース213が所属するSLPRと異なるSLPRに所属する論理ボリュームLUがないと判定した場合には(S2606:NO)、その後、ステップS2610からS2614までの処理を、ステップS1406からS1410までの処理と同様の手順で実行して、SLPR分割処理を終了する。
なお、本実施の形態では、論理ボリュームLUの更新データを再暗号化し、再暗号化した更新データを新規共有リソースへ移行した後は、移行した更新データは移行元の共有リソース内に設けない形態としているが、新規共有リソースへ移行した後も移行した更新データを設ける形態としてもよい。
なお、SLPR結合処理は、本実施の形態では新規共有リソースに対しても第1の実施形態での共有リソースへの処理と同様の処理を行なう点が異なる。しかしながらSLPR結合処理は、第1の実施形態で説明をした共有リソース213への処理と同様であるため、その説明は行なわない。
(3−3) 第3の実施の形態の効果
本実施の形態によれば、記憶装置が、SLPR分割によってSLPRの所属が異なることとなった論理ボリュームの更新データを、異なるSLPR内に新規に作成した共有リソース内に移行することができる。
また、本実施の形態によれば、共有リソース内に論理ボリュームの更新データを保存し、論理ボリュームの鍵と共有リソースに使用する鍵とを対応付けて管理するため、更新データのセキュリティを高めることができる。
さらに、本実施の形態によれば、管理者が正しく論理ボリュームLUの更新データを利用することができる。
(4) 他の実施の形態
第1から第3の実施の形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
論理ボリュームLUに記憶されるデータ又は共有リソース213に記憶される更新データを暗号化又は復号化する暗号化復号化部と、論理ボリュームLUに記憶されるデータを暗号化又は復号化するための鍵を変更し、論理ボリュームLUに記憶されるデータに使用した鍵の情報に基づいて、共有リソース213内に記憶される更新データを暗号化又は復号化するための鍵を変更する鍵変更部とをメモリ223に備えたが、暗号化復号化部と鍵変更部とを個別のハードウェア構成としてもよい。
また、論理ボリュームLU、共有リソース213及び管理領域SLPRの対応付け情報を管理する管理部をメモリ223に備えたが、管理部を個別のハードウェア構成としてもよい。
本発明は、暗号化・復号化機能を備えた1又は複数のディスク装置を有する記憶装置や、その他の形態の記憶装置に広く適用することができる。
第1の実施の形態における計算機システムの全体構成を示すブロック図である。 第1の実施の形態における管理計算機のメモリの内容を示す図である。 第1の実施の形態における計算機システムの論理的な構成を示す概念図である。 第1の実施の形態における記憶装置のメモリの内容を示す図である。 第1の実施の形態における物理ディスク管理情報を示す図表である。 第1の実施の形態における論理ボリューム管理情報を示す図表である。 第1の実施の形態におけるディスク装置の論理的な構成を示す概念図である。 第1の実施の形態における鍵情報を示す図表である。 第1の実施の形態における鍵変更情報を示す図表である。 第1の実施の形態における共有リソース内データ管理情報を示す図表である。 第1の実施の形態におけるアカウント情報を示す図表である。 第1の実施の形態における役割定義情報を示す図表である。 第1の実施の形態におけるRead/Write処理を示すフローチャートである。 第1の実施の形態におけるSLPR分割処理を示すフローチャートである。 第1の実施の形態におけるSLPR結合処理を示すフローチャートである。物理ディスク管理情報243の一例を示す図である。 第1の実施の形態におけるSLPR分割処理又はSLPR結合処理での鍵情報の図表である。 第1の実施の形態におけるSLPR分割処理又はSLPR結合処理での鍵変更情報の図表である。 第1の実施の形態におけるSLPR分割処理又はSLPR結合処理での共有リソース内データ管理情報の図表である。 第1の実施の形態における論理ボリュームに使用する鍵変更時のRead/Write処理を示すフローチャートである。 第1の実施の形態におけるリストア処理を示すフローチャートである。 第1の実施の形態におけるリストア処理を示すフローチャートである。 第2の実施の形態におけるSLPR分割処理を示すフローチャートである。 第2の実施の形態におけるSLPR分割処理又はSLPR結合処理での鍵情報の図表である。 第2の実施の形態におけるSLPR結合処理を示すフローチャートである。 第3の実施の形態における計算機システムの論理的な構成を示す概念図である。 第3の実施の形態におけるSLPR分割処理を示すフローチャートである。 第3の実施の形態におけるSLPR分割処理を示すフローチャートである。 第3の実施の形態におけるSLPR分割処理での共有リソース内データ管理情報の図表である。
符号の説明
1,10,100…計算機システム、101…計算機、110…CPU、120…メモリ、130…FCインタフェース、201…記憶装置、211…ディスク装置、LU…論理ボリューム(記憶領域)、213…共有リソース、220…管理インタフェース、221…CPU、222…ブリッジ、223…メモリ、225…記憶装置管理プログラム、226…鍵変更プログラム、227…暗号化・復号化プログラム、228…アカウント認証・認可プログラム、229…リストア制御プログラム、230…FCインタフェース、240…ディスクインタフェース、243…物理ディスク管理情報、244…LU管理情報、245…鍵情報、246…鍵変更情報、247…共有リソース内データ管理情報、248…アカウント情報、249…役割定義情報、301…管理計算機、310…管理インタフェース、311…CPU、313…メモリ、315…記憶装置管理要求プログラム、401…FCスイッチ。

Claims (18)

  1. 計算機に接続される記憶装置において、
    前記計算機からのデータを記憶する複数の論理ボリュームと、
    複数の前記論理ボリュームに記憶されるデータを更新データとして記憶する共有リソースと、
    複数の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化する暗号化復号化部と、
    複数の前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵を変更する暗号鍵変更部を備え、
    前記暗号鍵変更部は、複数の前記論理ボリュームのうちいずれかの前記論理ボリュームの暗号化鍵を変更した場合には、
    前記共有リソース内の更新データのうち、暗号鍵の変更を行った前記論理ボリュームに関する更新データの暗号鍵を、前記暗号鍵を変更した前記論理ボリュームの暗号鍵と同じ暗号鍵に変更する
    ことを特徴とする記憶装置。
  2. 記共有リソースは、少なくとも1以上備えられ、
    前記鍵変更部は、
    少なくとも1以上の論理ボリューム又は共有リソースを、前記記憶装置を管理するために形成される1以上の管理領域に割当てる割当て処理を契機として実行される
    ことを特徴とする請求項1記載の記憶装置。
  3. 前記論理ボリューム、前記共有リソース及び前記管理領域の対応付け情報を管理する管理部を有し、
    前記管理部は、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵の変更情報を管理する又は前記共有リソース内に記憶される更新データを暗号化又は復号化するための暗号鍵の変更情報を管理する
    ことを特徴とする請求項2記載の記憶装置。
  4. 前記鍵変更部は、
    前記計算機から読み書き要求を受信すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定し、
    暗号鍵の変更済みであると判定した場合には、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化せずに前記共有リソースに更新データとして記憶する
    ことを特徴とする請求項2記載の記憶装置。
  5. 前記鍵変更部は、
    前記計算機から読み書き要求を受信すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定し、
    暗号鍵の変更中であると判定した場合には、
    データを記憶する前記論理ボリューム内のブロック又は更新データを記憶する前記共有リソース内のブロックから暗号鍵の変更済ブロックと暗号鍵の未変更ブロックとを判定し、
    前記暗号鍵の変更済ブロックと前記暗号鍵の未変更ブロックとが含まれると判定した場合には、全てのブロックが暗号鍵の変更済になるまで待機し、
    全てのブロックが前記暗号鍵の未変更ブロックであると判定した場合には、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化した際に使用した変更前の暗号鍵を使用して前記共有リソースに記憶される更新データを復号化又は暗号化し、変更後の暗号鍵を使用して前記共有リソースに記憶される更新データを再暗号化又は再復号化する
    ことを特徴とする請求項2記載の記憶装置。
  6. 前記鍵変更部は、
    前記記憶装置を管理する管理計算機又は前記計算機からリストア要求を受信すると、
    前記リストア要求先の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定し、
    暗号鍵の変更済みであると判定した場合には、
    前記共有リソースに記憶される更新データを前記リストア要求先の前記論理ボリュームにリストアしデータを復元する
    ことを特徴とする請求項2記載の記憶装置。
  7. 前記鍵変更部は、
    前記記憶装置を管理する管理計算機又は前記計算機からリストア要求を受信すると、
    前記リストア要求先の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定し、
    暗号鍵の変更中であると判定した場合には、
    データを記憶する前記論理ボリューム内のブロック又は更新データを記憶する前記共有リソース内のブロックから暗号鍵の変更済ブロックと暗号鍵の未変更ブロックとを判定し、
    前記暗号鍵の変更済ブロックと前記暗号鍵の未変更ブロックとが含まれると判定した場合には、全てのブロックが暗号鍵の変更済になるまで待機し、
    全てのブロックが前記暗号鍵の未変更ブロックであると判定した場合には、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化した際に使用した変更前の暗号鍵を使用して前記共有リソースに記憶される更新データを復号化又は暗号化し、変更後の暗号鍵を使用して前記共有リソースに記憶される更新データを再暗号化又は再復号化し、
    前記共有リソースに記憶される更新データを前記リストア要求先の前記論理ボリュームにリストアしデータを復元する
    ことを特徴とする請求項2記載の記憶装置。
  8. 前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する新規な暗号鍵を、前記割当て処理を契機として前記管理領域毎に作成し、
    前記論理ボリュームに記憶されるデータ又は前記共有リソースに記憶される更新データを暗号化又は復号化するために、前記割当て処理を実行する前に使用した従来の暗号鍵を破棄する
    ことを特徴とする請求項2記載の記憶装置。
  9. 前記共有リソースは、前記管理領域毎に作成され、
    前記鍵変更部は、
    1の管理領域に所属する前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵を変更し
    1の管理領域に所属する前記共有リソースに記憶される更新データを他の管理領域に新たに作成した共有リソースに保存する
    ことを特徴とする請求項2記載の記憶装置。
  10. 計算機からのデータを記憶する複数の論理ボリュームと、
    複数の前記論理ボリュームに記憶されるデータを更新データとして記憶する共有リソースと、
    複数の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化する暗号化復号化部と、
    複数の前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵を変更する暗号鍵変更部を備え、前記計算機に接続される記憶装置の管理方法において、
    前記暗号鍵変更部が、複数の前記論理ボリュームのうちいずれかの前記論理ボリュームの暗号化鍵を変更した場合には、
    前記共有リソース内の更新データのうち、暗号鍵の変更を行った前記論理ボリュームに関する更新データの暗号鍵を、前記暗号鍵を変更した前記論理ボリュームの暗号鍵と同じ暗号鍵に変更する鍵変更ステップ
    えることを特徴とするデータ管理方法。
  11. 記共有リソースは、少なくとも1以上備えられ、
    前記暗号鍵変更部による前記鍵変更ステップは、
    少なくとも1以上の論理ボリューム又は共有リソースを、前記記憶装置を管理するために形成される1以上の管理領域に割当てる割当て処理を契機として実行される
    ことを特徴とする請求項10記載のデータ管理方法。
  12. 前記論理ボリューム、前記共有リソース及び前記管理領域の対応付け情報を管理する管理部が、前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵の変更情報を管理する又は前記共有リソース内に記憶される更新データを暗号化又は復号化するための暗号鍵の変更情報を管理する管理ステップを備える
    ことを特徴とする請求項11記載のデータ管理方法。
  13. 前記鍵変更部が、前記計算機から読み書き要求を受信すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定する判定ステップと、
    前記鍵変更部が、暗号鍵の変更済みであると判定すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化せずに前記共有リソースに更新データとして記憶する記憶ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
  14. 前記鍵変更部が、前記計算機から読み書き要求を受信すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定する判定ステップと
    前記鍵変更部が、暗号鍵の変更中であると判定すると、
    データを記憶する前記論理ボリューム内のブロック又は更新データを記憶する前記共有リソース内のブロックから暗号鍵の変更済ブロックと暗号鍵の未変更ブロックとを判定する判定ステップと
    前記鍵変更部が、前記暗号鍵の変更済ブロックと前記暗号鍵の未変更ブロックとが含まれると判定すると、全てのブロックが暗号鍵の変更済になるまで待機する待機ステップと
    前記鍵変更部が、全てのブロックが前記暗号鍵の未変更ブロックであると判定すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化した際に使用した変更前の暗号鍵を使用して前記共有リソースに記憶される更新データを復号化又は暗号化し、変更後の暗号鍵を使用して前記共有リソースに記憶される更新データを再暗号化又は再復号化する再暗号化又は再復号化ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
  15. 前記鍵変更部が、前記記憶装置を管理する管理計算機又は前記計算機からリストア要求を受信すると、
    前記リストア要求先の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定する判定ステップと
    前記鍵変更部が、暗号鍵の変更済みであると判定すると、
    前記共有リソースに記憶される更新データを前記リストア要求先の前記論理ボリュームにリストアしデータを復元する復元ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
  16. 前記鍵変更部が、前記記憶装置を管理する管理計算機又は前記計算機からリストア要求を受信すると、
    前記リストア要求先の前記論理ボリュームに記憶されるデータ及び前記共有リソースに記憶される更新データを暗号化又は復号化するために使用する暗号鍵を変更しているか否かを判定する判定ステップと
    前記鍵変更部が、暗号鍵の変更中であると判定すると、
    データを記憶する前記論理ボリューム内のブロック又は更新データを記憶する前記共有リソース内のブロックから暗号鍵の変更済ブロックと暗号鍵の未変更ブロックとを判定する判定ステップと
    前記鍵変更部が、前記暗号鍵の変更済ブロックと前記暗号鍵の未変更ブロックとが含まれると判定すると、全てのブロックが暗号鍵の変更済になるまで待機する待機ステップと
    前記鍵変更部が、全てのブロックが前記暗号鍵の未変更ブロックであると判定すると、
    前記論理ボリュームに記憶されるデータを暗号化又は復号化した際に使用した変更前の暗号鍵を使用して前記共有リソースに記憶される更新データを復号化又は暗号化し、変更後の暗号鍵を使用して前記共有リソースに記憶される更新データを再暗号化又は再復号化する再暗号化又は再復号化ステップと
    前記鍵変更部が、前記共有リソースに記憶される更新データを前記リストア要求先の前記論理ボリュームにリストアしデータを復元する復元ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
  17. 前記鍵変更部が、前記論理ボリュームに記憶されるデータを暗号化又は復号化するために使用する新規な暗号鍵を、前記割当て処理を契機として前記管理領域毎に作成する作成ステップと
    前記鍵変更部が、前記論理ボリュームに記憶されるデータ又は前記共有リソースに記憶される更新データを暗号化又は復号化するために、前記割当て処理を実行する前に使用した従来の暗号鍵を破棄する破棄ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
  18. 前記共有リソースは、前記管理領域毎に作成され、
    前記鍵変更部が、1の管理領域に所属する前記論理ボリュームに記憶されるデータを暗号化又は復号化するための暗号鍵を変更する変更ステップと、
    前記鍵変更部が、1の管理領域に所属する前記共有リソースに記憶される更新データを他の管理領域に新たに作成した共有リソースに保存する保存ステップと、を備える
    ことを特徴とする請求項11記載のデータ管理方法。
JP2007081194A 2007-03-27 2007-03-27 記憶装置及びデータ管理方法 Expired - Fee Related JP4892382B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007081194A JP4892382B2 (ja) 2007-03-27 2007-03-27 記憶装置及びデータ管理方法
US12/016,355 US8090100B2 (en) 2007-03-27 2008-01-18 Storage apparatus and data management method for changing keys of a logical volume and common resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007081194A JP4892382B2 (ja) 2007-03-27 2007-03-27 記憶装置及びデータ管理方法

Publications (2)

Publication Number Publication Date
JP2008242720A JP2008242720A (ja) 2008-10-09
JP4892382B2 true JP4892382B2 (ja) 2012-03-07

Family

ID=39794401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007081194A Expired - Fee Related JP4892382B2 (ja) 2007-03-27 2007-03-27 記憶装置及びデータ管理方法

Country Status (2)

Country Link
US (1) US8090100B2 (ja)
JP (1) JP4892382B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4843531B2 (ja) * 2006-09-29 2011-12-21 富士通株式会社 暗号変換装置、暗号変換方法および暗号変換プログラム
JP5134894B2 (ja) * 2007-09-07 2013-01-30 株式会社日立製作所 ストレージ装置及び暗号鍵変更方法
WO2010122600A1 (en) * 2009-04-22 2010-10-28 Hitachi, Ltd. Storage system, control method therefor, and program
US9063892B1 (en) * 2012-03-31 2015-06-23 Emc Corporation Managing restore operations using data less writes
JP5964460B2 (ja) * 2013-01-11 2016-08-03 株式会社日立製作所 データの暗号化記憶システム
JP5646682B2 (ja) * 2013-04-26 2014-12-24 株式会社日立製作所 ストレージ装置及びその制御方法
US10140477B2 (en) * 2013-12-09 2018-11-27 Thales E-Security, Inc. Obfuscating in memory encryption keys
US9942208B2 (en) * 2014-11-14 2018-04-10 Microsoft Technology Licensing, Llc Updating stored encrypted data with enhanced security
US20160314081A1 (en) * 2015-04-27 2016-10-27 Kabushiki Kaisha Toshiba Storage apparatus, controller, and data storing method
GB2575670B (en) * 2018-07-19 2021-03-24 Secure Design Ltd Encryption device responsive to disconnection request
JP7528061B2 (ja) 2019-04-12 2024-08-05 フェリカネットワークス株式会社 情報処理端末、情報処理装置、情報処理方法、プログラム、および情報処理システム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4698840B2 (ja) * 1999-03-15 2011-06-08 ユーキューイー,エルエルシー 蓄積媒体上でコピー保護を提供するための方法及びシステム及び、そのようなシステムで使用される蓄積媒体
DE60134696D1 (de) * 2000-05-23 2008-08-21 Hitachi Ltd Rechnersystem mit Fernkopiereinrichtung
JP2002278838A (ja) * 2001-03-15 2002-09-27 Sony Corp メモリアクセス制御システム、デバイス管理装置、パーティション管理装置、メモリ搭載デバイス、およびメモリアクセス制御方法、並びにプログラム記憶媒体
IL161027A0 (en) * 2001-09-28 2004-08-31 High Density Devices As Method and device for encryption/decryption of data on mass storage device
JP3677252B2 (ja) * 2002-03-22 2005-07-27 株式会社東芝 情報機器、記憶媒体、及び初期状態復元方法
US7272228B2 (en) * 2003-06-12 2007-09-18 International Business Machines Corporation System and method for securing code and ensuring proper execution using state-based encryption
JP2005165441A (ja) 2003-11-28 2005-06-23 Hitachi Ltd ストレージ制御装置、及びストレージ制御装置の制御方法
JP2005235058A (ja) * 2004-02-23 2005-09-02 Hitachi Ltd スナップショット取得方法、スナップショット取得装置及びスナップショット取得機能を備えたコンピュータシステム
US8281152B2 (en) * 2004-06-18 2012-10-02 Emc Corporation Storage data encryption
US7269743B2 (en) * 2004-07-16 2007-09-11 Hitachi, Ltd. Method and apparatus for secure data mirroring a storage system
US7428642B2 (en) * 2004-10-15 2008-09-23 Hitachi, Ltd. Method and apparatus for data storage
US7320008B1 (en) * 2004-12-20 2008-01-15 Veritas Operating Corporation Data protection mechanism
JP4704780B2 (ja) * 2005-03-24 2011-06-22 株式会社日立製作所 計算機システム及び記憶装置とコンピュータ・ソフトウエア並びにストレージ制御における管理者の認証方法
US7290108B2 (en) * 2005-03-25 2007-10-30 Hitachi, Ltd. Information processing system having volume guard function
JP4728060B2 (ja) * 2005-07-21 2011-07-20 株式会社日立製作所 ストレージ装置
JP4643427B2 (ja) * 2005-12-08 2011-03-02 株式会社日立製作所 暗号化機能内蔵ストレージシステム
US8607070B2 (en) * 2006-12-20 2013-12-10 Kingston Technology Corporation Secure storage system and method of use
JP2008234052A (ja) * 2007-03-16 2008-10-02 Hitachi Ltd ストレージ装置
JP5117748B2 (ja) * 2007-03-29 2013-01-16 株式会社日立製作所 暗号化機能を備えたストレージ仮想化装置

Also Published As

Publication number Publication date
JP2008242720A (ja) 2008-10-09
US8090100B2 (en) 2012-01-03
US20080240429A1 (en) 2008-10-02

Similar Documents

Publication Publication Date Title
JP4892382B2 (ja) 記憶装置及びデータ管理方法
EP4235475B1 (en) Systems and methods of database encryption in a multitenant database management system
US8281152B2 (en) Storage data encryption
US10728025B2 (en) Encryption by default in an elastic computing system
US9575685B1 (en) Data migration with source device reuse
US7596695B2 (en) Application-based data encryption system and method thereof
EP2474932A1 (en) Efficient volume encryption
US6966001B2 (en) Computing system and data decryption method and computer system with remote copy facility
KR101323858B1 (ko) 가상화 시스템에서 메모리 접근을 제어하는 장치 및 방법
JP2009151401A (ja) 暗号機能を有するストレージ装置におけるボリューム管理方法
JP5749855B2 (ja) 計算機システム及びそれを用いたボリューム移行制御方法
US11868477B2 (en) Scale out file system using refs and scale out volume
US7568051B1 (en) Flexible UCB
CN115836291A (zh) 系统生成的数据集加密密钥
KR102013678B1 (ko) 데이터의 실시간 암호화 기능을 갖춘 보안파일시스템과 운영방법
Beach et al. Elastic Block Storage
JP2016224829A (ja) ダンプ処理プログラム、情報処理装置、およびダンプ処理方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110930

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees