基于区块链的数字资产处理方法及装置与流程

文档序号:18903203发布日期:2019-10-18 22:15阅读:159来源:国知局
基于区块链的数字资产处理方法及装置与流程

本申请涉及区块链领域,具体而言,涉及一种基于区块链的数字资产处理方法及装置。



背景技术:

区块链技术(blockchain)是指通过去中心化的方式集体维护一个可靠数据库的技术方案。该技术方案主要让区块(block)通过密码学方法相关联起来,每个数据块包含了一定时间内的系统全部数据信息,并且生成数字签名以验证信息的有效性并链接到下一个数据块形成一条主链(chain)。其中,区块(block)是区块链中的一条记录,包含并确认待处理的交易。其中,挖矿(mining)指通过计算形成新的区块。其中,通过哈希散列(hash)将任意长度的输入通过哈西算法,变换成固定长度的由字母和数字组成的输出。其中,数字签名(digitalsignature)是一个让人可以证明所有权的数学机制。其中,双重消费指用户试图非法将电子货币同时支付给两个不同的收款人。

发明人发现,在传统保险行业,用户的保金通过保险公司再投资来抵御通货膨胀,而互助公司无权动用互助资金中的用户资金,导致通货膨胀问题更加严重。具体而言,当一位用户捐助了一笔款项,但是受捐人不知道,该笔款项只有通过中心化的服务器显示才能知道。基于消息的不透明,就会有用户质疑捐款被运营方私吞的现象。

针对相关技术中数字资产处理缺乏信任机制、无法去中心化的问题,目前尚未提出有效的解决方案。



技术实现要素:

本申请的主要目的在于提供一种基于区块链的数字资产处理方法,以解决数字资产处理缺乏信任机制、无法去中心化的问题。

为了实现上述目的,根据本申请的一个方面,提供了一种基于区块链的数字资产处理方法。

根据本申请的基于区块链的数字资产处理方法包括:监测在区块链节点或者钱包是否产生第一用户交易;如果监测在区块链节点或者钱包产生第一用户交易,则向区块链中参与该交易的多个节点广播所述第一用户交易,且通过多个所述节点将所述第一用户交易放入第一新区块;通过多个所述节点验证所述第一新区块中的第一用户交易是否有效;以及如果通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块。

进一步地,通过多个所述节点验证所述第一新区块中的第一用户交易是否有效包括:计算多个所述节点的工作量证明或者权益证明;根据所述工作量证明或者权益证明得到验证所述第一用户交易的第一节点;判断所述第一节点是否取得验证所述第一新区块的验证权;以及如果所述第一节点取得验证所述第一新区块的验证权,则将所述第一新区块广播给剩余n个节点,其中n为自然数。

进一步地,通过多个所述节点验证所述第一新区块中的第一用户交易是否有效包括:监控节点中的高度变化并查找钱包中的收款地址记录;如果在所述第一新区块中查询到所述收款地址,则在节点确认交易的被确认次数;以及如果在节点确认交易的被确认次数满足预设条件,则认为所述第一新区块中的第一用户交易为有效。

进一步地,如果通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块包括:通过多个所述节点验证所述第一用户交易有效,并通过多个所述节点验证并接上所述第一新区块;并在相关节点上确认所述第一新区块中的所述第一用户交易是否有效;如果在相关节点上确认所述第一新区块中的所述第一用户交易没有被重复花费且具有有效数字签章,则接受所述第一新区块;其中,所述第一新区块连接在相关节点上后记录无法修改。

进一步地,监测在区块链节点或者钱包是否产生第一用户交易包括:通过多个所述节点将多个未验证的用户交易哈希值收集到区块中,每个所述第一新区块中包含多笔用户交易。

进一步地,所述数字资产为公益产品,所述第一用户购买所述公益产品时通过智能合约约定。

为了实现上述目的,根据本申请的另一方面,提供了一种基于区块链的数字资产处理装置。

根据本申请的基于区块链的数字资产处理装置包括:监测模块,用于监测在区块链节点或者钱包是否产生第一用户交易;广播模块,用于监测在区块链节点或者钱包产生第一用户交易,则向区块链中参与该交易的多个节点广播所述第一用户交易,且通过所述多个节点将所述第一用户交易放入第一新区块;验证模块,用于通过所述多个节点验证所述第一新区块中的第一用户交易是否有效;以及连接模块,用于通过所述多个节点验证所述第一用户交易有效时,在相关节点上连接所述第一新区块。

