一种用于区块链的双重签名交易账方法及系统与流程

文档序号:24240657发布日期:2021-03-12 13:15阅读:285来源:国知局
一种用于区块链的双重签名交易账方法及系统与流程

本发明涉及区块链技术领域,特别是一种用于区块链的双重签名交易账方法及系统。



背景技术:

区块链是信用时代最重要的基础设施之一,在其之上将承载人类活动几乎一切的活动,甚至包括为人类提供服务的一切设备,在这些设备中,有些具备很高的计算能力与存储能力,所以其可以独立完成一些计算与存储工作,让其功能可以做的很强大,甚至可以作为一个普通区块链的节点使用,但为人类提供服务的设备不一定都是这样拥有强大计算能力与存储能力的设备,有可能是极轻量级的,只能进行简单计算的微型设备,这些不能参与复杂的计算,也不能存储很多数据,那么当它参与到区块链的基础设施中时,将很难独立提供服务,往往需要额外的第三方服务提供计算与存储作为中转,当这个服务涉及数字资产如资金类服务时,采用第三方的服务不仅违背了区块链的去中心的设计原则,还让这些设备暴露在不可控的风险中。那么,如何在不借助第三方服务的情况下,区块链上的轻便型节点甚至是微型设备也能自己处理资金账户,成为一个急需解决的问题。



技术实现要素:

本发明旨在提出一种用于区块链的双重签名交易账方法及系统,通过交易管理器、账务管理器以及区块管理器的交互访问,解决了无全量数据无法计算账务信息的问题,为实现轻节点成为区块链节点提供了基础,从而实现了真正万物互联的技术基础作用。

一种用于区块链的双重签名交易账方法,所述双重签名交易账方法包括:

s1、启动节点,当节点接收来自区块链网络产生的交易后,所述节点检查交易信息以及交易签名的合法性,所述节点将交易放入未处理交易队列等待新区快锻造时进行处理;

s2、通过获取本地最新区块以及所述最新区块的哈希值后开始创建新区块,将未处理交易队列当中的交易进行循环处理;

s3、当未处理交易在处理过程中发现不合法时丢弃该交易,未处理交易队列中的交易在区块锻造时间内进行,将所有已处理交易放入区块体中的已处理池,完成区块锻造。

进一步的,所述循环处理未处理交易队列当中的交易包括:

提取未处理交易,获取所述未处理交易的主体信息,通过检查交易信息以及交易签名的合法性,当交易信息和交易签名都合法时,获取交易发起者的资产信息,检查交易发起者的资产是否足够以及资产是否可转移后开始账务处理;

当交易信息、交易签名、资产充足度以及资产可转移性任意一项不满足条件时,选择丢弃该交易。

进一步的,所述账务处理过程包括:

当交易信息和交易签名均合法,资产充足且可转移时提取交易发起者开始时的账户摘要信息,将所述账户摘要信息存入交易体;

提取交易接收者开始时的账户摘要信息并将交易接收者的账户摘要信息存入交易体;

通过下账交易发起者的资产以及上账交易接收者的资产,然后将交易发起者和交易接收者上下账后打的账户摘要信息存入交易体,完成账务处理。

本发明在上述方法的基础上还延伸出一种用于区块链的双重签名交易账系统,所述系统包括:

交易管理器:用于存储、创建以及查询交易,所述交易包括交易常规所需要包含的字段信息以及专门用于存储涉及交易发起者和交易接收者双方的账务摘要信息的存储区域;

账务管理器:用于存储、变更以及查询账务,通过全量交易计算出变更账务,账务变更后需要从所述账务管理器同步到交易的存储账务摘要的区域;

区块管理器:用于处理交易、创建区块以及存储区块,通过将交易发起者和交易接收者的账务摘要信息纳入区块签名的保护范围内保证账务摘要信息的合法性;

在该系统中,当交易管理器接收交易后检查交易签名以及交易信息的合法性后,通知区块管理器进入区块锻造,区块锻造器通过创建空白区块并将上一个区块的哈希值放入该空白区块,账务管理器获取交易发起者的资产信息并检查资产状态,当满足交易条件下,账务管理器提取发起者账户摘要信息,交易管理器将该摘要信息存入交易体,再由账务管理器执行上下账操作并完成账务处理,区块管理器在规定时间内完成区块锻造并由交易管理器完成交易的处理,所述交易管理器、账务管理器、区块管理器互相交叉网状连接,可以互相进行数据访问。

进一步的,所述交易管理器包括:

交易存储模块:用于存储涉及的交易,包括未处理的交易、已处理的交易;

交易创建模块:用于创建新交易以及对接收到的交易进行基本信息校验,新交易的类型根据上层应用的需要提供不同种类的交易,用以支持不同的业务场景;

交易查询模块:用于提供交易查询服务,为区块锻造模块提供交易,为外部区块链节点提供数据查询接口。

进一步的,所述账务管理器包括:

账务存储模块:用于存储区块链上参与者的账务以及账务中持有的资产;

账务变更模块:用于管理账务的创建、更新、作废操作;

