【技术实现步骤摘要】
一种基于改进型聚类算法的区块链系统共识的方法和装置
本专利技术涉及区块链领域,特别是一种基于改进型聚类算法的区块链系统共识的方法和装置。
技术介绍
区块链技术是由多种已存在的技术(P2P网络、密码学等)组合形成的具有去中心化的记录技术。目前区块链没有统一的定义,维基百科上对区块链的定义是:区块链(bolckchain)是利用分布式的数据库对信息进行甄别、传播和记录的对等网络,简言之,区块链在本质上就是一个具有去中心化特征的分布式数据库,区块链技术从本质来说是一个分布式的数据库技术,网络内的节点利用密码学、共识算法、点对点通信等技术,共同维护全网数据的一致性和完整性。现有区块链分为公有链、联盟链以及私有链三种形式,其中公有链目前实现共识的算法,主要有工作量证明(ProofofWork,POW)、权益证明(ProofofStack,POS)和股份授权证明(DelegateProofofStack,DPoS)等,而联盟链以及私有链因为自身特性的问题,不适合使用公有链的共识算法,一般联盟链以及私有链实现共识的算法主要是实用拜占庭容错算法(PracticalByzantin ...
【技术保护点】
1.一种基于改进型聚类算法的区块链系统共识的方法,其特征在于,所述区块链系统包括:多个共识节点;所述区块链系统通过所述改进型聚类算法,对所述区块链中所有的共识节点进行聚类,形成多个簇,所述多个簇中的每一个簇包括:聚类中心节点和非聚类中心节点,一个簇包括多个共识节点,该簇包括的多个共识节点中的主节点即为该簇的聚类中心节点,该簇包括的多个共识节点中的从节点即为该簇的非聚类中心节点;所述区块链系统通过所述改进型聚类算法,对所述多个簇进行分层,所述多个簇中的每个簇形成一个子共识集群,所述多个簇各自包括的聚类中心节点形成骨干共识集群;所述方法包括:第一聚类中心节点接收多个请求,所述多 ...
【技术特征摘要】
1.一种基于改进型聚类算法的区块链系统共识的方法,其特征在于,所述区块链系统包括:多个共识节点;所述区块链系统通过所述改进型聚类算法,对所述区块链中所有的共识节点进行聚类,形成多个簇,所述多个簇中的每一个簇包括:聚类中心节点和非聚类中心节点,一个簇包括多个共识节点,该簇包括的多个共识节点中的主节点即为该簇的聚类中心节点,该簇包括的多个共识节点中的从节点即为该簇的非聚类中心节点;所述区块链系统通过所述改进型聚类算法,对所述多个簇进行分层,所述多个簇中的每个簇形成一个子共识集群,所述多个簇各自包括的聚类中心节点形成骨干共识集群;所述方法包括:第一聚类中心节点接收多个请求,所述多个请求为所述第一聚类中心节点所属的子共识集群中的任一共识节点接收的交易内容,所述第一聚类中心节点为所述多个簇中任一个簇包括的聚类中心节点;所述第一聚类中心节点将接收到的所述多个请求打包为区块;所述第一聚类中心节点将所述区块广播至其所属的子共识集群中进行共识;若所述区块通过所述第一聚类中心节点所属的子共识集群的共识验证,则所述第一聚类中心节点将通过子共识集群共识验证的区块广播至所述骨干共识集群中进行共识;若通过子共识集群共识验证的区块通过所述骨干共识集群的共识验证,则所述骨干共识集群中每一个所述聚类中心节点都对通过所述骨干共识集群共识验证的区块进行数字签名,并广播至除自身之外其他的所有所述聚类中心节点,所述骨干共识集群中每一个所述聚类中心节点接收到多个所述数字签名,形成数字签名集合;所述骨干共识集群中每一个所述聚类中心节点将接收到的数字签名集合和通过所述骨干共识集群共识验证的区块,打包成提交消息,并将提交消息广播至其所属的子共识集群中;任一所述子共识集群中每一个所述非聚类中心节点接收到所述提交消息,对所述数字签名集合进行验证;若所述数字签名集合通过验证,则执行对应于所述数字签名集合通过验证的区块的交易内容,并将该区块上链存储。2.根据权利要求1所述的方法,其特征在于,所述骨干共识集群中的每一个所述聚类中心节点都包括:自身的节点编号,在每一个所述聚类中心节点将接收到的数字签名集合和通过所述骨干共识集群共识验证的区块,打包成提交消息,并将提交消息广播至其所属的子共识集群中之后,所述方法还包括:所述区块链系统确定所述骨干共识集群中所有所述聚类中心节点广播的区块中的末尾区块的块编号;所述区块链系统根据所述骨干共识集群中所述聚类中心节点的数量和所述末尾区块的块编号,进行取模运算;所述区块链系统根据所述取模运算的结果,确定下一个需要进行广播区块的所述聚类中心节点的节点编号。3.根据权利要求2所述的方法,其特征在于,在所述区块链系统根据所述取模运算的结果,确定下一个需要进行广播区块的所述聚类中心节点的节点编号之后,所述方法还包括:若所述下一个需要进行广播区块的所述聚类中心节点没有接收任何请求,则所述下一个需要进行广播区块的所述聚类中心节点将打包一个空区块;所述下一个需要进行广播区块的所述聚类中心节点将所述空区块广播至所述骨干共识集群中进行共识。4.根据权利要求1所述的方法,其特征在于,所述改进型聚类算法包括:步骤1、所述区块链系统在所述多个共识节点形成的集合中,选取预设数量的共识节点作为初始中心节点,形成初始骨干共识集群中的初始聚类中心节点集合,并设定惰性系数;步骤2、所述区块链系统根据所述初始中心节点,确定所述多个共识节点形成的簇;步骤3、所述区块链系统对所有簇中除该簇的初始中心节点之外的每一个共识节点,计算该共识节点到该簇中其他剩余共识节点的距离和,并将距离和的值最小的一个共识节点作为该簇中待定的新初始中心节点,并形成初始骨干共识集群中待定的新初始聚类中心节点集合;步骤3、若待定的新初始聚类中心节点集合与所述初始聚类中心节点集合相同,则确定所述初始聚类中心节点集合为所述骨干共识集群中的所述聚类中心节点;若待定的新初始聚类中心节点集合与所述初始聚类中心节点集合不相同,则在第一概率下,用所述待定的新初始聚类中心节点集合替代...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。