首页 > 文章中心 > 正文

网络备份系统密码设计

网络备份系统密码设计

编者按:本论文主要从密码学理论;RBR系统简介;系统设计思路;加解密模块分析设计;加密方法选择及算法实现等进行讲述,包括了RBR系统结构、RBR系统中实体和各实体功能、RBR系统中的信息传输、备份计划制订、数据备份、数据恢复、加密方法、二元加法流密码、二元加法流密码密钥流的性质等,具体资料请见:

[摘要]随着计算机的日益普及,越来越多的信息需要在网络中传播,而在网络中信息是在公共的通道中进行传输,很容易遭到攻击和破坏。信息的丢失不容易被发现但会酿成很严重的后果,最有效的保证网络中数据信息安全的方法是给网络中传播的数据进行加密。本文主要讨论RBR系统以及在数据传输过程中如何采用流密码对信息进行保护。流密码是将消息分成连续的符号或比特,然后用密钥流进行加密。本文对目前使用的最多的二元加法流密码做进一步的研究。

[关键词]二元加法流密码流密码RBR系统

一、密码学理论

密码学主要是研究通信安全保密的学科。它包括两个分支:密码编码学和密码分析学。密码编码学主要研究如何对信息进行变换,以及保护信息在新的传递过程中不被敌手窃取、解读和利用的方法,而密码分析学则研究如何分析和破译密码。这两者之间既相互独立又相互促进。

密码学的基本思想是对机密信息进行伪装。一个完整的密码系统由明文空间、密文空间、密码方案和密钥空间组成。加密前的信息称为明文,明文的全体称为明文空间。明文是信源编码符号,可以简单地认为明文是有意义的字符流或比特流。密文是经过伪装后的明文,全体可能出现的密文集合称为密文空间,也可以被认为是字符流或比特。密码方案准确地描述了加密变换和解密变换的具体规则,包括对明文进行加密时所使用的一组规则的描述和对密文还原时所使用的一组规则的描述。

流密码是将明文消息按字符逐位加密,通常是将已编码成比特串的明文消息序列与加密密钥序列采取不进位的模2相加,收方也采用相同的方法恢复明文。流密码可以进一步分成同步流密码和自同步流密码。

同步流密码的主要优点是无错误的传播,一个传播错误只影响一个符号,不会影响到后续符号;对于自同步流密码,某一符号的传输错误将会影响到后面的符号的解密,也就是说,自同步流密码有错误传播现象。目前,已有的同步流密码大多采用的是二元加法流密码。

二、RBR系统简介

远程网络备份系统简称RBR系统,系统完成并实施后,将有效地对可能出现的各种灾难进行有效的、快速的恢复。

1.RBR系统结构

RBR系统由三个逻辑层组成:客户层、管理层(中间层)和服务层。其中,客户层代表系统所管理的客户计算机的资源;管理层由备份适配器、认证服务器、管理控制台等组成,构成系统的管理核心;服务层代表提供存储的服务器资源。其中管理层处于管理业务逻辑的核心。

2.RBR系统中实体和各实体功能

(1)客户——多个

主要功能是完成备份集管理;备份数据文件压缩/解压缩、加密/解密;恢复/备份会话激活、执行、协商;用户证书管理。

(2)主控管理与通信实体——单个

主要功能是备份恢复会话协商、备份计划管理、完整客户备份数据目录管理和备份服器管理。

(3)认证实体——多个

(4)备份服务器——多个

主要功能是客户备份数据存储和备份/恢复会话执行。

3.RBR系统中的信息传输

来自客户端顶层软件的数据集信息经过流化、压缩、加密等过程,向下到达socket网络传输层,在这里通过网络传送到服务器。在服务器一端,数据进行反向的处理,最后还原成数据集信息,由服务器端管理软件进行统一存放。

在RBR系统中,客户端与服务器之间的数据通道被认为是不安全的,因此,在数据进入通道之前,很必要对数据进行加密处理。另一方面,由于客户端、服务器之间数据传输量大,过强的加密算法势必造成数据传输速度的降低。因此,如何在速度和加密强度之间找到一个平衡点是系统研究的关键。

三、系统设计思路

RBR系统的工作内容主要由备份计划制订、数据备份和数据恢复三个环节组成。

1.备份计划制订

备份计划的制订过程,是由客户端发出“提交备份申请”开始,以备份适配器/管理员批准或拒绝申请为终结点的逻辑过程。在这个过程,备份适配器要响应客户端发来的“提交备份申请”消息,并经管理员审核后处理,无论通过与否,都返回处理信息,最后制订的计划并不存放在客户机本地。具体处理过程如下图。

