掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法、装置、系统、设备及存储介质

文献发布时间:2023-06-19 18:35:48


数据处理方法、装置、系统、设备及存储介质

技术领域

本申请涉及区块链技术领域,尤其涉及一种数据处理方法、装置、系统、设备及存储介质。

背景技术

在区块链系统的性能评测过程中,评测方通常需要获取到区块链系统中的真实数据,以评测区块链系统的真实性能(例如吞吐量和延迟等)。

然而,区块链系统的运营方可能为了提高性能评测分值,向评测方提供虚假数据。并且,区块链系统中的真实数据往往包括有不便于提供给评测方的敏感数据(例如用户隐私数据等)。因此,如何在区块链系统的性能评测过程中,保证评测数据的真实性和安全性成为亟待解决的问题。

发明内容

本申请提供一种数据处理方法、装置、系统、设备及存储介质,以至少解决在区块链服务的性能评测过程中,难以保证评测数据的真实性和安全性的技术问题。本申请的技术方案如下:

根据本申请实施例的第一方面,提供一种数据处理方法,应用于管理节点;该数据处理方法包括:接收来自于用户节点的上链信息;上链信息包括业务数据和数据签名;数据签名用于表示业务数据和用户节点的关联关系;基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。

在一种可以实现的方式中,数据签名包括用户私钥、管理公钥和目标数据部分;目标数据部分为业务数据中被允许修改的数据部分;预设规则包括将预设类型数据替换为预设字符;基于预设规则和数据签名,对业务数据中的部分数据进行更新处理的方法,具体包括:确定用户私钥对应的用户公钥和管理公钥对应的管理私钥;基于用户公钥和管理私钥解析数据签名确定目标数据部分;将目标数据部分中的预设类型数据替换为预设字符。

在一种可以实现的方式中,上链信息还包括用于标识用户节点的目标节点标识;管理节点存储有多个节点标识和多个公钥的对应关系,以及管理公钥和管理私钥的对应关系;确定用户私钥对应的用户公钥和管理公钥对应的管理私钥的方法,具体包括:将与目标节点标识对应的公钥确定为用户公钥,并读取与管理公钥对应的管理私钥。

在一种可以实现的方式中,基于预设规则和数据签名,对业务数据中的部分数据进行更新处理之后,还包括:向评测设备发送更新处理后的数据和数据签名,以使得评测设备基于数据签名验证更新处理后的数据与用户节点的关联关系后基于更新处理后的数据进行评测。

根据本申请实施例的第二方面,提供一种数据处理方法,应用于用户节点;数据处理方法包括:响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名;数据签名用于表示业务数据和用户节点的关联关系;向管理节点发送携带有业务数据和数据签名的上链信息,以使得管理节点基于数据签名更新业务数据中的部分数据。

在一种可以实现的方式中,确定业务数据对应的数据签名的方法,具体包括:基于业务数据、用户私钥、管理公钥和目标数据部分,生成数据签名;目标数据部分为业务数据中被允许修改的数据部分。

在一种可以实现的方式中,该数据处理方法,还包括:响应于用户执行的编辑操作,确定目标数据部分。

在一种可以实现的方式中,该数据处理方法,还包括:将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名;基于业务数据、数据签名、多个部分、多个签名、用户私钥和管理公钥,生成数据证明;数据证明用于表示业务数据为用户节点生成的。

根据本申请实施例的第三方面,提供一种数据处理装置,应用于管理节点;数据处理装置包括:接收单元和处理单元;

接收单元,用于接收来自于用户节点的上链信息;上链信息包括业务数据和数据签名;数据签名用于表示业务数据和用户节点的关联关系;

处理单元,用于基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。

在一种可以实现的方式中,数据签名包括用户私钥、管理公钥和目标数据部分;目标数据部分为业务数据中被允许修改的数据部分;预设规则包括将预设类型数据替换为预设字符;处理单元,具体用于:确定用户私钥对应的用户公钥和管理公钥对应的管理私钥;基于用户公钥和管理私钥解析数据签名确定目标数据部分;将目标数据部分中的预设类型数据替换为预设字符。

