一种区块链数据处理方法、装置、终端及存储介质与流程

文档序号:16248428发布日期:2018-12-11 23:47阅读:122来源:国知局
一种区块链数据处理方法、装置、终端及存储介质与流程

本发明实施例涉及区块链技术领域,尤其涉及一种区块链数据处理方法、装置、终端及存储介质。

背景技术

区块链技术,又称之为“分布式账本技术”,是一种去中心化的、不可篡改的以及可追溯的技术方案。区块链技术的本质是众多节点集体参与的分布式数据库系统。区块链基于其独特的区块产生与共识机制,如pow(proofofwork,工作量证明)、权益证明(proofofstake,pos)、委任权益证明(delegatedproofofstake,dpos)以及实用拜占庭容错算法(practicalbyzantinefaulttolerance,pbft)等,以及p2p(peer-to-peer,对等网络)通信机制来实现。

同时,移动通信设备近几年也得到飞速发展。我国居民日常生活的方方面面几乎都与移动通信设备息息相关。移动通信设备的硬件参数也随着科技进步快速升级,旗舰机或次旗舰机的计算能力与pc(personalcomputer,个人计算机)机的差距更是越来越小。随着4g网络的全面普及,5g网络的全面商用也在可预期的几年内得以完成。基于数据网络的日益成熟以及各运营商无限流量套餐的推行,移动通信设备均可以具备极其优秀的网络连接速度、相对比较优秀的数据计算能力以及充足的存储空间。

然而,发明人在实现本发明的过程中,发现现有技术存在如下缺陷:

目前的区块链并不完全适合当前的移动通信设备。由于区块链网络本身的膨胀非常快,账本及区块数据的体积所占用的容量要求相对于移动通信终端来说非常大,如目前的比特币为例,其体积已超过158g。因此,移动通信终端无法参与构建区块链网络。



技术实现要素:

本发明实施例提供一种区块链数据处理方法、装置、终端及存储介质,实现丰富区块链网络的功能。

第一方面,本发明实施例提供了一种区块链数据处理方法,包括:

第一移动终端对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容;

所述第一移动终端采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证;

所述第一移动终端当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

第二方面,本发明实施例还提供了一种区块链数据处理装置,配置于第一移动终端,包括:

原始区块获取模块,用于对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容;

待验证区块获取模块,用于采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证;

信息存储模块,用于当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

第三方面,本发明实施例还提供了一种终端,所述终端包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的区块链数据处理方法。

第四方面,本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的区块链数据处理方法。

本发明实施例通过第一移动终端对接收的事务请求进行处理,得到原始区块;然后采用设定处理规则对原始区块进行处理,得到待验证区块,并将待验证区块发送至区块链网络中的其他节点进行验证。第一移动终端当根据接收的各节点反馈的验证结果确定待验证区块通过共识时,将待验证区块的头部信息在本地进行存储,使得移动终端能够加入区块链并作为节点对区块数据进行处理,解决现有区块链技术无法将移动设备作为网络节点的问题,实现丰富区块链网络的功能。

附图说明

图1是本发明实施例一提供的一种区块链数据处理方法的流程图;

图2是本发明实施例二提供的一种区块链数据处理方法的流程图;

图3是本发明实施例三提供的一种区块链数据处理装置的示意图;

图4为本发明实施例四提供的一种终端的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。

另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

实施例一

图1是本发明实施例一提供的一种区块链数据处理方法的流程图,本实施例可适用于移动终端作为区块链网络节点处理事务请求的情况,该方法可以由区块链数据处理装置来执行,该装置可以由软件和/或硬件的方式来实现,并一般可集成在终端(典型的,智能手机和平板电脑等)中。相应的,如图1所示,该方法包括如下操作:

s110、第一移动终端对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容。

其中,第一移动终端可以是任意类型的移动终端设备,如智能手机、平板电脑或者其他的智能穿戴设备等。事务请求可以是区块链网络中的一段时间内发生的交易请求或其他待处理的请求。区块生成节点为区块链网络中具有区块处理权限的节点。原始区块为第一移动终端作为区块生成节点对事务请求进行处理得到的区块。设定共识机制可以是非挖矿的共识机制,如pbft(practicalbyzantinefaulttolerance,实用拜占庭容错算法)或raft算法等。设定存储内容可以是区块链中的部分区块数据。

