《网络协议安全分析》_02-02-001-差错校验.pptxVIP

  • 0
  • 0
  • 约2.29千字
  • 约 16页
  • 2026-01-15 发布于广东
  • 举报

《网络协议安全分析》_02-02-001-差错校验.pptx

学习内容

差错校验方式概述

01

02

循环冗余校验CRC

03

总结

差错校验方式概述

1

在数据传输过程中,无论传输系统设计的再怎么完美,差错总会存在,这种差错可能会导致链路上传输的一个或者多个帧被破坏(出现比特差错,0变为1,或者1变为0),从而接收方接收到错误的数据。为尽量提高接收方收到数据的正确率,在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正确时,接收方才真正收下数据。

差错校验方式概述

1

在一个p位二进制数据序列之后附加一个r位二进制校检码,构成一个总长为p+r的二进制序列。附加在数据序列之后的这个r位校检码与p位二进制序列之间存在一个特定的关系,如果因干扰等原因使得数据序列中的一些位发生错误,这种特定的关系就会破坏。因此,可以通过检查该关系,实现对接收数据的正确性检验。根据校检码与p位二进制序列之间的关系,可以将校检方式分为:

(1)奇偶校验

(2)累加和校验

(3)CRC校验

差错校验方式概述

1

奇偶校检:每个字节的校检码与该字节(包括校检码)中1的个数对应;

奇偶校验多用于低速数据通讯,如RS232。

差错校验方式概述

1

校验方法:

原数据序列1000110

奇校验:偶校验:差错校验方式概述

1

累加和校检:每个数据包的校检码为该数据包中所有数据忽略进位的累加和;

累加和校验检测错误概率大概为1/256,实现简单,也被广泛的采用。

差错校验方式概述

1

校验方法:

发送方:把要发送的数据累加,得到一个数据和,对数据和求反,即得到校验值。然后把要发送的数据和校验值一起发送给接收方。

接收方:对接收的数据(包括校验值)进行累加,然后加1,如果得到0,那么说明数据没有出现传输错误。(此处发送方和接收方用于保存累加结果的类型一定要一致,否则加1就无法实现溢出从而无法得到0,校验就会无效)

差错校验方式概述

1

发送方:

要发送数据0xA8,0x50;

unsignedchar(8位)累加和为0xF8(0;

取反为0x07(0;

实际发送(0xA8,0x50,0x07)。

接收方:

三个数据累加和为(0,

加1,得到的结果为0(相加为0b100000000,unsignedchar(8位)截取最高位后为0);

数据接收正确。

循环冗余校验CRC

2

CRC校检:每个二进制序列的校检码为该序列与所选择的G(x)多项式模2除法的余数。

只要选择的除数G(x)多项式位数足够多,检测错误的概率几乎不存在。

循环冗余校验CRC

2

(1)帧检测序列FCS(FrameCheckSequence):为进行差错检验而添加的冗余码。

(2)多项式模2除法:不考虑进位、错位的二进制加减法。

(3)生成多项式:当进行CRC检验时,发送方和接受方事先约定一个除数,即生成多项式G(x)。每一个生成多项式与一个二进制序列对应,如CRC-8(X8+X2+X+1)对应的二进制序列为:100000111。

循环冗余校验CRC

2

常用CRC生成多项式

名称

多项式

应用举例

CRC-8

X8+X2+X+1

CRC-12

X12+X11+X3+X2+X+1

telecomsystems

CRC-16

X16+X15+X2+1

Bisync,Modbus,USB,ANSIX3.28,SIADC-07,manyothers;alsoknownasCRC-16andCRC-16-ANSI

CRC-CCITT

X16+X12+X5+1

ISOHDLC,ITUX.25,V.34/V.41/V.42,PPP-FCS

CRC-32

X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X+1

ZIP,RAR,IEEE802LAN/FDDI,IEEE1394,PPP-FCS

CRC-32C

X32+X28+X27+X26+X25+X23+X22+X20+X19+X18+X14+X13+X11+X10+X9+X8+X6+1

iSCSI,SCTP,G.hnpayload,SSE4.2,Btrfs,ext4,Ceph

循环冗余校验CRC

2

计算示例:

发送方:设需要发送的信息为M=1010001101;

生成多项式G(X5+X4+X2+1)对应的代码为P=110101;

在M后加5个0,为101000110100000;

用上述数据对P做模2除法运算,得余数R对应代码:01110;

实际需要发送的数据是10100011010111

文档评论(0)

1亿VIP精品文档

相关文档