在一种可以实现的方式中,上链信息还包括用于标识用户节点的目标节点标识;管理节点存储有多个节点标识和多个公钥的对应关系,以及管理公钥和管理私钥的对应关系;处理单元,具体用于:将与目标节点标识对应的公钥确定为用户公钥,并读取与管理公钥对应的管理私钥。

在一种可以实现的方式中,该数据处理装置,还包括:发送单元;发送单元,用于向评测设备发送更新处理后的数据和数据签名,以使得评测设备基于数据签名验证更新处理后的数据与用户节点的关联关系后基于更新处理后的数据进行评测。

根据本申请实施例的第四方面,提供一种数据处理装置,应用于用户节点;数据处理装置包括:确定单元和发送单元;

确定单元,用于响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名;数据签名用于表示业务数据和用户节点的关联关系;

发送单元,用于向管理节点发送携带有业务数据和数据签名的上链信息,以使得管理节点基于数据签名更新业务数据中的部分数据。

在一种可以实现的方式中,确定单元,具体用于:基于业务数据、用户私钥、管理公钥和目标数据部分,生成数据签名;目标数据部分为业务数据中被允许修改的数据部分。

在一种可以实现的方式中,确定单元,还用于响应于用户执行的编辑操作,确定目标数据部分。

在一种可以实现的方式中,该数据处理装置,还包括:生成单元;确定单元,还用于将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名;生成单元,用于基于业务数据、数据签名、多个部分、多个签名、用户私钥和管理公钥,生成数据证明;数据证明用于表示业务数据为用户节点生成的。

根据本申请实施例的第五方面,提供一种数据处理系统,包括:管理节点和用户节点;

管理节点,用于执行如第一方面中任一项的数据处理方法;

用户节点,用于执行如第二方面中任一项的数据处理方法。

根据本申请实施例的第六方面,提供一种管理节点,管理节点包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现如第一方面中任一项的数据处理方法。

根据本申请实施例的第七方面,提供一种用户节点,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现如第二方面中任一项的数据处理方法。

根据本申请实施例的第八方面,提供一种计算机可读存储介质,计算机可读存储介质上存储有指令,当计算机可读存储介质中的指令由管理节点的处理器执行时,使得管理节点能够执行如第一方面中任一项的数据处理方法;或者,当计算机可读存储介质中的指令由用户节点的处理器执行时,使得用户节点能够执行如第二方面中任一项的数据处理方法。

根据本申请实施例的第九方面,提供一种计算机程序产品,包括计算机程序,计算机程序被管理节点执行时实现第一方面所述的数据处理方法;或者,计算机程序被用户节点执行时实现第二方面所述的数据处理方法。

本申请的实施例提供的第一方面的技术方案至少带来以下有益效果:

接收来自于用户节点的上链信息;上链信息包括业务数据和数据签名;数据签名用于表示业务数据和用户节点的关联关系;

本申请提供了一种数据处理方法,管理节点可以接收到来自于用户节点的上链信息。其中,上链信息包括业务数据,以及用于表示业务数据和用户节点的关联关系的数据签名。进一步地,管理节点可以基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。由于管理节点对业务数据中的部分数据(例如敏感数据)进行了更新处理,即修改了业务数据中的部分数据,因此,在将更新处理后的业务数据提供给评测方时,可以避免业务数据中的敏感数据泄露。并且,由于数据签名可以用于表示业务数据与用户节点的关联关系,因此,评测方可以基于数据签名确定更新处理后的业务数据的真实性。

这样一来,本申请中管理节点更新处理后的业务数据应用于区块链系统的性能评测时,可以在保证评测方基于真实数据对区块链系统进行性能评测的同时,避免区块链系统中的敏感数据(例如用户隐私数据等)泄露。因此,本申请可以解决在区块链系统的性能评测过程中,难以保证评测数据的真实性和安全性的技术问题。

需要说明的是,第二方面至第九方面中的任一种实现方式所带来的技术效果可参见第一方面中对应实现方式所带来的技术效果,此处不再赘述。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。

图1是本申请实施例示出的一种实施架构的示意图;

图2是本申请实施例示出的一种数据处理方法的流程图;