在本发明实施例中,区块链网络中可以包括多个移动终端,移动终端可以在整个区块链网络内以轻量级节点的行形式存在,在移动终端内并不保存完整的账本或区块信息,而是存储所有区块的头信息以及由核心节点根据特定策略下发的符合特定需求的区块数据(比如涉及到某个地址的相关交易及区块等)。当第一移动终端通过设定共识机制选举为区块生成节点时,可以对当前时间段内所发生的事务请求根据采用的设定共识机制的要求与设定共识机制相关协议进行处理,并生成相应的原始区块。

在本发明的一个可选实施例中,所述智能合约规定的设定存储内容包括:按照预设地址信息获取的区块数据;或通过设定过滤条件对全部区块进行过滤得到的区块数据。

其中,预设地址信息可以是区块链网络中各个区块对应的地址信息,设定过滤条件可以是根据实际需求制定的过滤条件,如区块需要同时符合a条件和b条件。

在本发明实施例中,区块链网络中的移动终端除了可以存储所有区块的头部信息,还可以根据智能合约的规定存储设定存储内容。例如,移动终端可以按照区块地址信息对区块链网络中的区块进行离散存储。或者,移动终端采用设定的过滤条件对区块链网络中的全部区块进行过滤,以筛选出符合条件的区块数据并进行存储。

s120、所述第一移动终端采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证。

其中,设定处理规则可以是根据实际需求对原始区块进行处理所制定的规则,如对原始区块进行加密等。

在本发明实施例中,第一移动终端可以根据预先制定的设定处理规则对生成的原始区块进行进一步处理,然后将处理得到的区块作为待验证区块,并将待验证区块发送至区块链网络中,以使其他节点对接收的待验证区块进行验证。其中,第一移动终端可以采用广播或组播的方式对待验证区块进行传输。

s130、所述第一移动终端当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

其中,验证结果可以是区块链网络中各节点针对待验证区块进行验证所得到的结果。

相应的,当第一移动终端接收到各节点反馈的验证结果后,可以根据各验证结果判断待验证区块是否通过共识。如果第一移动终端确定待验证区块通过共识,则将待验证区块的头部信息在本地进行存储。其中,本地存储的方式包括但不限于本地数据库、文本文件以及缓存等。否则,第一移动终端确定待验证区块没有通过共识,则第一移动终端可以删除待验证区块,并将待验证区块未通过共识的响应发送至区块链网络中,以使其他节点删除待验证区块。

本发明实施例通过第一移动终端对接收的事务请求进行处理,得到原始区块;然后采用设定处理规则对原始区块进行处理,得到待验证区块,并将待验证区块发送至区块链网络中的其他节点进行验证。第一移动终端当根据接收的各节点反馈的验证结果确定待验证区块通过共识时,将待验证区块的头部信息在本地进行存储,使得移动终端能够加入区块链并作为节点对区块数据进行处理,解决现有区块链技术无法将移动设备作为网络节点的问题,实现丰富区块链网络的功能。

实施例二

图2是本发明实施例二提供的一种区块链数据处理方法的流程图,本实施例以上述实施例为基础进行具体化,在本实施例中,给出了第一移动终端采用设定处理规则对原始区块进行处理以及第一移动终端根据接收的各节点反馈的验证结果确定待验证区块通过共识的具体实现方式,同时还介绍了第一终端设备在处理得到原始区块之前的准备工作。相应的,如图2所示,本实施例的方法可以包括:

s210、第一移动终端对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容。

在本发明的一个可选实施例中,在所述第一移动终端对接收的事务请求进行处理,得到原始区块之前,还可以包括:所述移动终端在初始启动时根据初始化的创世区块的哈希值以及所述核心节点的地址和端口信息获取所有区块的头部信息;其中,所述创世区块由所述核心节点产生;所述移动终端在初始启动时检查本地公钥和私钥的合法性。

在本发明实施例中,整个区块链网络中可以存在若干核心节点,可选的,核心节点的数量可以是4个。核心节点可以是现有区块链网络中的普通节点设备,如服务器或超级计算机等硬件设备,具有强大的计算能力和存储能力。整个区块链网络的完整区块记录仅在核心节点之间存在,同时,核心节点还可以运行一个智能合约来管理移动通信终端在区块链网络内的行为。核心节点可以负责产生创世区块,并在由核心节点初始化的区块链网络内达成共识。创世区块的hash(哈希)值以及部分核心节点的地址与端口信息可以配置入区块链网络中各移动终端的sdk(softwaredevelopmentkit,软件开发工具包)或app(application,应用程序)内。默认情况下sdk或app在移动终端内可以以后台服务的方式静默运行。每个移动终端在初始启动时根据初始化的创世区块hash以及核心节点的地址与端口完成所有区块头信息的获取。且每个移动通信终端在初始启动时即需要检查本地公私钥的合法性,如需要初始化秘钥信息,可以调用核心节点的智能合约来完成秘钥产生时的初始化参数并在本地产生秘钥信息。各移动终端之间以及移动终端与核心节点之间可以采用p2p(peertopeer,对等网络)的方式进行组网。

