1.一种基于贡献证明的区块链共识方法,其特征在于,所述方法包括:监听节点网络,接收数据;
根据接收到的数据选取一个节点,作为创建节点,创建节点创建新区块;
验证选取的节点是否应该创建新区块;如果是,则将新区块更新到区块链中,更新节点信息。
2.根据权利要求1所述的方法,其特征在于,根据接收到的数据选取一个节点,作为创建节点,创建节点创建新区块,包括:根据接收到的数据,判断是否达到建块条件;
如果是,则计算每个节点的贡献值,确定贡献值最大的节点作为创建节点,创建节点创建新区块,并将所述新区块向全网广播。
3.根据权利要求2所述的方法,其特征在于,验证选取的节点是否应该创建新区块,包括:监听节点网络,接收新区块,验证所述创建节点是否为贡献值最大的节点,并且验证新区块头中merkle根是否与本地生成的merkle根一致;如果是,则将新区块更新到区块链中,更新节点信息。
4.根据权利要求3所述的方法,其特征在于,验证选取的节点是否应该创建新区块,如果是,则将新区块更新到区块链中,更新节点信息之后,所述方法还包括:如果否,向邻近节点请求补全缺失信息。
5.根据权利要求1所述的方法,其特征在于,监听节点网络,接收数据,包括:监听节点网络,接收数据;
判断每个节点接收的数据总和是否超过规定大小,如果是,则对接收到的数据按照时间戳顺序生成merkle根;
如果否,各个节点判断自上一个区块创建时间起至现在,时间是否超过规定时间;
如果是,对接收到的数据按照时间戳顺序生成merkle根。
6.一种基于贡献证明的区块链共识装置,其特征在于,所述装置包括:接收模块,用于监听节点网络,接收数据;
创建模块,用于根据接收到的数据选取一个节点,作为创建节点,创建节点创建新区块;
验证模块,用于验证选取的节点是否应该创建新区块;如果是,则将新区块更新到区块链中,更新节点信息。
7.根据权利要求6所述的装置,其特征在于,所述创建模块还用于:根据接收到的数据,判断是否达到建块条件;
如果是,则计算每个节点的贡献值,确定贡献值最大的节点作为创建节点,创建节点创建新区块,并将所述新区块向全网广播;
其中,贡献值计算公式为:
NA为节点奖励,QIP为该节点知识产权的贡献数,v表示一个正数,kr为该节点的影响因子,P2为知识产权在一笔交易中的当前交易价格;P1为知识产权在一笔交易中的前一次交易价格。
8.根据权利要求6所述的装置,其特征在于,所述验证模块还用于:监听节点网络,接收新区块,验证所述创建节点是否为贡献值最大的节点,并且验证新区块头中merkle根是否与本地生成的merkle根一致;如果是,则将新区块更新到区块链中,更新节点信息。
9.根据权利要求6所述的装置,其特征在于,所述接收模块还用于:监听节点网络,接收数据;
判断每个节点接收的数据总和是否超过规定大小,如果是,则对接收到的数据按照时间戳顺序生成merkle根;
如果否,各个节点判断自上一个区块创建时间起至现在,时间是否超过规定时间;
如果是,对接收到的数据按照时间戳顺序生成merkle根。
10.一种计算机存储介质,其特征在于,用于储存为权利要求6至9任意一项所述的装置所用的计算机软件指令。