在区块链网络中记录数据区块的方法、记账节点和介质技术

技术编号:20547145 阅读:34 留言:0更新日期:2019-03-09 19:57
本公开提供了一种在区块链网络中记录数据区块的方法、记账节点和介质。所述区块链网络包括记账节点子网络和业务节点子网络。所述记账节点子网络包括将数据区块记录到区块链上的记账节点,所述业务节点子网络包括对记账节点记录到区块链上的数据区块进行验证的业务节点。所述方法包括:利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;将所述交易信息和生成的签名加入所述数据区块,添加到区块链上;将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。本公开实施例能够提高区块链网络的可信度和公正性。

【技术实现步骤摘要】
在区块链网络中记录数据区块的方法、记账节点和介质
本公开涉及区块链领域,具体涉及一种在区块链网络中记录数据区块的方法、记账节点和介质。
技术介绍
在传统的区块链网络中,记账共识和见证完全发生在超级节点形成的共识网络之中,每个超级节点既充当向区块链上记录数据区块的记账节点,又充当共识和见证节点,区块链网络外的其他使用方只能无条件信任由超级节点组成的共识网络。但是,往往区块链网络外的其他使用方才是真正与区块链上记录的数据区块有利益关系的当事人。例如,在传统的发票区块链网络中,开票方开出发票后,将开票事件通过区块链网络中与该开票方对应的超级节点记账,该超级节点根据开票事件生成数据区块,该数据区块在所有超级节点之间进行共识,然后记录在区块链上。开票方和收票方是利益相关的当事人,却不能见证记账过程,只能无条件信任由超级节点组成的共识网络。如果超级节点集体作恶,利益相关的当事人完全没有办法。这种记账权的垄断导致区块链网络的可信度和公正性大大降低。
技术实现思路
本公开的一个目的在于提出一种在区块链网络中记录数据区块的方法、记账节点和介质,能够提高区块链网络的可信度和公正性。根据本公开实施例的一方面,公开了一种在区块链网络中记录数据区块的方法,所述区块链网络包括记账节点子网络和业务节点子网络,所述记账节点子网络包括将数据区块记录到区块链上的记账节点,所述业务节点子网络包括对记账节点记录到区块链上的数据区块进行验证的业务节点,所述方法由记账节点子网络中的一个记账节点执行,所述方法包括:利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;将所述交易信息和生成的签名加入所述数据区块,添加到区块链上;将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。根据本公开实施例的一方面,公开了一种在区块链网络中记录数据区块的记账节点,所述区块链网络包括记账节点子网络和业务节点子网络,所述记账节点子网络包括将数据区块记录到区块链上的记账节点,所述业务节点子网络包括对记账节点记录到区块链上的数据区块进行验证的业务节点,所述方法包括:签名生成单元,用于利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;上链单元,用于将所述交易信息和生成的签名加入所述数据区块,添加到区块链上;发布单元,用于将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。根据本公开实施例的一方面,公开了一种记账节点,包括:存储器,存储有计算机可读指令;处理器,读取存储器存储的计算机可读指令,以执行如上所述的方法。根据本公开实施例的一方面,公开了一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的方法。鉴于现有技术中每个超级节点既充当向区块链上记录数据区块的记账节点,又充当共识和见证节点,区块链网络外的其他使用方只能无条件信任由超级节点组成的共识网络的现状,本公开实施例将记账节点子网络和业务节点子网络分开,提出了记账与见证分离的双层共识网络方案。记账节点子网络中的记账节点负责向区块链记录数据区块,业务节点子网络中的业务节点负责见证记账节点记录的结果。具体地,记账节点基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名,然后将所述交易信息和生成的签名加入所述数据区块,进行上链。所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。业务节点子网络中的业务节点通过验证区块上记账节点签名可以对全网的交易数据进行见证。记账网络虽然拥有垄断的记账权,但是因为数据区块有了代表记账者身份的数字签名,所以一切行为都是公开可追溯的。如果记账节点集体作恶,那么见证网络中的全部节点都将保留有具体记账节点作恶的证据。相比传统中心化系统和私有链,这个方案中,系统的运转是更加透明的;而相比传统的去中心化公链方案,本方案是更可控也更便于可监管的。本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。图1A-1C示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法的三种体系构架图。图2A-2C示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法应用在供应链金融、电子发票、法定数字货币三种不同的应用场景下的场景构架图。图3A-3G示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法应用在供应链金融应用场景下的业务节点显示界面图,这些界面图表示了供应链金融应用场景下记账和见证的大体过程。图4A-4G示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法应用在电子发票应用场景下的业务节点显示界面图,这些界面图表示了电子发票应用场景下记账和见证的大体过程。图5A-5G示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法应用在法定数字货币应用场景下的业务节点显示界面图,这些界面图表示了法定数字货币应用场景下记账和见证的大体过程。图6示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法的流程图。图7示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法的流程图。图8示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法的流程图。图9示出了根据本公开一个实施例的图8中步骤333的一个具体流程图。图10示出了根据本公开一个实施例的图8中步骤333的一个具体流程图。图11示出了根据本公开一个实施例的图10中步骤33313的一个具体流程图。图12示出了根据本公开一个实施例的在区块链网络中记录数据区块的方法的流程图。图13示出了根据本公开一个实施例的图6中步骤310的一个具体流程图。图14示出了根据本公开一个实施例的选取执行在区块链网络中记录数据区块的方法的记账节点的流程图。图15示出了根据本公开一个实施例的图14中步骤430的一个具体流程图。图16示出了根据本公开一个实施例的图15中步骤4303的一个具体流程图。图17示出了根据本公开一个实施例的选取执行在区块链网络中记录数据区块的方法的记账节点的流程图。图18示出了根据本公开一个实施例的图17中步骤530的一个具体流程图。图19示出了根据本公开一个实施例的数据区块结构示意图。图20示出了根据本公开一个实施例的记账节点之间共识的过程。图21示出了根据本公开一个实施例的在区块链网络中记录数据区块的记账节点的模块图。图22示出了根据本公开一个实施例的记账节点的硬件结构图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些示例实施方式使得本公开的描述将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们本文档来自技高网...

