区块链处理方法及装置、区块链节点及存储介质与流程

文档序号:16310816发布日期:2018-12-19 05:16阅读:203来源:国知局
区块链处理方法及装置、区块链节点及存储介质与流程

本示例涉及信息技术领域,尤其涉及一种区块链处理方法及装置、区块链节点及存储介质。

背景技术

区块链技术是通过分布式存储和基于共识机制的验证,确保了存储在区块链中的信息安全性和可靠性。但是在使用区块链时,一方面,往往存在着响应速率慢的问题,例如,用户查询区块链中的某一个区块数据,可能需要较长的时间才能得到响应。再例如,用户请求向区块中添加一个区块数据,但是可能需要很长的时间才能接收到区块链网络返回的记录成功的响应。另一方面,区块链网络的搭建困难,往往难以选择出适合作为区块链节点的设备。

但是在现有的区块链网络中,各区块链节点承担的角色是相同的。一个区块链节点同时负责区块链生成过程的计算、同时还负责基于共识机制的验证、同时还承担着记录的功能。如此,对区块链节点的性能要求高,要求区块链节点所提供的软硬件资源足够。且在区块链信息的访问过程中,由于单一节点的功能多样性,导致负载率大,并最终导致响应速率满的问题。



技术实现要素:

有鉴于此,本示例实施例期望提供一种区块链处理方法及装置、区块链节点及存储介质。

本示例的技术方案是这样实现的:

第一方面,本发明实施例提供一种区块链处理方法,应用于监管节点中,包括:

接收矿工节点广播的执行结果;

基于监管节点之间的共识机制进行所述执行结果的验证;

广播所述执行结果的验证结果,其中,所述执行结果,用于在通过验证之后作为区块数据由账本节点添加到对应的区块链中。

可选地,所述方法还包括:

对所述矿工节点进行身份验证;

所述基于监管节点之间的共识机制进行所述执行结果的验证,包括:

若所述矿工节点的身份通过验证,基于监管节点之间的共识机制进行所述执行结果的验证。

可选地,所述方法还包括:

监管节点接收节点加入请求,其中,所述节点加入请求,用于请求加入区块链作为矿工节点、账本节点或监管节点;

若确定允许加入,为请求加入的节点分配身份信息。

可选地,所述执行结果包括以下至少之一:

数字资产在发行阶段的创建执行结果、入库执行结果、划拨执行结果;

数字资产在流通各阶段的发售执行结果、转让执行结果、兑换执行结果;

数字资产在退市阶段的回购执行结果、销毁执行结果。

可选地,所述方法还包括:

接收客户端发送的区块链查询请求;

验证所述客户端的身份信息;

广播所述客户端的身份信息的验证结果,其中,所述区块链查询请求,用于在所述客户端的身份信息通过验证时由账本节点提供查询响应。

第二方面,本发明实施例提供一种区块链处理方法,应用于账本节点中,包括:

接收矿工节点广播的执行结果;

接收监管节点广播的所述执行结果的验证结果;

根据所述验证结果,将通过验证的所述执行结果作为区块数据添加到区块链中。

可选地,所述方法还包括:

以数据操作逻辑处理所述区块链;

以独立于所述数据操作逻辑的存储逻辑存储所述区块链。

可选地,所述方法还包括:

所述以独立于所述数据操作逻辑的存储逻辑存储所述区块链,包括以下至少之一:

删除满足所述区块链中满足第一预设条件的区块数据;

将所述区块链中满足第二预设条件的区块存储到预定存储设备中,其中,所述预定存储设备为独立于所述账本节点的离线设备或网络设备。

可选地,所述方法还包括:

接收客户端发送的区块链查询请求;

接收监管节点广播的所述客户端的身份信息的验证结果;

若所述客户端的身份信息通过验证,响应所述区块链查询请求。

第三方面,本发明实施例提供一种区块链处理装置,应用于监管节点中,包括:

第一接收模块,用于接收矿工节点广播的执行结果;

第一验证模块,用于基于监管节点之间的共识机制进行所述执行结果的验证;

第一广播模块,用于广播所述执行结果的验证结果,其中,所述执行结果,用于在通过验证之后作为区块数据由账本节点添加到对应的区块链中。

