配置存储驱动器以与加密管理器和密钥管理器通信.pdf

上传人:62****3 文档编号:1034108 上传时间:2018-03-27 格式:PDF 页数:26 大小:1.45MB
返回 下载 相关 举报
摘要
申请专利号:

CN200780030236.8

申请日:

2007.08.31

公开号:

CN101501698A

公开日:

2009.08.05

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06F21/24; G06F21/02

主分类号:

G06F21/24

申请人:

国际商业机器公司

发明人:

B·G·古德曼; P·M·格莱科; G·A·伽奎特; L·G·杰斯奥诺夫斯基

地址:

美国纽约

优先权:

2006.9.7 US 11/530,022

专利代理机构:

北京市中咨律师事务所

代理人:

于 静;李 峥

PDF下载: PDF下载
内容摘要

本发明提供了一种用于配置存储驱动器以与加密管理器和密钥管理器通信的方法、系统和制品。存储驱动器接收访问所连接的可移动存储介质的请求以便进行驱动器操作。所述存储驱动器从加密管理器获取所述连接的可移动存储介质的加密状态。所述存储驱动器根据所获取的加密状态判定是否加密要访问的所述连接的可移动存储介质。响应于判定要针对所述连接的可移动存储介质进行加密,所述存储驱动器从密钥管理器获取至少一个密钥。所述存储驱动器使用所述至少一个密钥来执行数据操作以加密数据。

权利要求书

1.  一种用于配置存储驱动器的方法,所述方法包括以下步骤:
在存储驱动器处接收访问可连接的可移动存储介质的请求以便进行驱动器操作;
由所述存储驱动器从加密管理器获取所述可连接的可移动存储介质的加密状态;
由所述存储驱动器根据所获取的加密状态判定是否加密要访问的所述可连接的可移动存储介质;
响应于判定要针对所述可连接的可移动存储介质进行加密,由所述存储驱动器从密钥管理器获取至少一个密钥;以及
由所述存储驱动器使用所述至少一个密钥来执行数据操作以加密数据。

2.
  如权利要求1中所述的方法,其中所述加密管理器是包括主机应用、主机系统组件以及存储库的加密管理器集合的一个成员。

3.
  如权利要求2中所述的方法,其中所述存储驱动器通过第一通信接口从所述主机应用和所述主机系统组件获取所述加密状态,以及通过第二通信接口从所述存储库获取所述加密状态。

4.
  如权利要求1中所述的方法,其中所述密钥管理器与主机应用、主机系统组件或存储库关联。

5.
  如权利要求4中所述的方法,其中所述存储驱动器通过第一通信接口从与所述主机应用和所述主机系统组件关联的所述密钥管理器获取所述至少一个密钥,以及通过第二通信接口从与所述存储库关联的所述密钥管理器获取所述至少一个密钥。

6.
  如权利要求1中所述的方法,还包括:
在所述存储驱动器处接收指示至少一种加密方法的驱动器配置信息,其中每种加密方法指示提供所述加密状态的加密管理器;以及
由所述存储驱动器将所接收的配置信息存储在所述存储驱动器中。

7.
  如权利要求6中所述的方法,其中所述配置信息指示加密管理器的分层加密管理器排序,其中在所述分层加密管理器排序中具有最高顺序的可用加密管理器提供所述加密状态。

8.
  如权利要求1中所述的方法,还包括:
在所述存储驱动器处接收指示至少一个密钥路径的配置信息,其中每个密钥路径指示提供所述至少一个密钥的所述密钥管理器;以及
由所述存储驱动器将所接收的配置信息存储在所述存储驱动器中。

9.
  如权利要求8中所述的方法,其中所述配置信息指示密钥路径的分层密钥路径排序,其中从在所述分层密钥路径排序中具有最高顺序的可用密钥管理器获取所述至少一个密钥。

10.
  一种可操作以与加密管理器和密钥管理器通信并且可连接到可移动存储介质的系统,所述系统包括:
输入/输出管理器,其可操作以接收访问可连接的可移动存储介质的请求以进行驱动器操作;
密钥管理代码,其可执行以下操作:
从加密管理器获取所述可连接的可移动存储介质的加密状态;
根据所获取的加密状态判定是否加密要访问的所述可连接的可移动存储介质;
响应于判定要针对所述可连接的可移动存储介质进行加密,从密钥管理器获取至少一个密钥;以及
加密引擎,其可操作以使用所述至少一个密钥来执行数据操作以加密数据。

11.
  如权利要求10中所述的系统,其中所述加密管理器是包括主机应用、主机系统组件以及存储库的加密管理器集合的一个成员。

12.
  如权利要求11中所述的系统,还包括:
第一通信接口,通过其从所述主机应用和所述主机系统组件获取所述加密状态;以及
第二通信接口,通过其从所述存储库获取所述加密状态。

13.
  如权利要求10中所述的系统,其中所述密钥管理器与主机应用、主机系统组件或存储库关联。

14.
  如权利要求13中所述的系统,还包括:
第一通信接口,通过其从与所述主机应用和所述主机系统组件关联的所述密钥管理器获取所述至少一个密钥;以及
第二通信接口,通过其从与所述存储库关联的所述密钥管理器获取所述至少一个密钥。

