首页 > 基础设施 > 正文

刀片加密服务器的密钥的管理

2010-04-23 08:21:56  来源:万方数据

摘要:服务器是计算机网络中的核心设备,用户的所有信息都是通过服务器进行处理和存储,因此,服务器的信息安全问题是至关重要的。利用密码技术实现用户信息的密存,是解决服务器信息安
关键词: 服务器 刀片加密服务

  1 加密服务器设计的基本原则
  加密服务器设计的基本原则是在公用信息平台中的数据信息只有授权用户通过证书认证后,经过安全通道才可以看到明文,而非授权用户无论通过什么途径都得不到任何有效信息。保障信息传输和信息存储的安全性,同时不改变用户的使用习惯,不影响数据库的结构,对于合法用户应保持透明,加密服务器网络的原理图如图l所示。

 

图1 加密服务器网络应用拓扑图
  图1 加密服务器网络应用拓扑图


  图1中用户终端通过宽带网或PSTN拨号方式连到服务器,加密服务器通过1000M以太网口连接到网络磁盘阵列。加密服务器和磁盘阵列构成了公用信息平台。
  用户在访问公用信息平台时,首先涉及到的是从用户终端到加密服务器之间的信息传输安全问题。信息传输安全是由改造的SSH和SSL保证的,SSH不仅可以上传、下载文件,而且可以对加密服务器进行必要的管理(包括控制密钥的生成、更换密钥、重启机器、安装应用软件等);SSL用来保证WEB应用的数据传输安全。SSH和SSL的客户端密码算法由加密卡提供,服务器端密码算法由加密服务器上的算法芯片SSP02-A、SSX04、WNG-5提供;加密服务器还可以实现对存储在磁盘阵列上的文件数据进行加脱密处理,文件加脱密主密钥是由WNG-5物理噪声源芯片产生的;加脱密算法由SSP02-A完成。加脱密操作是在操作系统层进行,通过改造网络文件系统NFS使得保存到磁盘阵列上的文件全是密文;实行身份认证,防止非法用户侵入;实现对加密服务器的远程管理;对操作系统进行安全改造。
  2 刀片加密服务器系统的密钥的管理
  本系统中用到的证书、密钥有:SSH证书、SSH密钥,SSL证书、SSL密钥,会话密钥,主密钥(文件加密对称密钥)。其中,SSH和SSL证书、密钥分为服务器端和客户端,在服务器端为服务器SSH证书、私钥和服务器SSL证书、私钥,在客户端为管理员SSH证书、私钥和普通用户SSL证书、私钥;会话密钥是在SSH、SSL通讯中使用的密钥,该密钥在每次建立会话通讯时生成,在会话结束时销毁;主密钥是对用户数据文件进行加密时使用的对称密钥,该密钥以密文形式保存在服务器端,即:用SSH公钥和SSX04算法芯片加密后保存到密钥存储区。本系统中密钥的管理分为:服务器密钥存储区中密钥的管理;用户密钥的管理;加密服务器与客户端的通讯过程中会话密钥的管理。
  2.1服务器密钥存储区中密钥的管理
  加密服务器需要用到三类密钥:服务器密钥、会话密钥和主密钥。其中会话密钥是通讯过程中使用的临时密钥,在通讯会话结束时销毁,不保存。在服务器上保存的密钥只有服务器密钥和主密钥;主密钥是对称算法密钥,用于文件系统对用户数据的加脱密;服务器密钥包括SSL密钥和SSH密钥,用于服务器端与客户端的信息传输安全以及身份认证。服务器SSH密钥、SSL密钥和管理员证书用加密模块中的‘服务器私钥保护模块’中的密钥和SSP02一A算法芯片加密后再写入到密钥区;主密钥用SSH公钥和SSX04算法芯片加密后写入到密钥区。
  服务器证书、密钥由用户从CA中心申请得到,SA中心分发给用户一对公钥和私钥,保存在用户的智能IC卡上,智能IC卡需要系统管理员级的用户妥善保管,服务器密钥的长度均为1024位;主密钥由加密模块的WNG-4芯片产生,密钥长度为128位。
  对以上密钥的管理包括两个方面:一方面防止非法在密钥区添加用户,更改密钥区的证书数据;另一方面是防止密钥区的密钥数据被非法窃取。为此,我们采取对密钥区数据进行密存的方式:服务器的SSH私钥、SSL私钥和管理员证书通过加密模块中的‘服务器私钥保护模块’中的密钥和SSP02一A算法芯片加密后再保存到密钥区;主密钥用SSH公钥和ssx04算法芯片加密后保存到密钥区;其他证书则用管理员私钥签名后再写入到密钥区。
  加密模块中的‘服务器私钥保护模块’由W78LE51P单片机实现。生产时将管理程序和密钥(生产时生成,每一块板卡一个密钥)烧录到单片机的ROM中,然后将单片机的烧录控制位烧断(单片机及烧录软件提供的功能),这样,程序和密钥就被固化到单片机的ROM中,并且不能读出。为了确保单片机中程序和密钥的安全性,我们还采取了将单片机的数据端口(P0口)高压熔断的方法,使其失去功能(有关实验说明参见附录部分)。在这种状态下,单片机ROM中的数据既不能被读出也不能被更改。由于固化到单片机中的程序和密钥是无法被读出的,所以该程序和密钥是安全的。
  密钥区中密文密钥在使用时,由应用程序将密文密钥和被加/脱密的数据一同送到加密模块中,加密模块中的MPU管理程序负责调用有关的模块/算法芯片将密文密钥脱密成明文密钥,并使用明文密钥对数据进行加/脱密处理。脱密出的明文密钥不出加密模块,只在加密模块中由MPu管理程序使用(传送给加密模块中的算法芯片使用),MPU管理程序处理完毕后将相应的明文密钥清除。
  密钥区中系统证书、密钥的初始化:加密服务器上电启动时,在完成有关的初始化操作后,首先检查密钥区中是否存有有效的证书数据,如果没有,系统将等待由‘证书密钥写入组件’写入的数据,这时系统管理员需要将申请的服务器证书、密钥和管理员证书通过‘证书密钥写入组件’及其配套的应用软件依次写入到密钥灌装口,系统管理程序则将由密钥灌装口收到的密钥数据按一定的格式保存到密钥区的相应空间,即:在保存过程中,管理程序先将服务器SSH私钥通过加密模块中的‘服务器私钥保护模块’中的密钥和SSP02一A算法芯片加密后再写入到密钥区的相应空间,服务器证书则用管理员私钥签名(MD5摘要软件算法)后再写入到密钥区;如果密钥区中存有有效的证书数据,则关闭‘证书密钥写入组件’的写入端口。再检查密钥区中是否存有有效的主密钥,如果没有,管理程序则向加密模块的WNG-4芯片发送生成主密钥请求,并将WNG-4芯片生成的128位主密钥使用SSH公钥和SSX04算法芯片加密后仔储到密钥区的主密钥A位置。
  加密服务器系统在正常使用过程中,只有系统管理员通过sSH才能对服务器进行管理,其他任何用户都无法对服务器进行管理。SSH为系统管理员提供的服务器密钥管理功能包括以下几种。
  (1)备份加密服务器中密钥区的主密钥(密文)、更换服务器密钥。由于保存到盘阵上的数据是通过主密钥加密后的密文数据,一旦主密钥遭到破坏,密文数据将无法得到恢复,给用户会造成不可弥补的损失,所以有必要对主密钥进行备份。在第一次使用加密服务器时,系统管理员要首先将主密钥备份到客户端(备份的主密钥是经过加密后的密文数据),并将主密钥保存到智能IC卡中,保存成功后将备份到客户端的主密钥删除,并将智能IC长交由专人管理。更换服务器密钥包括更换SSL密钥和SSH密钥,如果系统管理员需要更换服务器密钥,系统管理员需要运行SSH客户端程序,连接SSH服务端,建立安全通道,连接成功后,将存放服务器密钥的智能IC卡插入计算机,执行更换服务器证书(包括服务器公钥和私钥)指令,客户端首先用管理员私钥对服务器公钥进行签名,服务器端对密钥进行加密(使用加密模块中的‘服务器私钥保护模块’中的密钥和SSP02-A算法芯片对服务器SSH私钥、SSL私钥进行加密),然后将其保存。
  (2)更换主密钥。主密钥是用于对用户文件数据进行加/脱密的密钥。为了提高用户数据的安全性,应定期或不定期地更换主密钥;更换主密钥时,系统将使用新、旧主密钥把所有用户数据处理一遍,处理过程中系统不再接受用户的其他指令,当用户数据量较大时,该处理过程会占用较长的时间。因此,建议主密钥更换周期最短为每天一次,且安排在用户访问量较少的时间段(如夜间)进行。
  主密钥由主板上的随机数生成芯片WNG-4产生。用户对进行初始化时,由随机数生成芯片产生一个主密钥,并将主密钥用SSH公钥和SSX04算法芯片加密后存放到主密钥区的第一个位置,以后用户需要更换主密钥时,产生的新密钥放到第一个位置,以前的密钥移到第二个位置。当操作系统对文件加脱密时系统首先从主密钥区第一个位置和第二个位置分别取出主密钥,如果第二个位置的密钥可用,那么系统对文件脱密处理时用第二个主密钥,加密时用第一个主密钥,否则加脱密都用第一个主密钥,所以在更换主密钥时,SSH客户端要首先备份新生成的主密钥和以前的主密钥,只有备份成功后才能通知加密服务器将新生成的主密钥写入密钥区,否则更换密钥失败。
  (3)更换管理员证书。只有系统管理员自己才能更换管理员证书。当管理员证书需要更换时,系统管理员可以通过SSH安全通道,利用SSH客户端应用软件提供的‘更换管理员证书’功能,将存储在管理员智能IC卡上的管理员新证书加密后覆盖加密服务器上密钥区的管理员证书。更换管理员证书后,需用新证书私钥对密钥区存放的证书进行重新签名。更换后管理员需要重新启动SSH客户端,新证书才能有效。
  (4)添加、删除、更改用户证书。系统管理员可以通过SSH向密钥区添加用户证书,只有用户的证书添加到了加密服务器密钥区的相应空间,用户才能通过SSL访问服务器,否则用户无法访问服务器,所以如果要取消用户访问服务器的权限,可以删除相应用户的证书,如果用户更换了证书,需要提请系统管理员将自己以前的证书更换为新证书。默认情况下,加密服务器用户密钥区最多可以存放1016个用户证书,如果需要增加更多的用户,可以使用机动存储区,但最多可以存放3064个用户证书,即:一个加密服务器最多可供3064个普通用户使用,用户的证书是用管理员的私钥签名后保存到密钥区的。


第三十八届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。