在本发明的一个可选实施例中,在所述第一移动终端对接收的事务请求进行处理,得到原始区块之前,还可以包括:所述第一移动终端当接收到所述事务请求时,根据本地存储的区块的头部信息对所述事务请求进行合法性确认;如果所述第一移动终端确定本地不存在所述事务请求,则向区块链网络发送询问事务请求的信息以对所述事务请求进行合法性确认。

其中,合法性确认可以是第一移动终端对接收到的事务请求是否合法进行确认。询问事务请求的信息可以是对事务请求进行合法性确认的消息。

在本发明实施例中,当第一移动终端在收到事务请求的广播信息后,需要根据本地存储的区块头信息对事务请求进行追溯。如果本地不存在该事务请求,则需要向区块链网络广播询问事务请求的信息,直到追溯到创世区块完成对该事务请求的合法性确认。

s220、所述第一移动终端采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证。

具体的,s220可以细化为s221和s222-s223两个并列方案:

s221、所述第一移动终端采用设定加密算法对所述原始区块进行加密得到第一待验证区块,并将所述第一待验证区块作为待验证区块。

其中,设定加密算法可以是ecdsa(ellipticcurvedigitalsignaturealgorithm,椭圆曲线数字签名算法)。当然,设定加密算法还可以是其他类型的加密算法,如dsa(digitalsignaturealgorithm,数字信号算法)或rsa(rivestshamiradlemen,因特网加密和认证体系)等。本发明实施例并不对设定加密算法的具体类型进行限定。第一待验证区块可以是原始区块只经过一次加密处理的区块。

在本发明实施例中,第一移动终端可以对产生的原始区块进行数据签名后,如采用ecdsa算法进行数字签名,将得到的第一待验证区块作为待验证区块,并将第一待验证区块在区块链网络中采用广播或组播的方式传输。

s222、所述第一移动终端采用所述设定加密算法对所述原始区块进行加密得到所述第一待验证区块,并将所述第一待验证区块发送至区块链网络中的任一核心节点;所述第一待验证区块用于指示所述核心节点生成与所述第一待验证区块对应的第二待验证区块发送至所述区块链网络中的节点进行验证。

s223、所述第一移动终端将所述第二待验证区块作为所述待验证区块。

其中,第二待验证区块可以是对第一待验证区块进一步进行加密处理后得到的区块。

相应的,在本发明实施例中,还可以将第一移动终端采用设定加密算法对原始区块加密产生的第一待验证区块,发送给区块链网络中的其中一个核心节点对其进行第二次加密。核心节点对第一待验证区块进行加密时,可以采用与第一移动终端对原始区块加密时相同的设定加密算法。核心节点生成第二待验证区块后,可以将第二待验证区块作为待验证区块并进行p2p组网广播。

本发明实施例通过核心节点对第一待验证区块进行进一步加密能够有效提高区块数据的安全性和权威性。

需要说明的是,图2仅是一种实现方式的示意图,s221和s222-s223之间并没有先后顺序关系,可以先实施s221,再实施s222-s223,也可以先实施s222-s223,再实施s221。

s230、所述第一移动终端接收所述节点针对所述待验证区块反馈的验证结果。

其中,验证结果可以包括通过验证和未通过验证。

相应的,当区块链网络中的各节点,包括移动终端和核心节点,接收到待验证区块后,可以对待验证区块进行解析,并利用设定加密算法对应的公钥对区块的签名进行验证,若验证通过,则对待验证区块中的信息继续进行验证。当节点对待验证区块中的信息,包括区块头和存储信息,验证无误时,确认该待验证区块通过验证。同理,当节点对待验证区块中的信息,包括区块头和存储信息,验证存在错误时,确认该待验证区块未通过验证。需要说明的是,第一移动终端也可以对待验证区块进行验证,各节点得到相应的验证结果后,将验证结果反馈给第一移动终端。

s240、当所述第一移动终端确定所述验证结果中验证通过的比例超过设定阈值时,确认所述待验证区块通过共识。

其中,设定阈值可以根据采用的设定共识机制进行适应性设置,如当设定共识机制采用raft的共识算法时,设定阈值可以是(f+1)/(2f+1),其中,f为失效节点。