图3是本申请实施例示出的另一种数据处理方法的流程图;

图4是本申请实施例示出的另一种数据处理方法的流程图;

图5是本申请实施例示出的另一种数据处理方法的流程图;

图6是本申请实施例示出的另一种数据处理方法的流程图;

图7是本申请实施例示出的另一种数据处理方法的流程图;

图8是本申请实施例示出的另一种数据处理方法的流程图;

图9是本申请实施例示出的另一种数据处理方法的流程图;

图10是本申请实施例示出的一种区块链评测的流程示意图;

图11是本申请实施例示出的一种数据处理装置的框图;

图12是本申请实施例示出的另一种数据处理装置的框图;

图13是本申请实施例示出的一种电子设备的框图。

具体实施方式

为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在对本申请提供的数据处理方法进行详细介绍之前,先对本申请涉及的应用场景、实施环境进行简单介绍。

在区块链系统的性能评测过程中,评测方通常需要获取到区块链系统中的真实数据,以评测区块链系统的真实性能(例如吞吐量和延迟等)。

然而,区块链系统的运营方可能为了提高性能评测分值,向评测方提供虚假数据。并且,区块链系统中的真实数据往往包括有不便于提供给评测方的敏感数据(例如用户隐私数据等)。因此,如何在区块链系统的性能评测过程中,保证评测数据的真实性和安全性成为亟待解决的问题。

针对上述问题,本申请提供了一种数据处理方法,管理节点可以接收到来自于用户节点的上链信息。其中,上链信息包括业务数据,以及用于表示业务数据和用户节点的关联关系的数据签名。进一步地,管理节点可以基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。由于管理节点对业务数据中的部分数据(例如敏感数据)进行了更新处理,即修改了业务数据中的部分数据,因此,在将更新处理后的业务数据提供给评测方时,可以避免业务数据中的敏感数据泄露。并且,由于数据签名可以用于表示业务数据与用户节点的关联关系,因此,评测方可以基于数据签名确定更新处理后的业务数据的真实性。

这样一来,本申请中管理节点更新处理后的业务数据应用于区块链系统的性能评测时,可以在保证评测方基于真实数据对区块链系统进行性能评测的同时,避免区块链系统中的敏感数据(例如用户隐私数据等)泄露。因此,本申请可以解决在区块链系统的性能评测过程中,难以保证评测数据的真实性和安全性的技术问题。

图1为本申请的实施架构图。如图1所示,本申请实施例提供的数据处理系统100,可以包括管理节点101、多个用户节点102和评测设备103。管理节点101可以分别和多个用户节点102之间通信连接,也可以和评测设备103之间通信连接。

为了便于理解,本申请以管理节点101和一个用户节点102之间通信连接为例进行说明。应理解,各用户节点102可以具备相同的功能。

一种可能的方式中,管理节点101和多个用户节点102之间可以构成区块链系统,可以用于为医疗机构和银行机构等提供数据存储服务和数据查询服务等服务。该区块链系统可以视为一个点对点(peer to peer,P2P)的网络系统。进一步地,该区块链系统中部署的区块链可以是私有链,也可以是联盟链。私有链是指访问权限控制较为严格的区块链。联盟链,也称共同体区块链(consortium blockchains),是指其共识过程受到预选节点控制的区块链。在联盟链中,只针对存储有该联盟链的节点开放全部或部分功能,联盟链中的各个节点可以基于需要定制读写权限、查询权限等。

图1中的管理节点101可以是终端,也可以是服务器,或者是其他具备输入输出处理和数据处理等功能的电子设备。区块链系统的运营机构可以通过管理节点101管理区块链系统中的用户节点102。在需要由第三方(即评测方)对区块链系统进行性能评测时,管理节点101可以用于向评测设备103发送评测数据。

图1中的用户节点102可以是终端。多个用户节点102之间通过维护一个共同的区块链来保持通信。每一个用户节点102可以创造新的区块,并在新区块被创造后以广播的形式通知其他用户节点。相应的,其他用户节点会对这个区块进行验证。当区块链系统中的所有节点达成共识后,新区块就可以被添加到区块链上。