15.
  如权利要求10中所述的系统,其中所述密钥管理代码还可执行以下操作:
接收指示至少一种加密方法的配置信息,其中每种加密方法指示提供所述加密状态的加密管理器;以及
将所接收的配置信息存储在所述存储驱动器中。

16.
  如权利要求15中所述的系统,其中所述配置信息指示加密管理器的分层加密管理器排序,其中在所述分层加密管理器排序中具有最高顺序的可用加密管理器提供所述加密状态。

17.
  如权利要求10中所述的系统,其中所述密钥管理代码还可执行以下操作:
接收指示至少一个密钥路径的配置信息,其中每个密钥路径指示提供所述至少一个密钥的所述密钥管理器;以及
将所接收的配置信息存储在所述存储驱动器中。

18.
  如权利要求17中所述的系统,其中所述配置信息指示密钥路径的分层密钥路径排序,其中从在所述分层密钥路径排序中具有最高顺序的可用密钥管理器获取所述至少一个密钥。

19.
  如权利要求10中所述的系统,还包括:
至少一个存储驱动器,其中所述加密引擎、所述输入/输出管理器,以及所述密钥管理代码包括在所述存储驱动器的每个实例中;
存储阵列,其包括多个可移动存储介质;
自动变换器机构,其可操作以将所述存储阵列中的可移动存储介质传输到所述至少一个存储驱动器以便将所述可移动存储介质连接到所述至少一个存储驱动器;以及
控制器,其用于控制所述存储驱动器和所述自动变换器机构的操作。

20.
  一种包括程序代码装置的计算机程序,当所述程序在计算机上运行时,所述程序代码装置适于执行权利要求1至9中的任一权利要求的所有步骤。

说明书

