【技术实现步骤摘要】
一种块链式账本中的数据验证方法、系统、装置及设备
本说明书实施例涉及信息
,尤其涉及一种块链式账本中的数据验证方法、系统、装置及设备。
技术介绍
在中心化的数据库服务端以块链式账本存储数据时,用户经常会对服务端发起各种验证。而在进行验证时,基于用户的需求,有些验证需要在客户端完成,有些验证需要在服务端完成,而同时,用户在进行验证时的范围也常常不同。基于此,需要一种在块链式账本中可以灵活进行数据验证的方案。
技术实现思路
本申请实施例的目的是提供一种块链式账本中进行数据验证的方案。为解决上述技术问题,本申请实施例是这样实现的:一种块链式账本中的数据验证方法,应用于包括数据库服务端和客户端的系统中,所述数据库服务端以中心化的方式通过块链式账本存储数据,所述方法包括:客户端,发送包含验证方式参数和验证范围参数的指令至数据库服务端,其中,所述验证方式参数用于指示在数据库服务端进行验证,或者在客户端进行验证;所述验证范围参数包括块高或者哈希值,用于确定账本中待验证的数据块的范围或者数据记录;数据库服务端根据所述验证范围参数确定待验证数据,所述待验证数据包括数据记录、数据块、部分账本或者全量账本中的一种;当所述验证方式参数指示在数据库服务端进行验证时,数据库服务端验证所述待验证数据的完整性,并返回验证结果至客户端;当所述验证方式参数指示在客户端进行验证时,数据库服务端返回所述待验证数据至客户端,客户端验证所述待验证数据的完整性,生成验证结果。对应的,本说明书实施例还提供一种块链式账本中的数据验证系统,包括数据库服务端和客户端,所述数据库服务端以中心化的方式通过块链式 ...
【技术保护点】
1.一种块链式账本中的数据验证方法,应用于包括数据库服务端和客户端的系统中,所述数据库服务端以中心化的方式通过块链式账本存储数据,所述方法包括:客户端,发送包含验证方式参数和验证范围参数的指令至数据库服务端,其中,所述验证方式参数用于指示在数据库服务端进行验证,或者在客户端进行验证;所述验证范围参数包括块高或者哈希值,用于确定账本中待验证的数据块的范围或者数据记录;数据库服务端根据所述验证范围参数确定待验证数据,所述待验证数据包括数据记录、数据块、部分账本或者全量账本中的一种;当所述验证方式参数指示在数据库服务端进行验证时,数据库服务端验证所述待验证数据的完整性,并返回验证结果至客户端;当所述验证方式参数指示在客户端进行验证时,数据库服务端返回所述待验证数据至客户端,客户端验证所述待验证数据的完整性,生成验证结果。
【技术特征摘要】
1.一种块链式账本中的数据验证方法,应用于包括数据库服务端和客户端的系统中,所述数据库服务端以中心化的方式通过块链式账本存储数据,所述方法包括:客户端,发送包含验证方式参数和验证范围参数的指令至数据库服务端,其中,所述验证方式参数用于指示在数据库服务端进行验证,或者在客户端进行验证;所述验证范围参数包括块高或者哈希值,用于确定账本中待验证的数据块的范围或者数据记录;数据库服务端根据所述验证范围参数确定待验证数据,所述待验证数据包括数据记录、数据块、部分账本或者全量账本中的一种;当所述验证方式参数指示在数据库服务端进行验证时,数据库服务端验证所述待验证数据的完整性,并返回验证结果至客户端;当所述验证方式参数指示在客户端进行验证时,数据库服务端返回所述待验证数据至客户端,客户端验证所述待验证数据的完整性,生成验证结果。2.如权利要求1所述的方法,当所述验证范围参数为哈希值时,数据库服务端根据所述验证范围参数确定待验证数据,包括:数据库服务端查询获取哈希值所对应的数据记录,将所述数据记录和/或所述数据记录所处的数据块确定为待验证数据;或者,数据库服务端查询获取哈希值所对应的数据块,将所述数据块确定为待验证数据。3.如权利要求1所述的方法,当所述验证范围参数为块高时,数据库服务端根据所述验证范围参数确定待验证数据,包括:数据库服务端确定块高值所对应的数据块,将所述数据块确定为待验证数据;或者,数据库服务端确定两个块高构成的区间所对应的部分/全量账本,将所述部分/全量账本确定为待验证数据。4.如权利要求1所述的方法,当所述验证方式参数指示在客户端进行验证时,数据库服务端返回所述待验证数据至客户端,还包括:数据库服务端确定客户端对待验证数据进行验证时所需要的其它辅助验证数据,发送所述待验证数据和其它辅助验证数据至客户端。5.如权利要求1所述的方法,在所述在中心化的数据库服务端,数据块通过如下方式预先生成:接收待存储的数据记录,确定各数据记录的哈希值,其中,数据记录中包含指定标识字段;当达到预设的成块条件时,确定待写入数据块中的各数据记录,生成包含数据块的哈希值和数据记录的第N个数据块,具体包括:当N=1时,初始数据块的哈希值和块高基于预设方式给定;当N>1时,根据待写入数据块中的各数据记录和第N-1个数据块的哈希值确定第N个数据块的哈希值,生成包含第N个数据块的哈希值和各数据记录的第N个数据块,其中,数据块的块高基于成块时间的先后顺序单调递增。6.如权利要求5所述的方法,所述预设的成块条件包括:待存储的数据记录数量达到数量阈值;或者,距离上一次成块时刻的时间间隔达到时间阈值。7.一种块链式账本中的数据验证系统,包括数据库服务端和客户端,所述数据库服务端以中心化的方式通过块链式账本存储数据,在所述系统中,客户端,发送包含验证方式参数和验证范围参数的指令至数据库服务端,其中,所述验证方式参数用于指示在数据库服务端进行验证,或者在客户端进行验证;所述验证范围参数包括块高或者哈希值,用于确定账本中待验证的数据块的范围或者数据记录;数据库服务端,根据所述验证范围参数确定待验证数据,所述待验证数据包括数据记录、数据块、部分账本或者全量账本中的一种;当所述验证方式参数指示在数据库服务端进行验证时,数据库服务端验证所述待验证数据的完整性,并返回验证结果至客户端;当所述验证方式参数指示在客户端进行验证时,数据库服务端返回所述待验证数据至客户端,客户端验证所述待验证数据的完整性,生成验证结果。8.如权...
【专利技术属性】
技术研发人员:杨新颖,俞本权,李亿泽,张渊,卓海振,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。