一种区块链认证唯一性确认方法技术

技术编号:22534873 阅读:83 留言:0更新日期:2019-11-13 11:01
本发明专利技术提供了一种区块链认证唯一性确认方法,该方法包括:为每个联盟构建动态的授权节点集,分区核实虚拟令牌唯一性;联盟的代理将块头文件数据广播给内部所有确认节点;确认节点按照头信息的顺序,同一时刻的同一虚拟令牌只能认证一次,即同一VC_ID不允许出现在其他联盟的块头文件数据中。本发明专利技术提出的区块链认证唯一性确认方法,通过全局联盟区块由入账节点集广播给所有联盟的代理,由代理再将消息或者区块广播给所属联盟的认证节点,能够帮助消除由直接广播给全网节点引发的网络堵塞,缓解了消息超时或者区块更新延迟过长。

A method to confirm the uniqueness of blockchain authentication

The invention provides a blockchain authentication uniqueness confirmation method, which includes: building a dynamic set of authorization nodes for each alliance, verifying the uniqueness of virtual token by partition; the agent of the alliance broadcasts the block header file data to all internal confirmation nodes; according to the order of header information, the same virtual token at the same time can only be authenticated once, that is, the same vc_id is not the same It is allowed to appear in the block header data of other federations. The block chain authentication uniqueness confirmation method proposed by the invention can help eliminate the network blocking caused by direct broadcasting to the whole network node, and alleviate the message timeout or block update delay too long by broadcasting the global alliance block from the posting node set to all the alliance agents, and then broadcasting the message or block to the authentication node of the alliance.