第四方面,本发明实施例提供一种区块链处理装置,应用于账本节点中,包括:

第二接收模块,用于接收矿工节点广播的执行结果;

第三接收模块,用于接收监管节点广播的所述执行结果的验证结果;

记录模块,用于根据所述验证结果,将通过验证的所述执行结果作为区块数据添加到区块链中。

第五方面,本发明实施例提供了一种区块链节点,包括:

收发器,用于进行信息交互;

存储器,用于信息存储;

处理器,分别与所述收发器及所述存储器连接,用于通过执行计算机程序的执行,能够实现第一方面或第二方面任意方案提供的区块链处理方法。

第六方面,本发明实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被执行后,能够实现第一方面或第二方面任意方案提供的区块链处理方法。

本示例实施例提供的技术方案,在进行区块链的处理时,由监管节点进行执行结果的验证,而非继续由矿工节点进行执行结果的验证,如此,实现了执行结果的生成和验证由不同的节点实现的操作分离,从而利用监管节点分担了矿工节点的工作,从而使得矿工节点可以专注于执行结果的生成,从而加速了区块链的响应。于此同时,执行结果生成的业务逻辑的执行和执行结果的验证由不同的节点承担,如此,降低了对单一区块链节点的性能要求,如此简化了区块链网络的扩容和搭建。

附图说明

图1为本发明实施例提供的一种区块链网络的结构示意图;

图2为本发明实施例提供的第一种区块链处理方法的流程示意图;

图3为本发明实施例提供的第二种区块链处理方法的流程示意图;

图4为本发明实施例提供的第一种区块链处理装置的结构示意图;

图5为本发明实施例提供的第二种区块链处理装置的结构示意图;

图6为本发明实施例提供的一种区块链节点的结构示意图;

图7为本发明实施例提供的一种区块链网络的工作示意图。

具体实施方式

以下结合说明书附图及具体实施例对本示例的技术方案做进一步的详细阐述。

如图1所示,本实施例提供一种区块链网络,该区块链网络包括以下三种区块链节点:

监管节点,至少用于进行验证,所述验证包括:区块链节点的加入验证、执行结果的验证、及查询区块链的客户端的身份信息验证;在一些实施例中,所述监管节点还用于区块链的监管工作;

矿工节点,用于参与各种计算,形成可添加到区块链中的执行结果;

账本节点,用于记录通过监管节点验证的执行结果,生成并存储区块链,还用于区块链的查询。

在本发明实施例中,将区块链节点的功能进行了分离,每一个中区块链节点负责不同的功能;如此,一方面,可以避免单一区块链节点需要同时承担多种角色导致的对区块链节点的性能要求高,对区块链节点的软硬件资源需求多的问题,从而解决了区块链节点的选择难度高及区块链网络搭建困难的问题。另一方面,由于区块链网络对区块链节点的角色进行分离,实现了区块链节点的功能分离,使得单一区块链节点所需要完成的工作类型少了,从而降低了单一区块链节点的负载率,从而使得整个区块链网络响应速率得到了大大的提升,如此,用户在查询数据和存储数据时都能够被及时的响应,从而具有响应速率高的特点。

在本发明实施例中,所述监管节点、所述矿工节点及所述账本节点为相对独立的节点;例如,所述监管节点、所述矿工节点及所述账本节点中的任意两个都设置在不同的物理设备上,或者,对应于设置云平台的虚拟设备上;如此,可以确保各个节点的功能有足够的分离度,以降低对单一设备的性能要求,以简化区块链网络的搭建,同时避免单一设备累计过多的负载,导致响应速率慢的问题。

在一些实施例中,所述账本节点的存储逻辑和数据操作逻辑是分离的,是相互独立的。如此,通过存储逻辑和数据操作逻辑的解耦,账本节点可以自行规划数据存储,可以将数据存储到离线设备或网络设备中,不局限于本节点,同时还可以删除一些长期不用的区块,以节省存储资源的消耗;或者,压缩一些长期不查询的数据,同样可以节省存储资源的消耗。

本发明实施例提供一种区块链处理方法,可应用于图1所示的区块链网络中,具体如可应用于监管节点中,如图2所示,包括:

步骤s110:接收矿工节点广播的执行结果;