配置存储驱动器以与加密管理器和密钥管理器通信
技术领域
本发明涉及一种用于配置存储驱动器以与加密管理器和密钥管理器通信的方法、系统和制品。
背景技术
可移动介质盒中存储的数据可以由加密引擎进行加密以保护数据。数据加密对于存储客户的个人数据的企业而言尤其有用。最近的政府条例规定了有关存储个人数据的公司报告所有包含未加密个人信息的存储介质的丢失的要求和法律义务。
处理可移动介质盒中数据的加密和解密的加密引擎可以在主机系统内的应用程序或诸如文件系统、操作系统、设备驱动程序之类的系统程序中实现。将加密引擎结合到应用程序或系统程序中会给主机系统造成大量的计算负担。
“线缆内的块(Bump in the Wire)”解决方案在主机系统和存储驱动器之间包括一个加密设备,所述存储驱动器与可移动介质盒相连并且加密和解密在主机系统和存储驱动器之间传输的数据。由于库或数据中心内的主机系统和存储驱动器之间具有许多不同的数据路径,因此该解决方案的成本很高且很复杂。
加密引擎可以在存储驱动器中实现来加密部分或全部数据。在存储驱动器处加密产生了何时加密数据以及在何处及如何获取所有必需加密密钥的新的难题。在许多情况下,对于不同的可移动介质盒需要不同的密钥。
本领域需要一种管理用于对诸如可移动介质盒之类的可移动存储介质进行加密的加密密钥和加密操作的技术。
发明内容
本发明提供了一种用于配置存储驱动器以与加密管理器和密钥管理器通信的方法、系统和制品。存储驱动器接收访问所连接的可移动存储介质的请求以便进行驱动器操作。所述存储驱动器从加密管理器获取所述连接的可移动存储介质的加密状态。所述存储驱动器根据所获取的加密状态判定是否加密要访问的所述连接的可移动存储介质。响应于判定要针对所述连接的可移动存储介质进行加密,所述存储驱动器从密钥管理器获取至少一个密钥。所述存储驱动器使用所述至少一个密钥来执行数据操作以加密数据。
附图说明
图1示出了计算环境的实施例;
图2示出了加密配置信息的实施例;
图3示出了接收密钥配置信息的存储驱动器操作的实施例;
图4和图5示出了获取加密方法和加密密钥以访问所连接的可移动存储介质的存储驱动器操作的实施例;以及
图6示出了存储库中的组件的实施例。
具体实施方式
图1示出了计算环境的实施例。存储驱动器2能够与多个可移动存储介质4之一相连以针对所连接的可移动存储介质4执行读取和/或写入操作。存储驱动器2包括I/O管理器代码6以针对所连接的可移动存储介质4执行读/写操作。存储驱动器2包括用户接口8,用户接口8包括针对存储驱动器2的用户控件以配置和/或控制存储驱动器。此外,在特定实施例中,外部用户接口10可以可选地与存储驱动器相连,从而提供额外的用于配置和/或控制存储驱动器2的用户控件。存储驱动器2还可以包括通信接口12a和12b、密钥管理代码14、加密引擎16和非易失性存储器17,所述非易失性存储器包括但不限于PROM(可编程只读存储器)、EEPROM(电可擦写可编程只读存储器)、闪速PROM(可编程只读存储器)、NVRAM(非易失性随机存取存储器)、MRAM(磁阻随机存取存储器)、电池后备RAM、CD(光盘)、DVD(数字多功能盘)、硬盘驱动器等。
可移动存储介质4可以包括任何其上可以存储数据和可以充当可移动介质的介质类型,包括但不限于磁介质(例如磁带或磁盘)、光介质(例如光带或光盘)、全息介质(例如全息卡、全息磁带或全息磁盘)、电介质(例如PROM、EEPROM、闪速PROM、MRAM、CompactFlash TM、Smartmedia TM、MemoryStick TM等)或其他适合的介质。在特定实施例中,可移动存储介质具有盒带外壳,例如带有磁带盒或光盘盒的壳。
用户接口8和/或可选的外部用户接口10可以包括与存储驱动器2交互的用户接口元件,例如用于手动卸载可移动存储介质4的弹出按钮、用于在项目列表中导航的上/下按钮、用于选择项目或从菜单或列表中退出的进入/退出按钮,以及一个或多个状态显示器(例如显示灯或LED(发光二极管)、数字显示器、字母数字显示器等)。外部用户接口10可以包括计算机、工作站、个人计算机、掌上计算机、操作员面板、输入键、显示器、Web用户接口、专用用户接口或任何其他能够提供存储驱动器2的用户接口的设备或接口。
密钥管理代码14可用于从密钥管理器32a、32b、32c获取一个或多个加密密钥,以提供给加密引擎16以用于针对所连接的可移动存储介质14加密和/或解密数据。加密引擎16可利用对称加密算法、非对称加密算法或对称和非对称加密算法的组合,例如但不限于DES(数据加密标准)、TripleDES、AES(高级加密标准)、IDEA(国际数据加密算法)、Twofish、Blowfish、Serpent、CAST5、ACR4、RSA(Rivest Shamir Adleman)、Diffie-Hellman、DSS(数字签名标准)等。
在一个实施例中,密钥管理代码14获取一个或多个密钥以加密和/或解密可移动存储介质4上的数据。所述密钥可以包括数据密钥和/或包括一个或多个密钥加密密钥(KEK)。所述数据密钥用于加密/解密可移动存储介质上的数据,而所述KEK(如果存在)用于掩护或保护(包装或加密)数据密钥。所述KEK允许将数据密钥(多个)存储在可移动存储介质4上。如果密钥被存储在可移动存储介质上,则它们可以被存储在关联的盒带存储器中,或可以被存储在介质本身上。盒带存储器可以包括本领域中公知的任意类型的有线或无线存储器或与数据存储盒关联的RFID标签。包含无线盒带存储器的可移动介质盒的一个实例包括LTO(线性磁带开放协议)Ultrium磁带盒。包含有线盒带存储器的可移动介质盒的一个实例包括Sony AIT(先进智能磁带)盒。
密钥管理代码14、加密引擎16、以及I/O管理器代码6可以被实现为存储驱动器2中的硬件逻辑或实现为由存储驱动器2中的一个或多个处理器(未示出)访问和执行的计算机可执行指令。
存储驱动器2包括不同的接口12a、12b以实现与不同设备的通信,例如接口12a用于与存储库22进行通信,接口12b用于与网络24进行通信以及通过网络24与主机系统26进行通信。还可能存在其他用于与不同的设备或主机连接的通信接口。此外,可能存在冗余接口来提高可靠性、可用性、连接性或性能。在一个实施例中,接口12a和12b可以包括不同的接口以及实现不同的通信协议。例如,接口12a可以包括用于与存储库22通信的串行或并行接口,接口12b可以包括用于与网络24通信的网络接口,例如用于与局域网进行通信的实现TCP/IP协议的接口或用于与存储区域网络进行通信的实现光纤通道协议的接口。接口12a和/或12b可以包括串行接口、并行接口或光纤接口,例如RS-232、USB(通用串行总线)、串行或并行ATA(AT附件)、SCSI(小型计算机系统接口)、SAS(串行连接SCSI)、光纤通道、IEEE 1394(FireWire或iLink)、IEEE 1284(并行端口)等。此外,接口12a和/或12b可以包括网络接口或无线接口,例如以太网、SAN(存储区域网络)、WAN(广域网)、CAN(控制器区域网络)、802.11(Wi-Fi)、X.25(WAN)、蓝牙等。再进一步地,接口12a和/或12b可以包括上述接口的组合。在一个实施例中,接口12b可以包括允许从主机系统26向存储驱动器2传送读/写请求的带内网络接口。接口12a可以包括通过其所连接的存储库22(或其他设备)可以提供命令和/或数据以配置存储驱动器2的带外接口。接口12a和/或12b可用于针对密钥管理配置存储驱动器2,以及可用于将配置信息20提供给存储驱动器2。
存储库22可以包括自动信息存储和检索系统,也称为自动数据存储库,其包括容纳如上所述的可移动介质的存储单元(即,存储槽)的阵列。自动库内的检出器部件可以在槽和一个或多个可用于库系统的磁带驱动器之间移动磁带盒,其中磁带驱动器实现图1中的存储驱动器2的各个组件。库的一个实例是IBM 3584 UltraScalable Tape Library。磁带驱动器的一个实例是IBM 3592 Tape Drive。
主机系统26包括诸如备份程序、档案软件或任何其他管理数据的主机应用之类的应用程序28。应用程序的一个实例是IBM Tivoli StorageManager。主机系统26还包括一个或多个系统组件30,系统组件30可以包括诸如操作系统、文件系统、设备驱动器、DLL(动态链接库)之类的主机系统程序。存储库22、应用28以及系统组件30可以与关联的密钥服务器18a、18b、18c相连。存储驱动器2可以将加密密钥请求提交给密钥管理器32a、32b、32c(分别与密钥服务器18a、18b、18c关联),或者提交给所连接的存储库22、应用28和/或系统组件30(作为它们所连接的密钥管理器32a、32b、32c的代理运行)。备选地,存储驱动器2可以将加密密钥请求直接发送到密钥服务器18a、18b、18c或密钥管理器32a、32b、32c,或者存在一个直接与存储驱动器2相连的密钥服务器(未示出)。
每个密钥服务器18a、18b、18c分别包括用于执行密钥相关操作的密钥管理器32a、32b、32c以及密钥库34a、34b和34c。因此,密钥服务器和密钥管理器可以指密钥管理器、密钥服务器或两者。密钥库34a、34b、34c可以包括存储用于加密和/或解密来自/发往不同可移动存储介质4的数据的加密密钥(即,KEK和/或数据密钥)的数据库。密钥库34a、34b、34c可以包括诸如数组、结构、数据库、文件之类的软件元素。此外,密钥库可以包括诸如存储器、介质、硬盘驱动器、存储设备之类的硬件元素。密钥服务器18a、18b、18c还可以包括用户接口以使得用户能够针对密钥管理器32a、32b、32c执行密钥管理操作。
在图1中,在为所连接的存储库22、应用28、系统组件30和/或存储驱动器2提供密钥管理服务的单独密钥服务器18a、18b、18c设备中维护密钥管理器32a、32b、32c和密钥库34a、34b、34c。图1的计算环境可以包括单个密钥服务器或可以包括如图1中示出的多个密钥服务器。在备选实施例中,可以在存储库22、应用28、系统组件30或主机系统26中实现所述密钥管理器和密钥库。在此情况下,可以没有任何密钥服务器。在其他实施例中,计算环境可以包括单个密钥管理器,而非图1中示出的多个密钥管理器。例如,库22可以包括一个密钥管理器(未示出)并且不存在任何其他密钥管理器。
存储库22、应用28以及系统组件30都被示为带有可选的用户接口36a、36b、36c,后者用于提供诸如加密配置信息之类的配置信息。所述配置信息可以被提供给相应的存储库22、应用28、系统组件30和/或可以被提供给存储驱动器2。由用户接口36a、36b、36c、8和10提供的加密配置信息可以作为加密配置信息20存储在非易失性存储器17中。备选地,如下文中介绍的,可以将部分或全部配置信息20存储在库22、主机应用28和/或系统组件30中。可选的用户接口36a、36b和/或36c可以包括计算机、工作站、个人计算机、掌上计算机、操作员控制面板、输入键、显示器、Web用户接口、专用用户接口或任何其他能够提供存储库22的用户接口的设备或接口。此外,主机系统26可以包括用户接口,并且接口36b和/或36c可以包括主机系统接口。
图2将加密配置信息20示为具有加密方法40和密钥路径42。加密方法指定在何处加密数据和/或何时决定加密数据。例如,加密方法可以指示应用管理型加密、系统管理型加密或库管理型加密。对于应用管理型加密,主机应用将判定应加密哪些数据和/或哪些盒带。能够执行应用管理型加密的主机应用的实例是IBM Tivoli Storage Manager。对于系统管理型加密,主机应用将判定应加密哪些数据和/或哪些盒带。主机系统组件的实例包括但不限于操作系统、文件系统、设备驱动器、DLL(动态链接库)等。对于库管理型加密,库将判定应加密哪些数据和/或哪些盒带。另外地或备选地,加密方法40可以指示一个或多个加密管理器22、28和/或30,后者指导存储驱动器2是否针对所连接的可移动存储介质4执行加密和/或解密。加密管理器可以包括协助加密相关的活动且独立于存储驱动器2的硬件和/或软件组件。这些活动可以包括但不限于传递密钥、确定何时加密、加密何种内容、配置加密设置等。因此,库22、应用28、系统组件30、主机系统26、密钥服务器18a、18b、18c、密钥管理器32a、32b、32c可以包括加密管理器。再进一步地,加密方法40可以指示接口或路径,后者将用于指导存储驱动器2是否针对所连接的可移动存储介质4执行加密和/或解密。例如,加密方法40可以将接口12a指示为用于提供有关何时加密数据的信息的接口。
密钥路径42指示应通过其传输加密密钥的路径或特定接口12a、12b。例如,密钥路径42可以指示接口12a。在此情况下,如果存储驱动器2需要任何加密密钥,它将通过接口12a请求密钥(多个)。可以通过端口、UART、收发器、通道、地址、别名等来标识特定接口。备选地,密钥路径42可以包括应通过其传输密钥的特定密钥服务器18a、18b、18c或特定密钥管理器32a、32b、32c。可以通过IP地址、MAC地址、全球名称、主机名、别名、端口号或任何其他标识设备的方法来标识密钥服务器和/或密钥管理器。再进一步地,密钥路径42可以包括加密方法(应用管理型、系统管理型、库管理型)并且所述方法是路径的指示器。例如,加密方法40可以包括“系统”以指示系统组件将确定何时应执行加密,并且密钥路径42可以包括“库”以指示所有需要的密钥都来自该库。在图1的实例中,“系统”可以指示接口12b,并且“库”可以指示接口12a。
密钥路径42可以包括与加密方法40相同的信息。例如,它们可以包括相同的方法(应用管理型、系统管理型或库管理型加密),或相同的密钥服务器(18a、18b、18c),或相同的密钥管理器(32a、32b、32c),或相同的加密管理器(22、28、30),或相同的接口(12a、12b)等。例如,在库管理型加密中,库22指定应加密哪些数据并且库22还可以向存储驱动器2提供加密密钥。备选地,密钥路径42可以与加密方法40不同。例如,在系统管理型加密中,主机系统组件30指定应将加密哪些数据,但是库22可以实际向存储驱动器2提供加密密钥。
加密配置信息20可以只包括加密方法40或可以只包括密钥路径42。此外,配置信息20可以包括除了加密方法40和密钥路径42之外的其他信息。再进一步地,加密配置信息20可以如上所述存储在多个位置中。
驱动器可以请求加密密钥。例如,库22可以将加密后的介质加载到存储驱动器2中。密钥管理代码14可以确定加密的可移动存储介质14已被加密并且甚至可以确定需要哪个或哪些密钥来访问数据。密钥管理代码14可以使用密钥路径42从所指示的加密管理器、密钥管理器、密钥服务器、库、应用、系统组件、接口或路径来请求必要的密钥(多个)。在另一实例中,库可以将介质移动到存储驱动器2并且库可以通过接口12a使用消息或命令告知驱动器应对介质进行加密。或者,驱动器可以在介质被移动到驱动器之后请求加密状态(是否针对所加载或连接的可移动介质4和/或应使用的特定密钥或密钥标签来加密数据)。在任一情况下,驱动器然后都可以根据来自库的加密状态来请求一个或多个密钥。备选地,驱动器可以在不请求加密密钥的情况下接收加密密钥。例如,根据加密方法40,库22可以配置为进行库管理型加密。当库22将可移动存储介质4移动到存储驱动器2时,它还可以向存储驱动器2提供所有所需的加密密钥(多个)和/或密钥标签。在此情况下,通过库将密钥提供给驱动器的事实内在地提供或暗示了加密状态。
设备22、主机应用30、系统组件32或其他连接的设备(未示出)可以充当存储驱动器2和密钥管理器32a、32b、32c之间的代理。所述代理可以充当软件或硬件协议转换器,或者可以提供与密钥管理器的更复杂的交互。此外,存储驱动器2可以与密钥管理器直接相连而没有任何代理(未示出)。
加密管理器22、28和/或30还可以提供加密算法和/或一个或多个加密密钥或密钥标签,以供加密引擎16用于所可连接的可移动存储介质4。密钥标签是用于标识单个或多个特定加密密钥的别名、名称、签名、散列或标识符。在此单个密钥、多个密钥、单个加密密钥、多个加密密钥、单个解密密钥、多个解密密钥、单个密钥标签和多个密钥标签全部用于指可用于加密和/或解密数据或其他密钥的一个或多个密钥。
在一个实施例中,可以将存储库22划分为一个或多个具有多个存储驱动器2的逻辑库。可以独立于任何其他驱动器来配置每个存储驱动器2。此外,可以同时或使用相同的设置来配置各组存储驱动器。这可以包括框架中的所有存储驱动器、逻辑库中的所有存储驱动器、物理库中的所有存储驱动器,或从用户接口8、10、36a、36b、36c提供的列表选择的所有存储驱动器等。通过这种方式,可以为不同的驱动器、驱动器组、框架或逻辑库中的每一项指定不同的加密管理方法40和/或不同的密钥路径42。
可以根据加密管理方法(应用管理型、系统管理型、库管理型)、加密管理器(存储库22、应用28、系统组件30)、特定通信接口(12a、12b)、特定设备或主机系统(22、26、28、30)、特定密钥服务器(18a、18b、18c)、特定密钥管理器(32a、32b、32c)等来存储加密方法40和/或密钥路径42信息。存储驱动器2、库22、主机系统26、应用30或系统组件32可以存储、维护或使用部分或全部加密配置信息20。例如,图1的计算环境可以被配置为支持库管理型加密。库22可以使用加密方法40来确定其何时应工作在库管理型加密模式。在另一实例中,库22可以包括全部加密配置信息20,而存储驱动器2不包括任何信息。在该实例中,可以针对库管理型加密来设置库加密方法40,而密钥路径42可以被设置为库,或者可以被设置为使用接口10a。在此情况下,库不仅确定应加密哪些数据或盒带,而且还在数据存储驱动器需要时通过接口10a向该驱动器提供任何密钥(多个)。
加密配置信息20还可以提供加密方法40和密钥路径42的分层排序。在此情况下,存储驱动器2、库22、主机系统26、应用30或系统组件32首选从可用的最高顺序的方法接收所连接的可移动存储介质4的加密方法信息,以及从可用的最高顺序的密钥路径接收加密密钥。加密方法和密钥路径的分层提供了冗余,以便当较高顺序的加密方法或密钥路径不可用时,可以从分层排序中处于较低分层的加密方法或密钥路径提供所需的信息。
图3示出了在收到(方块50)指示加密方法40和/或密钥路径42或加密方法和/或密钥路径的分层的配置信息20时,由存储驱动器密钥管理代码14执行的操作的实施例。作为响应,密钥管理代码14将收到的配置信息20存储(方块52)在存储驱动器非易失性存储器16中。备选地,如上所述,可以由库22、应用28和/或系统组件30接收和存储部分或全部配置信息20。
图4示出了响应于存储驱动器2启动(方块100)操作以访问所连接的可移动存储介质4以进行读取和/或写入访问,由存储驱动器密钥管理代码14执行的操作的实施例。所连接的可移动存储介质指要被移动到、正在被移动到,或已被移动到数据存储驱动器的介质。密钥管理代码14确定(方块102)加密方法,即上述的应用管理型、系统管理型或库管理型加密方法。加密方法用于确定介质加密状态,加密状态可以指示是否针对所连接的可移动存储介质4加密和/或解密数据或密钥,以及/或者可以包括特定密钥或密钥标签,或者可以指示其他加密相关的信息。在一个实施例中,可以在没有请求的情况下提供所连接的可移动存储介质4的介质加密状态。例如,可以由库22维护和存储加密方法40。库22可以通过接口12a通知驱动器需要针对所连接的可移动存储介质4加密数据。库还可以提供所需的密钥(多个),或可以提供标识所需密钥(多个)的密钥标签(多个)。在备选实施例中,密钥管理代码14可以根据指示的加密方法来请求可移动存储介质4的介质加密状态。例如,如果加密方法40被设置为库管理型加密,则密钥管理代码14可以通过接口12a从库22请求介质加密状态。再进一步地,密钥管理代码14可以在启动读取和/或写入操作或在仅启动写入操作时通过加密管理器确定加密状态。在一个实施例中,密钥管理代码14可以通过读取可移动存储介质14并确定数据已被加密来为读取操作确定介质加密状态。还可从所连接的可移动存储介质4读取盒带存储器(如果使用)以确定介质加密状态。如果加密方法40指示加密方法的分层排序,则密钥管理代码14可以使用在分层排序中指示的可用的最高顺序加密管理器所提供的加密方法信息。
如果(方块104)加密管理器22、28或30指示不需要针对所连接的可移动存储介质4进行加密,则I/O管理器6在不使用加密引擎16的情况下访问(方块106)所连接的可移动存储介质4。如果(方块104)加密管理器22、28或30指示需要加密,则密钥管理代码14通过使用配置信息20的密钥路径42中指定的信息从密钥管理器32a、32b、32c或代理22、28、30获取一个或多个密钥。在一个实施例中,所标识的密钥路径42(其可以包括用作所连接的密钥服务器的代理的密钥管理器32a、32b、32c或存储库22、应用28或系统组件30)可以在没有请求的情况下提供加密密钥,或者密钥管理代码14可以从所标识的密钥路径请求密钥(多个)。如果配置信息20指示了密钥路径的分层排序,则密钥管理代码14可以使用在分层排序中指示的可用的最高顺序密钥路径所提供的密钥路径信息。
可以在每次将盒带加载到存储驱动器2中时执行图4的操作,或者可以在每次要执行读取和/或写入操作时执行图4的操作。此外,可以在不同的时间执行图4的操作。例如,可以在存储驱动器2加电或重置时,或在将盒带加载到存储驱动器2中时确定加密方法和/或密钥路径。备选地,可以在每次要执行读取和/或写入操作时确定是否加密。
在一个实施例中,密钥管理代码14可以从所连接的可移动存储介质4读取一个或多个已加密密钥并将它们传输到所标识的密钥路径,以便返回可以由加密引擎18使用的未加密版本的密钥(多个)。
图5示出了当加密配置信息20提供了加密方法和/或密钥路径的分层排序时,响应于存储驱动器2启动(方块150)操作以访问所连接的可移动存储介质4以进行读取和/或写入访问,由存储驱动器密钥管理代码14执行的操作的备选实施例。密钥管理代码14确定(方块152)指示为处于加密方法的分层排序中的最高顺序的加密方法,例如存储库22、主机应用28以及系统组件30。将请求发送到(方块154)所确定的加密管理器22、28、30以获取所连接的可移动存储介质4的介质加密状态,所述状态可以指示是否针对所连接的可移动存储介质4执行加密,并且可以包括所需的密钥或密钥标签或加密引擎16应使用的加密算法的指示或其他信息。如果(方块156)所查询的加密管理器22、28或30未提供响应,则密钥管理代码14判定(方块158)加密方法40中的加密管理器的分层排序是否指示所述分层排序中的下一外部加密管理器22、28或30。如果(方块158)不考虑其他加密管理器22、28或30,则返回失败(方块160),因为指示的加密管理器22、28和/或30都不能提供加密状态。
如果(方块158)要考虑其他指示的加密方法,则确定配置信息20中指示的分层排序中的下一加密方法(方块162)并且控制返回方块154以请求加密状态(即,是否加密特定的密钥或密钥标签等)。
如果(方块156)所查询的加密管理器22、28或30提供了加密状态并且如果(方块164)不需要针对所连接的可移动存储介质4进行加密,则I/O管理器6可以在不使用加密引擎16的情况下访问(方块166)所连接的可移动存储介质4。否则,如果需要加密(方块164),则密钥管理代码14确定(方块168)在密钥路径的分层排序中具有最高顺序的密钥服务器(或密钥服务器22、28或30的代理)。将请求发送到(方块170)所确定的密钥服务器(或代理22、28或30)以获取所连接的可移动存储介质4的加密密钥。如果从所连接的可移动存储介质4访问加密的密钥,则请求可以包括所述加密的密钥。如果(方块172)所查询的密钥管理器18a、18b、18c(或代理22、28或30)提供了正确的加密密钥,即可用于所连接的可移动存储介质4的加密密钥,则加密引擎16使用(方块174)收到的加密密钥来针对所连接的可移动存储介质4执行加密和/或解密。如果(方块172)所查询的密钥管理器18a、18b、18c(或代理)未提供有效的加密密钥,即未响应或所提供的密钥无效,则密钥管理代码14判定(方块176)密钥路径分层排序是否指示下一密钥管理器(或代理)。如果(方块176)未提供另一密钥路径,则返回失败(方块160)。如果在配置信息20中指示了另一密钥路径,则确定(方块178)密钥路径的分层排序中的下一密钥管理器32a、32b、32c(或代理22、28或30),并且控制继续到方块170以尝试从下一密钥路径获取一个或多个加密密钥。
对于图4和图5的所述实施例,加密配置信息20可以向密钥管理代码14提供加密方法40,加密方法40例如可以指示一个或多个要联系的外部加密管理器22、28和/或30以判定是否应针对所连接的可移动存储介质4执行加密,以及指示诸如要使用的加密算法之类的其他可能信息。加密配置信息20还可以指示一个或多个密钥路径42以提供加密密钥,其中密钥路径可以例如包括可能的加密管理器22、28和/或30,或与此类可能的加密管理器相连的密钥服务器18a、18b、18c之一等。被标识为密钥路径的一个或多个加密管理器22、28和/或30(或所连接的密钥服务器18a、18b、18c)可以不同于被标识为外部加密管理器以提供加密方法的一个或多个加密管理器22、28和/或30。
图6示出了诸如存储库22之类的自动存储库200的实施例,自动存储库200包括:诸如存储单元之类的包含可移动存储介质204b...204n的存储阵列202;诸如可移动存储介质连接到其以进行访问的磁带驱动器、光盘驱动器或其他可移动介质存储驱动器之类的存储驱动器206;诸如检出器部件之类的在存储阵列202和存储驱动器206之间传送可移动存储介质204a、204b...204n的自动变换器机构208;以及库控制器210。库200的一个实例是IBM 3584 UltraScalable Tape Library。
可移动存储介质204a、204b...204n可以包括可移动存储介质4。在特定实施例中,库控制器210包括控制自动库200中的组件(包括自动变换器机构208和存储驱动器206)的操作的微处理器和各种控件与接口。库控制器210利用存储器212来存储各种信息,例如维护有关可移动存储介质204a、204b...204n在库200中的位置信息的存储介质图,其中包括存储阵列202中的库元件的内容。库控制器210可以包括单个处理单元、多个冗余处理单元和/或多个分布式处理单元。
库控制器210还可以针对库200中的可移动存储介质204a、204b...204n管理读/写操作。库操作员可以通过与库200相连的包括显示设备和键盘的操作员终端220直接控制对可移动存储介质204a、204b...204n的操作及管理,以便与库控制器210进行交互。操作员终端220可以包括计算机、工作站、个人计算机、掌上计算机、操作员面板、输入键和显示器、Web用户接口、专用用户接口或任何其他能够提供库200的用户接口的设备或接口。此外,主机系统(未示出)可以将命令发送给库控制器210以控制自动库200内的介质的移动。主机系统(未示出)还可以将命令发送给存储驱动器206以针对可移动存储介质204a、204b...204n执行读取和/或写入操作。主机系统(多个)可以通过一个或多个网络或接口与库200和/或存储驱动器206通信。所述主机接口(多个)可以包括串行接口、并行接口或光纤接口,例如但不限于RS-232、USB(通用串行总线)、串行或并行ATA(AT附件)、SCSI(小型计算机系统接口)、SAS(串行连接SCSI)、光纤通道、IEEE 1394(FireWire或iLink)、IEEE 1284(并行端口)等。此外,所述主机接口(多个)可以包括网络接口或无线接口,例如但不限于以太网、SAN(存储区域网络)、WAN(广域网)、CAN(控制区域网络)、802.11(Wi-Fi)、X.25(WAN)、蓝牙等。再进一步地,所述主机接口(多个)可以包括上述接口的组合。其他实施例详细信息
使用生产软件、固件、硬件或它们的任意组合的标准编程和/或工程技术,上述操作可以被实现为方法、装置或制品。所述操作可以实现为在“计算机可读介质”中维护的代码,其中一个或多个处理器可以读取和执行来自一个或多个计算机可读介质的代码。计算机可读介质可以包括诸如磁存储介质(例如硬盘驱动器、软盘、磁带等)、光存储装置(CD-ROM、DVD、光盘等)、易失性和非易失性存储器件(例如EEPROM、ROM、PROM、RAM、DRAM、SRAM、MRAM、闪存、固件、可编程逻辑等)等之类的介质。实现所述操作的代码还可以在硬件逻辑(例如集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等)中实现。再进一步地,实现所述操作的代码可以在“传输信号”中实现,其中传输信号可以通过空间或通过诸如光纤、铜线等之类的传输介质进行传播。其中编码所述代码或逻辑的传输信号还可以包括无线信号、卫星传输、无线电波、红外信号、蓝牙等。其中编码所述代码或逻辑的传输信号能够由发射站发射并由接收站接收,其中编码在所述传输信号中的代码或逻辑可以在接收站和接收设备或发射站和发射设备处被解码并存储在硬件或计算机可读介质中。“制品”包括其中可以实现代码的计算机可读介质、硬件逻辑和/或传输信号。其中编码实现所述操作的实施例的代码的设备可以包括计算机可读介质或硬件逻辑。当然,本领域的技术人员将认识到,可以在不偏离本发明的范围的情况下对此配置做出许多修改,并且所述制品可以包括本领域公知的适合的信息承载介质。
可以在加密方法40中指示的加密管理器被描述为包括存储库22、应用28和/或30。在其他实施例中,可以在加密方法40的配置信息中将不同类型的组件、硬件和/或软件指定为加密管理器。
术语“一个实施例”、“实施例”、“多个实施例”、“所述实施例”、“所述多个实施例”、“一个或多个实施例”、“某些实施例”和“某一实施例”指本发明的一个或多个(但不是所有)实施例,除非另外明确指出。
术语“包含”、“包括”、“具有”及其变型指“包括但不限于”,除非另外明确指出。
列举的项目的列表并非暗示任何或所有的项目互相排斥,除非另外明确指出。
术语“一”、“一个”和“所述”指“一个或多个”,除非另外明确指出。
变量“n”和“m”当用于表示元素的变量数时,可以指示元素的任意数量的实例,并且当与不同的元素一起使用时,可以指示不同的整数。
相互通信的设备不必持续地相互通信,除非另外明确指出。此外,相互通信的设备可以直接通信或通过一个或多个媒介间接地通信。
具有多个相互通信的组件的实施例的描述并非暗示所有此类组件都是必需的。相反,描述了多种可选的组件以说明更多可能的本发明的实施例。
此外,尽管可以按照连续的顺序来描述处理步骤、方法步骤、算法或类似步骤,但是此类处理、方法和算法可以被配置为以交替顺序工作。换句话说,所描述的步骤的任何序列或顺序并不一定指示要求按此顺序执行步骤。实际可以按任何顺序执行在此描述的处理的步骤。此外,可以同时执行某些步骤。
当在此描述单个设备或物品时,将显而易见的是,可以使用多个设备/物品(无论它们是否协作)来代替单个设备/物品。同样,当在此描述了多个设备或物品(无论它们是否协作)的情况下,将显而易见的是,可以使用单个设备或物品来代替多个设备或物品,或者可以使用不同数量的设备或物品来代替所示数量的设备或程序。设备的功能和/或特性可以备选地由一个或多个其他未明确描述为具有此类功能/特性的设备来体现。因此,本发明的其他实施例不必包括设备本身。
图3、4和5的所示操作示出了按特定顺序发生的特定事件。在备选实施例中,可以按不同顺序执行特定操作、修改或删除特定操作。此外,可以将步骤添加到上述逻辑并仍与所述实施例一致。此外,在此所述的操作可以按顺序发生或特定操作可以被并行处理。进而,操作可以由单个处理单元或分布式处理单元执行。
出于示例和说明目的给出了对本发明的各种实施例的上述描述,并且所述描述并非旨在是穷举的或是将本发明限于所公开的精确形式。根据上述教导,许多修改和变化都将是可能的。本发明的范围并非由此详细说明来限制,而且由以下附带的权利要求来限制。上述说明书、实例和数据提供了对本发明的组成的生成和使用的全面描述。由于可以在不偏离本发明的精神和范围的情况下生成本发明的许多实施例,因此本发明存在于以下所附的权利要求中。

配置存储驱动器以与加密管理器和密钥管理器通信.pdf_第1页
第1页 / 共26页
配置存储驱动器以与加密管理器和密钥管理器通信.pdf_第2页
第2页 / 共26页
配置存储驱动器以与加密管理器和密钥管理器通信.pdf_第3页
第3页 / 共26页
点击查看更多>>
资源描述

《配置存储驱动器以与加密管理器和密钥管理器通信.pdf》由会员分享,可在线阅读,更多相关《配置存储驱动器以与加密管理器和密钥管理器通信.pdf(26页珍藏版)》请在专利查询网上搜索。

本发明提供了一种用于配置存储驱动器以与加密管理器和密钥管理器通信的方法、系统和制品。存储驱动器接收访问所连接的可移动存储介质的请求以便进行驱动器操作。所述存储驱动器从加密管理器获取所述连接的可移动存储介质的加密状态。所述存储驱动器根据所获取的加密状态判定是否加密要访问的所述连接的可移动存储介质。响应于判定要针对所述连接的可移动存储介质进行加密,所述存储驱动器从密钥管理器获取至少一个密钥。所述存储驱。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1