一种可能的方式中,用户节点102可以配置有输入模块和显示模块等功能模块。输入模块可以是鼠标和键盘等计算机外接输入设备,便于用户执行上链操作和信息编辑操作等操作。显示模块可以是液晶显示屏等设备,用于显示业务数据等数据。

图1中的评测设备103可以是终端,也可以是服务器,或者是其他用于对区块链系统进行性能评测的电子设备。评测设备103可以基于获取到的评测数据,评测管理节点101和多个用户节点102构成的区块链系统的吞吐量和延迟等性能。

一种可能的方式中,管理节点101和评测设备103是终端时,管理节点101、用户节点102和评测设备103可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等可以安装并使用APP的设备。并且,该终端还可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。本公开对终端的具体形态不作特殊限制。

一种可能的方式中,管理节点101和评测设备103是服务器时,可以是单独的一个服务器,或者,也可以是由多个服务器构成的服务器集群。部分实施方式中,服务器集群还可以是分布式集群。本公开对服务器的具体实现方式也不作限制。

为了便于理解,以下结合附图对本申请提供的数据处理方法进行具体介绍。

图2是根据一示例性实施例示出的一种数据处理方法的流程图,该数据处理方法应用于图1中的管理节点101。如图2所示,该数据处理方法包括:S201-S202。

S201、管理节点接收来自于用户节点的上链信息。

其中,上链信息包括业务数据和数据签名。数据签名用于表示业务数据和用户节点的关联关系。

一种可能的方式中,业务数据可以是用户通过用户节点创建,并需要发布至区块链的分布式数据库中的一笔数据。该业务数据可以是用户向区块链发布的一笔价值转移。例如,在数字货币区块链网络中,业务数据可以是用户在区块链中发起的一笔数字货币转账的数据。

一种可能的方式中,若用户节点和管理节点归属的区块链系统为运营方基于特定的业务需求搭建的,用于部署一些在线业务(比如,物流业务、租房业务、车辆调度业务、保险理赔业务、信用服务和医疗服务等)时,业务数据可以是用户节点在区块链中发布的一笔具有业务意图的业务消息或者业务请求。又如,该业务数据还可以是用户节点向区块链发送的、用以更改用户的账户状态的数据(如账户余额等)。

一种可能的方式中,数据签名可以是与该数据签名对应的用户节点对业务数据的背书,用于表示业务数据和用户节点的关联关系。

一种可能的示例中,预设区块链系统用于部署物流业务。则业务数据可以包括发货方用户A、收货方用户B、货物重量信息和货运价格信息。

一种可以实现的方式中,结合图1,用户需要向区块链上传业务数据时,可以通过用户节点配置的输入模块对业务数据执行上链操作(例如点击上传按钮)。响应于该上链操作,用户节点可以生成用于表示业务数据和用户节点的关联关系的数据签名,并在区块链系统中广播携带有业务数据和数据签名的上链信息。相应的,管理节点可以接收到用户节点广播的上链信息。

一种可以实现的方式中,用户节点可以基于业务数据、用户私钥、管理公钥和目标数据部分生成数据签名。例如,用户节点可以对业务数据、用户私钥、管理公钥和目标数据部分进行哈希运算,得到数据签名。其中,用户私钥可以是用户节点基于密钥生成算法生成的,且对应有用户公钥。管理公钥可以是管理节点基于密钥生成算法生成的,且对应有管理私钥。

一种可能的示例中,管理节点基于密钥生成算法生成管理公钥和管理私钥后,可以在区块链系统中广播管理公钥。基于此,用户节点可以接收到来自管理节点的管理公钥,并存储管理节点的管理公钥。

需要说明的是,目标数据部分可以是业务数据中被允许修改的数据部分,且可以由用户预先设置在用户节点中。进一步地,业务数据中的目标数据部分被修改后,并不会影响数据签名的有效性。即数据签名可以用于表示,修改目标数据部分后的业务数据与用户标识的关联关系。例如,基于变色龙哈希算法生成的数据签名,可以允许对被背书的数据进行修改。

一种可能的方式中,用户节点归属的区块链系统中的其他节点也可以接收到用户节点广播的上链信息,并基于用户公钥对上链信息进行验证。后续,当区块链系统中的所有节点达成共识后,上链信息可以包括在新区块中被添加到区块链上。