步骤s120:基于监管节点之间的共识机制进行所述执行结果的验证;

步骤s130:广播所述执行结果的验证结果,其中,所述执行结果,用于在通过验证之后作为区块数据由账本节点添加到对应的区块链中。

在本实施例中所述矿工节点负责各种与计算相关的所有业务逻辑的执行,最终会生成执行结果。例如,当前区块链为数字资产区块链;则此时,所述矿工节点需要参与数字资产的发行、转让、回购及销毁等业务层面的逻辑计算,并得到执行结果。

所述数字资产可包括:网络游戏的数字资产,这里的数字资产可为游戏点卡;所述游戏点卡可以用于购买游戏中的道具、游戏角色的服装等。所述数字资产还可包括:电子书、视频或音频的使用权限的网络应用资产等。总之,在本实施例中所述数字资产可为:各种以数字信息指示在互联网中使用的资产。

在本实施例中,若矿工节点完成计算之后会产生对应的执行结果;并会将执行结果广播到区块链网络中。如此,区块链网络中的账本节点和监管节点就能够接收到该执行结果。

监管节点接收到该执行结果之后,会对执行结果进行验证。在进行验证时时可以基于共识机制的验证的。在本实施例中参与执行结果的验证的区块链节点均为监管节点,基于监管节点对同一个执行结果的验证,从而获得该验证结果的验证。在本发明实施例提供的区块链网络中,所述监管节点的数量可少于所述矿工节点的数目,如此,矿工节点的数目多,可以满足执行结果的计算需求;另一方面,监管节点比矿工节点的数目少,在基于共识机制的投票产生验证结果时,可以加速验证通过。由于将验证的操作从矿工节点中分离出来了,则矿工节点可以完成一个执行结果的计算之后,以更快的速度参与另一个执行结果的计算;与此同时,由自身负载小和/或数量少的监管节点来参与验证,可以进一步提升验证效率,从而提升执行结果成功写入到区块链的速率。

在进行基于监管节点之间的共识机制的验证时,单一监管节点验证所述执行结果,认为所述执行结果无误就投出通过票,并将该通过票广播到区块链网络中,如此其他区块链节点就可以接收到。最后监管节点统计通过票数,若投通过票数超过的监管节点数目达到一定数量,或者,投通过票数的监管节点与整个区块链网络中所有监管节点的数目的比值达到指定值,就可认为当前执行结果通过验证。由于监管节点不需要进行业务逻辑的执行和区块存储和查询,如此,监管节点自身的负载就少,故可以有更多的资源来完成执行结果的验证,故从这一方面提升了验证速率;另一方面若监管节点的数目少于矿工节点的数目,如此按照投通过票的节点数与总监管节点数之间的比值来看,显然需要更少的监管节点完成投票就可以知道执行结果的最后验证结果,如此,也加速了执行结果的验证,故从这一方面也加速了执行结果写入到区块链中的速率。

在本实施例中所述区块链可为联盟链,区别于面向所有公众的公共链和仅面向某一团体内部的私有链;联盟链面向多个团体,一方面相对于私有链实现了数据监管的透明化,确保了数据的安全性;另一方面相对于公共链,联盟链监管更加简便。

可选地,所述方法还包括:对所述矿工节点进行身份验证;

所述步骤s120可包括:

若所述矿工节点的身份通过验证,基于监管节点之间的共识机制进行所述执行结果的验证。

矿工节点进行业务逻辑的执行获得所述执行结果,会广播执行结果,同步广播自己的身份信息,所述矿工节点的身份信息可包括:节点标识和节点密钥等;该矿工节点的身份信息可为所述监管节点所分配的。

在验证所述执行结果之前,所述监管节点会验证发行执行结果的矿工节点的身份,例如,验证所述矿工节点的身份信息,确定所述矿工节点是否有授权进行业务逻辑的执行,是否为当前区块链网络中的区块链节点。

在一些实施例中矿工节点的身份验证和执行结果的执行验证可以同步进行,以提升验证速率;但是在本发明实施例中为了减少不必要的验证,可先对矿工节点的身份进行验证,若矿工节点的身份信息通过验证之后,开始验证所述执行结果,减少非当前区块链网络中的矿工节点的执行结果的验证。

