CN115114080A - 测试数据防篡改方法、计算机装置及存储介质 - Google Patents
测试数据防篡改方法、计算机装置及存储介质 Download PDFInfo
- Publication number
- CN115114080A CN115114080A CN202110296930.6A CN202110296930A CN115114080A CN 115114080 A CN115114080 A CN 115114080A CN 202110296930 A CN202110296930 A CN 202110296930A CN 115114080 A CN115114080 A CN 115114080A
- Authority
- CN
- China
- Prior art keywords
- data
- computer device
- computer
- data block
- test
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000015654 memory Effects 0.000 claims description 33
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 238000010998 test method Methods 0.000 claims 3
- 230000006870 function Effects 0.000 description 13
- 238000012795 verification Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000012856 packing Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种测试数据防篡改方法,包括:获取计算机装置的测试数据;基于预设的算法处理所述测试数据,获得处理后的数据;对所述处理后的数据进行数字签名,获得第一签名相关参数;向其他计算机装置广播所述处理后的数据以及所述第一签名相关参数,使得所述其他计算机装置分别基于所述第一签名相关参数验证所述处理后的数据;及当确定所述处理后的数据为有效数据时,所述其他计算机装置分别存储所述处理后的数据。本申请还提供实现所述测试数据防篡改方法的计算机装置和存储介质。本申请可以对各个计算机装置的测试数据进行互相备份,防止数据丢失的同时还可以有效防止数据篡改。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种测试数据防篡改方法、计算机装置及存储介质。
背景技术
随着越来越多新技术在电子设备例如智能手机上的广泛应用,电子设备的硬件模块日趋复杂,工厂端对电子设备例如手机的生产测试的工艺和流程也朝着复杂化方向发展。当前电子设备例如手机的组装物料的种类繁多且来自于多个供应商,车间内操作人员众多,生产组装流程复杂,生产测试过程中存在着问题,例如组装物料可能被恶意替换;测试数据和测试记录可能被人为篡改。
发明内容
鉴于以上内容,有必要提出一种测试数据防篡改方法、计算机装置及存储介质,可对各个计算机装置的测试数据进行互相备份,防止数据丢失的同时还可以有效防止数据篡改。
所述测试数据防篡改方法包括:应用在N个计算机装置中的任意一个计算机装置中,所述N为正整数,所述方法包括:利用所述任意一个计算机装置获取测试数据;利用所述任意一个计算机装置基于预设的算法处理所述测试数据,获得处理后的数据;利用所述任意一个计算机装置对所述处理后的数据进行数字签名,获得第一签名相关参数;利用所述任意一个计算机装置向其他N-1个计算机装置广播所述处理后的数据以及所述第一签名相关参数,使得所述其他N-1个计算机装置分别基于所述第一签名相关参数验证所述处理后的数据;及当确定所述处理后的数据为有效数据时,所述其他N-1个计算机装置分别存储所述处理后的数据。
可选地,该方法还包括:利用所述任意一个计算机装置将所述处理后的数据存储到所述任意一个计算机装置的数据池内;当所述任意一个计算机装置的该数据池存满数据时,利用所述任意一个计算机装置将所述数据池的所有数据打包为一个数据块;利用所述任意一个计算机装置对所述数据块进行数字签名,获得第二签名相关参数;利用所述任意一个计算机装置向所述其他N-1个计算机装置广播所述数据块以及所述第二签名相关参数,使得所述其他N-1个计算机装置分别基于所述第二签名相关参数验证所述数据块;及当确定所述数据块为有效数据块时,所述其他N-1个计算机装置分别存储所述数据块。
可选地,该方法中,所述任意一个计算机装置基于哈希算法将所述测试数据转换成信息摘要,将所获得的信息摘要作为所述处理后的数据。
可选地,该方法中,所述任意一个计算机装置利用椭圆曲线数字签名算法对所述处理后的数据进行数字签名,获得所述第一签名相关参数。
可选地,所述将所述数据池的所有数据打包为一个数据块包括:对所述数据池中的每笔数据进行哈希运算获得所述数据池中的每笔数据所对应的哈希值;对所述数据池中的所有数据所对应的哈希值进行哈希运算获得所述数据池所对应的最终哈希值;对前一个数据块的所有数据进行哈希运算获得该前一个数据块的哈希值;将所述数据池中的每笔数据所对应的哈希值、所述数据池所对应的最终哈希值、所述前一个数据块的哈希值,以及当前的时间戳作为所述数据块的数据。
可选地,所述存储所述数据块包括:从所述数据块获取所述数据块所包括的前一个数据块的哈希值,将所获得的该前一个数据块的哈希值作为一个指针,指向所述前一个数据块。
可选地,所述任意一个计算机装置所获取的测试数包括:被测设备的物料的序列号、该被测设备的所述物料的测试数值以及测试结果。
可选地,所述N个计算机装置分别对所述被测设备执行不同的测试。
所述计算机装置包括存储器和处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令时实现所述测试数据防篡改方法。
所述存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现所述的测试数据防篡改方法。
相较于现有技术,本申请提供的测试数据防篡改方法、计算机装置及存储介质,可对各个计算机装置的测试数据进行互相备份,防止数据丢失的同时还可以有效防止数据篡改。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本申请较佳实施例提供的测试数据防篡改方法的应用环境图。
图2是本申请较佳实施例提供的测试数据防篡改方法的流程图。
图3举例说明数据块。
图4是本申请较佳实施例提供的测试数据防篡改系统的功能模块图。
图5是本申请较佳实施例提供的计算机装置的结构图。
主要元件符号说明
计算机装置 | 2 |
存储器 | 21 |
处理器 | 22 |
测试数据防篡改系统 | 300 |
获取模块 | 301 |
执行模块 | 302 |
数据块 | 4 |
如下具体实施方式将结合上述附图进一步说明本申请。
具体实施方式
为了能够更清楚地理解本申请的上述目的、特征和优点,下面结合附图和具体实施例对本申请进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
图1是本申请较佳实施例提供的测试数据防篡改方法的应用环境图。
在本实施例中,测试数据防篡改方法应用于通过网络1互相之间通讯连接的N个计算机装置2所构成的环境中。所述N为正整数。本实施例的图1中示出了四个计算机装置为例。在一个实施例中,所述计算机装置2可以为个人电脑、服务器、工控机、单片机等设备。
本实施例中,所述N个计算机装置2可以为工厂端对被测设备3例如手机进行测试的设备(也可以称为工站电脑)。该N个计算机装置2分别负责对被测设备3执行不同的测试。也即所述N的数值根据所述被测设备3所需执行的测试来确定。
本实施例中,所述被测设备3可以为手机、平板电脑、主机、耳机、显示屏或者其他任何适用于本申请的需要进行测试的设备。
以所述被测设备3为手机,图1中所示的四个计算机装置2为例,该四个计算机装置2从左到右可以分别对所述被测设备3的第一物料(例如CPU)、第二物料(例如硬盘)、第三物料(例如主板)、第四物料(例如电池)进行测试,获得测试数据。本实施例中,每个计算机装置2所获得的测试数据包括,但不限于,所述被测设备3的物料的序列号、该物料的测试数值以及测试结果(即是否通过测试)。
本实施例中,每个计算机装置2包括数据池21。所述数据池21可以为所述计算机装置2的缓存。在本实施例中,所述N个计算机装置2分别包括的所述数据池21的存储空间大小相同。
本实施例中,每个计算机装置2可以对所获得的测试数据进行处理,例如对所获得的测试数据进行哈希运算获得测试数据对应的哈希值,并将所获得的哈希值存储到所述数据池21中。本实施例中,所述N个计算机装置2互相之间还可以进行数据备份,例如每个计算机装置2可以对其他每个计算机装置2所获得的测试数据进行备份。该每个计算机装置2所备份的其他每个计算机装置2所获得的测试数据可以为该其他每个计算机装置2处理过的数据,例如进行哈希运算后所获得的数据。具体细节参后面的介绍。
需要说明的是,所述N个计算机装置2作为网络1中的对等节点,均具备获取测试数据、广播数据、同步数据以及存储数据的功能。具体细节参后面的介绍。
参阅图2所示,为本申请较佳实施例提供的测试数据防篡改方法的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
以下以所述测试数据防篡改方法应用在所述N个计算机装置2中的任意一个计算机装置2为例进行说明。也即下述流程步骤适用于所述N个计算机装置2。
步骤S1、所述任意一个计算机装置2获取测试数据。
具体地,所述任意一个计算机装置2可以根据预先设定的脚本对被测设备3进行测试,获取测试数据。该预先设定的脚本可以是指对被测设备3的某种物料例如电池进行测试所设定的测试脚本。所述测试数据包括,但不限于,被测设备3的物料的序列号、该被测设备3的所述物料的测试数值以及测试结果。以所述物料为电池为例,所述被测设备3的所述物料的测试数值包括特定测试条件下电池的电量、电压、电流值等。该电池的测试结果分为通过测试或者测试失败。
步骤S2、所述任意一个计算机装置2基于预设的算法处理所述测试数据,获得处理后的数据。
本实施例中,所述预设的算法可以为哈希算法。所述任意一个计算机装置2基于哈希算法将所述测试数据转换成信息摘要,将所获得的信息摘要作为所述处理后的数据。
需要说明的是,利用哈希算法可将任意目标文本转换成具有相同长度的、不可逆的Hash值,具有较强的抗碰撞性。通过Hash算法处理,可将大量的测试数据转换成一串长度较短的信息摘要,该过程难以找出逆向规律,提升数据的安全性。
本实施例中,所述任意一个计算机装置2还将所述处理后的数据存储到所述任意一个计算机装置2的数据池21内。
步骤S3、所述任意一个计算机装置2对所述处理后的数据进行数字签名,获得第一签名相关参数。
本实施例中,所述任意一个计算机装置2可以利用椭圆曲线数字签名算法对所述处理后的数据进行数字签名,获得所述第一签名相关参数。
具体地,所述对所述处理后的数据进行数字签名,获得第一签名相关参数包括:
1)选取椭圆曲线E(a,b)上的一个基点G,其中,该基点G的坐标为(x0,y0),G的阶数为n;
2)随机选取整数k,其中,k∈[1,n-1],计算P=kG;设置k为私钥,以及设置P为公钥。
3)随机选取整数k1,其中,k1∈[1,n-1];计算k1G=(x1,y1),其中,x1=k1*x0;y1=k1*y0;
4)计算r=x1modn;
5)判断r是否等于0;若r=0,返回步骤3),重新选择整数k1;若r≠0,执行步骤6);
6)计算s=k-1(H(m)+kr)modn;其中,H(·)为哈希函数,m表示所述处理后的数据;
7)判断s是否等于0;若s=0,返回步骤3),重新选择整数k1;若s≠0,执行步骤8);
8)生成签名为(r,s);及
9)将所述签名(r,s)、公钥P以及椭圆曲线E(a,b)的相关参数(例如所述基点G的坐标及阶数n等)作为所述第一签名相关参数。
步骤S4、所述任意一个计算机装置2通过所述网络1向其他N-1个计算机装置2广播所述处理后的数据以及所述第一签名相关参数。
所述其他N-1个计算机装置也即是指所述N个计算机装置中,除所述任意一个计算机装置2之外的其他所有计算机装置2。本实施例中,所述其他N-1个计算机装置2分别基于所述第一签名相关参数验证所述处理后的数据;及当确定所述处理后的数据为有效数据时,所述其他N-1个计算机装置2分别存储所述处理后的数据,即当所述N-1个计算机装置2确定所述处理后的数据为有效数据时,所述N-1个计算机装置2将所述处理后的数据存储到该N-1个计算机装置2分别包括的数据池21中。由此可知,所述其他N-1个计算机装置2也对所述任意一个计算机装置2的测试数据进行了备份。在本实施例中,当所述N-1个计算机装置2确定所述处理后的数据为无效数据时,则不对所述处理后的数据进行存储。其中,关于有效数据和无效数据的介绍后面将会举例说明。
举例而言,假设计算机装置A向计算机装置B和C广播的所述处理后的数据和所述第一签名相关参数。所述计算机装置B根据所述第一签名相关参数对所述处理后的数据进行签名验证;当所述计算机装置B确定所述处理后的数据为有效数据,则所述计算机装置B将所述处理后的数据存储到该计算机装置B的数据池中,由此所述计算机装置B也对所述任意一个计算机装置2的测试数据进行了备份;当所述计算机装置B确定所述处理后的数据为无效数据时,则丢弃所述处理后的数据即不存储该处理后的数据。同样地,所述计算机装置C根据所述第一签名相关参数对所述处理后的数据进行签名验证;当所述计算机装置C确定所述处理后的数据为有效数据,则所述计算机装置C将所述处理后的数据存储到该计算机装置C的数据池中,由此所述计算机装置C也对所述任意一个计算机装置2的测试数据进行了备份;当所述计算机装置C确定所述处理后的数据为无效数据时,则丢弃所述处理后的数据即不存储该处理后的数据。
以所述任意一个计算机装置2利用所述椭圆曲线数字签名算法对所述处理后的数据进行数字签名为例,本实施例中,所述其他N-1个计算机装置2分别基于所述第一签名相关参数验证所述处理后的数据的操作包括10)-14):
10)验证签名r和s是否都为整数且都属于[1,n-1];若r和s都为整数且都属于[1,n-1],则执行步骤11);若r和s中任意一者不为整数,及/或r和s中的任意一者不属于[1,n-1],则确定签名验证失败,所述处理后的数据为无效数据;
11)计算w=s-1modn;
12)计算u1=H(m)wmodn,u2=rwmodn;如前面所述,H(·)为哈希函数,m表示所述处理后的数据;
13)计算X=u1G+u2P;若X≠0,计算v=x1modn,并执行步骤14);若X=0,则确定签名验证失败,所述处理后的数据为无效数据;
14)判断v是否等于r;若v=r,确定签名验证成功,所述处理后的数据为有效数据;若v≠r,则确定签名验证失败,所述处理后的数据为无效数据。
需要说明的是,在其他实施例中,所述任意一个计算机装置2也可以利用其他数字签名方式(例如Rabin签名方式、DSA(Digital Signature Algorithm)签名方式或者其他任何数字签名方式)对所述处理后的数据进行数字签名处理。相应地,所述其他计算机装置2则用其他对应的签名验证方式来验证所述处理后的数据的有效性。即本申请并不对签名方式进行限定。在一个实施例中,所述任意一个计算机装置2还执行如下步骤S5-S8:
步骤S5、所述任意一个计算机装置2确定所述任意一个计算机装置2的数据池21是否存满数据。当该任意一个计算机装置2的数据池21存满数据时,执行步骤S6;当该任意一个计算机装置2的数据池21尚未存满数据时,回到步骤S1,继续测试下一个被测设备3。
需要说明的是由于所述任意一个计算机装置2也同时存储其他计算机装置2所述广播的有效测试数据,因此所述任意一个计算机装置2的数据池21所存储的数据既包括该任意一个计算机装置2测试被测设备3所获得的测试数据,还存储其他计算机装置2测试被测设备3所获得的测试数据。
步骤S6、所述任意一个计算机装置2将该任意一个计算机装置2的所述数据池21的所有数据打包为一个数据块。
在一个实施例中,所述将该任意一个计算机装置2的所述数据池21的所有数据打包为一个数据块包括:对所述数据池21中的每笔数据进行哈希运算获得所述数据池21中的每笔数据所对应的哈希值;对所述数据池21中的所有数据所对应的哈希值进行哈希运算获得所述数据池21所对应的最终哈希值;对前一个数据块的所有数据进行哈希运算获得该前一个数据块的哈希值;将所述数据池中的每笔数据所对应的哈希值、所述数据池所对应的最终哈希值、所述前一个数据块的哈希值,以及当前的时间戳作为所述数据块的数据。也即打包后的所述数据块包括了所述数据池中的每笔数据所对应的哈希值、所述数据池所对应的最终哈希值、所述前一个数据块的哈希值,以及所述任意一个计算机装置2打包所述数据块的时间戳。
为清楚说明本申请,以所述任意一个计算机装置2为计算机装置A,该计算机装置A的数据池为A1存满数据,该数据池A1的所有数据包括四笔数据,该四笔数据分别用Data_a到Data_d表示为例。需要说明的是,这里所提及到一笔数据可以是指一个计算机装置2对一个被测设备3进行测试所获得的测试数据。参阅图3所示,所述计算机装置A所打包的数据块4则存储了对所述计算机装置A的所述数据池A1进行多层Hash(哈希)运算的过程数据、前一个数据块的Hash值、打包数据块4的时间戳等信息。如图3所示,前一个数据块的Hash值可保证本数据块4与前一数据块的可靠链接;时间戳则记录了数据块4的打包时间;多层Hash运算的过程数据确保了存储信息的唯一性。该多层Hash运算的过程数据包括了对所述四笔数据即Data_a到Data_d分别进行哈希运算所得到的Hash值H_a到H_d,以及对Hash值H_a到H_d相加后再进行Hash运算所得到的最终Hash值H_abcd。即该多层Hash运算的过程的所有数据都存储在数据块4中。
步骤S7、所述任意一个计算机装置2对所述数据块进行数字签名,获得第二签名相关参数。
需要说明的是,这里对所述数据块进行数字签名获得所述第二签名相关参数的方法步骤可以与前面所记载的获取所述第一签名相关参数的方法步骤相同。所不同之处在于,在步骤6)中,m所标示的是所述数据块的数据。类似地,所述第二签名相关参数则包括针对所述数据块所生成的签名(r,s)、公钥P以及椭圆曲线E(a,b)的相关参数。
步骤S8、所述任意一个计算机装置2向所述其他N-1个计算机装置2广播所述数据块以及所述第二签名相关参数。所述其他N-1个计算机装置2分别基于所述第二签名相关参数验证所述数据块;及当确定所述数据块为有效数据块时,所述其他N-1个计算机装置2分别存储所述数据块。
本实施例中,当所述其他N-1个计算机装置2确定所述数据块为有效数据块时,所述其他N-1个计算机装置2分别将所述数据块存储到该其他N-1个计算机装置2的存储器中。在一个实施例中,所述其他N-1个计算机装置2还分别从所述数据块获取所述数据块所包括的前一个数据块的哈希值,将所获得的该前一个数据块的哈希值作为一个指针,指向该其他计算机装置2的存储器所存储的该前一个数据块。所述其他N-1个计算机装置2还分别将各自数据池21中的数据清除。
在一个实施例中,所述任意一个计算机装置2还将打包后的所述数据块存储到该任意一个计算机装置2的存储器(例如图5所示的存储器21)中。在一个实施例中,所述任意一个计算机装置2还将所述数据块所包括的前一个数据块的哈希值作为一个指针,指向该任意一个计算机装置2的所述存储器所存储的前一个数据块。在一个实施例中,所述任意一个计算机装置2还将该任意一个计算机装置2的数据池21中的所有数据进行清空。
举例而言,假设计算机装置A向计算机装置B和C广播了所打包的数据块4和第二签名相关参数。当计算机装置B根据所述第二签名相关参数验证所述数据块4为有效数据块时,所述计算机装置B将所述数据块4存储到该计算机装置B的存储器中。所述计算机装置B还将所述数据块4所包括的前一个数据块的哈希值作为一个指针,指向该计算机装置B的所述存储器所存储的前一个数据块。所述计算机装置B还将所述计算机装置B的数据池清空。类似地,当计算机装置C根据所述第二签名相关参数验证所述数据块4为有效数据块时,所述计算机装置C将所述数据块4存储到该计算机装置C的存储器中。所述计算机装置C还将所述数据块4所包括的前一个数据块的哈希值作为一个指针,指向该计算机装置C的所述存储器所存储的前一个数据块。所述计算机装置C还将所述计算机装置C的数据池清空。需要说明的是,以所述任意一个计算机装置2利用所述椭圆曲线数字签名算法对所述数据块进行数字签名为例,本实施例中,所述其他N-1个计算机装置2分别基于所述第二签名相关参数验证所述数据块的操作同于前面所记载的,基于所述第一签名相关参数验证所述处理后的数据的操作。不同点在于,在步骤12)中,m表示的是所述数据块的数据。
需要说明的是,计算机装置2处理完所述测试数据后,需要及时将处理后的数据广播给其他计算机装置2。若计算机装置2直接发送处理后的数据到其他计算机装置2,其他计算机装置2直接接收处理后的数据,则会存在着被监听和被篡改的风险。因此,本申请中,所有计算机装置2在发送和接收数据时,采用数字签名验证方法例如所述采用椭圆曲线数字签名算法(ECDSA)进行数字签名和验证签名的步骤,允许数据接收方确认数据来源的可靠性并防止信息被攻击者伪造,提高了数据发送的安全性。
另外还需要说明的是,本申请中,当前打包数据块时,计算机装置2会对前一个数据块所有数据进行Hash运算,得到的Hash值存储在当前打包的数据块中,该Hash值作为一个指针指向前一个数据块,使前后数据块形成了链接结构。若链中某个中间数据块数据被恶意篡改,则当前数据块的Hash值也会随之改变,因此将无法与后续数据块存储的前一数据块Hash值进行有效匹配,造成Hash链断裂。即本申请提供的链接数据块结构增加了伪造数据的难度,实现了对被测设备的物料的测试数据的安全存储,防止测试数据被篡改的目的。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
参阅图4所示,是本申请较佳实施例提供的测试数据防篡改系统的模块图。参阅图5所示,是本申请较佳实施例提供的计算机装置的框架图。在一些实施例中,所述测试数据防篡改系统300运行于计算机装置2中。所述测试数据防篡改系统300可以包括多个由程序代码段所组成的功能模块。所述测试数据防篡改系统300中的各个程序段的程序代码可以存储于计算机装置2的存储器21中,并由至少一个处理器22所执行,以实现测试数据防篡改功能(详见图2描述)。
本实施例中,所述测试数据防篡改系统300根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:获取模块301、执行模块302。本申请所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
具体地,任意一个计算机装置2执行所述获取模块301获取所述任意一个计算机装置2的测试数据;该任意一个计算机装置2执行所述执行模块302实现基于预设的算法处理所述测试数据,获得处理后的数据;该任意一个计算机装置2执行所述执行模块302实现对所述处理后的数据进行数字签名,获得第一签名相关参数;该任意一个计算机装置2执行所述执行模块302实现向其他N-1个计算机装置2广播所述处理后的数据以及所述第一签名相关参数,使得所述其他N-1个计算机装置2分别基于所述第一签名相关参数验证所述处理后的数据;及当确定所述处理后的数据为有效数据时,所述其他N-1个计算机装置2分别存储所述处理后的数据。
请再参阅图5所示,在本申请较佳实施例中,所述计算机装置2包括存储器21、至少一个处理器22。本领域技术人员应该了解,图5示出的计算机装置的结构并不构成本申请实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机装置2还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。所述计算机装置2可以为个人电脑、手机、工控机、单片机等设备。
在一些实施例中,所述计算机装置2包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述计算机装置2仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器21用于存储程序代码和各种数据,例如安装在所述计算机装置2中的测试数据防篡改系统300,并在计算机装置2的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器21包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器22可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器22是所述计算机装置2的控制核心(Control Unit),利用各种接口和线路连接整个计算机装置2的各个部件,通过运行或执行存储在所述存储器21内的程序或者模块,以及调用存储在所述存储器21内的数据,以执行计算机装置2的各种功能和处理数据,例如执行测试数据防篡改的功能。
尽管未示出,所述计算机装置2还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器22逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机装置2还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置或处理器(processor)执行本申请各个实施例所述方法的部分。
在进一步的实施例中,结合图5,所述至少一个处理器22可执行所述计算机装置2的操作装置以及安装的各类应用程序(如所述的测试数据防篡改系统300)、程序代码等,例如,上述的各个模块。
所述存储器21中存储有程序代码,且所述至少一个处理器22可调用所述存储器21中存储的程序代码以执行相关的功能。例如,图4中所述的各个模块是存储在所述存储器21中的程序代码,并由所述至少一个处理器22所执行,从而实现所述各个模块的功能以达到测试数据防篡改的目的。
在本申请的一个实施例中,所述存储器21存储一个或多个指令(即至少一个指令),所述至少一个指令被所述至少一个处理器22所执行以实现图2所示的测试数据防篡改的目的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。
Claims (10)
1.一种测试数据防篡改方法,应用在N个计算机装置中的任意一个计算机装置中,所述N为正整数,其特征在于,所述方法包括:
利用所述任意一个计算机装置获取测试数据;
利用所述任意一个计算机装置基于预设的算法处理所述测试数据,获得处理后的数据;
利用所述任意一个计算机装置对所述处理后的数据进行数字签名,获得第一签名相关参数;
利用所述任意一个计算机装置向其他N-1个计算机装置广播所述处理后的数据以及所述第一签名相关参数,使得所述其他N-1个计算机装置分别基于所述第一签名相关参数验证所述处理后的数据;及当确定所述处理后的数据为有效数据时,所述其他N-1个计算机装置分别存储所述处理后的数据。
2.如权利要求1所述的测试数据防篡改方法,其特征在于,该方法还包括:
利用所述任意一个计算机装置将所述处理后的数据存储到所述任意一个计算机装置的数据池内;
当所述任意一个计算机装置的该数据池存满数据时,利用所述任意一个计算机装置将所述数据池的所有数据打包为一个数据块;
利用所述任意一个计算机装置对所述数据块进行数字签名,获得第二签名相关参数;
利用所述任意一个计算机装置向所述其他N-1个计算机装置广播所述数据块以及所述第二签名相关参数,使得所述其他N-1个计算机装置分别基于所述第二签名相关参数验证所述数据块;及当确定所述数据块为有效数据块时,所述其他N-1个计算机装置分别存储所述数据块。
3.如权利要求2所述的测试数据防篡改方法,其特征在于,该方法中,所述任意一个计算机装置基于哈希算法将所述测试数据转换成信息摘要,将所获得的信息摘要作为所述处理后的数据。
4.如权利要求2所述的测试数据防篡改方法,其特征在于,该方法中,所述任意一个计算机装置利用椭圆曲线数字签名算法对所述处理后的数据进行数字签名,获得所述第一签名相关参数。
5.如权利要求2所述的测试数据防篡改方法,其特征在于,所述将所述数据池的所有数据打包为一个数据块包括:
对所述数据池中的每笔数据进行哈希运算获得所述数据池中的每笔数据所对应的哈希值;
对所述数据池中的所有数据所对应的哈希值进行哈希运算获得所述数据池所对应的最终哈希值;
对前一个数据块的所有数据进行哈希运算获得该前一个数据块的哈希值;
将所述数据池中的每笔数据所对应的哈希值、所述数据池所对应的最终哈希值、所述前一个数据块的哈希值,以及当前的时间戳作为所述数据块的数据。
6.如权利要求5所述的测试数据防篡改方法,其特征在于,所述存储所述数据块包括:
从所述数据块获取所述数据块所包括的前一个数据块的哈希值,将所获得的该前一个数据块的哈希值作为一个指针,指向所述前一个数据块。
7.如权利要求1所述的测试数据防篡改方法,其特征在于,所述任意一个计算机装置所获取的测试数包括:被测设备的物料的序列号、该被测设备的所述物料的测试数值以及测试结果。
8.如权利要求7所述的测试数据防篡改方法,其特征在于,所述N个计算机装置分别对所述被测设备执行不同的测试。
9.一种计算机装置,其特征在于,所述计算机装置包括存储器和处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令时实现如权利要求1至8中任意一项所述测试数据防篡改方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现如权利要求1至8中任意一项所述的测试数据防篡改方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110296930.6A CN115114080A (zh) | 2021-03-19 | 2021-03-19 | 测试数据防篡改方法、计算机装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110296930.6A CN115114080A (zh) | 2021-03-19 | 2021-03-19 | 测试数据防篡改方法、计算机装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115114080A true CN115114080A (zh) | 2022-09-27 |
Family
ID=83324155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110296930.6A Pending CN115114080A (zh) | 2021-03-19 | 2021-03-19 | 测试数据防篡改方法、计算机装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114080A (zh) |
-
2021
- 2021-03-19 CN CN202110296930.6A patent/CN115114080A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111163182B (zh) | 基于区块链的设备注册方法、装置、电子设备和存储介质 | |
CN110535639A (zh) | 基于多资产模型的区块链资产处理方法及相关设备 | |
CN110086780B (zh) | 基于以太坊的被篡改交易的处理方法、装置及存储介质 | |
CN112104627B (zh) | 基于区块链的数据传输方法、装置、电子设备及存储介质 | |
CN110222535B (zh) | 区块链配置文件的处理装置、方法及存储介质 | |
CN112015663A (zh) | 测试数据录制方法、装置、设备及介质 | |
CN112948851A (zh) | 用户认证方法、装置、服务器及存储介质 | |
CN111695097A (zh) | 登录检验方法、装置及计算机可读存储介质 | |
CN109145651B (zh) | 一种数据处理方法及装置 | |
CN110851188A (zh) | 一种基于双体架构的国产plc可信链实现装置及方法 | |
CN113055380A (zh) | 报文处理方法、装置、电子设备及介质 | |
CN113158207A (zh) | 基于区块链的报告生成方法、装置、电子设备及存储介质 | |
CN114416490A (zh) | 基于区块链的监控报警方法、装置、电子设备及存储介质 | |
CN113822675A (zh) | 基于区块链的报文处理方法、装置、设备及存储介质 | |
CN112713996B (zh) | 基于区块链的故障验证方法、服务器和终端 | |
CN112671603A (zh) | 故障检测方法和服务器 | |
CN115114080A (zh) | 测试数据防篡改方法、计算机装置及存储介质 | |
CN114697132B (zh) | 重复访问请求攻击拦截方法、装置、设备及存储介质 | |
CN115687384A (zh) | Uuid标识生成方法、装置、设备及存储介质 | |
CN114826725B (zh) | 数据交互方法、装置、设备及存储介质 | |
CN108763053B (zh) | 埋点名称的生成方法及终端设备 | |
CN109117625B (zh) | Ai软件系统安全状态的确定方法及装置 | |
CN115021995A (zh) | 多渠道登录方法、装置、设备及存储介质 | |
CN115130114A (zh) | 一种网关安全启动方法、装置、电子设备及存储介质 | |
CN112988888A (zh) | 密钥管理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |