区块链网络的记账方法和系统与流程

文档序号:16405025发布日期:2018-12-25 20:22阅读:472来源:国知局
区块链网络的记账方法和系统与流程

本发明涉及通信技术领域,尤其涉及一种区块链网络的记账方法和系统。

背景技术

通常,基于区块链的运作机制,区块链基于共识机制应用,所谓共识机制即为通过区块链中不同节点之间建立信任、获取权益的算法,区块链中的关键一环在于记账权的争夺,争夺成功的挖矿节点会有相应的挖矿奖励,争夺失败的挖矿节点会链入争取成功的挖矿节点生成的区块形成区块链,以便于基于全网的区块链进行交易监督。

相关技术中,通过矿工挖矿的方式争夺记账权是最公平的方式,也是目前区块链采用的普遍方式,矿工为了获得挖矿奖励是不断的投入资源进行挖矿,这种机制虽然保证区块链的持续发展,同时水涨船高旷工投入的资源越来越多,保障了更高的安全性的同时,也耗费大量的能源投资收益比越来越低,这将不利于区块链的推广。



技术实现要素:

本发明提供一种区块链网络的记账方法和系统,以解决现有技术中,区块链的记账争夺权争夺投入成本大,导致投资收益比降低从而影响区块链的推广的技术问题。

本发明第一实施例提供一种区块链网络的记账方法,包括:第一挖矿节点获取参与节点发送的交易广播消息,并在所述第一挖矿节点的交易池中记录当前记账周期内的交易记录,在当前记账周期结束时,生成所述第一挖矿节点抢夺所述当前记账周期区块记账权的挖矿记录;所述第一挖矿节点对所述挖矿记录和所述当前记账周期内的交易记录进行计算生成对应的哈希值,并查询所述第一挖矿节点的区块链账本,获得本区块链网络的时间戳服务器的ip地址,根据所述ip地址将经过所述第一挖矿节点的私钥签名后的所述哈希值定向的发送给所述时间戳服务器;所述第一挖矿节点获取所述时间戳服务器反馈的经过时间戳服务器私钥签名后且带有进时间戳的哈希值,进而用所述第一挖矿节点的私钥对区块广播消息进行签名后广播给区块链网络,其中,所述区块广播消息包括:经过所述时间戳服务器的私钥签名且携带有时间戳的哈希值,以及所述第一挖矿节点生成的当前记账周期区块;其余挖矿节点接收所述第一挖矿节点发送的所述区块广播消息,根据自身节点的交易池中记录当前记账周期内的交易记录对所述第一挖矿节点生成的所述当前记账周期区块内容进行对账,若对账结果一致,则向区块链网络发送所述第一挖矿节点的对账成功消息,并应用本节点存储的时间戳服务器的公钥对所述第一挖矿节点广播的时间戳服务器的私钥签名进行验证,若验证通过,则判断所述第一挖矿节点广播的所述时间戳是否属于所述当前记账周期,若获知所述时间戳属于所述当前记账周期,则向区块链网络发送所述第一挖矿节点的时间戳验证成功消息,并按照预设的区块记账权抢夺条件将所述第一挖矿节点广播的所述哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,若获知所述第一挖矿节点广播的所述哈希值符合所述区块记账权抢夺条件,则向区块链网络发送所述第一挖矿节点的区块生效消息;所述第一挖矿节点接收其他挖矿节点发送的所述第一挖矿节点的区块生效消息,检测发送所述第一挖矿节点的区块生效消息的其他挖矿节点的数量是否超过预设阈值,若获知所述其他挖矿节点的数量超过预设阈值,则获知所述第一挖矿节点的当前记账周期区块获得区块链网络的认可,并将所述第一挖矿节点的当前记账周期区块记入所述第一挖矿节点的区块链账本中。