在一些实施例中,所述方法还包括:

监管节点接收节点加入请求,其中,所述节点加入请求,用于请求加入区块链作为矿工节点、账本节点或监管节点;

若确定允许加入,为请求加入的节点分配身份信息。

在本实施例中所述节点加入请求可包括:可为区块链新添加的各种节点的验证,例如,矿工节点、账本节点及监管节点中的一个或多个。

在一些实施例中所述监管节点需要向监管账户提交对应的请求,若监管人员确认允许缴入,则自动为请求加入的节点分配身份信息,该身份信息可以用于后续节点的身份验证,该身份信息可包括:节点标识和/或与该节点协商确定的节点密钥等。

在另一些实施例中,所述监管节点会根据请求加入节点提供的节点信息,验证该节点是否可以具有能够加入到区块链网络中承担几类节点中的任意一种。

例如,所述节点加入请求可包括以下至少之一:

矿工节点加入请求,用于请求充当矿工节点;

账本节点加入请求,用于请求充当账本节点;

监管节点加入请求,用于请求充当监管节点。

若当前请求为矿工节点加入请求,所述监管节点将根据其节点信息,确定其是否满足充当矿工节点所需的计算能力。

若当前请求为账本节点加入请求,所述监管节点将根据其节点信息,确定其是否满足充当账本节点所需的存储能力和/或检索能力。

若当前请求为账本节点加入请求,所述监管节点将根据其是否有足够的监管能力。

当然以上仅是举例,总之有节点加入请求时,监管节点会根据请求加入的节点提交的节点信息,验证其是否有能力加入到区块链网络中充当对应的节点角色,在另一些实施例中还会验证其是否有足够安全性能。

在一些实施例中,所述节点加入请求可不分请求加入哪一种节点,所述监管节点根据当前需求的节点以及请求加入的节点能力,确定是否运行该节点加入到区块链网络中,并分配其充当的节点角色,从而实现区块链网络的自动搭建。

可选地,所述执行结果包括以下至少之一:

数字资产在发行阶段的创建执行结果、入库执行结果、划拨执行结果;

数字资产在流通各阶段的发售执行结果、转让执行结果、兑换执行结果;

数字资产在退市阶段的回购执行结果、销毁执行结果。

所述数字资产可包括:网络游戏的数字资产,这里的数字资产可为游戏点卡;所述游戏点卡可以用于购买游戏中的道具、游戏角色的服装等。所述数字资产还可包括:电子书、视频或音频的使用权限的网络应用资产等。总之,在本实施例中所述数字资产可为:各种以数字信息指示在互联网中使用的资产。

在本实施例中,所述数字资产可为应用于网络等虚拟世界中的资产。

在一些实施例中,所述方法还包括:

接收客户端发送的区块链查询请求;

验证所述客户端的身份信息;

广播所述客户端的身份信息的验证结果,其中,所述区块链查询请求,用于在所述客户端的身份信息通过验证时由账本节点提供查询响应。

例如,此处的客户端可为各种类型的应用(application,app)、软件开关工具包(softwaredevelopmentkit,sdk)或插件等,所述客户端安装在电子设备中,例如,手机、平板电脑或可穿戴式设备中。可以作为区块链的调用者请求查阅区块链。如此,区块链网络中的监管节点会接收到区块链查询请求,接收到区块链查询请求之后,监管节点验证该客户端是否具有查询权限,需要对该客户端进行身份验证。如此,进行区块链查询的身份验证工作也由所述监管节点承担了,如此,账本节点的工作量减少了,可以提升查询速率。

如图3所示,本实施例提供一种区块链处理方法,应用于账本节点中,包括:

步骤s210:接收矿工节点广播的执行结果;

步骤s220:接收监管节点广播的所述执行结果的验证结果;

步骤s230:根据所述验证结果,将通过验证的所述执行结果作为区块数据添加到区块链中。

在本实施例中,所述账本节点接收到的执行结果的验证结果时来自监管节点,而非矿工节点的,实现了执行结果的生成及验证的分离,确保了记账的速率。

可选地,所述方法还包括:

以数据操作逻辑处理所述区块链;

以独立于所述数据操作逻辑的存储逻辑存储所述区块链。