【技术保护点】
1.一种在区块链网络中记录数据区块的方法,其特征在于,所述区块链网络包括记账节点子网络和业务节点子网络,所述记账节点子网络包括将数据区块记录到区块链上的记账节点,所述业务节点子网络包括对记账节点记录到区块链上的数据区块进行验证的业务节点,所述方法由记账节点子网络中的一个记账节点执行,所述方法包括:利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;将所述交易信息和生成的签名加入所述数据区块,添加到区块链上;将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。

【技术特征摘要】
1.一种在区块链网络中记录数据区块的方法,其特征在于,所述区块链网络包括记账节点子网络和业务节点子网络,所述记账节点子网络包括将数据区块记录到区块链上的记账节点,所述业务节点子网络包括对记账节点记录到区块链上的数据区块进行验证的业务节点,所述方法由记账节点子网络中的一个记账节点执行,所述方法包括:利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;将所述交易信息和生成的签名加入所述数据区块,添加到区块链上;将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证。2.根据权利要求1所述的方法,其特征在于,所述将所述交易信息和生成的签名加入所述数据区块,添加到区块链上,包括:将所述交易信息、生成的签名连同对该数据区块中要包括的交易信息计算出的摘要加入所述数据区块,添加到区块链上;所述将所述签名发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥对所述签名进行签名验证,包括:将所述签名和所述摘要发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥、接收到的摘要对所述签名进行签名验证。3.根据权利要求2所述的方法,其特征在于,所述将所述交易信息、生成的签名连同对该数据区块中要包括的交易信息计算出的摘要加入所述数据区块,添加到区块链上,包括:将所述交易信息加入数据区块的区块体;将所述摘要和签名加入数据区块的区块头;将所述数据区块添加到区块链上;所述将所述签名和所述摘要发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥、接收到的摘要对所述签名进行签名验证,包括:将所述区块头发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账节点的密钥、所述区块头中的摘要对所述区块头中的签名进行签名验证。4.根据权利要求3所述的方法,其特征在于,所述将所述区块头发往所述业务节点子网络中的业务节点,包括:将所述区块头发往代理节点,所述代理节点是所述业务节点子网络中的一个业务节点;通过代理节点,将所述区块头广播到所述业务节点子网络中所述代理节点以外的其它业务节点。5.根据权利要求3所述的方法,其特征在于,所述将所述区块头发往所述业务节点子网络中的业务节点,包括:将所述区块头发往代理节点,所述代理节点是所述业务节点子网络中的一个业务节点;将代理节点作为发送节点,将所述区块头发送到尚未接收到该区块头的其它业务节点中、离所述发送节点最近的业务节点,并以接收到该区块头的节点作为发送节点,直到所有其它业务节点都接收到该区块头。6.根据权利要求5所述的方法,其特征在于,所述将所述区块头发送到尚未接收到该区块头的其它业务节点中、离所述发送节点最近的业务节点,包括:确定所述业务节点子网络中除所述发送节点之外的所有其它业务节点与所述发送节点的距离;向所述距离最小的其它业务节点发送所述区块头,其中,如果接收到所述区块头的其它业务节点之前已经接收到该区块头,向所述发送节点发送拒绝应答;如果接收到拒绝应答,从所述距离比发送拒绝应答的其它业务节点离发送节点的距离大的其它业务节点中,选择所述距离最小的其它业务节点发送所述区块头,直到接收到接受应答。7.根据权利要求3所述的方法,其特征在于,对该数据区块中要包括的交易信息计算出的摘要是根据该数据区块中要包括的每条交易信息的哈希值计算出的默克尔树根,在将所述区块头发往所述业务节点子网络中的业务节点,使业务节点根据特定于该记账...

【专利技术属性】
技术研发人员:李茂材蓝虎王宗友周开班屠海涛张劲松时一防杨常青孔利朱耿良丁勇刘区城陈秋平王鹏
申请(专利权)人:深圳市智税链科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1