本发明第二实施例提供一种区块链网络的记账系统,包括:第一挖矿节点和其余挖矿节点,其中,所述第一挖矿节点,用于获取参与节点发送的交易广播消息,并在所述第一挖矿节点的交易池中记录当前记账周期内的交易记录,在当前记账周期结束时,生成所述第一挖矿节点抢夺所述当前记账周期区块记账权的挖矿记录;所述第一挖矿节点,还用于对所述挖矿记录和所述当前记账周期内的交易记录进行计算生成对应的哈希值,并查询所述第一挖矿节点的区块链账本,获得本区块链网络的时间戳服务器的ip地址,根据所述ip地址将经过所述第一挖矿节点的私钥签名后的所述哈希值定向的发送给所述时间戳服务器;所述第一挖矿节点获取所述时间戳服务器反馈的经过时间戳服务器私钥签名后且带有时间戳的哈希值,进而用所述第一挖矿节点的私钥对区块广播消息进行签名后广播给区块链网络,其中,所述区块广播消息包括:经过所述时间戳服务器的私钥签名且携带有时间戳的哈希值,以及所述第一挖矿节点生成的当前记账周期区块;所述其余挖矿节点,用于接收所述第一挖矿节点发送的所述区块广播消息,根据自身节点的交易池中记录当前记账周期内的交易记录对所述第一挖矿节点生成的所述当前记账周期区块内容进行对账,若对账结果一致,则向区块链网络发送所述第一挖矿节点的对账成功消息,并应用本节点存储的时间戳服务器的公钥对所述第一挖矿节点广播的时间戳服务器的私钥签名进行验证,若验证通过,则判断所述第一挖矿节点广播的所述时间戳是否属于所述当前记账周期,若获知所述时间戳属于所述当前记账周期,则向区块链网络发送所述第一挖矿节点的时间戳验证成功消息,并按照预设的区块记账权抢夺条件将所述第一挖矿节点广播的所述哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,若获知所述第一挖矿节点广播的所述哈希值符合所述区块记账权抢夺条件,则向区块链网络发送所述第一挖矿节点的区块生效消息;所述第一挖矿节点,还用于接收其他挖矿节点发送的所述第一挖矿节点的区块生效消息,检测发送所述第一挖矿节点的区块生效消息的其他挖矿节点的数量是否超过预设阈值,若获知所述其他挖矿节点的数量超过预设阈值,则获知所述第一挖矿节点的当前记账周期区块获得区块链网络的认可,并将所述第一挖矿节点的当前记账周期区块记入所述第一挖矿节点的区块链账本中。

本发明第三实施例提供一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例所述的区块链网络的记账方法。

本发明第四实施例提供一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例所述的区块链网络的记账方法。

本发明实施例提供的技术方案可以包括以下有益效果:

通过挖矿节点彼此的通信交互形成记账权的争夺验证环境,且根据一定时长内接收到的所有的挖矿节点的哈希值进行记账权的归属判断,实现了一种公平的判断机制,不根据哈希值的计算时长等依赖于挖矿节点对应的资源计算能力作为判断机制,在降低了成本的同时,保证了记账的争夺的公平性。且本发明的实施例中,只给予一个挖矿节点记账权,其他挖矿节点链入记账权争夺成功的挖矿节点生成的区块,保证区块链不能被篡改,记账的安全,且避免双花攻击等现象的产生。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,

图1是根据本发明一个实施例的区块链网络的记账系统的结构示意图;

图2是根据本发明一个实施例的区块链网络的记账系统的交互示意图;

图3是根据本发明一个实施例的区块链网络的记账方法的流程图;

图4是根据本发明一个实施例的区块链网络的记账方法的应用场景示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

基于背景技术的描述,不难理解,现有技术中,区块链中记账权的争夺依赖于矿工节点的挖矿,这需要矿机进行大量的计算,这是因为比特币采用的是pow共识算法,pow共识算法,即proofofwork(工作量证明),指的是通过与或运算,计算出一个满足规则的数值,最快计算出该数值的挖矿节点获得本时间段的记账权。而比特币每天处理20万笔交易,这意味着每笔交易的平均消耗至少约300kwh电力,而随着区块链应用的普及,矿工节点为了获得多挖矿奖励,挖矿节点会致力于提升电脑计算能力等,这将导致电力和机器设备上的成本也会提高,从而投资收益比的下降,不利于区块链的推广。

为了解决上述技术问题,本发明提出了一种区块链网络的记账方法,在该方法中,提出了一种兼顾公平性、安全性、又同时不耗费资源的挖矿方法。矿工之间完全靠随机性来确定每个区块的记账权的归属,而不是靠资源的投入,保证了挖矿节点的收益比,有助于区块链的推广和应用。

其中,为了描述的清楚,首先对本发明实施例的区块链网络的记账系统进行描述,图1是根据本发明一个实施例的区块链网络的记账系统的结构示意图,如图1所示,该系统包括第一挖矿节点100和其余挖矿节点200,其中,第一挖矿节点100和其余挖矿节点200均为挖矿节点,其中,为了描述的清楚,第一挖矿节点主要用来代表争夺记账权成功的挖矿节点。

参照图2,在实际执行过程中,第一挖矿节点获取参与节点发送的交易广播消息,其中,参与节点指的是最新周期内发起交易的相关节点,并在第一挖矿节点的交易池中记录当前记账周期内的交易记录,在当前记账周期结束时,生成第一挖矿节点抢夺当前记账周期区块记账权的挖矿记录(步骤1),也就是说,每个区块链网络中的挖矿节点均为针对当前最新的交易争抢记账权。

具体而言,第一挖矿节点对挖矿记录和当前记账周期内的交易记录进行计算生成对应的哈希值,并查询第一挖矿节点的区块链账本,获得本区块链网络的时间戳服务器的ip地址,根据ip地址将经过第一挖矿节点的私钥签名后的哈希值定向的发送给时间戳服务器,以便于时间戳服务器进行时间戳的标记,第一挖矿节点获取到时间戳服务器反馈的经过时间戳服务器私钥签名后且带有时间戳的哈希值后,进而用第一挖矿节点的私钥对区块广播消息进行签名后广播给区块链网络(步骤2),以便于进一步对记账权进行争夺,其中,区块广播消息包括:经过时间戳服务器的私钥签名且携带有时间戳的哈希值,以及第一挖矿节点生成的当前记账周期区块。

进一步地,其余挖矿节点接收第一挖矿节点发送的区块广播消息后,根据自身节点的交易池中记录当前记账周期内的交易记录对第一挖矿节点生成的当前记账周期区块内容进行对账(步骤31),若对账结果一致,则向区块链网络发送第一挖矿节点的对账成功消息,并应用本节点存储的时间戳服务器的公钥对第一挖矿节点广播的时间戳服务器的私钥签名进行验证(步骤32),若验证通过,则判断第一挖矿节点广播的时间戳是否属于当前记账周期(步骤33),若获知时间戳属于当前记账周期,则向区块链网络发送第一挖矿节点的时间戳验证成功消息,并按照预设的区块记账权抢夺条件将第一挖矿节点广播的哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较(步骤34),若获知第一挖矿节点广播的哈希值符合区块记账权抢夺条件,则向区块链网络发送第一挖矿节点的区块生效消息(步骤35)。

更进一步地,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的区块生效消息后,检测发送第一挖矿节点的区块生效消息的其他挖矿节点的数量是否超过预设阈值,若获知其他挖矿节点的数量超过预设阈值,比如超过半数的其他挖矿节点,则获知第一挖矿节点的当前记账周期区块获得区块链网络的认可,并将第一挖矿节点的当前记账周期区块记入第一挖矿节点的区块链账本中(步骤4)。