账务查询模块:用于为区块锻造模块提供账务查询操作,账务查询操作的使用时间仅限于区块锻造期间。

进一步的,所述账务变更模块的创建、更新、作废操作包括:

当需要创建新账户时,账务变更模块为账户创建一对私钥用于确认账户的所有权;

当账户需要更新时,检查账户的所有权是否与变更申请人一致,变更内容是否合法以及交易所涉及资产转移时是否足额,当所有检查项全部符合后开始更新,若存在任意一项检查项不符合则停止更新;

当作废账户时,包括但不限于删除账户数据以及采用非联系方式,作废账户根据交易业务的不同选择不同的作废方式。

进一步的,所述区块管理器包括:

存储区块模块:用于存储节点锻造的区块以及从区块链网络接收的区块,并在回滚以及启动时校验区块的合法性以及是否存在缺失;

区块锻造模块:用于创建新区快,并将未处理交易进行处理后放入新区快中,所述未处理交易包括但不限于账务类交易;

区块同步模块:用于向外广播节点锻造的区块以及节点接收到的新区快,通过校验接收和锻造的新区快后进行合法性的校验,当核对区块签名后的交易体中的账务摘要信息一致后判定所述账务摘要信息为有效数据。

进一步的,所述区块锻造模块在处理账务类交易时包括:

在计算账务的上下账前将交易双方的余额及其他账务摘要信息存入交易体中;

在交易处理结束时给重新获取账务的最新信息,并将账户余额及其他账务摘要信息传入交易体中;

当完成所有交易的处理后,给区块打上签名,将新写入的账务摘要纳入签名范围内。

本发明为了解决无全量数据无法计算账务信息以及轻型设备无法独立处理账务的问题,提出了交易双签名模式,具体是通过交易管理器、账务管理器、区块管理器互相交叉进行连接访问,不仅实现历史变动追溯问题,也实现了在不用同步大量数据与算力的情况下用一条记录得知账户概况的功能。

附图说明

图1为本发明所提及用于区块链的双重签名交易账方法的流程示意图;

图2是本发明所提及用于区块链的双重签名交易账系统的组成示意图;

图3是本发明所提及用于区块链的双重签名交易账系统中交易管理器的组成示意图;

图4是本发明所提及用于区块链的双重签名交易账系统中账务管理器的组成示意图;

图5是本发明所提及用于区块链的双重签名交易账系统中区块管理器的组成示意图,

其中:100交易管理器;200账务管理器;300区块管理器101交易存储模块;102交易创建模块;103交易查询模块;201账务存储模块;202账务变更模块;203账务查询模块;301存储区块模块;302区块锻造模块;303区块同步模块

具体实施方式

下面结合附图和具体实施例对本发明作进一步详述。在此需要说明的是,下面所描述的本发明各个实施例中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。

区块链作为信任平台建设的重要基础,往往要求处于区块链网络上的节点要有很高的计算能力与存储能力,但是往往轻量节点不具备这一条件,只能进行简单计算的微型设备是没法参与到区块链网络活动当中来的,特别是在处理资金账务往来的交易时因其算力与存储能力的缺陷需要借助第三方大节点或者中转节点的帮助,但是这样一来又与区块链去中心的机制原则是相违背的。

因此为了解决轻型设备无法独立处理账务与无全量数据无法计算账务信息的问题,本发明提出如下技术方案:

如图1所示,一种用于区块链的双重签名交易账方法,所述双重签名交易账方法具体包括:

s1、启动节点,当节点接收来自区块链网络产生的交易后,所述节点检查交易信息以及交易签名的合法性,所述节点将交易放入未处理交易队列等待新区快锻造时进行处理;

s2、通过获取本地最新区块以及所述最新区块的哈希值后开始创建新区块,将未处理交易队列当中的交易进行循环处理,首先提取未处理交易,获取所述未处理交易的主体信息,然后通过检查交易信息以及交易签名的合法性,当交易信息和交易签名都合法时,获取交易发起者的资产信息,检查交易发起者的资产是否足够以及资产是否可转移后开始账务处理,当交易信息、交易签名、资产充足度以及资产可转移性任意一项不满足条件时,选择丢弃该交易。

账务处理的过程又具体包括:当交易信息和交易签名均合法,资产充足且可转移时提取交易发起者开始时的账户摘要信息,将所述账户摘要信息存入交易体;

提取交易接收者开始时的账户摘要信息并将交易接收者的账户摘要信息存入交易体;

通过下账交易发起者的资产以及上账交易接收者的资产,然后将交易发起者和交易接收者上下账后打的账户摘要信息存入交易体,完成账务处理。

s3、当未处理交易在处理过程中发现不合法时丢弃该交易,未处理交易队列中的交易在区块锻造时间内进行,将所有已处理交易放入区块体中的已处理池,完成区块锻造。

本发明结合上述s1-s3所述的双重签名交易账方法的过程延伸出一种用于区块链的双重签名交易账系统,如图2所示,包括但不限于交易管理器100、账务管理器200、区块管理器300在内组成的逻辑单元。