在本实施例中所述账本节点的数据操作逻辑和所述存储逻辑是分离的,是相对独立的。所述数据处理逻辑不限定所述账本节点对区块链中的区块或区块数据的存储位置。一个所述区块可包括若干个所述区块。

如此,所述账本节点可以利用其他设备为其存储区块链中的数据,例如,利用离线设备或者网络设备为其提供存储资源,以存储所述区块链。

在一些实施例中,所述方法还包括:

所述以独立于所述数据操作逻辑的存储逻辑存储所述区块链,包括以下至少之一:

删除满足所述区块链中满足第一预设条件的区块数据;

将所述区块链中满足第二预设条件的区块存储到预定存储设备中,其中,所述预定存储设备为独立于所述账本节点的离线设备或网络设备。

所述满足第一预设条件的区块数据可包括以下至少之一:

距离当前时间的时长已经达到第一预设时长的区块数据,虽然当个账本节点删除了部分数据,其他账本节点会保存完整的数据;

删除当前已经销毁或撤回的数字资产的区块数据。

通过区块数据的删除,可以减少存储区块链所需的存储资源。

在一些实施例中,删除区块数据可以区块数据为粒度,也可以以区块为粒度,若以区块为粒度可以简化删除。

例如,将一些区块转存到离线设备或者网络设备中,从而减少所述账本节点自身所需提供的存储资源。

所述满足第二预设条件的区块可包括以下至少之一:

距离当前时间的时长已经达到第二预设时长的区块;可选地,所述第二预设时长小于所述第一预设时长;

转移当前已经销毁或撤回的数字资产的区块。

可选地,其特征在于,所述方法还包括:

接收客户端发送的区块链查询请求;

接收监管节点广播的所述客户端的身份信息的验证结果;

若所述客户端的身份信息通过验证,响应所述区块链查询请求。

在本实施例中区块链查询请求的身份验证是由监管节点执行的,如此,所述账本节点可以减少工作负荷量,从而保留更多的资源响应区块链查询和区块链的生成和存储。

在本发明实施例中所述账本节点可以为数字资产的统一登记或注册平台,如此,一旦数字资产的资产信息已资产区块的形式记录在账本节点中,就可以被可以查询该账本节点的所有平台所查询到(例如,归属不同平台的矿工节点)所查询到,从而实现了数字资产的跨平台使用;如此,可以解决相关技术中某一个游戏公司发现的游戏点卡,在同一款游戏的另一个游戏公司的平台就无法使用了;从而解决了数字资产的跨平台识别和使用了。

在一些实施例中,所述方法还包括:

接收跨平台转移请求;

根据所述跨平台转移请求,在所述区块链中修改对应数字资产的应用平台,其中,所述应用平台包括一个或多个所述矿工节点。

账本节点负责数字资产的登记等操作。

所述跨平台转移请求可由不同应用平台的服务器发起的,例如,不同应用平台的区块链虚拟机。不同应用平台都可以连接到所述区块链网络。

该跨平台转移请求可以是由归属不同平台的客户端之间的数字资产转移触发所述矿工节点发起的,也可以是数字资产的不同平台之间的兑换触发,也可以是由客户端的跨平台转移需求触发的。

例如,用户a是归属第一应用平台的用户,用户b是归属第二应用平台的用户。用户a的数字资产转让可经由所述第一应用平台发起。若当前用户a将自己的数字资产转让给归属于第二应用平台的用户b,则涉及跨平台转让。账本节点不仅会更改数字资产的归属权,同时还会更改数字资产操作的应用平台。若数字资产的归属权从用户a转移给了用户b;若后续用户b发起关于该数字资产的操作,优先由所述第二应用平台触发矿工节点执行对应的业务逻辑,如此,实现了不同应用平台的数字资产的跨平台识别和转移。

在本实施例中所述账本节点可以面向多个应用平台,实现不同平台的数字资产的跨平台转移。如此,打破了现有技术中由于平台之间隔离导致的一个平台发行的数字资产,在另一个平台内不能使用的问题。

如图4所示,本实施例提供一种区块链处理装置,应用于监管节点中,包括:

第一接收模块110,用于接收矿工节点广播的执行结果;

第一验证模块120,用于基于监管节点之间的共识机制进行所述执行结果的验证;

