公开/公告号CN112804030A
专利类型发明专利
公开/公告日2021-05-14
原文格式PDF
申请/专利权人 国网辽宁省电力有限公司电力科学研究院;国家电网有限公司;
申请/专利号CN202110058824.4
申请日2021-01-17
分类号H04L1/00(20060101);H04L9/06(20060101);H04L9/32(20060101);H04L29/06(20060101);
代理机构21100 辽宁沈阳国兴知识产权代理有限公司;
代理人何学军;侯景明
地址 110006 辽宁省沈阳市和平区四平街39-7号
入库时间 2023-06-19 10:58:46
技术领域
本发明属于数据传输加密以及数据解析校验技术领域,尤其涉及一种基于CRC+MD5散列函数双向连通的数据校验方法。
背景技术
MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理。
其特点如下:
1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。
2、容易计算:从原数据计算出MD5值很容易。
CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。
缺点如下:
不能检测到2位或2位以上的错误,其多项生成式用于原数较长时,只能查错不能纠错,因为不能定位。
在实际的数据传输解析和校验工作中,一般采用CRC校验,这样可能存在数据的不完整性和解析的正确性,还有数据的安全性无法得到保证,这样服务器接收的数据可能存在很多无用和错误的数据,导致在线监测服务器资源的浪费和时间上的浪费。
发明内容
针对上述现有技术中存在的不足之处,本发明提供了一种基于CRC+MD5散列函数双向连通的数据校验方法。其目的是为了提供一种安全性好的基于CRC+MD5散列函数双向连通并应用于在线监测装置端边协同贯通性校验的数据校验方法的发明目的。
本发明为实现上述目的所采用的技术方案是:
一种基于CRC+MD5散列函数双向连通的数据校验方法,包括以下步骤:
步骤1:对主机数据进行校验;
步骤2:对检验后的主机数据进行加密;
步骤3:从机接收到主机的数据后,进行解析和比较;
步骤4:从机数据的解析;
步骤5:主机将正确的数据打包传输给服务器进行存储和处理。
进一步的,步骤1所述对主机数据进行校验,包括:首先对主机需要传输的数据进行CRC数据校验,形成数据校验位,生成数据校验字符串,放在数据的尾端。
进一步的,所述生成数据校验字符串为固定顺序、固定长度的数据校验字符串。
进一步的,步骤2所述对检验后的主机数据进行加密,包括:将主机需传输已经通过CRC数据校验过的数据信息MD5数据加密处理,生成唯一的MD5值“数字指纹”;
进一步的,步骤3所述从机接收到主机的数据后,进行解析和比较,包括:主机针对每条数据预先提供一个MD5值,从机接收到主机的数据后,解析接收到的主机的数据的MD5值,通过比较这两个值是否相同,从而判断这条数据是否出错。
进一步的,步骤4所述从机数据的解析,包括:如果判断数据没有出错,则按照相应的数据序列和校验部分进行匹配,得到相应主机传输的数据;
进一步的,所述的一种基于CRC+MD5散列函数双向连通的数据校验方法,当解析验证过程在从机完成时,包括以下步骤:
步骤1:对从机数据进行校验;
步骤2:对检验后的从机数据进行加密;
步骤3:主机接收到从机的数据后,进行解析和比较;
步骤4:主机数据的解析;
步骤5:主机将正确的数据打包传输给服务器进行存储和处理。
进一步的,所述一种基于CRC+MD5散列函数双向连通的数据校验方法,还包括:从机数据的校验过程、从机数据的加密过程、主机数据的解密过程、主机数据的解析过程以及服务器的数据接收处理;
所述从机数据的校验过程包括:
从机数据先经过CRC数据校验形成数据校验位,生成固定顺序的数据校验字符串,放在数据的尾端,并确保每一条数据的长度固定;
所述从机数据的加密过程包括:
将主机需传输已经通过CRC校验过的数据信息MD5数据加密处理,生成唯一的MD5值“数字指纹”;
所述主机数据的解密过程包括:
主机针对每条数据预先提供一个MD5值,从机接收到主机的数据后,解析接收到的主机的数据的MD5值,通过比较这两个值是否相同,就能判断这条数据是否出错;
所述主机数据的解析过程包括:
如果判断数据没有出错,就按照相应的数据序列和校验部分进行匹配,得到相应主机传输的数据。
所述服务器的数据接收处理包括:
将主机解析没有问题的数据进行打包,再传输给服务器进行存储和处理。
一种校验装置:包括校验装置,所述校验装置包括:
存储器,存储有计算机程序;
处理器,执行所述计算机程序;
所述处理器在执行所述计算机程序时,实现所述的一种基于CRC+MD5散列函数双向连通的数据校验方法的步骤。
一种计算机存储介质,所述计算机存储介质上存有计算机程序;
所述计算机程序被处理器执行时实现所述的一种基于CRC+MD5散列函数双向连通的数据校验方法的步骤。
本发明具有以下有益效果及优点:
本发明方法首先能保证在线监测服务器接收数据的正确性和安全性,能够提高服务器的使用效率,消除数据传输的时间限制,提高在线监测装置的数据及时性和准确性。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明校验方法的流程示意图;
图2是本发明校验装置结构示意图。
图中:
校验装置300,存储器310,处理器320。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面将结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
下面参照图1和图2描述本发明一些实施例的技术方案。
实施例1
本发明是一种基于CRC+MD5散列函数双向连通的数据校验方法,具体是一种应用于在线监测装置端边协同贯通性校验的数据校验方法,其流程如图1所示,图1为本发明校验方法的流程示意图。
本发明一种基于CRC+MD5散列函数双向连通的数据校验方法,包括:主机数据的校验过程,主机数据的加密过程,从机数据的解密过程,从机数据的解析过程,以及服务器的数据接收处理。
本发明是双向连通的数据校验方法,主机与从机之间的区分在于解析验证的这个过程在主机还是从机完成,当解析验证过程在主机完成时,具体包括以下步骤:
步骤1:对主机数据进行校验;
步骤2:对检验后的主机数据进行加密;
步骤3:从机接收到主机的数据后,进行解析和比较;
步骤4:从机数据的解析;
步骤5:主机将正确的数据打包传输给服务器进行存储和处理。
进一步的,所述步骤1:首先对主机需要传输的数据进行CRC数据校验,形成数据校验位,生成固定顺序的数据校验字符串,放在数据的尾端,并确保每一条数据的长度固定;
进一步的,所述步骤2:将主机需传输已经通过CRC数据校验过的数据信息MD5数据加密处理,生成唯一的MD5值“数字指纹”;
进一步的,所述步骤3:主机针对每条数据预先提供一个MD5值,从机接收到主机的数据后,解析接收到的主机的数据的MD5值,通过比较这两个值是否相同,就能判断这条数据是否出错;
进一步的,所述步骤4:如果判断数据没有出错,则按照相应的数据序列和校验部分进行匹配,得到相应主机传输的数据;
进一步的,所述步骤5:主机解析没有问题的数据进行打包,再传输给服务器进行存储和处理。
实施例2
本发明又以提供了一种基于CRC+MD5散列函数双向连通的数据校验方法,本发明是双向连通的数据校验方法,主机与从机之间的区分在于解析验证的这个过程在主机还是从机完成,当解析验证过程在从机完成时,具体包括以下步骤:
步骤1:对从机数据进行校验;
步骤2:对检验后的从机数据进行加密;
步骤3:主机接收到从机的数据后,进行解析和比较;
步骤4:主机数据的解析;
步骤5:主机将正确的数据打包传输给服务器进行存储和处理。
进一步的,所述步骤1中,对从机数据进行校验。首先对从机需要传输的数据进行CRC数据校验,形成数据校验位,生成固定顺序的数据校验字符串,放在数据的尾端,并确保每一条数据的长度固定;
进一步的,所述步骤2中,对检验后的从机数据进行加密。将从机需传输已经通过CRC数据校验过的数据信息MD5数据加密处理,生成唯一的MD5值“数字指纹”;
进一步的,所述步骤3中,主机接收到从机的数据后,进行解析和比较。从机针对每条数据预先提供一个MD5值,主机接收到从机的数据后,解析接收到的从机的数据的MD5值,通过比较这两个值是否相同,就能判断这条数据是否出错;
进一步的,所述步骤4中,主机数据的解析。如果判断数据没有出错,则按照相应的数据序列和校验部分进行匹配,得到相应主机传输的数据;
进一步的,所述步骤5中,主机将正确的数据打包传输给服务器进行存储和处理。主机解析没有问题的数据进行打包,再传输给服务器进行存储和处理。
本发明又提供一种实施例,是一种基于CRC+MD5散列函数双向连通的数据校验方法。
本发明包括:从机数据的校验过程、从机数据的加密过程、主机数据的解密过程、主机数据的解析过程以及服务器的数据接收处理。其中:
所述从机数据的校验过程包括:
从机数据先经过CRC数据校验形成数据校验位,生成固定顺序的数据校验字符串,放在数据的尾端,并确保每一条数据的长度固定;
所述从机数据的加密过程包括:
将主机需传输已经通过CRC校验过的数据信息MD5数据加密处理,生成唯一的MD5值“数字指纹”;
所述主机数据的解密过程包括:
主机针对每条数据预先提供一个MD5值,从机接收到主机的数据后,解析接收到的主机的数据的MD5值,通过比较这两个值是否相同,就能判断这条数据是否出错;
所述主机数据的解析过程包括:
如果判断数据没有出错,就按照相应的数据序列和校验部分进行匹配,得到相应主机传输的数据。
所述服务器的数据接收处理包括:
将主机解析没有问题的数据进行打包,再传输给服务器进行存储和处理。
实施例3
本实施例提供了一种所述校验装置,如图2所示,图2是本发明校验装置结构示意图。
本发明包括:
存储器310,存储有计算机程序。
处理器320,执行所述计算机程序。
其中,所述处理器320在执行所述计算机程序时,实现如本发明任一实施例所述的一种基于CRC+MD5散列函数双向连通的数据校验方法的步骤。
本实施例的所述校验装置300采用如本发明任一实施例所述的校验方法,其具有如本发明任一实施例所述的一种基于CRC+MD5散列函数双向连通的数据校验方法的全部有益效果。
实施例4
基于同一发明构思,本发明实施例还提供了一种计算机存储介质。
所述计算机存储介质上存有计算机程序;
所述计算机程序被处理器执行时实现实施例1或2所述的一种基于CRC+MD5散列函数双向连通的数据校验方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
机译: 一种用于选择首选数据链路的基于用户定义策略的双向数据交换方法
机译: 记录了一种基于数据库的数据关联方法和一种基于数据库的数据关联系统以及基于数据库的数据关联方法,并且计算机可读记录介质包括计算机可读记录介质。
机译: 数据驱动处理器,数据驱动类型信息处理设备以及在该数据驱动类型信息处理设备中,一种用于验证多个数据驱动处理器的路径连通性的方法