一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

井筒数据的一致性校验方法及装置与流程

2022-05-17 22:21:40 来源:中国专利 TAG:


1.本公开涉及油气勘探开发技术领域,特别涉及一种井筒数据的一致性校验方法及装置。


背景技术:

2.2004年前,石油行业勘探开发单井地质资料主要以纸质方式保存,自2004年开始,随着计算机技术的发展,单井地质资料逐步开始数字化管理,到2014年,钻井、测井、录井、井下作业、分析化验等井筒相关数据信息化建设基本完成。但单井作业多在野外,数据从采集到传输传送到目的数据库的过程中,很容易造成数据受损,因此,急需一种保证数据传输过程中的数据一致性的校验方法。


技术实现要素:

3.本公开实施例提供了一种井筒数据的一致性校验方法及装置,可以提供一种保证数据传输过程中的数据一致性的校验方法。所述技术方案如下:
4.一方面,提供了一种井筒数据的一致性校验方法,应用于井筒数据采集系统中的第一电子设备,所述方法包括:
5.获取待传输的表单,所述表单包含井筒数据;
6.对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
7.对所述第一数组a进行划分,得到多个数据片段;
8.分别将所述多个数据片段转换为ulong类型,得到第二数组b;
9.获取第一参数sa1、sa2、sa3和sa4;
10.将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
11.基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s;
12.将所述校验字符串s和所述表单一同传送至第二电子设备,所述校验字符串s用于所述第二电子设备对所述表单进行校验。
13.在一种可能实现方式中,所述对所述表单进行内容转换,得到第一数组a包括:
14.获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
15.在一种可能实现方式中,所述对所述第一数组a进行划分,得到多个数据片段包括:
16.获取所述第一数组a的长度;
17.将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
18.在一种可能实现方式中,所述获取第一参数sa1、sa2、sa3和sa4包括:
19.获取十六进制变量s1、s2、s3和s4;
20.设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
21.一方面,提供了一种井筒数据的一致性校验方法,应用于井筒数据采集系统中的第二电子设备,所述方法包括:
22.接收来自于所述井筒数据采集系统中第一电子设备的表单和校验字符串s;
23.对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
24.对所述第一数组a进行划分,得到多个数据片段;
25.分别将所述多个数据片段转换为ulong类型,得到第二数组b;
26.获取第一参数sa1、sa2、sa3和sa4;
27.将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
28.基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s’;
29.将所述校验字符串s和s’进行比对;
30.若所述校验字符串s和s’一致,则所述表单校验通过。
31.在一种可能实现方式中,所述对所述表单进行内容转换,得到第一数组a包括:
32.获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
33.在一种可能实现方式中,所述对所述第一数组a进行划分,得到多个数据片段包括:
34.获取所述第一数组a的长度;
35.将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
36.在一种可能实现方式中,所述获取第一参数sa1、sa2、sa3和sa4包括:
37.获取十六进制变量s1、s2、s3和s4;
38.设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
39.一方面,提供了一种井筒数据的一致性校验装置,应用于井筒数据采集系统中的第一电子设备,所述装置包括:
40.获取模块,用于获取待传输的表单,所述表单包含井筒数据;
41.第一转换模块,用于对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
42.分段模块,用于对所述第一数组a进行划分,得到多个数据片段;
43.第二转换模块,用于分别将所述多个数据片段转换为ulong类型,得到第二数组b;
44.第一参数获取模块,用于获取第一参数sa1、sa2、sa3和sa4;
45.第二参数获取模块,用于将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
46.字符串生成模块,用于基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串
s;
47.发送模块,用于将所述校验字符串s和所述表单一同传送至第二电子设备,所述校验字符串s用于所述第二电子设备对所述表单进行校验。
48.在一种可能实现方式中,所述第一转换模块用于获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
49.在一种可能实现方式中,所述分段模块用于获取所述第一数组a的长度;将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
50.在一种可能实现方式中,所述第一参数获取模块用于获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
51.一方面,提供了一种井筒数据的一致性校验装置,应用于井筒数据采集系统中的第二电子设备,所述装置包括:
52.接收模块,用于接收来自于所述井筒数据采集系统中第一电子设备的表单和校验字符串s;
53.第一转换模块,用于对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
54.分段模块,用于对所述第一数组a进行划分,得到多个数据片段;
55.第二转换模块,用于分别将所述多个数据片段转换为ulong类型,得到第二数组b;
56.第一参数获取模块,用于获取第一参数sa1、sa2、sa3和sa4;
57.第二参数获取模块,用于将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
58.字符串生成模块,用于基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s’;
59.比对模块,用于将所述校验字符串s和s’进行比对;若所述校验字符串s和s’一致,则所述表单校验通过。
60.在一种可能实现方式中,所述第一转换模块用于获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
61.在一种可能实现方式中,所述分段模块用于获取所述第一数组a的长度;将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
62.在一种可能实现方式中,所述第一参数获取模块用于获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
63.一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现所述井筒数据的一致性校验方法。
64.一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现所述井筒数据的一致性校验方法。
65.一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一方面方面的各种可选实现方式中提供的井筒数据的一致性校验方法。
附图说明
66.为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
67.图1是本公开实施例提供的一种井筒数据的一致性校验方法流程图;
68.图2是本公开实施例提供的一种井筒数据的一致性校验方法流程图;
69.图3是本公开实施例提供的一种井筒数据的一致性校验方法流程图;
70.图4是本公开实施例提供的一种井筒数据的一致性校验方法流程图;
71.图5是本公开实施例提供的一种井筒数据的一致性校验装置结构示意图;
72.图6是本公开实施例提供的一种井筒数据的一致性校验装置结构示意图;
73.图7是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
74.为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
75.图1是本公开实施例提供的一种井筒数据的一致性校验方法流程图,参见图1,该井筒数据的一致性校验方法包括:
76.101、获取待传输的表单,所述表单包含井筒数据。
77.其中,井筒数据是指井筒相关的数据,例如钻井、测井、录井、井下作业、分析化验等数据,本技术实施例对此不作限定。
78.102、对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单。
79.103、对所述第一数组a进行划分,得到多个数据片段。
80.104、分别将所述多个数据片段转换为ulong类型,得到第二数组b。
81.105、获取第一参数sa1、sa2、sa3和sa4。
82.106、将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’。
83.107、基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s。
84.108、将所述校验字符串s和所述表单一同传送至第二电子设备,所述校验字符串s用于所述第二电子设备对所述表单进行校验。
85.在本技术实施例所提供的方法,通过对井筒数据进行转换、分段、二次转换以及基于转换后的数组和md5算法,来获取校验字符串,从而在传输井筒数据的同时传输校验字符串,以便数据接收端能够基于校验字符串来对井筒数据进行校验,从而实现了数据一致性的校验,保证了井筒数据在传输过程中的数据一致性。
86.在一种可能实现方式中,所述对所述表单进行内容转换,得到第一数组a包括:获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
87.在一种可能实现方式中,所述对所述第一数组a进行划分,得到多个数据片段包括:获取所述第一数组a的长度;将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
88.在一种可能实现方式中,所述获取第一参数sa1、sa2、sa3和sa4包括:获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
89.上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
90.图2是本公开实施例提供的一种井筒数据的一致性校验方法流程图,参见图2,该井筒数据的一致性校验方法包括:
91.201、第一电子设备获取待传输的表单,该表单包含井筒数据。
92.其中,该第一电子设备可以是井筒数据采集设备,用于对井筒数据进行采集,并基于所采集到的井筒数据,生成表单。该表单格式可以为任一种格式,例如,该表单可以为二维表单。
93.202、对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单。
94.该第一电子设备获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。在该表单为二维表单的情况下,该表单的一行中包括多个字段,因此,可以在每两个字段中加入\t”,在每两行之间加入“\r”“\n”,从而将字段之间间隔开,将行之间间隔开,以将二维表单转换为一维的第一数组。为了将字段以及行进行间隔,还可以采用其他符号来间隔,本技术实施例对此不作限定。
95.203、该第一电子设备获取该第一数组a的长度;将该长度除以常数64,得到分块数,按照该分块数,对该第一数组a进行划分,得到多个数据片段。
96.其中,通过将长度除以常数64,可以将第一数组划分为多个64bit大小的数据分段,从而保证可以基于相同长度的数据分段,来进行后续的数组转换。当然,如果第一数组的长度超过目标长度,则可以在基于分块数进行划分时,将每2n个(其中,n为大于或等于1的整数)64bit长度的数据,划分为一个数据片段,也即是,可以通过以64bit为基础片段长度,根据第一数据的实际长度来调整划分方式,使得不管通过哪种方式进行划分,所得到的数据片段的个数相同,从而在后续处理过程中,所得到的第二数组中的元素个数相同。
97.204、该第一电子设备分别将该多个数据片段转换为ulong类型,得到第二数组b。
98.其中,ulong型(无符号长整型)是指将字符存储为32位(4个字节)的数值形式。
99.205、该第一电子设备获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给该十六进制变量s1、s2、s3和s4,得到该第一参数sa1、sa2、sa3和sa4。
100.上述步骤205是该第一电子设备获取第一参数sa1、sa2、sa3和sa4的过程,该四个变量可以为任意变量,本技术对此不作限定。第一电子设备可以随机生成四个十六进制常量来对上述变量进行赋值。
101.在一些实施例中,第一电子设备可以根据该第一电子设备的设备信息,例如设备类型、设备标识等,生成对应的十六进制常量,从而可以在数据接收端进行验证时,可以确保数据发送设备的身份合法,避免数据篡改等问题。
102.206、该第一电子设备将该第一参数sa1、sa2、sa3和sa4以及该第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’。
103.第一电子设备在生成了第一参数后,则可以将所生成的第一参数和第二数组b输入md5校验码生成器,该生成器采用md5校验码算法对输入数据进行处理,可以得到第二参数。
104.在一些实施例中,第一电子设备将第一参数sa1、sa2、sa3和sa4分别于第二数组b拼接,以得到对应的第一中间参数,再将拼接所得到的多个第一中间参数输入md5校验码生成器,以得到对应的第二参数sa1’、sa2’、sa3’以及sa4’。
105.在一些实施例中,第一电子设备将第二数组b拆分为四个数据分段,将各个数据分段分别与第一参数sa1、sa2、sa3和sa4拼接,以得到对应的第二中间参数,再将拼接所得到的多个第二中间参数输入md5校验码生成器,以得到对应的第二参数sa1’、sa2’、sa3’以及sa4’。
106.上述两种处理方式仅为基于该第一参数sa1、sa2、sa3和sa4以及该第二数组b来生成第二参数的示例,在其他实施例中,还可以基于第二数组的变形以及该多个第一参数,来进行第二参数的生成,本技术实施例对此不作限定。
107.207、该第一电子设备基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s。
108.在本技术实施例中,上述校验字符串的生成可以通过将多个第二参数拼接得到,在一些实施例中,第一电子设备可以按照预设顺序对上述多个第二参数进行拼接,例如,按照参数编号从小到大进行拼接,或者按照参数编号从大到小进行拼接,在此不做限定。
109.当然,在一些实施例中,还可以基于多个第二参数拼接得到的字符串来获取校验字符串,例如,第一电子设备从拼接后所得到的字符串中提取前预设位数的字符,作为校验字符串,以增加后续校验的复杂度,从而提高数据安全性。
110.208、该第一电子设备将该校验字符串s和该表单一同传送至第二电子设备,该校验字符串s用于该第二电子设备对该表单进行校验。
111.在生成了校验字符串后,第一电子设备可以将校验字符串和表单打包成数据包,向第二电子设备进行发送,例如,第一电子设备可以将该校验字符串打包在数据包的指定位置,该指定位置用于存储待数据接收端校验使用的校验字符串。又例如,第一电子设备可以将该校验字符串添加至表单中,再对添加后的表单进行打包,以进行发送,本技术实施例对采用哪种方式进行打包不做限定。
112.在本技术实施例所提供的方法,通过对井筒数据进行转换、分段、二次转换以及基于转换后的数组和md5算法,来获取校验字符串,从而在传输井筒数据的同时传输校验字符
串,以便数据接收端能够基于校验字符串来对井筒数据进行校验,从而实现了数据一致性的校验,保证了井筒数据在传输过程中的数据一致性,也能够保证数据准确性。
113.需要说明的是,在下述实施例中,第一数组、第二数组以及各种参数名称沿用了上述实施例中第一电子设备侧的描述,在此仅是为了名词简化之用,而对于第二电子设备来说,其所接收到的表单的内容和校验字符串均可能发生变化,也即是,所接收到的校验字符串可能并不是发送端所发送的字符串,表单也可能发生变化,相应地,后续第一数组、第二数组等名称仅用于代表第二电子设备基于接收到的数据进行处理后所得到的数据,而不一定是与发送侧所发送的一模一样的数据。
114.图3是本公开实施例提供的一种井筒数据的一致性校验方法流程图,该方法应用于作为数据接收端的第二电子设备。参见图3,该井筒数据的一致性校验方法包括:
115.301、接收来自于所述井筒数据采集系统中第一电子设备的表单和校验字符串s。
116.302、对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单。
117.303、对所述第一数组a进行划分,得到多个数据片段。
118.304、分别将所述多个数据片段转换为ulong类型,得到第二数组b。
119.305、获取第一参数sa1、sa2、sa3和sa4。
120.306、将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’。
121.307、基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s’。
122.308、将所述校验字符串s和s’进行比对。
123.309、若所述校验字符串s和s’一致,则所述表单校验通过。
124.在一些实施例中,所述对所述表单进行内容转换,得到第一数组a包括:
125.该第一电子设备获取所述表单中的表单内容,在所述表单内容中每两个字段中加入第一字符,在所述表单内容中每两行之间加入第二字符,以得到所述第一数组a。
126.在一些实施例中,所述对所述第一数组a进行划分,得到多个数据片段包括:
127.获取所述第一数组a的长度;
128.将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
129.在一些实施例中,所述获取第一参数sa1、sa2、sa3和sa4包括:
130.获取十六进制变量s1、s2、s3和s4;
131.设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
132.图4是本公开实施例提供的一种井筒数据的一致性校验方法流程图,参见图4,该井筒数据的一致性校验方法包括:
133.401、第二电子设备接收来自于所述井筒数据采集系统中第一电子设备的表单和校验字符串s。
134.第二电子设备可以将接收到的数据包进行解析,以得到表单和校验字符串s,例如,第二电子设备可以从数据包的指定位置,提取校验字符串,该指定位置用于存储待数据接收端校验使用的校验字符串。又例如,第二电子设备可以从表单中提取校验字符串,本申
请实施例对采用哪种方式进行打包不做限定。
135.402、该第二电子设备获取该表单中的表单内容,在该表单内容中每两个字段中加入第一字符,在该表单内容中每两行之间加入第二字符,以得到第一数组a。
136.在该表单为二维表单的情况下,该表单的一行中包括多个字段,因此,可以在每两个字段中加入\t”,在每两行之间加入“\r”“\n”,从而将字段之间间隔开,将行之间间隔开,以将二维表单转换为一维的第一数组。为了将字段以及行进行间隔,还可以采用其他符号来间隔,本技术实施例对此不作限定。
137.403、该第二电子设备获取该第一数组a的长度;将该长度除以常数64,得到分块数,按照该分块数,对该第一数组a进行划分,得到多个数据片段。
138.其中,通过将长度除以常数64,可以将第一数组划分为多个64bit大小的数据分段,从而保证可以基于相同长度的数据分段,来进行后续的数组转换。当然,如果第一数组的长度超过目标长度,则可以在基于分块数进行划分时,将每2n个(其中,n为大于或等于1的整数)64bit长度的数据,划分为一个数据片段,也即是,可以通过以64bit为基础片段长度,根据第一数据的实际长度来调整划分方式,使得不管通过哪种方式进行划分,所得到的数据片段的个数相同,从而在后续处理过程中,所得到的第二数组中的元素个数相同。
139.404、该第二电子设备分别将该多个数据片段转换为ulong类型,得到第二数组b。
140.其中,ulong型(无符号长整型)是指将字符存储为32位(4个字节)的数值形式。
141.405、该第二电子设备获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给该十六进制变量s1、s2、s3和s4,得到该第一参数sa1、sa2、sa3和sa4。
142.上述步骤405是该第二电子设备获取第一参数sa1、sa2、sa3和sa4的过程,该四个变量可以为任意变量,本技术对此不作限定。第二电子设备可以随机生成四个十六进制常量来对上述变量进行赋值。
143.在一些实施例中,第二电子设备可以根据预先存储的第一电子设备的设备信息,例如设备类型、设备标识等,生成对应的十六进制常量,从而可以在数据接收端进行验证时,可以确保数据发送设备的身份合法,避免数据篡改等问题。
144.406、该第二电子设备将该第一参数sa1、sa2、sa3和sa4以及该第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’。
145.第二电子设备在生成了第一参数后,则可以将所生成的第一参数和第二数组b输入md5校验码生成器,该生成器采用md5校验码算法对输入数据进行处理,可以得到第二参数。
146.在一些实施例中,第二电子设备将第一参数sa1、sa2、sa3和sa4分别于第二数组b拼接,以得到对应的第一中间参数,再将拼接所得到的多个第一中间参数输入md5校验码生成器,以得到对应的第二参数sa1’、sa2’、sa3’以及sa4’。
147.在一些实施例中,第二电子设备将第二数组b拆分为四个数据分段,将各个数据分段分别与第一参数sa1、sa2、sa3和sa4拼接,以得到对应的第二中间参数,再将拼接所得到的多个第二中间参数输入md5校验码生成器,以得到对应的第二参数sa1’、sa2’、sa3’以及sa4’。
148.上述两种处理方式仅为基于该第一参数sa1、sa2、sa3和sa4以及该第二数组b来生成第二参数的示例,在其他实施例中,还可以基于第二数组的变形以及该多个第一参数,来
进行第二参数的生成,本技术实施例对此不作限定。
149.407、该第二电子设备基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s’。
150.在本技术实施例中,上述校验字符串的生成可以通过将多个第二参数拼接得到,在一些实施例中,第二电子设备可以按照预设顺序对上述多个第二参数进行拼接,例如,按照参数编号从小到大进行拼接,或者按照参数编号从大到小进行拼接,在此不做限定。
151.当然,在一些实施例中,还可以基于多个第二参数拼接得到的字符串来获取校验字符串,例如,第二电子设备从拼接后所得到的字符串中提取前预设位数的字符,作为校验字符串,以增加后续校验的复杂度,从而提高数据安全性。
152.408、该第二电子设备将自身生成的校验字符串s’和接收到的校验字符串s进行比对。
153.409、若第二电子设备确定所述校验字符串s和s’一致,则所述表单校验通过。
154.进一步地,在确定表单校验通过后,第二电子设备将接收到的表单存储至数据库。
155.410、若第二电子设备确定所述校验字符串s和s’不一致,则向第一电子设备返回发送失败响应,该发送失败响应用于指示第一电子设备重新发送表单。
156.在一些实施例中,若第二电子设备确定所述校验字符串s和s’不一致,还可以对管理用户进行预警,以报告数据安全性存在隐患。
157.在第二电子设备侧,通过采用与第一电子设备侧相同的校验字符串生成方法,从而使得能够利用md5数据传输校验算法,在数据接收端进行校验字符串的比对,达到对整个数据库的比对。
158.在本技术实施例所提供的方法,通过对井筒数据进行转换、分段、二次转换以及基于转换后的数组和md5算法,来获取校验字符串,从而在传输井筒数据的同时传输校验字符串,以便数据接收端能够基于校验字符串来对井筒数据进行校验,从而实现了数据一致性的校验,保证了井筒数据在传输过程中的数据一致性,也能够保证数据准确性。
159.上述技术方案中,通过在系统中的数据发送端和数据接收端均配置有对应的校验方法,从而使得收发两侧能够通过对数据的校验,来保证数据一致性和准确性。
160.图5是本技术实施例提供的一种井筒数据的一致性校验装置结构示意图,应用于井筒数据采集系统中的第一电子设备,参见图5,所述装置包括:
161.获取模块501,用于获取待传输的表单,所述表单包含井筒数据;
162.第一转换模块502,用于对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
163.分段模块503,用于对所述第一数组a进行划分,得到多个数据片段;
164.第二转换模块504,用于分别将所述多个数据片段转换为ulong类型,得到第二数组b;
165.第一参数获取模块505,用于获取第一参数sa1、sa2、sa3和sa4;
166.第二参数获取模块506,用于将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
167.字符串生成模块507,用于基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s;
168.发送模块508,用于将所述校验字符串s和所述表单一同传送至第二电子设备,所述校验字符串s用于所述第二电子设备对所述表单进行校验。
169.在一种可能实现方式中,所述第一转换模块502用于获取该表单中的表单内容,在该表单内容中每两个字段中加入第一字符,在该表单内容中每两行之间加入第二字符,以得到第一数组a。
170.在一种可能实现方式中,所述分段模块503用于获取所述第一数组a的长度;将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
171.在一种可能实现方式中,所述第一参数获取模块505用于获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
172.图6是本技术实施例提供的一种井筒数据的一致性校验装置结构示意图,应用于井筒数据采集系统中的第二电子设备,参见图6,所述装置包括:
173.接收模块601,用于接收来自于所述井筒数据采集系统中第一电子设备的表单和校验字符串s;
174.第一转换模块602,用于对所述表单进行内容转换,得到第一数组a,所述第一数组是以字符型数组表示的所述表单;
175.分段模块603,用于对所述第一数组a进行划分,得到多个数据片段;
176.第二转换模块604,用于分别将所述多个数据片段转换为ulong类型,得到第二数组b;
177.第一参数获取模块605,用于获取第一参数sa1、sa2、sa3和sa4;
178.第二参数获取模块606,用于将所述第一参数sa1、sa2、sa3和sa4以及所述第二数组b作为md5校验码算法的输入,得到第二参数sa1’、sa2’、sa3’以及sa4’;
179.字符串生成模块607,用于基于第二参数sa1’、sa2’、sa3’以及sa4’,生成校验字符串s’;
180.比对模块608,用于将所述校验字符串s和s’进行比对;若所述校验字符串s和s’一致,则所述表单校验通过。
181.在一种可能实现方式中,所述第一转换模块602用于获取该表单中的表单内容,在该表单内容中每两个字段中加入第一字符,在该表单内容中每两行之间加入第二字符,以得到第一数组a。
182.在一种可能实现方式中,所述分段模块603用于获取所述第一数组a的长度;将所述长度除以常数64,得到分块数,按照所述分块数,对所述第一数组a进行划分,得到多个数据片段。
183.在一种可能实现方式中,所述第一参数获取模块605用于获取十六进制变量s1、s2、s3和s4;设置四个十六进制常量赋值给所述十六进制变量s1、s2、s3和s4,得到所述第一参数sa1、sa2、sa3和sa4。
184.需要说明的是:上述实施例提供的井筒数据的一致性校验装置在井筒数据的一致性校验时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以
上描述的全部或者部分功能。另外,上述实施例提供的井筒数据的一致性校验装置与井筒数据的一致性校验方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
185.图7是本公开实施例提供的一种电子设备的结构示意图,该电子设备700可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(central processing units,cpu)701和一个或多个的存储器702,其中,所述一个或多个存储器702中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器701加载并执行以实现上述各个方法实施例提供的方法。当然,该电子设备700还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该电子设备700还可以包括其他用于实现设备功能的部件,在此不做赘述。
186.在示例性实施例中,还提供了一种计算机可读存储介质,例如包括程序代码的存储器,上述程序代码可由处理器执行以完成上述实施例中的井筒数据的一致性校验方法。例如,该计算机可读存储介质可以是只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、只读光盘(compact disc read-only memory,cd-rom)、磁带、软盘和光数据存储设备等。
187.在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述实施例中提供的井筒数据的一致性校验的方法步骤。
188.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
189.上述仅为本公开的可选实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献