【技术实现步骤摘要】
一种区块链认证唯一性确认方法
本专利技术涉及区块链,特别涉及一种区块链认证唯一性确认方法。
技术介绍
区块链是利用链式数据结构来核实与存储数据的分布式基础架构。由于区块链网络能够通过算法实现节点间相互核实,分布式记账方式无需依赖中央服务器即可实现安全的身份认证。每个新产生的区块严格按照时间线顺序推进,试图入侵篡改区块链内数据信息的行为容易被追溯。因此,区块链技术在身份认证领域得到了日益广泛的应用。然而,现有技术中的区块链随着数据体量越来越大,如果每一次身份认证都要经过所有认证节点的核实,明显会导致延迟和吞吐量较低;而将所有身份认证数据汇总起来使得账本的数据量几何级增长,如果由单个认证节点维护,显然也会导致整个区块链系统的存储成本较高。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种区块链结构化存储控制方法,包括:将多个联盟组成联盟区块链,联盟中的多个认证节点所组成的区块链存储虚拟令牌的身份认证内容;为每个联盟动态地确定授权节点集,用于对虚拟令牌的唯一性进行核实。优选地,所述联盟具有唯一的身份标识,请求认证双方可通过不同联盟发起认证请求,并可在任一的联盟上传输虚拟令牌,所述虚拟令牌全局唯一。优选地,将所述认证请求描述为:TR=(src,des,VC_ID,key,TR_ID);其中VC_ID为所述虚拟令牌VC的全网唯一标识,src表示虚拟令牌发出方;des表示虚拟令牌接收方;key表示请求认证双方私钥;TR_ID表示认证请求的全网唯一认证请求ID;所述认证请求TR具有三种状态:S(TR)={未确定,未生效,生效};通过核实身份认证内容满足唯一性,将身份的状态由未确定转为生效;通过核实身份认证内容不满足唯一性,身份的状态由未确定转为未生效。优选地,所述授权节点集随时间动态变化,每个联盟的授权节点集从全网其他联盟的认证节点中投票产生。优选地,所述从全网其他联盟的认证节点中投票产生每个联盟的授权节点集的操作由的当前联盟的代理所发起,所述代理从当前联盟的内部区块链投票选出,并负责与其他联盟的代理通信。优选地,所有联盟的授权节点集从全网节点中随机选择一组节点作为入账节点集;授权节点集所包含的确认节点将满足唯一性的身份认证的散列索引发送给入账节点集;入账节点集更新全局联盟区块。优选地,为所述授权节点集和入账节点集设置有效期。本专利技术相比现有技术,具有以下优点:本专利技术提出了一种区块链结构化存储控制方法,通过构建多层次区块链结构实现了区块容量可扩展,并减轻了身份认证过程导致的延迟增加问题,保证了每次身份认证在整个区块链系统中的唯一性。附图说明图1是根据本专利技术实施例的区块链结构化存储控制方法的流程图。具体实施方式下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。本专利技术的一方面提供了一种区块链结构化存储控制方法。图1是根据本专利技术实施例的区块链结构化存储控制方法流程图。本专利技术构建多层次的联盟区块链,参与方为多个联盟,联盟具有唯一的身份标识,每个联盟由多个认证节点组成,各个联盟的区块链存储虚拟令牌的内部身份认证内容;虚拟令牌全局唯一,可在任意联盟被传输;请求认证双方可通过不同联盟发起认证请求,并可在任一的联盟上传输虚拟令牌。各联盟维护内部的区块链,所有联盟集体维护全局联盟链;每个联盟的授权节点集核实虚拟令牌的唯一性,保证虚拟令牌在不同的联盟中均满足唯一性。通过为每个联盟构建动态的授权节点集,分区核实虚拟令牌唯一性,提高系统吞吐量;授权节点集随时间动态变化,防止联盟相互勾结篡改数据。全局联盟链存储有可靠的令牌散列索引,每个联盟的区块链存储内部认证节点的认证数据。联盟的内部区块链投票选出一个认证节点,称为该联盟的代理,代理负责与其他联盟的代理通信;从全网其他联盟的认证节点中投票产生当前联盟的授权节点集。所有联盟的授权节点集从全网节点中随机选择一组节点作为入账节点集;联盟的初始授权节点集由联盟的代理从全网节点中投票产生,入账节点集由所有联盟的初始节点集从全网节点中投票产生。联盟的代理将块头文件数据广播给联盟的授权节点集;联盟的授权节点集核实身份认证是否满足唯一性;联盟的确认节点将满足唯一性的身份认证的散列索引发送给入账节点集;入账节点集更新全局联盟区块。所述虚拟令牌VC通过VC_ID全网唯一标识。所述认证请求描述为TR=(src,des,VC_ID,key,TR_ID),src表示虚拟令牌发出方;des表示虚拟令牌接收方;key表示请求认证双方私钥;TR_ID表示认证请求ID,认证请求ID全网唯一。认证结果具有三种状态S(TR)={未确定,未生效,生效}。通过核实身份认证内容满足唯一性,身份的状态由未确定转为生效;通过核实身份认证内容不满足唯一性,身份的状态由未确定转为未生效。生效的认证TR即满足唯一性的身份认证。所述联盟Ai∈{P1,…,PN},N表示区块链网络中联盟的数量。联盟Ai表示区块链网络中不同的参与方利用公钥地址进行标识,并保存其他联盟的身份标识。每个联盟包含多个认证节点ANij,j≤ni,ANij表示联盟Ai的第j个认证节点,ni表示联盟Ai的认证节点数量。认证节点之间通过异步消息机制进行通信。根据不同的需求对钱包设置不同的角色,包括:入账节点UN、确认节点VN、普通认证节点ON。入账节点负责维护全局联盟链;确认节点负责核实身份认证是否满足唯一性;入账节点与确认节点均维护内部的区块链以及核实身份认证是否满足组织内的统一性。普通认证节点仅仅发起认证请求、维护内部的区块链以及核实身份认证是否满足组织内的统一性。认证节点通过公钥地址进行标识。联盟Ai的所有认证节点ANij存储联盟Ai的私钥,利用联盟Ai的私钥及认证节点的私钥对区块进行签名。联盟Ai的授权节点集VNGi由确认节点组成,核实联盟Ai的认证是否满足唯一性;联盟Ai的授权节点集随时间动态变化,当前授权节点集从全网节点中随机选择一组节点作为联盟Ai的下一有效期确认节点集。入账节点集UNGi由入账节点组成,当前入账节点集由每个单位有效期所有联盟的授权节点集的主节点从全网中随机选择一组节点组成,并随时间动态变化。举例而言,假设全网由联盟A1,A2,A3三个联盟组成,每个联盟分别包含7个认证节点。经过投票选出认证节点A11,A21,A31作为每个联盟相应的代理。则A11负责从其他联盟A2,A3的认证节点中投票产生联盟A1的授权节点集VNG1,假设初始VNG1节点集为A22,A35。A21负责从联盟A1,A3的认证节点中投票产生联盟A2的授权节点集VNG2,假设初始VNG2节点集为A12,A34。A31负责从联盟A1,A2的认证节点中投票产生联盟A3的授权节点集VNG3,假设初始VNG3节点集为A15,A24。所有上述授权节点集A22,A35,A12,A34,A15,A24从全网节点中随机选择一组节点作为入账节点集,假设为A23,A37,A15。即节点A22本文档来自技高网...