进一步地,所述验证模块包括:监控单元,用于监控节点中的高度变化并查找钱包中的收款地址记录;确认单元,用于在所述第一新区块中查询到所述收款地址时,则在节点确认交易的被确认次数;以及交易判断单元,用于在节点确认交易的被确认次数满足预设条件,则认为所述第一新区块中的第一用户交易为有效。

进一步地,所述连接模块包括:验证单元,用于通过多个所述节点验证所述第一用户交易有效,并通过多个所述节点验证并接上所述第一新区块;交易有效判断单元,用于在相关节点上确认所述第一新区块中的所述第一用户交易是否有效;条件单元,用于在相关节点上确认所述第一新区块中的所述第一用户交易没有被重复花费且具有有效数字签章时,接受所述第一新区块;其中,所述第一新区块连接在相关节点上后记录无法修改。

进一步地,装置还包括:用户访问模块,用于访问区块链中的任一节点查询用户交易记录,并通过区块链上的相关节点返回交易记录。

在本申请实施例中,采用监测在区块链节点或者钱包是否产生第一用户交易的方式,通过向区块链中参与该交易的多个节点广播所述第一用户交易,且通过多个所述节点将所述第一用户交易放入第一新区块,达到了通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块的目的,从而实现了交易透明、交易记录可溯源的技术效果,进而解决了数字资产处理缺乏信任机制、无法去中心化的的技术问题。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是根据本申请第一实施例的基于区块链的数字资产处理方法示意图;

图2是根据本申请第二实施例的基于区块链的数字资产处理方法示意图;

图3是根据本申请第三实施例的基于区块链的数字资产处理方法示意图;以及

图4是根据本申请第四实施例的基于区块链的数字资产处理方法示意图;

图5是根据本申请第一实施例的基于区块链的数字资产处理装置示意图;

图6是根据本申请第二实施例的基于区块链的数字资产处理装置示意图;

图7是根据本申请第三实施例的基于区块链的数字资产处理装置示意图;

图8是根据本申请第四实施例的基于区块链的数字资产处理装置示意图;以及

图9是本申请中的实现原理示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

如图1所示,该方法包括如下的步骤s102至步骤s108:

步骤s102,监测在区块链节点或者钱包是否产生第一用户交易;

用户交易可能发生在钱包内,比如,用户通过电子钱包进行了扣款,并拟完成相关交易。

用户交易也可能发生在区块链节点上,比如,用户在某个商家购买了商品并进行了付款的行为。

所述第一用户交易时即可实现去中心化的购买。由于在区块链网络上,用户无需承担对互助执行机构的信任风险,可以直接通过智能合约实现群体间的互助协议,并获得自动化赔付。

优选地,监测在区块链节点或者钱包是否产生第一用户交易包括:

通过多个所述节点将多个未验证的用户交易哈希值收集到区块中,每个所述第一新区块中包含多笔用户交易。

步骤s104,如果监测在区块链节点或者钱包产生第一用户交易,则向区块链中参与该交易的多个节点广播所述第一用户交易,且通过多个所述节点将所述第一用户交易放入第一新区块;

如果监测到在区块链节点或者钱包上已经产生了第一用户交易,则可以想在区块链中参与该交易的剩余节点通过留言协议分发消息。此外,在发送时还需要验证交易的合法性。

在区块链中,当一笔交易经由某个节点或钱包产生时,这笔交易需要被传送给其它节点来作验证。具体地做法是将交易资料经由数位签章加密并经由hash函数得出一串代表此交易的唯一hash值后,再将这个hash值广播broadcast给区块链网络中的其它参与节点进行验证。

步骤s106,通过多个所述节点验证所述第一新区块中的第一用户交易是否有效;

当在区块链中产生一笔新交易时会先被广播到区块链网络中的其它参与节点,在各节点将数笔新交易放进区块每个节点会将数笔未验证的交易哈希hash值收集到区块中,每个区块可以包含数百笔或上千笔交易。

步骤s108,如果通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块。

通过在各节点验证并接上新区块其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再窜改资料。

优选地,在所有节点一旦接受该区块后,先前没算完pow工作的区块会失效,各节点会重新建立一个区块,继续下一回pow计算工作。

从以上的描述中,可以看出,本申请实现了如下技术效果:

在本申请实施例中,采用监测在区块链节点或者钱包是否产生第一用户交易的方式,通过向区块链中参与该交易的多个节点广播所述第一用户交易,且通过多个所述节点将所述第一用户交易放入第一新区块,达到了通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块的目的,从而实现了交易透明、交易记录可溯源的技术效果,进而解决了数字资产处理缺乏信任机制、无法去中心化的的技术问题。

优选地,所述数字资产为公益产品,所述第一用户购买所述公益产品时通过智能合约约定。

优选地,通过区块链上的商家下发的数字资产证书,在区块链上完成交易的用户之间的互助资金和赔付标准都将以区块链资产的形式存在。

优选地,在区块链上采用pbft算法以及拜占庭容错算法,避免了错误信息上链。

根据本申请实施例,作为本实施例中的优选,如图2所示,通过多个所述节点验证所述第一新区块中的第一用户交易是否有效包括:

步骤s202,计算多个所述节点的工作量证明或者权益证明;

工作量证明或者权益证明即是区块链中的共识机制。

步骤s204,根据所述工作量证明或者权益证明得到验证所述第一用户交易的第一节点;

各节点进行工作量证明的计算(或者是权益证明等)来决定谁可以验证交易,由最快算出结果的节点来验证交易。

步骤s206,判断所述第一节点是否取得验证所述第一新区块的验证权;以及

步骤s208,如果所述第一节点取得验证所述第一新区块的验证权,则将所述第一新区块广播给剩余n个节点,其中n为自然数。

取得验证权的节点将区块广播给所有节点。最快完成pow的节点,会将自己的区块广播给其他节点。

根据本申请实施例,作为本实施例中的优选,如图3所示,通过多个所述节点验证所述第一新区块中的第一用户交易是否有效包括:

步骤s302,监控节点中的高度变化并查找钱包中的收款地址记录;

区块高度blockheight,作为标识区块序号,描述区块在区块链中的位置。

步骤s304,如果在所述第一新区块中查询到所述收款地址,则在节点确认交易的被确认次数;以及

钱包中记录了可查询到的收款地址。

步骤s306,如果在节点确认交易的被确认次数满足预设条件,则认为所述第一新区块中的第一用户交易为有效。

通过在节点确认交易的被确认次数次数,比如满足6次,则认为在第一新区块中的第一用户交易为有效的。

根据本申请实施例,作为本实施例中的优选,如图4所示,如果通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块包括:

步骤s402,通过多个所述节点验证所述第一用户交易有效,并通过多个所述节点验证并接上所述第一新区块;

各节点验证并接上新区块,其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再窜改资料。

步骤s404,在相关节点上确认所述第一新区块中的所述第一用户交易是否有效;

相关节点是指参与验证的节点。

步骤s406,如果在相关节点上确认所述第一新区块中的所述第一用户交易没有被重复花费且具有有效数字签章,则接受所述第一新区块;

所述第一新区块连接在相关节点上后记录无法修改。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

根据本申请实施例,还提供了一种用于实施上述基于区块链的数字资产处理方法的装置,如图5所示,该装置包括:监测模块10,用于监测在区块链节点或者钱包是否产生第一用户交易;广播模块20,用于监测在区块链节点或者钱包产生第一用户交易,则向区块链中参与该交易的多个节点广播所述第一用户交易,且通过所述多个节点将所述第一用户交易放入第一新区块;验证模块30,用于通过所述多个节点验证所述第一新区块中的第一用户交易是否有效;以及连接模块40,用于通过所述多个节点验证所述第一用户交易有效时,在相关节点上连接所述第一新区块。

优选地,监测模块10还用于通过多个所述节点将多个未验证的用户交易哈希值收集到区块中,每个所述第一新区块中包含多笔用户交易。

优选地,所述数字资产为公益产品,所述第一用户购买所述公益产品时通过智能合约约定。

在本申请实施例的监测模块10中用户交易可能发生在钱包内,比如,用户通过电子钱包进行了扣款,并拟完成相关交易。

用户交易也可能发生在区块链节点上,比如,用户在某个商家购买了商品并进行了付款的行为。

所述第一用户交易时即可实现去中心化的购买。由于在区块链网络上,用户无需承担对互助执行机构的信任风险,可以直接通过智能合约实现群体间的互助协议,并获得自动化赔付。