由此,本发明实施例区块链网络的记账方法,基于区块链网络中的挖矿节点与挖矿节点之间的通信交互进行记账权的争夺,而不依赖于挖矿节点的挖矿工作,因而,降低了记账权争夺的成本,矿工之间完全靠随机性来确定每个区块的记账权的归属,而不是靠资源的投入。

为了更加详细的说明本发明实施例的区块链网络的记账系统执行时的细节,使得本领域的技术人员对本发明的记账权的争夺的过程更加清楚,下面集中在区块链的记账方法侧进行争夺过程的细节的描述。

图3是根据本发明一个实施例的区块链网络的记账方法的流程图,如图3所示,该方法包括:

步骤101,第一挖矿节点获取参与节点发送的交易广播消息,并在第一挖矿节点的交易池中记录当前记账周期内的交易记录,在当前记账周期结束时,生成第一挖矿节点抢夺当前记账周期区块记账权的挖矿记录。

其中,参与节点是当前发起交易的相关节点,为了确定该交易成功,需要将根据当前交易记录生成区块,其中,交易记录可以包括及交易金额、交易双方身份信息、交易时间等标识当前交易的相关信息。

为了争夺记账权,第一挖矿节点获取参与节点发送的交易广播消息,该交易广播消息包括交易记录等,进而,在第一挖矿节点的交易池中记录当前周期内的交易记录,其中,由于区块的生成到确定需要一定的时长,在上一个区块生成之后到当前区块生成之前产生的交易记录都被存储在挖矿节点中的交易池中,该交易池中待生成区块的交易记录为当前区块链中的挖矿节点争夺记账权的交易记录。

在当前记账周期内,会针对交易池中的交易记录抢夺记账权,在当前记账周期结束时,生成第一挖矿节点抢夺当前记账周期区块记账权的挖矿记录,该挖矿记录可以包括第一挖矿节点的节点标识、挖矿奖励金额(比如该笔交易记录的奖励金为8比特币等)等,以便于进一步将该挖矿记录作为参与争夺记账权的依据和争夺成功后的奖励依据等。

步骤102,第一挖矿节点对挖矿记录和当前记账周期内的交易记录进行计算生成对应的哈希值,并查询第一挖矿节点的区块链账本,获得本区块链网络的时间戳服务器的ip地址,根据ip地址将经过第一挖矿节点的私钥签名后的哈希值定向的发送给时间戳服务器。

步骤103,第一挖矿节点获取时间戳服务器反馈的经过时间戳服务器私钥签名后且带有时间戳的哈希值,进而用第一挖矿节点的私钥对区块广播消息进行签名后广播给区块链网络,其中,区块广播消息包括:经过时间戳服务器的私钥签名且携带有时间戳的哈希值,以及第一挖矿节点生成的当前记账周期区块。

具体而言,第一挖矿节点对挖矿记录和当前记账周期内的交易记录进行计算生成对应的哈希值,即标记出当前第一挖矿节点的挖矿记录对应的具体交易记录,并查询第一挖矿节点的区块链账本,获得本区块链网络的时间戳服务器的ip地址,根据ip地址将哈希值定向的发送给时间戳服务器进行时间戳的标记,即标记出当前第一挖矿节点的挖矿记录对应的具体交易记录的记账争夺时间。

其中,在第一挖矿节点向时间戳服务器发送哈希值时,为了避免第一挖矿节点被伪装,发送的哈希值是经过第一挖矿节点的私钥签名的,从而,当时间戳服务器验证该私钥与第一挖矿节点的广播的公钥匹配时,则确定该哈希值是第一挖矿节点本身发送的,从而,时间戳服务器对该哈希值进行时间戳的标记。

在本实施例中,基于公钥证书技术对区块链的第一挖矿节点进行身份认证,公钥证书技术的而核心为一对密钥,其基本原理是:由一个密钥进行加密的信息内容,只能由与之配对的另一个密钥才能进行匹配。加密公钥可以广泛地发给与自己有关的通信者即其他挖矿节点,加密私钥则需要十分安全地存放起来。使用中,第一挖矿节点使用私钥对区块广播信息进行签名并传送给其他挖矿节点,其他挖矿节点可以使用第一挖矿节点的公钥完成对第一挖矿节点的身份认证。