S202、管理节点基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。

一种可能的方式中,预设规则可以包括将预设类型数据替换为预设字符。并且,预设规则可以由工作人员预先设置在管理节点中。

一种可能的方式中,预设类型数据可以是需要在区块链中进行公开,但不便于在区块链系统以外的设备中进行公开或转发的数据,即需要对区块链系统外进行保密的敏感数据。例如,预设类型数据可以是业务数据中涉及到交易金额的数据,也可以是业务数据中涉及到用户银行账户的数据,还可以是业务数据中涉及到用户手机号码的数据等。本申请实施例对此不作限定。

一种可能的方式中,预设字符可以是下划线、横线和英文字母等。本申请实施例对此不作限定。

一种可以实现的方式中,管理节点在接收到来自于用户节点的上链信息后,可以解析上链信息确定到业务数据和数据签名。进一步地,管理节点可以基于数据签名确定业务数据和用户节点的关联关系,即业务数据为用户节点产生的真实数据。接着,管理节点可以基于用户公钥和管理私钥解析数据签名确定到目标数据部分,并基于预设规则对业务数据中的目标数据部分进行更新处理,得到更新处理后的业务数据,从而保证业务数据的安全性。

需要说明的是,在得到更新处理后的业务数据后,管理节点可以存储数据签名和更新处理后的业务数据的对应关系。并且,数据签名可以用于表示更新处理后的业务数据与用户节点的管理关系,以表明更新处理后的业务数据为用户节点产生的真实数据。

一种实施例中,结合图2,在上述S202中,即管理节点基于预设规则和数据签名,对业务数据中的部分数据进行更新处理时,如图3所示,本申请实施例提供一种可选地实现方式,包括S301-S303。

S301、管理节点确定用户私钥对应的用户公钥和管理公钥对应的管理私钥。

一种可能的方式中,上链信息还可以包括用于标识用户节点的目标节点标识。

需要说明的是,用户节点基于密钥生成算法生成用户公钥和用户私钥后,可以在区块链系统中广播用户公钥。基于此,管理节点可以接收到区块链系统中多个节点广播的公钥,并存储多个节点标识和多个公钥的对应关系。并且,管理节点基于密钥生成算法生成管理公钥和管理私钥,并存储管理公钥和管理私钥的对应关系。

一种可以实现的方式中,管理节点在接收到上链信息后,可以解析上链信息确定目标节点标识,并基于目标节点标识进一步确定到用户私钥对应的用户公钥。同时,管理节点可以读取预先存储的与管理公钥对应的管理私钥。

S302、管理节点基于用户公钥和管理私钥解析数据签名确定目标数据部分。

一种可以实现的方式中,管理节点在确定用户私钥对应的用户公钥和管理公钥对应的管理私钥后,可以基于用户公钥和管理私钥解析数据签名确定到目标数据部分。后续,管理节点可以进一步确定业务数据中的目标数据部分是否存在预设类型数据。

S303、管理节点将目标数据部分中的预设类型数据替换为预设字符。

一种可以实现的方式中,若管理节点确定业务数据中的目标数据部分存在预设类型数据,则表明需要将业务数据进行脱敏处理后,再提供给评测方。这种情况下,管理节点可以将目标数据部分中的预设类型数据替换为预设字符,得到更新处理后的业务数据。

