一种数据完整性校验方法及系统技术方案

技术编号:15450805 阅读:172 留言:0更新日期:2017-05-31 15:04
本申请提供了一种数据完整性校验方法,包括:数据发送站计算出源数据的数据特征码,存储于第一数据特征码表,并将所述源数据和所述第一数据特征码表发送至数据接收站,其中,所述源数据为对原始组态数据编译后的组态数据,未经过下载处理;所述数据接收站确定接收到的数据为目标数据,并计算出所述目标数据的数据特征码,存储于第二数据特征码表;所述数据接收站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述目标数据完整;否则,则确定所述目标数据不完整。因此,本申请改善了通用性,提高了检测出数据不完整的概率。

Data integrity checking method and system

The invention provides a data integrity check method, including: a data transmission station to calculate the source data signatures stored in the first data feature code table, and the source data and the first data table is transmitted to the data receiving station, among them, the source of data for the original configuration data the configuration data compiled, without download station as target data processing; determine the data received by the receiving data, and calculate the target data stored in the second character code, data table; the first station data table and the second features of the data table data is received; if the results for the first data table and the second characteristics of the data table, determine the target data integrity; otherwise, it is determined that the target data integrity . Therefore, this application improves the versatility and improves the probability of detecting incomplete data.

【技术实现步骤摘要】
一种数据完整性校验方法及系统
本申请涉及工业控制领域,特别涉及一种数据完整性校验方法及系统。
技术介绍
在生产安全要求较高的工业控制系统中,尤其是安全关键控制系统中,为确保控制系统是按组态工程师站(即数据发送站)的预期运行的,不可或缺的一点是要保证控制系统的控制器(即数据接收站)中运行的组态数据是完整、正确的(即保证控制系统的控制器中运行的组态数据是与组态工程师站中组态编译后的结果一致)。因此,在每次组态数据变更(包括创建、修改组态)生效前,组态工程师站或控制器必须对下载到控制器、待运行的组态数据进行数据完整性校验。对于未通过数据完整性校验的组态数据,应认为是错误的组态数据,不予生效。其中,在将组态工程师站中经过组态编译后的组态数据下载至控制器的过程中,影响数据完整性的原因主要有:1、组态工程师站组态下载功能的系统性失效,具体为组态工程师站在组态下载时的数据整理、打包、传送等环节;2、组态数据在网络传输过程中的失效或被恶意篡改;3、控制器接收、更新组态数据功能的系统性失效。为了能够检测出下载到控制器、待运行的组态数据的完整性,目前存在通过插入数据特征码的方式,具体为:1、组态工程师站在每个组态数据包(即对原始组态数据进行编译,编译后的组态数据经过整理、打包、传送等下载处理后生成的组态数据包)插入一个校验码,控制器在接收到每个组态数据包后,根据每个组态数据包中的校验码确认接收到的数据包是否完整;2、组态工程师站为每个组态下载数据包插入一个编号(单调递增的序号)。控制器在接收到每个数据包后,根据编号判断组态数据包队列是否连续、完整,即是否有缺漏、重复的数据包。目前所存在的通过插入数据特征码的方式能够检测到由于网络传输过程发生的错误而导致的数据不完整,但是由于校验码或编号是在经过下载处理后生成的组态数据包中插入,因此在若组态数据由于组态工程师站组态下载功能失效而发生错误(即在生成组态数据包之前,数据本身已经发生错误)或由于控制器接收、更新组态数据功能的系统性失效(而发生错误即在接收、更新时造成接收到的组态数据包中数据本身发生错误),通过校验码检验或编号检验,无法检测出组态数据是否完整,可见,目前所存在的通过插入数据特征码的方式通用性差,检测出数据不完整的概率低。
技术实现思路
为解决上述技术问题,本申请实施例提供一种数据完整性校验方法及系统,以达到改善通用性,提高检测出数据不完整的概率的目的,技术方案如下:一种数据完整性校验方法,包括:数据发送站计算出源数据的数据特征码,存储于第一数据特征码表,并将所述源数据和所述第一数据特征码表发送至数据接收站,其中,所述源数据为对原始组态数据编译后的组态数据,未经过下载处理;所述数据接收站确定接收到的数据为目标数据,并计算出所述目标数据的数据特征码,存储于第二数据特征码表;所述数据接收站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述目标数据完整;否则,则确定所述目标数据不完整。优选的,在所述计算出所述目标数据的数据特征码,存储于第二数据特征码表之后,还包括:所述数据发送站从所述数据接收站回读所述第二数据特征码表;所述数据发送站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述数据接收站接收到的数据完整,并将第一数据特征码表和所述第二数据特征码表一致的比较结果发送至所述数据接收站;所述数据接收站在确定所述数据接收站的比较结果和所述数据发送站发送的比较结果相同的情况下,信任所述目标数据。优选的,所述数据发送站计算出源数据的数据特征码,存储于第一数据特征码表的过程,包括:所述数据发送站将所述源数据划分成预设个数的数据块,计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第一子数据特征码表中;所述数据发送站将各个第一子数据特征码表汇总为第一数据特征码表。优选的,所述计算出所述目标数据的数据特征码,存储于第二数据特征码表的过程,包括:所述数据接收站按照所述数据发送站对所述源数据进行划分的方式,将所述目标数据划分成预设个数的数据块,计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第二子数据特征码表中;所述数据接收站将各个第二子数据特征码表汇总为第二数据特征码表。优选的,所述源数据包括所述数据发送站中的全部数据块或部分数据块。优选的,所述数据特征码包括循环冗余校验码CRC。一种数据完整性校验系统,包括数据发送站和数据接收站,其中:数据发送站包括:第一计算模块,用于计算出源数据的数据特征码,存储于第一数据特征码表,其中,所述源数据为对原始组态数据编译后的组态数据,未经过下载处理;第一发送模块,用于将所述源数据和所述第一数据特征码表发送至数据接收站;所述数据接收站包括:第一确定模块,用于确定接收到的数据为目标数据;第二计算模块,用于计算出所述目标数据的数据特征码,存储于第二数据特征码表;第一比较模块,用于比较所述第一数据特征码表和所述第二数据特征码表,若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则执行第二确定模块,否则,执行第三确定模块;所述第二确定模块,用于确定所述目标数据完整;所述第三确定模块,用于确定所述目标数据不完整。优选的,所述数据发送站还包括:回读模块,用于从所述数据接收站回读所述第二数据特征码表;第二比较模块,用于比较所述第一数据特征码表和所述第二数据特征码表,若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则执行第四确定模块;所述第四确定模块,用于确定所述数据接收站接收到的数据完整;第二发送模块,用于将第一数据特征码表和所述第二数据特征码表一致的比较结果发送至所述数据接收站;所述数据接收站还包括:第五确定模块,用于在确定所述数据接收站的比较结果和所述数据发送站发送的比较结果相同的情况下,信任所述目标数据。优选的,所述第一计算模块包括:第一划分单元,用于将所述源数据划分成预设个数的数据块;第一计算单元,用于计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第一子数据特征码表中;第一汇总单元,用于所述数据发送站将各个第一子数据特征码表汇总为第一数据特征码表。优选的,所述第二计算模块包括:第二划分单元,用于按照所述数据发送站对所述源数据进行划分的方式,将所述目标数据划分成预设个数的数据块;第二计算单元,用于计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第二子数据特征码表中;第二汇总单元,用于将各个第二子数据特征码表汇总为第二数据特征码表。与现有技术相比,本申请的有益效果为:在本申请中,由于数据发送站生成的数据特征码是对未经过下载处理的组态数据进行运算生成的,数据接收站是将第二数据特征码表和针对未经过下载处理的组态数据生成的第一数据特征码表进行比较,因此在数据发送站组态下载功能的系统性失效但网络传输未发生错误的情况下,数据接收站所得到的比较结果仍为不一致,确定目标数据不完整。同理,在数据接收站接收、更新组态数据功能的系统性失效但数据发送站组态下载功能的系统性未失效和网络传输未发生错误的情况下,数据接收站所得到的比较结果仍为不一致,同样可以确定目标数据不完整。当本文档来自技高网
...
一种数据完整性校验方法及系统