在本示例中,用第一挖矿节点的私钥对区块广播消息进行签名后广播给区块链网络,其中,区块广播消息包括:经过时间戳服务器的私钥签名且携带有时间戳的哈希值,以及第一挖矿节点生成的当前记账周期区块,其中,基于以上描述的公钥证书机制可知,经过时间戳服务器的私钥签名的哈希值确保了当前时间戳为时间戳服务器打上的,避免非法节点伪装时间戳,保证了时间戳的真实有效。

步骤104,其余挖矿节点接收第一挖矿节点发送的区块广播消息,根据自身节点的交易池中记录当前记账周期内的交易记录对第一挖矿节点生成的当前记账周期区块内容进行对账,若对账结果一致,则向区块链网络发送第一挖矿节点的对账成功消息,并应用本节点存储的时间戳服务器的公钥对第一挖矿节点广播的时间戳服务器的私钥签名进行验证,若验证通过,则判断第一挖矿节点广播的时间戳是否属于当前记账周期,若获知时间戳属于当前记账周期,则向区块链网络发送第一挖矿节点的时间戳验证成功消息,并按照预设的区块记账权抢夺条件将第一挖矿节点广播的哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,若获知第一挖矿节点广播的哈希值符合区块记账权抢夺条件,则向区块链网络发送第一挖矿节点的区块生效消息。

在第一挖矿节点参与记账权的抢夺后,首先需要对其记账的准确定进行验证,以确保其是否具有记账权的抢夺条件。

具体地,其余挖矿节点接收第一挖矿节点发送的区块广播消息后,根据自身节点的交易池中记录当前记账周期内的交易记录对第一挖矿节点生成的当前记账周期区块内容进行对账,以判断第一挖矿节点的记账是否正确,若对账结果一致,则判断第一挖矿节点的记账正确,向区块链网络发送第一挖矿节点的对账成功消息,比如发送代表对账成功的字符串编码等。

在本发明的一个实施例中,若获知其余挖矿节点获知对账结果不一致,则判断第一挖矿节点的记账不正确,向区块链网络发送第一挖矿节点的对账失败消息,其中,为了避免在一些应用场景下,由于进行记账准确性验证的挖矿节点本身记账错误导致的误判,在本发明的实施例中,结合多个其他挖矿节点的判断结果进行第一挖矿节点记账准确性的验证,具体而言,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的对账失败消息后,检测发送第一挖矿节点的对账失败消息的其他挖矿节点的数量是否超过预设阈值,若获知其他挖矿节点的数量超过预设阈值,则表明当前第一挖矿节点确实记账错误,获知第一挖矿节点的当前记账周期区块失效,其中,上述预设阈值与其他挖矿节点的总数和区块链网络中的其他挖矿节点的权威性有关,其他挖矿节点的总数越多,其他挖矿节点的权威性越低(比如仅仅为普通的挖矿节点),则对应的预设阈值越低。

进而,确保第一挖矿节点的记账时间是否正确,避免非法节点伪装成时间戳服务器对记账时间进行标记,实现非法交易等,在本实施例中,应用本节点存储的时间戳服务器的公钥对第一挖矿节点广播的时间戳服务器的私钥签名进行验证,若公钥和私钥匹配,则验证记账时间通过,进一步验证当前第一挖矿节点广播的时间戳是否针对当前周期内待争夺记账权的交易记录,即判断第一挖矿节点广播的时间戳是否属于当前记账周期,避免非法节点事后伪造,若获知时间戳属于当前记账周期,则向区块链网络发送第一挖矿节点的时间戳验证成功消息,至此,确保第一挖矿节点符合当前记账权的抢夺条件。

