Chinaunix首页 | 论坛 | 博客
  • 博客访问: 512877
  • 博文数量: 294
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 4260
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-23 06:10
文章分类

全部博文(294)

文章存档

2011年(1)

2008年(293)

我的朋友

分类: 服务器与存储

2008-06-25 07:06:23

系统管理和库管理方式的加密过程

  下图描述了加密并备份数据到磁带的流程,以及密钥如何被传递到磁带驱动器,然后写入介质。本例中,我们假设EKM运行在一台服务器上,而磁带库、磁带驱动器则连接到了另一台服务器上。服务器的类型并不重要,可以相同也可以不同,因为类型相同与否并不影响结果。

  我们假设来自BP的证书已经被导入密钥库(keystore)。其中当然只有公钥,私钥仍保留在BP那里。

  

  现在我们那台服务器发送了一个写请求给驱动器。我们的驱动器有加密功能,主机也有加密请求。写初始化过程中,驱动器获得了两个来自主机或者代理的KEK(key encrypting keys)标签,它们是两个符合RSA算法KEK的别名。首先,驱动器向EKM发送获得数据密钥DK的申请,EKM接到申请后确认该驱动器是否在有效驱动器列表内,如果在列表内,EKM就会从密码服务那里获得一个随机的DK。然后EKM找到别名为两个KEK标签的KEK的公钥部分。同时,EKM再向加密服务发出申请,用两个KEK的公钥部分分别加密DK,创建两个DK的加密实例,即生成了两个EEDK(外部加密数据密钥)。

  EKM将两个EEDK发送给磁带驱动器。驱动器则将它们存在磁带的多个位置和磁带内存里。此外,EKM还会用安全的方法把DK(data key)发送给驱动器。驱动器接收到DK后,就可以用它完成加密操作。

  创建EEDK的模式有两个:

  第一种模式是明文或者标签。这种模式是将KEK标签存在EEDK中。

  第二种模式是哈希。这种模式是将KEK的公钥部分的哈希存在EEDK中。

  在共享BP的KEK时,我们建议使用哈希模式。

  系统管理和库管理方式的解密过程

  我们以在另一地点解密数据为例。磁带在它的CM(Cartridge memory)中有两个EEDK,我们称其为EEDK1和EEDK2。EEDK1采用的是明文(或者标签)模式,EEDK2采用的是哈希模式。

  将加密后的带子装入带机进行读或者续写操作。首先是从磁带读出两个EEDK。驱动器申请EKM解密EEDK获得DK。EKM验证驱动器在有效驱动器列表中。通过验证后,EKM向密钥库(keystore)申请获得每个用来创建EEDK的私钥部分。在密钥库中不保存和EEDK1相关的KEK标签,但保存EEDK2的公钥的哈希值。

  EKM向加密服务发出申请,请求使用和EEDK2相关的KEK的私钥解密EEDK2,获得DK。EKM以安全的方法将DK发送给磁带驱动器。现在,驱动器则既可以用DK解密数据,也可以用DK继续向磁带追加数据。

  

  应用管理方式的加密过程

  本例中将描述使用TSM作为密钥管理器时,加密数据并写入磁带的过程。

  驱动器先装入一盘要加密的带子,再将磁带的ID或者卷标发送给TSM(Tivoli Storage Manager)。TSM生成一个256位的AES数据密钥(DK),加密DK,将DK连同磁带ID一起存在TSM的数据库中。然后,TSM将DK发送给磁带驱动器。驱动器使用DK和AES算法加密数据并将加密后的数据写入磁带。

  

  应用管理方式的解密过程

  仍以TSM为例。驱动器装载加密后的磁带,读取磁带的ID或卷标,并将其发送给TSM。TSM在其内部数据库中用ID寻找相关记录,解密相关项获得DK。TSM将DK发送给磁带驱动器。

  现在,磁带驱动器就可以使用这个256位的DK和AES算法解密数据了。

阅读(530) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~