在本发明实施例中,当第一移动终端根据接收到的验证结果确定的验证通过的比例超过设定阈值时,则可以认为待验证区块通过共识。需要说明的是,由于核心节点数量较少,因此在计算验证通过的比例时,可以忽略核心节点所反馈的验证结果。

s250、所述第一移动终端将共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述节点对所述待验证区块进行处理。

相应的,当第一移动终端确定待验证区块通过共识后,将共识通过响应发送至区块链网络中。当然,如果第一移动终端根据接收的各节点反馈的验证结果确定待验证区块未通过共识,也可以将共识未通过响应送至区块链网络中。当区块链网络中的各节点接收到共识通过响应时,各节点可以对待验证区块进行针对性处理。当区块链网络中的各节点接收到共识未通过响应时,可以直接删除待验证区块,并继续参与共识过程。

其中,所述节点可以具体包括第二移动终端和核心节点,相应的,s250可以进一步细化为s251以及s252这两个并列步骤。

s251、所述第一移动终端将所述共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述第二移动终端接将所述待验证区块的头部信息在本地进行存储。

其中,第二移动终端可以是参与共识的其他移动终端。需要说明的是,在有移动终端参与共识的区块链网络中,网络建立初期时的区块需要由核心节点来完成。当区块链网络正式运作起后,只需要各移动终端参与共识来竞选区块生成节点并负责产生区块数据。当移动终端处理能力不足时,可以允许核心节点参与共识。

在本发明实施例中,考虑到移动终端已经具备极其优秀的网络连接速度、相对比较优秀的数据计算能力以及充足的存储空间,同时考虑到区块链网络本身较快的膨胀速度以及较高的区块数据的容量要求,针对区块链网络中的移动终端和核心节点采用不同的区块数据处理方式。

相应的,为了降低移动终端存储空间的占用率,如果第二移动终端接收到共识通过响应,则可以只将待验证区块的头部信息在本地进行存储。同理,第一移动终端在确定待验证区块通过共识时,可以直接将待验证区块的头部信息在本地进行存储。

s252、所述第一移动终端将所述共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述核心节点将所述待验证区块在本地进行存储。

相应的,由于核心节点具备足够的存储空间,因此,核心节点接收到共识通过相应后,可以直接将完成的待验证区块在本地进行存储,以完成正常的上链操作。

需要说明的是,图2仅是一种实现方式的示意图,s251和s252之间并没有先后顺序关系,可以先实施s251,再实施s252,也可以先实施s252,再实施s251,还可以同时实施s251和s252,本发明实施例对此并不进行限制。

采用上述技术方案,作为区块生成节点的移动终端可以采用两种不同的加密方式产生待验证区块。同时,移动终端和核心节点对通过共识的待验证区块进行针对性的处理,使得移动终端能够加入区块链并作为节点对区块数据进行处理,解决现有区块链技术无法将移动设备作为网络节点的问题,实现丰富区块链网络的功能。

实施例三

图3是本发明实施例三提供的一种区块链数据处理装置的示意图,如图3所示,所述装置包括:原始区块获取模块310、待验证区块获取模块320以及信息存储模块330,其中:

原始区块获取模块310,用于对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容;

待验证区块获取模块320,用于采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证;

信息存储模块330,用于当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

本发明实施例通过第一移动终端对接收的事务请求进行处理,得到原始区块;然后采用设定处理规则对原始区块进行处理,得到待验证区块,并将待验证区块发送至区块链网络中的其他节点进行验证。第一移动终端当根据接收的各节点反馈的验证结果确定待验证区块通过共识时,将待验证区块的头部信息在本地进行存储,使得移动终端能够加入区块链并作为节点对区块数据进行处理,解决现有区块链技术无法将移动设备作为网络节点的问题,实现丰富区块链网络的功能。

可选的,待验证区块获取模块320,还用于采用设定加密算法对所述原始区块进行加密得到第一待验证区块,并将所述第一待验证区块作为待验证区块;或,采用所述设定加密算法对所述原始区块进行加密得到所述第一待验证区块,并将所述第一待验证区块发送至区块链网络中的任一核心节点;所述第一待验证区块用于指示所述核心节点生成与所述第一待验证区块对应的第二待验证区块发送至所述区块链网络中的节点进行验证;将所述第二待验证区块作为所述待验证区块。

可选的,信息存储模块330,还用于接收所述节点针对所述待验证区块反馈的验证结果;当确定所述验证结果中验证通过的比例超过设定阈值时,确认所述待验证区块通过共识;所述装置还包括,响应发送模块,用于将共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述节点对所述待验证区块进行处理。