其中,在本发明的一个实施例中,其余挖矿节点获知对第一挖矿节点广播的时间戳服务器的私钥签名验证失败,则表明第一挖矿节点的记账时间不正确,则向区块链网络发送第一挖矿节点的时间戳验证失败消息,或者,获知第一挖矿节点广播的时间戳不属于当前记账周期,则向区块链网络发送第一挖矿节点的时间戳验证失败消息。同样的,在本实施例中,为了避免在一些应用场景下,由于进行记账时间准确性验证的挖矿节点本身记账时间错误导致的误判,在本发明的实施例中,结合多个其他挖矿节点的判断结果进行第一挖矿节点记账时间准确性的验证,具体而言,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的时间戳验证失败消息,检测发送第一挖矿节点的时间戳验证失败消息的其他挖矿节点的数量是否超过预设阈值,若获知其他挖矿节点的数量超过预设阈值,则获知第一挖矿节点的当前记账周期区块失效,其中,上述预设阈值与其他挖矿节点的总数和区块链网络中的其他挖矿节点的权威性有关,其他挖矿节点的总数越多,其他挖矿节点的权威性越低(比如仅仅为普通的挖矿节点),则对应的预设阈值越低。

进一步地,按照预设的区块记账权抢夺条件将第一挖矿节点广播的哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,其中,预设的时间内小于当前区块生成周期到下一个区块生成周期的对应的时长,若获知第一挖矿节点广播的哈希值符合区块记账权抢夺条件,则向区块链网络发送第一挖矿节点的区块生效消息。

其中,根据应用场景的不同,预设的区块记账权抢夺条件不同,作为一种可能的实现方式,预设的区块记账权抢夺条件为哈希值最大,则抢夺成功,从而,在本实施例中,将第一挖矿节点广播的哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,将最大的哈希值对应的挖矿节点作为当前争夺记账权成功的节点,其他节点链入以该节点生成的区块;作为另一种可能的实现方式,预设的区块记账权抢夺条件为哈希值最小,则抢夺成功,从而,在本实施例中,将第一挖矿节点广播的哈希值与在预设时间内所接收的其他挖矿节点发送的区块广播消息中的哈希值进行比较,将最小的哈希值对应的挖矿节点作为当前争夺记账权成功的节点,其他节点链入以该节点生成的区块。

在本发明的一个实施例中,其余挖矿节点获知第一挖矿节点广播的哈希值不符合区块记账权抢夺条件,则向区块链网络发送第一挖矿节点的区块失效消息,比如,向第一挖矿节点发送“当前其他挖矿节点a抢夺成功,请记账等”,同样的,在本实施例中,为了避免在一些应用场景下,由于其他非法节点发送假消息影响区块链的运作,比如,非法节点向第一挖矿节点发送器抢夺失败的假消息,以影响竞争的公平性,在本发明的实施例中,结合多个其他挖矿节点的判断结果进行第一挖矿节点争夺结果的确定,具体而言,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的区块失效消息,检测发送第一挖矿节点的区块失效消息的其他挖矿节点的数量是否超过预设阈值,若获知其他挖矿节点的数量超过预设阈值,则获知第一挖矿节点的当前记账周期区块失效。其中,上述预设阈值与其他挖矿节点的总数和区块链网络中的其他挖矿节点的权威性有关,其他挖矿节点的总数越多,其他挖矿节点的权威性越低(比如仅仅为普通的挖矿节点),则对应的预设阈值越低。

步骤105,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的区块生效消息,检测发送第一挖矿节点的区块生效消息的其他挖矿节点的数量是否超过预设阈值,若获知其他挖矿节点的数量超过预设阈值,则获知第一挖矿节点的当前记账周期区块获得区块链网络的认可,并将第一挖矿节点的当前记账周期区块记入第一挖矿节点的区块链账本中。