2.数据备份

备份过程不是由客户机发起的,而是由备份适配器发起。因为备份计划都保存于备份服务器,它们是由备份适配器统一管理,作为客户机只维护本机要备份的数据集合。具体处理如右图。

3.数据恢复

恢复与备份是一个反向的操作,但不是严格的“反操作”。在恢复过程中,要防止对用户的错误操作。因此在恢复数据之前,要对客户身份进行严格的验证,具体实现如下图。

四、加解密模块分析设计

RBR系统的结构模型可以用部属图描述如下(共有五个部分,分别为客户端,服务器端,适配器,控制台和证书服务器)。

RBR系统的数据传输过程是在一个分层的结构中进行的。如下图所示。在RBR系统中,数据和指令向下经过数据打包、加密和压缩、流化,最后通过Socket传送到网络中。在数据接受方,进行反方向的转换。

五、加密方法选择及算法实现

1.加密方法

按照对明文消息加密方式的不同,单钥密码体制一般可以分为:流密码和分组密码。分组密码是将明文消息分为多个字符的分组,逐组进行加密的密码体制。对于某一消息,分组密码体制一般首先对明文消息填充,使其长度为固定分组长度的整数倍,然后,密码算法将消息划分成一个一个长度固定的分组,逐分组进行加密变换。

流密码将消息分成连续的符号或比特用密钥流逐个进行加密。如果流密码所使用的是真正随机产生的、与消息流长度相等的密钥流,此时的密钥流就是一次一密的密码体制。

2.二元加法流密码

(1)二元加法流密码体制

在这种密码中,密钥、明文和密文都编码为0,1序列。种子密钥用来控制密钥流发生器,是密钥流发生器输出的密钥流,加密变换是模2加(即异或)。在解密时,解密方将利用通过安全信道传送来的、同样的种子密钥与加密方相同的密钥发生器,使密钥流生成器输出与加密端同步的密钥,并使用与加密变换相同的解密变换,从而完成对明文的加密与解密。

二元加法流密码体制如下图:

在这种二元加法流密码体制中,由于通信信息被编码成“0”或“1”的二元序列,因此,利用一个简单的二元静态控制系统,从一个较短的密钥产生一个很长的、不重复的“伪”随机序列,从而能够达到“一次一密”的密码体制。

(2)二元加法流密码密钥流的性质

二元流密码的安全强度取决于密钥生成器所生成的密钥流的性质。如果密钥流是无周期的无限长的随机序列,那么此时流密码即为一次一密的密码体制。但在实际中,密钥流都是用有限存储和有限复杂逻辑的电路来产生的,此时的密钥流生成器只具有有限多个状态,这样,密钥流的状态呈现出一定长度的周期,其输出也只能是周期序列。因此,实际应用中的流密码不可能是一次一密的密码体制。但是,只要密钥流产生器产生的密钥流周期足够长,并且随机性足够好,那么可以近似地实现人们所追求的理想的保密体制。

(3)密钥流生成器的结构

流密码的设计核心在于密钥发生器的设计,流密码的安全强度取决于密钥发生器中密钥流的周期、复杂度,随机特性等,安全的密钥流生成器的结构必然使用了非线形变换。

密钥流生成器可以分解成驱动和组合两部分。其中密钥流生成器的驱动部分将生成密钥流生成器的状态序列,使之周期很长,统计特性良好;非线形组合部分则显著增加密钥流的复杂程度,使密钥流能够抵抗各种攻击,同时保持驱动部分提供良好的分布特性。

产生密钥流最重要的部件是线形反馈移位寄存器。线形反馈移位寄存器由移位寄存器、运算器和反馈电路构成。移位寄存器用来存储数据,并受脉冲驱动。运算器含有乘法器和加法器。反馈电路不断产生脉冲信号驱动移位寄存器进行移位运算,并将运算器的结构反馈到寄存器的最高位,输出最底位。

3.RC4流密码算法分析

RC4算法是一种流式加密器(streamcipher),它将短的键值展开成为无限制的伪随机数键值串。发送者使用这个键值串与明文信息做异或(XOR)运算处理并产生密文,接收者则使用键值产生适当的键值串。并且对密文做XOR及键值串运算之后,就可以得到原始的明文。

六、结论

远程网络备份系统简称RBR系统设计完成并实施后,将有效地对可能出现的各种灾难进行快速的恢复。从而有效地保证数据通信的安全,保证各企事业的工作能够有条不稳的进行。