交易管理器100:用于存储、创建以及查询交易,所述交易包括交易常规所需要包含的字段信息以及专门用于存储涉及交易发起者和交易接收者双方的账务摘要信息的存储区域;

如图3所示,所述交易管理器100内又包括有交易存储模块101、交易创建模块102以及交易查询模块103,交易存储模块101用于存储涉及的交易,包括未处理的交易、已处理的交易,对于无效的交易将直接丢弃,当区块锻造模块302开始处理交易时,将从交易存储模块101当中的未处理交易列表中提取交易,然后继续正常处理交易,并将处理后的交易存储到交易存储模块101的已处理交易当中;

交易创建模块102:用于创建新的一笔交易以及对接收到的交易进行基本信息校验,新交易的类型根据上层应用的需要提供不同种类的交易,用以支持不同的业务场景;

交易查询模块103:用于提供交易查询服务,为区块锻造模块302提供交易,为外部区块链节点提供数据查询接口。

账务管理器200:用于存储、变更以及查询账务,账务管理器200是整个账务交易处理中的核心,也是交易处理的基础,它需要通过全量交易计算出变更账务,账务变更后需要从所述账务管理器200同步到交易的存储账务摘要的区域,如图4所示,账务管理器200内部又包括账务存储模块201、账务变更模块202以及账务查询模块203,这三个模块具体工作及作用如下所示:

账务存储模块201:用于存储区块链上参与者的账务以及账务中持有的资产,本发明所提及到的资产包括但不限于货币、权益、表情等,在此需要说明的是资产种类的选取并不会对本发明的保护范围进行限定;

账务变更模块202:用于管理账务的创建、更新、作废操作,当需要创建新账户时,账务变更模块202为账户创建一对私钥用于确认账户的所有权;当账户需要更新时,检查账户的所有权是否与变更申请人一致,变更内容是否合法以及交易所涉及资产转移时是否足额,当所有检查项全部符合后开始更新,若存在任意一项检查项不符合则停止更新;当作废账户时,包括但不限于删除账户数据以及采用非联系方式,作废账户根据交易业务的不同选择不同的作废方式;

账务查询模块203:用于为区块锻造模块302提供账务查询操作,账务查询操作的使用时间仅限于区块锻造期间,因为账务余额没有有效的在其他单节点环境下能识别是否被篡改的机制,因此不对外部区块链节点提供账务查询接口。

区块管理器300:用于处理交易、创建区块以及存储区块,通过将交易发起者和交易接收者的账务摘要信息纳入区块签名的保护范围内保证账务摘要信息的合法性,除了创建区块、广播区块、同步区块以及校验区块之外,区块管理器300在本发明中起到的另外一个作用时保障记入交易中的账务摘要是有效的,由于账务摘要不在交易发起者的签名范围内,所以需要第二次的签名来保证交易数据不被篡改,区块管理器300会将这些后来添加的账务摘要纳入区块签名的保护范围内,与区块的可靠性绑定在一起。这样,当微型设备通过区块链的统一共识接口从区块链网络中任意节点获取到自己的最后一条已处理交易后,就可以获知自己的最新余额等账务摘要信息,而不用从头开始自己计算一遍,有效节省算力与存储能力。

如图5所示,区块管理器300内部又包括了存储区块模块301、区块锻造模块302以及区块同步模块303,存储区块模块301用于存储节点锻造的区块以及从区块链网络接收的区块,并在回滚以及启动时校验区块的合法性以及是否存在缺失;区块锻造模块302用于创建新区快,并将未处理交易进行处理后放入新区快中,所述未处理交易包括但不限于账务类交易,在计算账务的上下账前将交易双方的余额及其他账务摘要信息存入交易体中;在交易处理结束时给重新获取账务的最新信息,并将账户余额及其他账务摘要信息传入交易体中;当完成所有交易的处理后,给区块打上签名,将新写入的账务摘要纳入签名范围内;区块同步模块303用于向外广播节点锻造的区块以及节点接收到的新区快,通过校验接收和锻造的新区快后进行合法性的校验,当核对区块签名后的交易体中的账务摘要信息一致后判定所述账务摘要信息为有效数据

在该系统中,当交易管理器100接收交易后检查交易签名以及交易信息的合法性后,通知区块管理器300进入区块锻造,区块管理器300通过创建空白区块并将上一个区块的哈希值放入该空白区块,账务管理器200获取交易发起者的资产信息并检查资产状态,当满足交易条件下,账务管理器200提取发起者账户摘要信息,交易管理器100将该摘要信息存入交易体,再由账务管理器200执行上下账操作并完成账务处理,区块管理器300在规定时间内完成区块锻造并由交易管理器100完成交易的处理,所述交易管理器100、账务管理器200、区块管理器300互相交叉网状连接,可以互相进行数据访问,为实现轻节点成为区块链节点提供了基础,实现了真正万物互联的技术基础作用。

以上所述,仅是本发明的较佳实施例而已,并非对本发明的技术范围作任何限制,故但凡依本发明的权利要求和说明书所做的变化或修饰,皆应属于本发明专利涵盖的范围之内。

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