网络通信安全技术ppt.ppt

上传人:za****8 文档编号:15492860 上传时间:2020-08-12 格式:PPT 页数:52 大小:250KB
返回 下载 相关 举报
网络通信安全技术ppt.ppt_第1页
第1页 / 共52页
网络通信安全技术ppt.ppt_第2页
第2页 / 共52页
网络通信安全技术ppt.ppt_第3页
第3页 / 共52页
点击查看更多>>
资源描述
,5.1 拥塞控制与流量控制,5.2 差错控制技术,5.3 应用实例,第5章 网络通信安全技术,5.1 拥塞控制与流量控制,本节内容 5.1.1 网络拥塞的基本概念 5.1.2 网络拥塞控制技术 5.1.3 流量控制技术,5.1.1 网络拥塞的基本概念 当加载到某个网络上的载荷超过其处理能力时,就会出现拥塞现象。 拥塞现象应用物理层的规则便可以得到控制,这个规则即分组保持规则。就是只有当一个旧的分组被发送出去后再向网络注入新的分组。TCP试图通过动态地控制滑动窗口的大小达到这一目的。 控制拥塞首先要做的是检测。分组丢失而造成超时有两个原因:一个是由于传输线路上的噪声干扰;另一个是拥塞的路由器丢失分组。 由于传输错误造成分组丢失的情况相对较少,因为大多数长距离的主干线都是光纤。因此,Internet上发生的超时现象大多数都是由于拥塞造成的。Internet上所有的TCP算法都假设分组传输超时是由拥塞造成的,并且以监控定时器超时作为出现问题的信号。 当数据从一个大的管道向一个较小的管道(比如一个是高速局域网而另一个是低速的广域网)发送数据时便会发生拥塞。当多个输入流到达一个路由器,而路由器的输出流小于这些输入流的总和时也会发生拥塞。,通过上述分析,我们知道网络产生拥塞的根本原因在于用户提供给网络的负载超过了网络的存储和处理能力,表现为无效数据包增加、报文时延增加与丢失、服务质量降低等。如果不能采取有效的检测和控制手段,就会导致拥塞逐渐加重,甚至造成系统崩溃,在一般情况下形成网络拥塞的三个直接原因是: 路由器存储空间不足。几个输入数据流需要同一个输出端口,如果入口速率之和大于出口速率,就会在这个端口上建立队列。如果没有足够的存储空间,数据包就会被丢弃,对突发数据流更是如此。增加存储空间在表面上似乎能解决这个矛盾,有研究表明,如果路由器有无限存储量时,拥塞只会变得更坏,这是因为,该路由器缓冲区中将会有越来越多的数据包在排队而无法传送出去。 带宽容量相对不足。直观地说,当数据总的输入带宽大于输出带宽时,在网络低速链路处就会形成带宽瓶颈,网络就会发生拥塞,相关证明可参考香农信息理论。 处理器处理能力较弱。如果路由器的CPU在执行排队缓存、更新路由表等操作时,处理速度跟不上高速链路,会产生拥塞。同理,低速链路对高速处理器也会产生拥塞。,5.1.2 网络拥塞控制技术 1.慢启动算法 综上所述,我们知道,在Internet上存在网络的容量和接收方的容量两个潜在问题,它们需要分别进行处理。为此,每个发送方均保持两个窗口:接收方承认的窗口和拥塞窗口。每个窗口都反映出发送方可以传输的字节数。取两个窗口的最小值作为可以发送的字节数。这样,有效窗口便是发送方和接收方分别认为合适的窗口中最小的一个窗口。 当建立连接时,发送方将拥塞窗口大小初始化为该连接所有最大报文段的长度值,并随后发送一个最大长度的报文段。如果该报文段在定时器超时之前得到了确认,那么发送方在原拥塞窗口的基础上再增加一个报文段的字节值,使其为两倍最大报文段的大小,然后发送。当这些报文段中的每一个都被确认后,拥塞窗口大小就再增加一个最大报文段的长度。,当拥塞窗口是N个报文段的大小时,如果发送的所有N个报文段都被及时确认,那么将拥塞窗口大小增加N个报文段所对应的字节数目。 拥塞窗口保持指数规律增大,直到数据传输超时或者达到接收方设定的窗口大小。也就是说,如果发送的数据长度序列,如1024、2048和4096字节都能正常工作,但发送8192字节数据时出现定时器超时,那么拥塞窗口应设置为4096以避免出现拥塞。只要拥塞窗口保持为4096字节,便不会再发送超过该长度的数据量,无论接收方赋予多大的窗口空间亦是如此。这种算法是以指数规律增加的,通常称为慢启动算法。所有的TCP实现都必须支持这种算法。,慢启动算法工作过程如下: 慢启动为发送方的TCP增加了一个窗口,即拥塞窗口。当与另一个网络的主机建立TCP连接时,拥塞窗口被初始化为1个报文段(即另一端通告的报文段大小)。每收到1个 ACK,拥塞窗口就增加1个报文段(拥塞窗口以字节为单位,但是慢启动以报文段大小为单位进行增加)。发送方取拥塞窗口与接收方窗口中的最小值作为发送上限。拥塞窗口是发送方使用的流量控制,而接收方窗口则是接收方使用的流量控制。 在某些点上可能达到了互联网的容量,于是中间路由器开始丢弃分组,并通知发送方其固有的拥塞窗口开得过大,应缩小发送窗口。,2.拥塞避免算法 慢启动算法不能解决的问题是:数据传输达到中间路由器的极限时,分组将被丢弃。拥塞避免算法是一种处理丢失分组的最佳方法。 该算法假定由于分组受到损坏引起的丢失是极少的,因此分组丢失就表明在源主机和目的主机之间的某处网络上发生了拥塞。 常用的拥塞避免算法如下: (1)先进先出算法FIFO(First In First Out) 传统的先进先出策略是目前Internet上使用最广泛的一种服务模型。它的最大优点是便于实施,但由于FIFO本质上是一种“去尾”(Drop-tail)的算法,所以当突发性数据到达时容易出现包丢失现象,其公平性较差,对上层的TCP快速恢复的效率也较低。 (2)随机早期检测算法RED(Random Early Detection) RED算法是按一定概率丢弃进入路由器的数据包。RED的早期设计思路是避免丢弃属于同一连接的连续数据包,从而提高连接的吞吐量。通过分摊包丢失率,RED可以在各连接之间获得较好的公平性,对突发业务的适应性较强。RED也存在一些不足,例如可能会引起网络的不稳定,而且选择合适的配置参数也不是一件容易的事。近年来,研究者提出了许多RED的改进算法,这些算法都在一定程度上,从不同方面改善了RED的性能。,(3)显示拥塞指示算法ECN(Explicit Congestion Notification) 前面两种拥塞控制算法都是通过包丢失来告诉端系统,网络已经发生拥塞。而显示拥塞指示算法通过明确的拥塞提示(RFC2481)来实现拥塞控制,对一次性大批量数据传输的效果比较理想,但对时延有一定要求。 该算法在源端数据包中嵌入ECN,由路由器根据网络情况设置CE(Congestion Experienced)比特位。源端接收到从网络中反馈回来的这种CE置位数据包后,将随后发出的数据包标记为可丢弃的数据包。ECN的优势在于不需要超时重传,也不依赖于粗粒度的TCP定时,所以在对时延有一定要求的应用场合性能较好。在此基础上还提出了另一种改进算法,它通过调整拥塞窗口的大小,纠正有长时间RTT的TCP连接的偏差,来改进共享瓶颈处带宽的公平性。,(4)公平排队算法FQ(Fair Queuing) 在FQ算法中路由器对每个输出线路都建有一个排队队列。当一条线路空闲时,路由器就来回扫描所有队列,依次将每队的第一个包发出。FQ的带宽分配独立于数据包大小,各种服务在队列中几乎同时开始。因此在没有牺牲统计复用的情况下提供了另外的公平性,与端到端的拥塞控制机制可以较好地协同工作。它的缺点在于实现起来很复杂,需要每个数据流的排队处理、每个流的状态统计、数据包的分类以及包调度的额外开销等。 (5)加权公平排队算法WFQ(Weighted Fair Queuing) 加权公平排队算法是FQ的改进算法。根据不同数据流及不同带宽的要求,对每个排队队列采用加权方法分配缓存资源,从而增加FQ对不同应用的适应性,该算法还有其他一些改进算法。,(6)加权随机先期检测WRED(Weighted Random Early Detection) 是将随机先期检测与优先级排队结合起来,这种结合为高优先级分组提供了优先通信服务能力。当某个接口开始出现拥塞时,它有选择丢弃优先级较低的分组,而不是随机丢弃分组。 (7)定制排队 定制排队是为允许具有不同最低带宽和延迟要求的应用程序共享网络而设计的。定制排队为不同协议分配不同的队列空间,并以循环方式处理队列,当特定协议的数据流被分配了较大的队列空间,也就获得了较优先的服务,定制排队比优先级队列更为公平。定制排队可以保证每一个特定的通信类型得到固定的可用带宽,同时在链路紧张的情况下,避免了数据流企图超出预分配量限制的可能。,3.慢启动算法+拥塞避免算法 拥塞避免算法和慢启动算法是目的不同的、独立无关的算法。但是当拥塞发生时,为了降低分组进入网络的传输速率,可使用调用慢启动来解决拥塞。在实际中应用中,这两个算法通常在一起使用,其使用技术描述如下: l 对一个给定的连接,初始化拥塞窗口为1个报文段,门限为65535字节。 l TCP输出例程的输出不能超过拥塞窗口和接收方窗口的大小。拥塞避免是发送方使用的流量控制,而接收方窗口则是接收方进行的流量控制。前者是发送方对网络拥塞的估计,而后者则与接收方在该连接上的可用缓存大小有关。 l 当拥塞发生时(超时或收到重复确认),门限被设置为当前窗口大小的一半(拥塞窗口和接收方窗口大小的最小值,但最少为2个报文段)。此外,如果是超时引起了拥塞,则拥塞窗口被设置为1个报文段(这就是慢启动)。 l 当新的数据被对方确认时,就增加拥塞窗口,但增加的方法依赖于是否正在进行慢启动或拥塞避免。如果拥塞窗口小于或等于门限,则正在进行慢启动;否则正在进行拥塞避免。 慢启动一直持续到当拥塞发生之初所处窗口大小的一半时才停止,然后才转去执行拥塞避免。 慢启动只是采用了比引起拥塞更慢些的分组传输速率,但在慢启动期间进入网络的分组数的速率仍然在增加。只有在达到门限拥塞避免算法起作用时,这种速率才会慢下来。,4.快速重传与快速恢复算法 如果连续收到3个或3个以上的重复确认信号ACK,就表明有一个报文段丢失了。于是还需重传丢失的数据报文段,而无须等待超时定时器溢出。这就是快速重传算法。 由于接收方只有在收到另一个相同的报文段时才产生重复的ACK,而该报文段已经离开了网络并进入了接收方的缓存。也就是说,在收、发两端之间仍然有流动的数据,而不执行慢启动来突然减少数据流。 快速重传与快速恢复算法步骤如下: 步骤1:当收到第3个重复的ACK时,将门限设置为当前拥塞窗口的一半,同时,重传丢失的报文段。设置拥塞窗口为门限加上3倍的报文段大小。 步骤2:每次收到另一个重复的ACK时,拥塞窗口增加1个报文段大小,并发送1个分组(如果新的拥塞窗口允许发送)。 步骤3:当下一个确认数据的ACK到达时,设置拥塞窗口为门限(在步骤1中设置的值)。这个ACK应该是在进行重传后的一个往返时间内对步骤1中重传的确认。另外,这个ACK也应该是对丢失的分组和收到的第1个重复的ACK之间的所有中间报文段的确认。 这一步骤采用的是拥塞避免算法,因为当分组丢失时该算法能将当前的速率减半。,5.1.3 流量控制技术 在数据链路层及高层协议中,一个最重要的控制技术就是流量控制技术。所谓流量控制,就是如何处理发送方的发送能力比接收方的接收能力大的问题,即是当发送方是在一个相对快速或负载较轻的网络上运行,而接收方是在一个相对慢速或负载较重的网络上运行时。如果发送方不断地高速将数据包发出,最终会“淹没”接收方的数据包(即后传来的包会“冲掉”前面已接收但还未来得及处理的数据包),即便传输过程毫无差错,到一定的时刻,接收方将无能力处理刚收到的包,就会发生信息“丢失”的现象,因此,我们必须采取有效的技术与措施来防止这种丢失包的情况发生。 最常见的方法是引入流量控制来限制发送方发出的数据流量,使其发送速率不超过接收方处理的速率。这种限制流量需要某种反馈机制,使发送方了解接收方的处理速度是否能够跟上发送方发送包的速度。 流量控制协议中包括一些定义完整的规则,这些规则描写了接收方在什么时候接收下一包,在未获得接收方直接或间接允许之前,发送方禁止发出包。,5.2 差错控制技术,本节内容 5.2.1 差错的基本概念 5.2.2 差错控制技术,5.2.1 差错的基本概念 1.差错:所谓差错就是在数据通信中,接收端接收到的数据与发送端发出的数据出现不一致的现象。 2.热噪声:热噪声是影响数据在通信媒体中正常传输的各种干扰因素。 3.差错的产生:由热噪声造成传输中的数据信号失真。 4.差错控制:指在数据通信过程中,发现差错、检测差错,对差错进行纠正所采用的技术和方法。 5.差错控制编码:通过对信息序列实施某种变换,使原来彼此独立、没有相关性的信息码元序列,经过变换产生某种相关性,接收端据此来检查和纠正传输序列中的差错。,5.2.2 差错控制方法 1.自动请求重发ARRS,图7-20 自动请求重发技术流程图,2.向前纠错FEC,图7-21 向前纠错技术流程图 3.反馈校验法FVM,图7-22 反馈校验技术流程图,检错编码方法 1垂直奇偶校验法 奇校验的规则是,确保发出的一组信息码中含“1”的个数为奇数;偶校验的规则是,确保发出的一组信息码中含“1”的个数为偶数。 例:如果一个字符的7位信息码为1001101,采用奇校验编码,求其校验位的值。 由于这个字符的7位代码中有“1”的个数为偶数(4个),所以其校验位的值为“1”。即整个8位发送编码为:11001101。 在传输中,当接收端接收到字符8位编码后,即开始检测,若检测出其含“1”的个数为奇数,则被认为传输正确,否则就被认为传输中出现差错。,2水平奇偶校验法 水平奇偶校验是以字符组为单位的一种校验方法。对一组中的相同位进行奇偶校验。 例:设水平奇偶校验以7个字节数据外加一个字节的校验码为一组(共8个字节)进行奇偶校验。 0 1 2 3 4 5 6 7(校验码) 1 0 1 1 0 1 0 1 1 2 1 0 0 1 0 0 1 0 3 1 1 1 1 0 1 1 1 4 0 1 0 1 0 1 0 0 5 1 0 1 0 0 0 0 1 6 1 1 0 0 1 1 1 0 7 0 1 1 1 0 0 0 0 8 1 1 0 0 1 1 0 1,3水平垂直奇偶校验法 水平垂直奇偶校验是同时进行水平和垂直奇偶校验的校验。其具体实现过程是: (1)组成一个字符组(8字节一个组); (2)对每一个字符增加一个校验位(7个数据位,1个校验位); (3)对每组字符相同的位增加一个校验位(即多传输一个字节的校验信息)。 水平垂直奇偶校验码如表7-5所示。,表7-5 水平垂直奇校验编码表 0 1 2 3 4 5 6 7 (水平校验位) 1 0 1 1 0 1 0 0 0 2 1 0 0 1 0 0 0 1 3 1 1 1 1 0 1 1 1 4 0 1 0 1 0 1 1 1 5 1 0 1 0 0 0 0 1 6 1 1 0 0 1 0 1 1 7 0 1 1 1 0 1 0 1 8(垂直校验) 1 0 1 1 1 0 0 1,4.循环冗余码校验法 设: 信息码为k位,其多项式为(k-1)次多项式,记为K(x)。 冗余码为n位,其多项式为r次(r=n-1)多项式,记为R(x)。 例如:设信息码为1011001,冗余码为1010,则发送码为10110011010。 则: K(X)=X6+X4+X3+1 R(X)=X3+X 说明:因信息码有7位,所以K(x)为6次多项式,冗余码有4位,所以R(x)为3次多项式。,发送信息码T(X)为N=k+n位,其对应多项式记为: T(X)=X4K(X)+R(X) (这里的Xn中的n是指有n位冗余码) 因为信息码为1011001,冗余码为1010,所以发送信息码字为: T(X)=X4K(x)+R(x) =X10+X8+X7+X4+X3+X =10110011010 由信息位产生冗余位的编码过程,就是己知K(x)求R(x)的过程。在CRC码中可以通过找到一个特定的n次多项式G(X),用G(X)去除XnK(x)所得到的余式就是R(x)。 设: K(X)=X6+X4+X3+1 即:K(X)=1011001 n=4 G(X)= X4+X3+1 即:11001 (实际上,G(X)是K(X)的后5位) 则:X4K(X)=X10+X8+X7+X4 即:10110010000 由上看出, X4K(X)实际上是在K(X)后添加4个0得到的。,用G(X)去连除(即不断进行异或)X4K(X)有: 10110010000 11001 1111010000 11001 11110000 11001 111000 11001 1010 (余数),从左边的演算过程中看出,经过若干次异或运算后,得到的最后余数1010就是我们所需用的冗余码R(X),记为R(X)=X3+X。,设除法所得结果(即商式)为Q(X),则有: XnK(X)=G(X) Q(X)+R(X) (1) 由于在信道上发送的码字多项式为T(X)=XnK(X)+R(X),若传输无差错,则接收方收到的码字也对应此多项式: T(X)= Xn K(X)+R(X) (2) (1)代入(2)有: T(X)=G(X) Q(X)+R(X)+R(X) (3) 由于加法采用的是半加和运算,即异或运算,所以: R(X)+R(X)=0 所以(3)式运算结果为: T(X)=G(X) Q(X) 这一结果说明了T(X)能被G(X)整除。 结论:在收端,用信息码与冗余码进行若干次异或运算,当余式为零时则认为传输无差错,否则认为传输有差错。,验算举例: 设K(X)=1011001,R(X)=1010,G(X)=11001 则:T(X)= X4K(X)+R(X)=10110011010 验算方法:仍然采用不断异或运算的方法进行验算,即用T(X)与G(X)异或,这里G(X)取自K(X)的后5位。 10110011010 11001 1111011010 11001 11111010 11001 110010 11001 0 验算完毕。,自动纠错技术 自动纠错就是在收端能自动检测错误,并能进行错误编码的定位,从而能自动进行纠错。纠错很简单,将错误码求反即可,关键是如何定位错误码的位置。 1. 半加和运算规则 在自动纠错算法中,要用到半加和运算,所以,在这里先介绍半加和的运算规则。 半进位加法(又叫做按位加法运算):按二进制加法进行加运算,但不保留进位位。 半借位减法(又叫做按位减法运算):按二进制减法进行减运算,但不存在借位。 半进位加减运算又叫逻辑异或运算,由以上运算规则可看出,相同两数码异或得“0”,不同两数码异或得“1”。,2. 自动纠错算法 (1)自动校验公式及校验码 这里,我们以传输一个4位数据为例,介绍一种自动纠错的算法。 每个字符除了4位数码外,还要增加4个校验位,即一组信息共8位。从左到右其二进制编码用C1C8表示,其校验码计算公式如下: C1 C2 C3 C4 C5=0 (1) 即: C5C1 C2 C3 C4 (5) C1 C2 C3 C60 (2) C6C4 C5 (6) C1 C3 C4 C70 (3) C7C2 C5 (7) C1 C2 C4 C80 (4) C8C3 C5 (8),(2) 校验方法 在发送端,用(5)(8)式计算出校验码C5、C6、C7和C8,连同前位数码一起发给收端;在收端,用(1)(4)式进行校验,若4个式子计算结果都为“0”,则传正确,只要有一个式子的计算结果为“1”,则说明传输有错。 从上可看出,除了(2)式正确(结果为0)以外,其余3式全错(结果为1)。 (3) 差错判断法则 若(1)、(2)、(3)、(4)式全错,则C1必错;若(1)、(2)、(4)式错而(3)式不错,则C2必错;若(1)、(2)、(3)式错而(4)式不错,则C3必错;若(1)、(3)、(4)式错而(2)式不错,则C4必错;若只有(1)式错则C5必错;若只有(2)式错则C6必错;若只有(3)式错则C7必错;若只有(4)式错则C8必错。,(4) 证明 在这里,我们采用反证法进行证明。由于篇幅所限,这里只证明第一种情况。即当(1)(4)式全错时,C1必错,而其他位正确。 设(1)(4)式全错,而C1不错,则C2C8必有一位错。 设C2错,而C1,C3C8正确。将C1C8代入(1)(4)有: C1 C2 C3 C4 C5=1 (1) C1 C2 C3 C61 (2) C1 C3 C4 C70 (3) C1 C2 C4 C81 (4) 由上看出,(1)、(2)、(4)式错而(3)式不错,与“(1)(4)式全错”的条件相矛盾,所以C2不可能错。 其余情况的证明略。,值得注意的是:上述介绍的几种检错及纠错方法中,只能检测出一位编码错误,对于两位以上的错误是检验不出的。在实际通信过程中,误码本身是小概率事件,对于在一组数码中同时出现两位或两位以上的错误的概率则更小,几乎为0,所以在实际应用过程中,我们只考虑发生一位编码错误的情况,即只对一位编码错误进行校验和纠错。 在实际应用中,我们只须判断前4位数据编码的正确性,即C1,C2,C3和C4,后4位是无须判断的,也无须进行纠错。这样能节省错误判断和纠错的时间,以提高数据传输的速度和效率。,自动纠错技术的应用 在这里,我们仍以发送字符串“Computer”为例,介绍7.5.4小节中的自动纠错技术的应用。 将每个字符的8位二进制编码(如下表所示)分成两段,即高4位和低4位,分别求出其自动纠错码(校验码也是4位)。 自动纠错编码用7.5.4小节中的(5)(8)式计算,其校验码如表7-8所示。表中的“传输码”是由信息编码的4位再加上4位校验码组成的。,表7-8 “Computer”自动纠错编码表,5.3 应用实例,本节内容 5.3.1 网络数据的安全传输技术 5.3.2 网络死锁防范技术,5.3.1 网络数据的安全传输技术 1.网络数据传输的概念 可以说,一切通过计算机网络传输数据的过程都叫网络传输。包括在个人网络、局域网络、广域网络和国际互联网络上的数据传输。无论是接收数据,还是发送数据,只要是从一台计算机通过网络向另一台计算机传输数据,都可以理解为网络数据传输。例如:收发电子邮件、用FTP上传或下载文件、浏览网页等都属于网络数据传输。 在现代网络中,网络传输的主要协议有两个:TCP协议和UDP协议。TCP协议是面向连接的协议,可以在确认对方身份以后再进行数据交换,相对说来比较安全;而UDP协议是面向非连接的协议,对方在线与否都可以给对方传输数据,因UDP无法进行身份认证,其安全隐患比TCP要大得多。 2.数据的安全传输 在网上传输数据,尤其是远程网络传输,不可避免地要经过许多称为“跳”的路由器及交换机,数据包每经过一跳,都会面临数据包被截获、被破解、被更改的危险,无论是采用面向连接的TCP协议还是采用面向非连接的UDP协议,都是如此。因此,保护网络数据正确传输的目的有两个,既要保证网络传输数据的正确性和完整性,还要对对方的身份进行认证(使用面向连接协议TCP时)。 对网络数据的保护通常有这样几种技术:数字签名技术与身份认证技术、数据加密技术、消息摘要技术(数据的完整性保护)、数据隐藏技术。,3.网络数据传输法则 针对数据传输过程中的数据安全问题,HDS Arthur B. Edmonds给出了五步法则。 第1步是Authentication(证明):即证明符合所声明的身份,相关的工具包括DABIOS、LDAP、DH-CHAP、密匙与密码等。不论何时,当你建立了一个数据传输通路时,这是必须要做的第一件事。这就好像是一个护照,上面记录你所有的信息。 第2步是Authorization(授权):如果从主数据中心向次级数据中心备份数据,就需要一个长时间的连接。此时,次级数据中心就需要授权,即表明能做什么?被允许做什么? 第3步是Audit/Accounting(稽核):即记录用户在登录后执行过的操作。稽查日志的精度极高,它可以捕捉到每一个按键的操作。因此,所有操作步骤都会被记录在日志中。 第4步是Integrity(一致性):即保证对方能够收到所发送的信息,且发送与接收的数据保持一致,而这中间也不会被其他人窜改意思。保证一致性,就是要防止黑客或其他人窃取本不该他们看到的数据。对于数据的安全性来说,这一步骤是非常重要的。 第5步是:Confidentiality(保密性):即只有拥有相应权限的人才能看到保密信息,这也是通常所说的加密(encryption)。加密有软件加密和硬件加密。 通过上述5个步骤,就可以进行安全数据传输,最后是关闭对话通路。在这里讲述的存储安全,但不仅限于从存储设备出发。安全应该建立在应用的基础上,用户需要的是一个完整的端到端的安全解决方案。我们不能只关心存储阵列的安全,还必须保证连接的所有设备都运行于安全协议之上。,4.数字签名技术与身份认证技术 数字签名与身份认证技术是建立可靠性数据传输的基础,对于重要的数据,必须在确认对方的身份后才能发送给对方。数据签名技术与身份认证技术详见4.2节。 5.数据加密技术 数据加密的目的是当网络传输的数据被非法截获后,非法用户无法读懂所截获的数据内容。 可采用4.1节介绍的任何一种数据加密技术对数据进行加密,但要注意两点: l 消息摘要算法只适用于非保密通信的数据; l RSA算法一般只用于身份认证和对经典加密算法、DES算法的密钥进行加密。而不提倡用于批量数据的加密。 6.消息摘要技术 通过消息摘要,可有效地鉴别消息在传输过程中的完整性。消息摘要技术详见4.1.6小节。,7.信息隐藏技术 (1)信息隐藏技术概述 信息隐藏(Information Hiding),或更严格地称为信息伪装(Steganography,该单词来源于古希腊,意思是将有用或重要的信息隐藏于其他信息里面以掩饰其存在),就是将机密信息秘密地隐藏于另一非机密的信息之中。其形式可为任何一种数字媒体,如图像、声音、视频或一般的文档等等。 信息隐藏将信息藏匿于一个宿主信号中,使不被觉察到或不易被注意到,却不影响宿主信号的知觉效果和使用价值。,(2)信息隐藏与数据加密的区别 l隐藏的对象不同。加密是隐藏内容,而信息隐藏主要是隐藏信息的存在性。隐藏通信比加密通信更安全,因为它隐藏了通信的发送方、接收方,以及通信过程的存在,不易引起怀疑。 l护的有效范围不同。传统的加密方法对内容的保护只局限在加密通信的信道中或其他加密状态下,一旦解密,则毫无保护可言;而信息隐藏不影响宿主数据的使用,只是在需要检测隐藏的那一部分数据时才进行检测,之后仍不影响其使用和隐藏信息的作用。 l要保护的时间长短不同。一般来说,用于版权保护的鲁棒水印要求有较长时间的保护效力。 l数据失真的容许程度不同。多媒体内容的版权保护和真实性鉴别往往需容忍一定程度的失真,而加密后的数据不容许一个比特的改变,否则无法脱密。 应该注意到,传统的以密码学为核心技术的信息安全和信息隐藏技术不是互相矛盾、互相竞争的技术,而是互补的。例如,将秘密信息加密之后再隐藏,是保证信息安全的更好的办法,也是更符合实际要求的方法。,(3)信息隐藏技术的分类 按信息隐藏技术包含的内容进行分类 隐藏术(Steganography):一般指那些进行秘密通信的技术总称,通常把秘密信息嵌入或隐藏在其他不受怀疑的数据中。隐藏的方法通常假设第三方不知道隐蔽通信的存在,而且主要用于互相信任的双方进行点到点的秘密通信。因此,隐藏术一般不具有鲁棒性(“鲁棒”是“Robust”的音译,也就是健壮和强壮的意思。鲁棒性指的是在异常和危险情况下系统生存的关键。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性)。例如,在数据改动后隐藏的信息是不能被恢复的。 数字水印(Digital Watermarking):数字水印就是向被保护的数字对象(如静止图像、视频、音频)嵌入某些能证明版权归属或跟踪侵权行为的信息,可以是作者的序列号、公司标志、有意义的文本等等。同隐藏术相反,水印中的隐藏信息具有能抵抗攻击的鲁棒性。即使知道隐藏信息的存在,对攻击者而言要毁掉嵌入的水印仍很困难。即使水印算法的原理公开也是如此。在密码学中,这就是众所周知的Kerkhoffs原理:加密系统在攻击者已知加密原理和算法、但不知道相应密钥时仍是安全。鲁棒性的要求使得水印算法在宿主数据中嵌入的信息比隐藏术少。水印技术和隐藏术更多的时候是互补的技术而不是互相竞争的。,数据隐藏和数据嵌入(Data hiding and data embedding):通常在不同的上下文环境中,它们一般指隐藏术,或者指介于隐藏术和水印之间的应用,在这些应用中嵌入数据的存在是公开的,但无必要保护它们。例如,嵌入的数据是辅助的信息和服务,它们可以是公开得到的,与版权保护和控制存取等功能无关。 指纹和标签(Fingerprinting and Labeling):指水印的特定用途。有关数字产品的创作者和购买者的信息作为水印而嵌入,每个水印都是一系列编码中的惟一一个编码,即水印中的信息可以惟一地确定每一个数字产品的拷贝,因此称它们为指纹或者标签。,按不同的运行环境、载体以及所采用的算法进行分类 随着多媒体技术和Internet的迅猛发展,大量重要的文件和个人信息以数字化形式存储和传输,这些信息包括文本、图像、音频以及视频等。这些都为秘密信息的隐藏提供了极好的载体。其他的一些特殊载体包括存储设备以及基于通信协议的数据包等。 (a)文档文件中的信息隐藏 早期的隐藏信息的方法是用不可见的墨汁直接在纸上书写秘密信息。计算机极大地扩充了信息隐藏的空间。利用文档文件的布局就可以隐藏秘密信息。可以根据秘密信息的内容相应地调整每一行或者每个字之间的距离。还可以额外地加入空格以及不可见信息来表达秘密信息。TXT文档、WORD文档、PDF文档、HTML、XML等各种文档中空格符以及回车符可以用来传递隐藏信息,常见的文字处理器、WEB浏览器会忽略这些空格符以及回车符,但是对这些源文件进行分析就会发现这些额外信息。,(b)音频、图像和视频文件中的信息隐藏 以图像为载体的信息隐藏方法很多,按照秘密信息的嵌入方式可以分为两类。一类方法将秘密信息按某种算法直接叠加到图像的空间域上。考虑到视觉上的不可见性,一般是嵌入到图像中最不重要的像素位上。空间域方法的特点是计算速度快,而且很多算法不需要原始图像。 另一类方法是先将图像做某种变换(特别是正交变换),然后把秘密信息嵌入到图像的变换域中。 (c)存储载体中的信息隐藏 充分利用未用的磁盘存储空间或者保留的空间来隐藏信息不会破坏载体原有信息。操作系统在存储文件时会产生一些不用的空间。例如,在Windows 95/98操作系统中,FAT16文件系统簇的大小为32KB。这就意味着为文件分配的最小单元为32KB。如果文件大小为1KB,将有31KB的空间被浪费。这些额外的空间可以用来隐藏信息而不被正常文件系统所访问和显示。 在文件系统中另外的一种信息隐藏的方法是创建一个隐蔽分区。当正常文件系统启动时,这个分区是不可见的,但是在许多情况下,运行一些磁盘配置程序时(如DOS下Fdisk)就会暴露隐蔽的磁盘分区。目前这个观点已经得到了扩充,提出了一个基于信息隐藏的文件系统。在该系统中,只有用户知道相应用户账号和口令,才可以访问该文件系统,其他用户根本不知道该文件系统是否存在。,(d)网络协议数据中的信息隐藏 网络协议有许多缺陷可以用来进行信息隐藏。例如,TCP/IP包在因特网中传输信息,在其包头结构中有一些未用的位。在TCP头中有6个保留位,在IP头中有2个保留位。除此之外,在头结构的其他信息可以重定义来隐藏信息。比如利用包ID信息,TCP握手协议的初始序列号,确认序列号隐藏信息。ICMP包中的源抑制位同样也可以进行信息隐藏 (e)基于图灵机的信息隐藏技术 还有一种隐藏技术,使用自动机生成一段有意义的文字。这段文字的生成是根据秘密信息的内容和自动机特定的文法实现的。,(4)信息隐藏的应用领域 隐蔽通信 隐藏通信的收发双方,以及通信过程的存在。 版权保护 包括确认数据的作者和数据的合法使用者(序列号)两种。这种水印属于鲁棒水印(Robust Watermarking)。 鉴别 鉴别或称为“认证”,“篡改提示”,用于确认数据的真实性、完整性,提示被篡改情况。这种水印称易损水印(Fragile Watermarking)。 注释 隐藏大量的信息于数据中,用于解释这些数据,如:在CD音乐中隐藏该乐曲的简介、作曲、定购信息、访问连接等操作代码,在图像中隐藏图像名称和图像内容简介、创作者等。 这种水印要求能抵抗正常的D-A/A-D变换、噪声、一般压缩等,一般不需要抵抗恶意攻击。这种在实际应用中可能需要更高的要求,如:裁剪后仍能保存保留部分的信息,甚至保留有原始数据的信息,能知道被裁剪(可能要与鲁棒水印、易损水印配合使用)。 使用控制 如DVD防拷贝系统:将水印信息嵌入DVD内容数据中,DVD播放机通过检测DVD数据中水印信息来判断其合法性和能否拷贝。,(5)数字水印技术 数字水印(Digital Watermark)技术是在图像、声音等多媒体数据中隐藏埋入某种信息,并使其隐蔽的一种技术,隐蔽埋入的信息则称为数字水印。数字水印可以加入没有版权保护措施的数字代码中,比如数字音乐文件、数字视频文件或数字图书等,这些数字水印代码中含有相关的版权信息,能够对数字出版物的版权起到保护作用。采用这种技术埋入的信息,人不能直接感知,只能通过数据压缩、过滤处理等方法才能检测埋入的信息。这项技术的特点是,如果他人擅自去除埋入的信息,就会严重影响音像的质量。 该项技术所具有的特点可适用数字化作品的著作权保护。因此,欧美有关厂商正积极开发采用该技术的著作权保护系统。,那么数字水印是怎样防止非法复制的呢?首先,版权所有者可在不希望被非法复制的信息内容中加入数字水印,之后通过因特网将该内容发送出,使任何人都可以自由地在服务器上公开该内容。该内容由于将数字水印作为版权信息加入到了其中,版权所有者在看到数字水印后就可以判断自己的内容是否被转载。因此,数字水印也会成为一种法律手段,数字水印将成为要求停止公开信息以及索求赔偿损失时的重要证据。 数字水印的特点是即使数据的格式发生了变化,也不会丢失。比如说,有人下载了别人公开的加入了数字水印的JPEG格式图像,并将其转换为BMP格式,数字水印的信息仍然不会丢失。这是因为数字水印并不是附加在原数据上的,而是嵌入到了原数据的本身当中。而且包含数字水印的数据看起来跟普通的数据完全一样。,5.3.2 网络死锁防范技术 当通信子网内传送的报文分组过多、结点接收速度太慢、线路容量不足时,都会导致网络性能变差,出现拥塞。当拥塞加剧就会使网络吞吐量急剧下降为零。这时网络无法工作,称为网络死锁。 其实,网络死锁就是典型的网络拥塞现象,避免网络死锁的方法有三:缓冲区预分配法、分组丢弃法、许可证法等。,1.冲区预分配法 该方法用于虚电路分组交换网中。在建立虚电路时,让呼叫请求分组途经的所有结点为虚电路预先分配一个或多个数据缓冲区。若某个结点缓冲区已被占满,则呼叫请求分组另择路由,或者返回一个“忙”信号给呼叫者。这样,通过途经的各个结点为每条虚电路开设的永久性缓冲区(直到虚电路拆除),就总能有空间来接纳并转送经过的分组。此时的分组交换与电路交换非常相似。当结点收到一个分组并将它转发出去之后,该结点就向发送结点返回一个确认信息。该确认信息一方面表示接收结点已正确收到分组,另一方面告诉发送结点,本结点已空出缓冲区,可以接收下一个分组。,2.分组丢弃法 该方法不必预先保留缓冲区,当缓冲区占满时,将来到的分组丢弃。若通信子网提供的是数据报服务,则用分组丢弃法来防止阻塞发生不会引起太大的影响。但若通信子网提供的是虚电路服务,则必须在某处保存被丢弃的分组的备份,以便阻塞解决后能重新传送。有两种解决被丢弃分组重发的方法,一种是让发送被丢弃分组的结点超时,使其重新发送分组直到分组被收到;另一种是让发送被丢弃分组的结点在一定次数后放弃发送,并迫使数据源结点超时而重新开始发送。但是不加分辨地随意丢弃分组也不妥当,因为一个包含确认信息的分组可以释放结点的缓冲区,若因结点无空余缓冲区来接收含确认信息的分组,这便使结点缓冲区失去了释放的机会。解决这个问题的方法可以为每条输入链路永久地保留一块缓冲区,以用于接纳并检测所有进入的分组,对于捎带确认信息的分组,在利用了所有捎带的确认释放缓冲区后,再将该分组丢弃或将该捎带好消息的分组保存在刚空出的缓冲区中。,3.许可证法 许可证法又称定额控制法。该方法是在通信子网中设置适当数量的“许可证”的特殊信息,一部份许可证在通信子网开始工作前预先以某种策略分配给各个相关的源结点,另一部份则在通信子网工作后,允许其在网络中“漂游”。当源结点要发送来自源端系统的分组信息时,它必须首先拥有许可证,并且每发送一个分组就要注销一张许可证。目的结点方则每收到一个分组并将其递交给目的端系统后,便生成一张许可证。这样便可确保通信子网中传输的分组数量不会超过许可证的数量,从而能防止网络死锁的发生。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!