可选的,所述节点包括第二移动终端和核心节点;信息存储模块330,还用于将所述共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述第二移动终端接将所述待验证区块的头部信息在本地进行存储;将所述共识通过响应发送至区块链网络中;所述共识通过响应用于指示所述核心节点将所述待验证区块在本地进行存储。

可选的,所述装置还包括:信息获取模块,用于在初始启动时根据初始化的创世区块的哈希值以及所述核心节点的地址和端口信息获取所有区块的头部信息;其中,所述创世区块由所述核心节点产生;在初始启动时检查本地公钥和私钥的合法性。

可选的,所述装置还包括:信息确认模块,用于当接收到所述事务请求时,根据本地存储的区块的头部信息对所述事务请求进行合法性确认;如果确定本地不存在所述事务请求,则向区块链网络发送询问事务请求的信息以对所述事务请求进行合法性确认。

可选的,所述智能合约规定的设定存储内容包括:按照预设地址信息获取的区块数据;或通过设定过滤条件对全部区块进行过滤得到的区块数据。

上述区块链数据处理装置可执行本发明任意实施例所提供的区块链数据处理方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的区块链数据处理方法。

实施例四

图4为本发明实施例四提供的一种终端的结构示意图。图4示出了适于用来实现本发明实施方式的终端412的框图。图4显示的终端412仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。终端412典型的是承担区块链系统节点功能的计算设备。

如图4所示,终端412以通用计算设备的形式表现。终端412的组件可以包括但不限于:一个或者多个处理器416,存储装置428,连接不同系统组件(包括存储装置428和处理器416)的总线418。

总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrystandardarchitecture,isa)总线,微通道体系结构(microchannelarchitecture,mca)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation,vesa)局域总线以及外围组件互连(peripheralcomponentinterconnect,pci)总线。

终端412典型地包括多种计算机系统可读介质。这些介质可以是任何能够被终端412访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储装置428可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory,ram)430和/或高速缓存存储器432。终端412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统434可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(compactdisc-readonlymemory,cd-rom)、数字视盘(digitalvideodisc-readonlymemory,dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线418相连。存储装置428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块426的程序436,可以存储在例如存储装置428中,这样的程序模块426包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块426通常执行本发明所描述的实施例中的功能和/或方法。

终端412也可以与一个或多个外部设备414(例如键盘、指向设备、摄像头、显示器424等)通信,还可与一个或者多个使得用户能与该终端412交互的设备通信,和/或与使得该终端412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口422进行。并且,终端412还可以通过网络适配器420与一个或者多个网络(例如局域网(localareanetwork,lan),广域网wideareanetwork,wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器420通过总线418与终端412的其它模块通信。应当明白,尽管图中未示出,可以结合终端412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(redundantarraysofindependentdisks,raid)系统、磁带驱动器以及数据备份存储系统等。

处理器416通过运行存储在存储装置428中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的区块链数据处理方法。

也即,所述处理单元执行所述程序时实现:第一移动终端对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容;所述第一移动终端采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证;所述第一移动终端当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

通过所述终端对接收的事务请求进行处理,得到原始区块;然后采用设定处理规则对原始区块进行处理,得到待验证区块,并将待验证区块发送至区块链网络中的其他节点进行验证。第一移动终端当根据接收的各节点反馈的验证结果确定待验证区块通过共识时,将待验证区块的头部信息在本地进行存储,使得移动终端能够加入区块链并作为节点对区块数据进行处理,解决现有区块链技术无法将移动设备作为网络节点的问题,实现丰富区块链网络的功能。

实施例五

本发明实施例五还提供一种存储计算机程序的计算机存储介质,所述计算机程序在由计算机处理器执行时用于执行本发明上述实施例任一所述的区块链数据处理方法:第一移动终端对接收的事务请求进行处理,得到原始区块;所述第一移动终端为通过设定共识机制选举出的区块生成节点;所述第一移动终端存储区块链网络中所有区块的头部信息以及智能合约规定的设定存储内容;所述第一移动终端采用设定处理规则对所述原始区块进行处理,得到待验证区块,并将所述待验证区块发送至区块链网络中的其他节点进行验证;所述第一移动终端当根据接收的各所述节点反馈的验证结果确定所述待验证区块通过共识时,将所述待验证区块的头部信息在本地进行存储。

本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(readonlymemory,rom)、可擦式可编程只读存储器((erasableprogrammablereadonlymemory,eprom)或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、射频(radiofrequency,rf)等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1