优选地,监测在区块链节点或者钱包是否产生第一用户交易包括:

通过多个所述节点将多个未验证的用户交易哈希值收集到区块中,每个所述第一新区块中包含多笔用户交易。

在本申请实施例的广播模块20中如果监测到在区块链节点或者钱包上已经产生了第一用户交易,则可以想在区块链中参与该交易的剩余节点通过留言协议分发消息。此外,在发送时还需要验证交易的合法性。

在区块链中,当一笔交易经由某个节点或钱包产生时,这笔交易需要被传送给其它节点来作验证。具体地做法是将交易资料经由数位签章加密并经由hash函数得出一串代表此交易的唯一hash值后,再将这个hash值广播broadcast给区块链网络中的其它参与节点进行验证。

在本申请实施例的验证模块30中当在区块链中产生一笔新交易时会先被广播到区块链网络中的其它参与节点,在各节点将数笔新交易放进区块每个节点会将数笔未验证的交易哈希hash值收集到区块中,每个区块可以包含数百笔或上千笔交易。

在本申请实施例的连接模块40中通过在各节点验证并接上新区块其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再窜改资料。

优选地,在所有节点一旦接受该区块后,先前没算完pow工作的区块会失效,各节点会重新建立一个区块,继续下一回pow计算工作。

在本申请实施例中,通过在广播模块20中采用监测在区块链节点或者钱包是否产生第一用户交易的方式,通过向区块链中参与该交易的多个节点广播所述第一用户交易,且通过多个所述节点将所述第一用户交易放入第一新区块,在验证模块30中达到了通过所述多个节点验证所述第一用户交易有效,则在相关节点上连接所述第一新区块的目的,从而实现了交易透明、交易记录可溯源的技术效果,进而解决了数字资产处理缺乏信任机制、无法去中心化的的技术问题。

根据本申请实施例,作为本实施例中的优选,如图6所示,所述验证模块30包括:监控单元301,用于监控节点中的高度变化并查找钱包中的收款地址记录;确认单元302,用于在所述第一新区块中查询到所述收款地址时,则在节点确认交易的被确认次数;以及交易判断单元303,用于在节点确认交易的被确认次数满足预设条件,则认为所述第一新区块中的第一用户交易为有效。

在本申请实施例的监控单元301中区块高度blockheight,作为标识区块序号,描述区块在区块链中的位置。

在本申请实施例的确认单元302中钱包中记录了可查询到的收款地址。

在本申请实施例的交易判断单元303中通过在节点确认交易的被确认次数次数,比如满足6次,则认为在第一新区块中的第一用户交易为有效的。

根据本申请实施例,作为本实施例中的优选,如图7所示所述连接模块40包括:验证单元401,用于通过多个所述节点验证所述第一用户交易有效,并通过多个所述节点验证并接上所述第一新区块;交易有效判断单元403,用于在相关节点上确认所述第一新区块中的所述第一用户交易是否有效;条件单元402,用于在相关节点上确认所述第一新区块中的所述第一用户交易没有被重复花费且具有有效数字签章时,接受所述第一新区块;其中,所述第一新区块连接在相关节点上后记录无法修改。

在本申请实施例的验证单元401中各节点验证并接上新区块,其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再窜改资料。

在本申请实施例的条件单元402中相关节点是指参与验证的节点。

在本申请实施例的交易有效判断单元403中所述第一新区块连接在相关节点上后记录无法修改。

根据本申请实施例,作为本实施例中的优选,如图8所示,装置还包括:用户访问模块50,用于访问区块链中的任一节点查询用户交易记录,并通过区块链上的相关节点返回交易记录。

请参考图9是本申请中的实现原理示意图,具体地在区块链钱包或者区块链的节点上,用户把交易打包签名后发送至区块链节点1,并验证交易的合法性,使用留言协议向其他节点分发消息,比如在区块链2再将打包好的区块分发至其他节点比如区块链节点n进行交易验证。

进一步地,通过监控节点中的高度变化并查找钱包中的收款地址记录;在所述第一新区块中查询到所述收款地址,则在节点确认交易的被确认次数;以及如果在节点确认交易的被确认次数满足预设条件,则认为所述第一新区块中的第一用户交易为有效。

进一步地,用户通过其他聚到可访问区块链中的任一节点查询用户交易记录,并通过区块链上的相关节点返回交易记录。

显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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