一种可能的示例中,结合上述S201中的示例,目标数据部分可以是货物重量信息部分和货运价格信息部分。预设类型数据可以是货运价格类数据。这种情况下,管理节点可以将目标数据部分中货运价格信息部分涉及到的具体金额更改预设字符(例如*或者#等字符)。

一种实施例中,结合图3,在上述S301中,即管理节点确定用户私钥对应的用户公钥和管理公钥对应的管理私钥时,如图4所示,本申请实施例提供一种可选地实现方式,包括S401。

S401、管理节点将与目标节点标识对应的公钥确定为用户公钥,并读取与管理公钥对应的管理私钥。

一种可以实现的方式中,管理节点在接收到上链信息后,可以将目标节点标识在多个节点标识和多个公钥的对应关系中进行匹配,并将与目标节点标识对应的公钥确定为用户公钥。同时,管理节点可以读取预先存储的与管理公钥对应的管理私钥。

一种实施例中,结合图2,在上述S202之后,即管理节点基于预设规则和数据签名,对业务数据中的部分数据进行更新处理之后,如图5所示,本申请实施例提供的数据处理方法,还包括S501。

S501、管理节点向评测设备发送更新处理后的数据和数据签名,以使得评测设备基于数据签名验证更新处理后的数据与用户节点的关联关系后基于更新处理后的数据进行评测。

一种可以实现的方式中,在需要对用户节点和管理节点归属的区块链系统进行性能评测时,区块链系统的运营机构可以建立管理节点和评测设备之间的通信连接。基于此,管理节点可以在对业务数据中的部分数据进行更新处理后,实时地向评测设备发送更新处理后的数据和数据签名,以使得评测设备基于数据签名验证更新处理后的数据与用户节点的关联关系后基于更新处理后的数据进行评测。

需要说明的是,在同一时刻或者同一时间周期内,区块链系统中的多个节点均可以广播上链信息。相应的,管理节点可以实时地向评测设备发送多个节点对应的更新处理后的数据和数据签名。基于此,评测设备可以基于更新处理后的数据评测区块链系统的吞吐量。进一步地,更新处理后的数据还可以包括有上链信息的广播时刻和区块生成时刻等时间信息。基于此,评测设备可以进一步评测区块链系统生成新区块时的延迟。并且,评测方进行评测时,通常也不关注业务数据中预设类型数据的详细信息。因此,评测设备基于更新处理后的数据评测区块链系统时,依然可以得到区块链系统的真实性能数据。

一种可能的方式中,工作人员可以预先在评测设备中配置区块链系统中多个节点的公钥。例如,用户节点对应的用户公钥和管理节点对应的管理公钥。基于此,评测设备在接收到来自于管理节点的更新处理后的数据和数据签名后,可以基于用户公钥和管理公钥解析数据签名,以验证更新处理后的数据为用户节点产生的真实数据。

该数据处理方法还可以应用于图1中的用户节点设备102。如图6所示,该数据处理方法包括:S601-S602。

S601、用户节点响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名。

其中,数据签名用于表示业务数据和用户节点的关联关系。

一种可以实现的方式中,结合图1,用户需要向区块链上传业务数据时,可以通过用户节点配置的输入模块对业务数据执行上链操作(例如点击上传按钮)。响应于该上链操作,用户节点可以生成业务数据对应的数据签名,以表示业务数据和用户节点的关联关系。

一种可能的方式中,用户节点可以基于业务数据、用户私钥、管理公钥和目标数据部分生成数据签名。

S602、用户节点向管理节点发送携带有业务数据和数据签名的上链信息,以使得管理节点基于数据签名更新业务数据中的部分数据。

一种可以实现的方式中,在确定业务数据对应的数据签名后,用户节点可以在区块链系统中广播携带有业务数据和数据签名的上链信息。相应的,管理节点可以接收到用户节点广播的上链信息。

一种可能的方式中,管理节点可以预先存储有预设规则。进一步地,管理节点在接收到来自于用户节点的上链信息后,可以解析上链信息得到业务数据和数据签名。基于此,管理节点可以基于预设规则和数据签名更新业务数据中的部分数据。

一种实施例中,结合图6,在上述S601中,即用户节点响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名时,如图7所示,本申请实施例提供一种可选的实现方式,包括S701。

S701、用户节点基于业务数据、用户私钥、管理公钥和目标数据部分,生成数据签名。

其中,目标数据部分为业务数据中被允许修改的数据部分。

一种可能的方式中,用户节点可以对业务数据、用户私钥、管理公钥和目标数据部分进行哈希运算,得到数据签名。

一种实施例中,结合图6,在上述S601之前,即用户节点响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名之前,如图8所示,本申请实施例提供的数据处理方法,还包括S801。

S801、用户节点响应于用户执行的编辑操作,确定目标数据部分。

一种可以实现的方式中,结合图1,用户可以通过用户节点配置的输入模块执行编辑操作,以编辑业务数据中被允许修改的数据部分。响应于该上链操作,用户节点可以生成并存储目标数据部分。后续,在需要生成业务数据对应的数据签名时,用户节点可以将目标数据部分添加在数据签名中。

一种实施例中,如图9所示,本申请实施例提供的数据处理方法,还包括S901-S902。

S901、用户节点将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名。

一种可以实现的方式中,考虑到业务数据会被管理节点修改,为了更准确地限定业务数据的来源,避免用户和运营方可能产生的纠纷,用户节点可以将业务数据拆分为多个部分。接着,用户节点可以基于用户私钥和业务数据中的多个部分,分别生成与多个部分一一对应的多个签名,为业务数据中的各个部分进行背书。

S902、用户节点基于业务数据、数据签名、多个部分、多个签名、用户私钥和管理公钥,生成数据证明。

其中,数据证明用于表示业务数据为用户节点生成的。

一种可以实现的方式中,在将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名后,用户节点可以将多个部分和多个签名对应组成多个签名对,并进一步基于业务数据、数据签名、多个签名对、用户私钥和管理公钥,生成数据证明。

一种可能的方式中,当用户和运营方产生纠纷时,用户节点或者管理节点均可以利用用户公钥解析数据证明,以确定业务数据为用户节点产生的。

在一种实施例中,如图10所示,为本申请实施例提供的一种区块链评测的流程示意图。用户节点作为签名方,即产生业务数据的一方,可以基于密钥生成算法生成用户公钥和用户私钥,并在区块链系统中广播用户公钥,以使得管理节点存储用户节点对应的用户公钥。管理节点作为净化方,即对业务数据进行更新处理的一方,可以基于密钥生成算法生成管理公钥和管理私钥,并在区块链系统中广播管理公钥,以使得用户节点存储管理节点对应的管理公钥。进一步地,评测设备作为评测方,即对区块链系统进行性能评测的一方,可以接收到管理节点发送的多个节点(包括用户节点)对应的公钥,以及管理节点对应的管理公钥。

接着,用户节点可以响应于用户执行的上链操作,在区块链系统中广播携带有业务数据和数据签名的上链信息。例如,业务数据可以包括发货方:用户A、收货方:用户B、货物属性:苹果、货物价值:100元和货物重量:300公斤。数据签名中的目标数据部分可以包括货物属性部分、货物价值部分和货物重量部分。

接着,管理节点可以接收到来自用户节点的上链信息,并基于预设规则和数据签名,更新业务数据中的部分数据。例如,更新处理后的业务数据可以包括发货方:用户A、收货方:用户B、货物属性:苹果、货物价值:***元和货物重量:300公斤。即管理节点将预设数据类型(即货物价值部分)修改为了预设字符(即***)。

接着,管理节点可以向评测设备发送更新处理后的业务数据和数据签名,提交评测。相应的,评测设备可以接收到管理节点发送的更新处理后的业务数据和数据签名,并基于存储的多个公钥和验证算法,对更新处理后的业务数据和数据签名进行轮询验证。若验证成功,即确认数据签名可以由用户节点对应的用户公钥解析,则评测设备可以基于接收到的来自于管理节点的更新处理后的业务数据进行评测。若验证识别,即无法基于存储的多个公钥解析数据签名,则无法证实来源。这种情况下,评测设备不会基于接收到的来自于管理节点的更新处理后的业务数据进行评测,以避免虚假数据影响评测结果。

一种可能的方式中,用户节点还可以基于证明算法生成数据证明。具体而言,用户节点将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名,并进一步将业务数据、数据签名、多个部分、多个签名、用户私钥和管理公钥输入至证明算法中,生成数据证明。基于此,当用户和运营方产生纠纷时,用户节点或者管理节点均基于数据证明验证业务数据来源。例如,用户节点或者管理节点可以将业务数据、数据签名、用户公钥、管理公钥和数据证明输入至裁判算法中,以确定业务数据是由用户私钥背书的还是管理私钥背书的。

上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,数据处理装置或电子设备包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例可以根据上述方法,示例性的对管理节点或用户节点进行功能模块的划分,例如,管理节点或用户节点可以包括对应各个功能划分的各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

例如,本申请实施例还提供一种数据处理装置。

图11是根据一示例性实施例示出的一种数据处理装置框图。参照图11,该数据处理装置应用于管理节点;数据处理装置包括:接收单元1001和处理单元1002;

接收单元1001,用于接收来自于用户节点的上链信息;上链信息包括业务数据和数据签名;数据签名用于表示业务数据和用户节点的关联关系;

处理单元1002,用于基于预设规则和数据签名,对业务数据中的部分数据进行更新处理。

在一种可以实现的方式中,数据签名包括用户私钥、管理公钥和目标数据部分;目标数据部分为业务数据中被允许修改的数据部分;预设规则包括将预设类型数据替换为预设字符;处理单元1002,具体用于:确定用户私钥对应的用户公钥和管理公钥对应的管理私钥;基于用户公钥和管理私钥解析数据签名确定目标数据部分;将目标数据部分中的预设类型数据替换为预设字符。

在一种可以实现的方式中,上链信息还包括用于标识用户节点的目标节点标识;管理节点存储有多个节点标识和多个公钥的对应关系,以及管理公钥和管理私钥的对应关系;处理单元1002,具体用于:将与目标节点标识对应的公钥确定为用户公钥,并读取与管理公钥对应的管理私钥。

在一种可以实现的方式中,该数据处理装置,还包括:发送单元1003;发送单元1003,用于向评测设备发送更新处理后的数据和数据签名,以使得评测设备基于数据签名验证更新处理后的数据与用户节点的关联关系后基于更新处理后的数据进行评测。

图12是根据一示例性实施例示出的另一种数据处理装置框图。参照图12,该数据处理装置应用于用户节点;数据处理装置包括:确定单元1101和发送单元1102;

确定单元1101,用于响应于用户对业务数据执行的上链操作,确定业务数据对应的数据签名;数据签名用于表示业务数据和用户节点的关联关系;

发送单元1102,用于向管理节点发送携带有业务数据和数据签名的上链信息,以使得管理节点基于数据签名更新业务数据中的部分数据。

在一种可以实现的方式中,确定单元1101,具体用于:基于业务数据、用户私钥、管理公钥和目标数据部分,生成数据签名;目标数据部分为业务数据中被允许修改的数据部分。

在一种可以实现的方式中,确定单元1101,还用于响应于用户执行的编辑操作,确定目标数据部分。

在一种可以实现的方式中,该数据处理装置,还包括:生成单元1103;确定单元1101,还用于将业务数据拆分为多个部分,并确定与多个部分一一对应的多个签名;生成单元1103,用于基于业务数据、数据签名、多个部分、多个签名、用户私钥和管理公钥,生成数据证明;数据证明用于表示业务数据为用户节点生成的。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图13是根据一示例性实施例示出的一种电子设备的框图。该电子设备可以是上述管理节点,也可以是上述用户节点。

如图13所示,电子设备100包括但不限于:处理器110和存储器120。

其中,上述的存储器120,用于存储上述处理器110的可执行指令。可以理解的是,上述处理器110被配置为执行指令,以实现上述实施例中的数据处理方法。

需要说明的是,本领域技术人员可以理解,图13中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图13所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

处理器110是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器110可包括一个或多个处理单元;可选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。

存储器120可用于存储软件程序以及各种数据。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能模块所需的应用程序)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器120,上述指令可由电子设备100的处理器110执行以实现上述实施例中的数据处理方法。

可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存储存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

在示例性实施例中,本申请实施例还提供了一种包括一条或多条指令的计算机程序产品,该一条或多条指令可以由电子设备100的处理器110执行以完成上述实施例中的数据处理方法。

需要说明的是,上述计算机可读存储介质中的指令或计算机程序产品中的一条或多条指令被电子设备100的处理器110执行时实现上述数据处理方法实施例的各个过程,且能达到与上述数据处理方法相同的技术效果,为避免重复,这里不再赘述。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全分类部或者部分功能。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全分类部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对通用技术做出贡献的部分或者该技术方案的全分类部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全分类部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

技术分类

06120115628735