第一广播模块130,用于广播所述执行结果的验证结果,其中,所述执行结果,用于在通过验证之后作为区块数据由账本节点添加到对应的区块链中。

本实施例提供的区块链处理装置,可应用于监管节点。所述第一接收模块110、验证模块及第一广播模块130均可为程序模块,被处理器执行后能够实现所述执行结果的接收、执行结果的验证及验证结果的广播。

可选地,所述装置还包括:

第二验证模块,用于对所述矿工节点进行身份验证;

所述第一验证模块120,具体用于若所述矿工节点的身份通过验证,基于监管节点之间的共识机制进行所述执行结果的验证。

在一些实施例中,所述第一接收模块110,还用于监管节点接收节点加入请求,其中,所述节点加入请求,用于请求加入区块链作为矿工节点、账本节点或监管节点;所述装置还包括:

分配模块,用于若确定允许加入,为请求加入的节点分配身份信息。

在一些实施例中,所述执行结果包括以下至少之一:

数字资产在发行阶段的创建执行结果、入库执行结果、划拨执行结果;

数字资产在流通各阶段的发售执行结果、转让执行结果、兑换执行结果;

数字资产在退市阶段的回购执行结果、销毁执行结果。

在另一些实施例中,所述装置还包括:

请求接收模块,用于接收客户端发送的区块链查询请求;

第三验证模块,用于验证所述客户端的身份信息;

所述第一广播模块130,还用于广播所述客户端的身份信息的验证结果,其中,所述区块链查询请求,用于在所述客户端的身份信息通过验证时由账本节点提供查询响应。

如图5所示,本实施例提供一种区块链处理装置,应用于账本节点中,包括:

第二接收模块210,用于接收矿工节点广播的执行结果;

第二接收模块220,用于接收监管节点广播的所述执行结果的验证结果;

记录模块230,用于根据所述验证结果,将通过验证的所述执行结果作为区块数据添加到区块链中。

所述区块链处理装置,可应用于账本节点中。所述第二接收模块210、所述第二接收模块220及记录模块230可均为程序模块,所述程序模块被处理器执行后,能够实现执行结果的接收、验证结果的接收及区块链的生成和存储。

在一些实施例中,所述装置还包括:

第一执行模块,用于以数据操作逻辑处理所述区块链;

第二执行模块,用于以独立于所述数据操作逻辑的存储逻辑存储所述区块链。

在一些实施例中,所述第二执行模块,具体用于执行以下至少之一:

删除满足所述区块链中满足第一预设条件的区块数据;

将所述区块链中满足第二预设条件的区块存储到预定存储设备中,其中,所述预定存储设备为独立于所述账本节点的离线设备或网络设备。

在另一些实施例中,所述装置还包括:

第四接收模块,用于接收客户端发送的区块链查询请求;

第五接收模块,用于接收监管节点广播的所述客户端的身份信息的验证结果;

响应模块,用于若所述客户端的身份信息通过验证,响应所述区块链查询请求。

如图6所示,本实施例提供一种区块链节点,包括:

收发器,用于进行信息交互;

存储器,用于信息存储;

处理器,分别与所述收发器及所述存储器连接,用于通过执行计算机程序的执行,能够实现前述第一方面或第二方面的任意技术方案提供的区块链处理方法,例如,可执行图1、图2、图3及图7所示方法中的一个或多个。

该存储器可为各种类型的存储器,可为随机存储器、只读存储器、闪存等。所述存储器可用于信息存储,例如,存储计算机可执行指令等。所述计算机可执行指令可为各种程序指令,例如,目标程序指令和/或源程序指令等。

所述处理器可为各种类型的处理器,例如,中央处理器、微处理器、数字信号处理器、可编程阵列、数字信号处理器、专用集成电路或图像处理器等。所述处理器可以通过总线与所述存储器连接。所述总线可为集成电路总线等。

在一些实施例中,所述收发器可包括:通信接口,该通信接口可包括:网络接口、例如,局域网接口、收发天线等。所述通信接口同样与所述处理器连接,能够用于信息收发。

在一些实施例中,所述区块链节点还包括人机交互接口,例如,所述人机交互接口可包括各种输入输出设备,例如,键盘、触摸屏等。