【技术保护点】
1.一种区块链认证唯一性确认方法,其中,所述区块链为多层次的联盟区块链,参与方为多个联盟,每个联盟由多个认证节点组成,各个联盟的区块链存储虚拟令牌的内部身份认证内容;每个联盟的授权节点集核实虚拟令牌的唯一性,保证虚拟令牌在不同的联盟中均满足唯一性,其特征在于,包括以下步骤:为每个联盟构建动态的授权节点集,分区核实虚拟令牌唯一性;联盟的代理将块头文件数据广播给内部所有确认节点;确认节点按照头信息的顺序,根据以下规则进行联盟区块的唯一性核实:同一时刻的同一虚拟令牌只能认证一次,即同一VC_ID不允许出现在其他联盟的块头文件数据中。

【技术特征摘要】
1.一种区块链认证唯一性确认方法,其中,所述区块链为多层次的联盟区块链,参与方为多个联盟,每个联盟由多个认证节点组成,各个联盟的区块链存储虚拟令牌的内部身份认证内容;每个联盟的授权节点集核实虚拟令牌的唯一性,保证虚拟令牌在不同的联盟中均满足唯一性,其特征在于,包括以下步骤:为每个联盟构建动态的授权节点集,分区核实虚拟令牌唯一性;联盟的代理将块头文件数据广播给内部所有确认节点;确认节点按照头信息的顺序,根据以下规则进行联盟区块的唯一性核实:同一时刻的同一虚拟令牌只能认证一次,即同一VC_ID不允许出现在其他联盟的块头文件数据中。2.根据权利要求1所述的区块链认证唯一性确认方法,其特征在于,所述联盟的代理为联盟的内部区块链投票选出的一个认证节点,负责与其他联盟的代理通信;所述当前联盟的授权节点集是从全网其他联盟的认证节点中投票产生的;所述方法还包括,所有联盟的授权节点集从全网节点中随机选择一组节点作为入账节点集;联盟的初始授权节点集由联盟的代理从全网节点中投票产生;入账节点集由所有联盟的初始节点集从全网节点中投票产生;所有联盟的授权节点集从全网节点中随机选择一组节点作为入账节点集。3.根据权利要求1-2任一项所述的区块链认证唯一性确认方法,其特征在于,所述方法还包括:联盟的确认节点将满足唯一性的身份认证的散列索引发送给入账节点集,入账节点集更新全局联盟区块。4.根据权利要求1-2任一项所述的区块链认证唯一性确认方法,其特征在于,所述虚拟令牌通过VC_ID全网唯一标识;所述认证请求描述为TR=(src,des,VC_ID,key,TR_ID),src表示虚拟令牌发出方;des表示虚拟令牌接收方;key表示请求认证双方私钥;TR_ID表示认证请求ID,认证请求ID全网唯一。5.根据权利要求1-2任一项所述的区块链认证唯一性确认方法,其特征在于,块头文件包含以下信息:内部区块所有认证的TR_ID列表,相关的认证方列表,联盟私钥,创建时间,前一区块的哈希值,VC_ID列表,当前全局联盟区块的ID。6.根据权利要求1-2任一项所述的区块链认证唯一性确认方法,其特征在于,联盟的授权节点集将当前节点集核实后具备唯一性的...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:广州知弘科技有限公司
类型:发明
国别省市:广东,44

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

1