具体地,在本实施例中,第一挖矿节点接收其他挖矿节点发送的第一挖矿节点的区块生效消息后,同样的,为了确保该区块生效消息的可靠性,检测发送第一挖矿节点的区块生效消息的其他挖矿节点的数量是否超过预设阈值,比如,是否超过其他挖矿节点总数的一半,若获知其他挖矿节点的数量超过预设阈值,则获知第一挖矿节点的当前记账周期区块获得区块链网络的认可,并将第一挖矿节点的当前记账周期区块记入第一挖矿节点的区块链账本中,其他挖矿节点链入第一挖矿节点生成的当前记账周期内的区块,所有挖矿节点开始进入下一轮的记账权的争夺。其中,上述预设阈值与其他挖矿节点的总数和区块链网络中的其他挖矿节点的权威性有关,其他挖矿节点的总数越多,其他挖矿节点的权威性越低(比如仅仅为普通的挖矿节点),则对应的预设阈值越低。

其中,获知第一挖矿节点的当前记账周期区块获得区块链网络的认可后,可以根据第一挖矿节点的挖矿记录中的奖励信息等对第一挖矿节点进行奖励,也可以用根据区块链网络的运营规则进行奖励等。

在本发明的一个实施例中,当争夺记账权成功的挖矿节点不是第一挖矿节点,而是其他挖矿节点中的第二挖矿节点时,则第一挖矿节点需要链入第二挖矿节点生成的相应区块,作为对应交易记录的备份记录节点,以便于和其他挖矿节点形成对当前交易记录的监管环境等。

具体而言,在本实施例中,第一挖矿节点接收其他挖矿节点发送的第二挖矿节点的区块生效消息数量超过预设阈值,其中,上述预设阈值与其他挖矿节点的总数和区块链网络中的其他挖矿节点的权威性有关,其他挖矿节点的总数越多,其他挖矿节点的权威性越低(比如仅仅为普通的挖矿节点),则对应的预设阈值越低,则获知第二挖矿节点广播的当前记账周期区块获得区块链网络的认可,并将第二挖矿节点广播的当前记账周期区块记入第一挖矿节点的区块链账本中。

另外,需要强调的是,由于在现有技术中,区块链中的一个挖矿节点可能代表多个机器设备,因而,在本实施例中,为了进一步确保记账权的抢夺公平性,还可对所有的挖矿节点进行实名认证,确保每个用户只有一个机会,大家机会均等。

由此,如图4所示,本发明实施例的区块链网络的记账方法,第一挖矿节点a和其他的挖矿节点b、c、d…互相制约和验证,通过彼此的通信交互形成记账权的争夺验证环境,且根据一定时长内接收到的所有的挖矿节点的哈希值进行记账权的归属判断,实现了一种公平的判断机制,不根据哈希值的计算时长等依赖于挖矿节点对应的资源计算能力作为判断机制,在降低了成本的同时,保证了记账的争夺的公平性。且本发明的实施例中,只给予一个挖矿节点记账权,其他挖矿节点链入记账权争夺成功的挖矿节点生成的区块,保证区块链不能被篡改,记账的安全,且避免双花攻击等现象的产生。

综上所述,本发明实施例的区块链网络的记账方法,通过挖矿节点彼此的通信交互形成记账权的争夺验证环境,且根据一定时长内接收到的所有的挖矿节点的哈希值进行记账权的归属判断,实现了一种公平的判断机制,不根据哈希值的计算时长等依赖于挖矿节点对应的资源计算能力作为判断机制,在降低了成本的同时,保证了记账的争夺的公平性。且本发明的实施例中,只给予一个挖矿节点记账权,其他挖矿节点链入记账权争夺成功的挖矿节点生成的区块,保证区块链不能被篡改,记账的安全,且避免双花攻击等现象的产生。

为了实现上述实施例,本发明还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如前述实施例描述的区块链网络的记账方法。

为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时能够实现如前述实施例所述的区块链网络的记账方法。

在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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