在一些实施例中,所述区块链节点还包括人机交互接口,例如,所述人机交互接口可包括各种输入输出设备,例如,键盘、触摸屏等。

在本实施例中所述区块链节点可以为:账本节点、监管节点或矿工节点中的一个或多个。

本发明实施例还提供一种计算机存储介质,该计算机存储介质存储有计算机可执行代码,该计算机可执行代码被执行后,能够实现前述的一个或多个区块链处理方法,例如,可执行图1、图2、图3及图7所示方法中的一个或多个。

本实施例提供的计算机存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,所述计算机存储介质可为非瞬间存储介质。

以下结合上述实施例提供几个具体示例:

示例1:

本示例以数字资产的区块链处理为例进行说明。

数字资产的生命周期一般分为三个阶段:发行阶段、流通阶段、退市阶段。

发行阶段对应状态包括:创建、入库、划拨;

流通阶段对应状态包括:发售、交易、兑换;

退市阶段对应状态包括:回购、销毁;

以上为数字资产生命周期状态的全集,不同类型的数字资产状态可能为以上全集的一个子集部分。

本示例基于区块链相关技术,对数字资产生命周期全流程进行保存、记录,让一个资产的所有状态变化轨迹可回溯、不可篡改。使用联盟链的方式,在部分中心化的情况下,提高区块链执行效率;让多方参与监管,使执行结果更有可信度和权威性。

1.数字资产从创建到销毁时,所有生命周期的轨迹对用户可见。

2.数字资产在每个状态下都有明确的物权关系,并对用户可见。

3.当数字资产的物权关系发生变更时,有不可篡改的记录,见第一条。

4.当数字资产被销毁后,确保无法再进入市场流通。

数字资产业务的相关参与方如下:

登记公司,负责数字资产发行阶段,及退市阶段的销毁。

交易所,参与数字资产流通阶段,及退市阶段的回购。

交易方,交易所交易会员。

在本示例中所述交易所对应于矿工节点,可以用于对交易方的交易执行业务逻辑,获得所述交易结果。

所述登记公司对应于账本节点,可以用于对数字资产进行创建、登记、转让等相关信息的区块链揭露。所述交易方可作为交易的发起方,可以向区块链网络发送各种请求,请求查询等。

区块链节点类型的划分可如下:

监管节点,对接入节点的鉴权;通过raft共识协议算法,对执行结果的一致性进行确认和交易双方身份的确认;

矿工节点,为区块链业务运行提供算力,以挖矿得到的奖励来定期核算贡献,可以得到交易手续费的分成奖励。矿工节点加入到联盟链中需要通过监管节点的许可(实用拜占庭容错系统pbft,投票验证节点有效性),防止恶意节点问题。

账本节点,负责保存矿工节点打包的区块数据。同样账本节点加入联盟链的有效性也需要通过监管节点的认可。区块数据会随着时间的推移不断增加,让每个节点把所有的区块数据全部单独存储一份,资源开销将会随着业务量的增加成线性递增。

所以本示例将账本节点对数据的操作逻辑与存储逻辑分离,参与各方提供自己的账本节点时,可以灵活的设定自己的存储方案和数据管理方式。

如图7所示,数字资产业务计算可如下:

客户端通过合约地址加载数字资产智能合约到区块链虚拟机中。

客户端调用智能合约的函数,执行业务规则;具体可包括:客户端调用区块链虚拟机加载智能合约;区块链虚拟机打包合约数据;

区块链虚拟机向区块链矿工节点广播合约数据,触发矿工节点执行合约函数,执行业务逻辑。

矿工节点通过竞争,最终有一个节点获得记账权,同时通过工作量证明(proofofwork,pow)工作量证明机制,获得一定的奖励。pow机制简单说就是干得多,收得多,可以鼓励参与各方积极提供算力支持。

在本示例中,将计算与共识功能进行剥离,将共识功能放到监管节点中。监管节点相对较少,达成共识的效率更高,而且监管节点是具有中心化管理性质的,具有更好的安全性。

矿工节点的执行结果经过监管节点的确认后,被所有账本节点同步写入到区块数据中。

4.监管节点的安全控制,可包括如下步骤:

a.线下分配或监管节点自行分配新节点标识(identity,id)和密钥(key),管理程序调用监管节点接口将id和key写入区块中存储。该区块可为监管区块链中的区块,监管区块链不同于数字资产的资产区块链。

b.矿工节点向监管节点集群广播执行结果时,监管节点获取其id与key,与监管区块中的值进行比对,验证节点的角色和有效性。然后再对执行结果验证进行共识投票(例如:参与数字资产转移的交易双方实名信息有效性、转账地址的真实性等)。

c.所有调用账本节点获取区块数据前,需要向监管节点进行验证,具体可包括:

步骤c1:调用者(对应于前述的客户端)请求账本节点的id和key;

步骤c2:账本节点返回id和key;

步骤c3:调用者将id和key发送给监管节点;

步骤c4:id和key在监管节点间广播;

步骤c5:所有收到消息的监管节点,对id和key进行验证;

步骤c6:监管节点对验证结果有效性进行投票;

步骤c7:监管节点返回投票结果给调用者;

采用本示例的数字资产全生命周期的管理方案,使数字资产生命周期中的每个状态变化的真实性、有效性得到了保证,权属清晰过程可控。

同时符合国家对网络实名制要求、虚拟经济监管的行业大背景。以往的数字资产交易,国家是无法获得税收收入的。本示例的方案中,数字资产交易公开透明,提供交易税的征收标准和依据,为国家扩展了税收渠道来源。

在技术层面,采用了联盟链分层架构的方式,一是解决了私链的透明性,鼓励参与各方加入进来,共同监管、共同分享利益;二是解决了公链中区块节点承当所有角色带来的性能底下和存储开销大的问题。

本示例提供的技术方案通过对区块节点承当的角色进行分类,将不同角色能力进行剥离,使节点功能相对单一,利于不同业务能力增长需要时的横向扩展。

加入了部分中心化的监管节点角色,降低了需要达成共识节点的数量,提升效率。同时中心化的监管角色的加入让数字资产交易活动更加安全可靠。

示例2:

在发行阶段,创建资产区块的区块数据,例如,在数据库中创建一条待发行的资产信息,包括名称、发行数量、所属人等。举例:名称:穿越火线游戏点卡,发行数量:10000,面值:1点,所有权:xxx登记公司

创建之后执行入库操作,具体可包括:在区块链中部署这个数字资产的智能合约,该合约内容包括资产的基本发行信息、物权关系、交易、回购、兑换等状态变更的情况下区块链虚拟机要执行的业务规则。部署的合约代码对相关参与方可见。

资产入库之后需要进行资产划拨,例如,登记公司区块账户向业务约定的交易所账户中转10000张点卡,此时数字资产所有权变更为:xxx交易所。

在流通阶段,包括发售、转让及兑换等流程。

发售可包括:通过预约,认购等方式,交易所与会员达成交易后,交易所账户将数字资产转至会员账户中。举例:张三预约购买了1000张卡,那么发售后,张三账户多了1000张卡,所有权:张三。交易所账户数量变更为9000张。

转让可包括:交易转让和赠与转让。交易会员彼此间的账户交易转账过程。举例:李四向张三购买200张卡,那么在李四支付费用后,系统从张三的账户划拨200张卡到李四的账户,200张卡所有权:李四。

兑换可包括:具有兑换功能的数字资产,在兑换后资产从交易会员账户转移至指定兑换方账户,所有权同时变更。

在退市阶段,可包括回购和销毁流程。

所述回购可包括:按发售时的合同约定,某些数字资产可能可以被指定价格回收,此时资产从交易会员账户转移至回购方账户,所有权同时变更。

所述销毁可包括:如果被回购的资产需要退出流通市场,从区块账户中进行物理删除(回购账户数量减少)。举例:销毁100张卡,回购账户数量-100。

总之,在上述数字资产的整个生命周期内都会产生对应的区块数据,并记录到资产区块链中。该资产区块链可为联盟链的一种。在资产区块的生成、查询等处理过程中,验证工作都由监管节点来执行,计算工作由矿工节点来执行,而区块链的生成和存储由账本节点来执行。

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

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

另外,在本示例各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本示例的具体实施方式,但本示例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本示例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本示例的保护范围之内。因此,本示例的保护范围应以所述权利要求的保护范围为准。

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