【技术保护点】
一种数据完整性校验方法,其特征在于,包括:数据发送站计算出源数据的数据特征码,存储于第一数据特征码表,并将所述源数据和所述第一数据特征码表发送至数据接收站,其中,所述源数据为对原始组态数据编译后的组态数据,未经过下载处理;所述数据接收站确定接收到的数据为目标数据,并计算出所述目标数据的数据特征码,存储于第二数据特征码表;所述数据接收站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述目标数据完整;否则,则确定所述目标数据不完整;所述数据发送站从所述数据接收站回读所述第二数据特征码表;所述数据发送站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述数据接收站接收到的数据完整,并将第一数据特征码表和所述第二数据特征码表一致的比较结果发送至所述数据接收站;所述数据接收站在确定所述数据接收站的比较结果和所述数据发送站发送的比较结果相同的情况下,信任所述目标数据。

【技术特征摘要】
1.一种数据完整性校验方法,其特征在于,包括:数据发送站计算出源数据的数据特征码,存储于第一数据特征码表,并将所述源数据和所述第一数据特征码表发送至数据接收站,其中,所述源数据为对原始组态数据编译后的组态数据,未经过下载处理;所述数据接收站确定接收到的数据为目标数据,并计算出所述目标数据的数据特征码,存储于第二数据特征码表;所述数据接收站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述目标数据完整;否则,则确定所述目标数据不完整;所述数据发送站从所述数据接收站回读所述第二数据特征码表;所述数据发送站比较所述第一数据特征码表和所述第二数据特征码表;若比较结果为所述第一数据特征码表和所述第二数据特征码表一致,则确定所述数据接收站接收到的数据完整,并将第一数据特征码表和所述第二数据特征码表一致的比较结果发送至所述数据接收站;所述数据接收站在确定所述数据接收站的比较结果和所述数据发送站发送的比较结果相同的情况下,信任所述目标数据。2.根据权利要求1所述的方法,其特征在于,所述数据发送站计算出源数据的数据特征码,存储于第一数据特征码表的过程,包括:所述数据发送站将所述源数据划分成预设个数的数据块,计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第一子数据特征码表中;所述数据发送站将各个第一子数据特征码表汇总为第一数据特征码表。3.根据权利要求2所述的方法,其特征在于,所述计算出所述目标数据的数据特征码,存储于第二数据特征码表的过程,包括:所述数据接收站按照所述数据发送站对所述源数据进行划分的方式,将所述目标数据划分成预设个数的数据块,计算出每个数据块的数据特征码,分别存储于各个数据块各自对应的第二子数据特征码表中;所述数据接收站将各个第二子数据特征码表汇总为第二数据特征码表。4.根据权利要求3所述的方法,其特征在于,所述源数据包括所述数据发送站中的全部数据块或部分数据块。5.根据权利要求1所述的方法,其特征在于,所述数据特征码包括循环冗余校验码CRC。6.一种数据完整性...

【专利技术属性】
技术研发人员:平志明裘坤刘志勇林加旗朱燕萍章凌
申请(专利权)人:浙江中控技术股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1