CN108923929B - 区块链节点共识方法、装置及计算机可读存储介质 - Google Patents

区块链节点共识方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN108923929B
CN108923929B CN201810567595.7A CN201810567595A CN108923929B CN 108923929 B CN108923929 B CN 108923929B CN 201810567595 A CN201810567595 A CN 201810567595A CN 108923929 B CN108923929 B CN 108923929B
Authority
CN
China
Prior art keywords
block
current node
verification
node
credit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810567595.7A
Other languages
English (en)
Other versions
CN108923929A (zh
Inventor
许义霖
李卓
张浈圣
付杨
龚凤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Heshu Software Co ltd
Original Assignee
Shanghai Heshu Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Heshu Software Co ltd filed Critical Shanghai Heshu Software Co ltd
Priority to CN201810567595.7A priority Critical patent/CN108923929B/zh
Publication of CN108923929A publication Critical patent/CN108923929A/zh
Application granted granted Critical
Publication of CN108923929B publication Critical patent/CN108923929B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps

Abstract

本发明公开了一种区块链节点共识方法,其包括:确定当前节点是否产生新区块;在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;基于所述信用基数发送奖励至所述当前节点。本发明还公开了一种区块链节点共识装置及计算机可读存储介质。本发明实现了所有节点的共同竞争,进一步地保证了区块链系统所有节点的正常工作,避免了违法节点的恶意操作,确保了交易安全。

Description

区块链节点共识方法、装置及计算机可读存储介质
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链节点共识方法、装置及计算机可读存储介质。
背景技术
区块链为一种加密数据(区块)按照时间顺序进行叠加(链),而形成的永久的不可逆向修改的记录,是一种通过计算机加密技术而形成的一种信用凭证。区块链技术属于一种全民参与记账的方式,具有去中心化,开放性,自治性,信息不可篡改性以及匿名性等五大特征。这些特征使得区块链技术在各个领域的应用中具有一定的优势,可以降低审核和清算成本,减少对中心节点的不信任,让资产的流动更加透明。
在传统的区块链网络中,由于所采用的共识机制及对应的奖励机制设置不合理的原因,网络中的各个节点无法平等工作,网络也容易收到恶意节点的攻击,当前该区块链网络仍然无法做到完全去中心化。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种区块链节点共识方法、装置及计算机可读存储介质,旨在解决区块链网络去中心化的技术问题。
为实现上述目的,本发明提供一种区块链节点共识方法,所述区块链节点共识方法包括以下步骤:
确定当前节点是否产生新区块;
在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;
基于所述信用基数发送奖励至所述当前节点。
在一实施方式中,所述获取所述当前节点的信用基数的步骤包括:
获取所述当前节点的能力系数;
根据所述能力系数,确定所述当前节点的信用基数。
在一实施方式中,所述根据所述能力系数,确定所述当前节点的信用基数的步骤包括:
获取所述当前节点的责任系数;
根据所述责任系数和所述能力系数,确定所述当前节点的信用基数。
在一实施方式中,所述获取所述当前节点的能力系数的步骤包括:
获取所述当前节点的历史权利记录量;
根据所述历史权利记录量,确定所述当前节点的能力系数。
在一实施方式中,所述基于所述信用基数发送奖励至所述当前节点的步骤包括:
基于所述信用基数计算所述当前节点的奖励额度;
发送所述奖励额度对应的奖励至所述当前节点。
在一实施方式中,所述确定当前节点是否产生新区块的步骤包括:
在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点;
所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块。
在一实施方式中,所述相邻节点验证所述验证区块的步骤包括:
获取所述验证区块的优先级顺序;
按照所述优先级顺序对所述验证区块进行验证。
在一实施方式中,所述按照所述优先级顺序对所述验证区块进行验证的步骤包括:
获取预设区块校验规则;
按照所述优先级顺序,根据所述预设区块校验规则对所述验证区块进行校验。
此外,为实现上述目的,本发明还提供一种区块链节点共识装置,所述区块链节点共识装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的区块链节点共识程序,所述区块链节点共识程序被所述处理器执行时实现如上所述的区块链节点共识方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有区块链节点共识程序,所述区块链节点共识程序被处理器执行时实现如上所述的区块链节点共识方法的步骤。
本发明中,通过本发明区块链节点共识方法,确定当前节点是否产生新区块;在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;基于所述信用基数发送奖励至所述当前节点,实现了所有节点的共同竞争,进一步地保证了区块链系统所有节点的正常工作,避免了违法节点的恶意操作,确保了交易安全。
附图说明
图1是本发明实施例方案涉及的硬件运行环境中的区块链节点共识装置所属终端的结构示意图;
图2为本发明区块链节点共识方法第一实施例的流程示意图;
图3为本发明区块链节点共识方法第二实施例的流程示意图;
图4为本发明区块链节点共识方法第三实施例的流程示意图;
图5为本发明区块链节点共识方法第四实施例的流程示意图;
图6为本发明区块链节点共识方法第五实施例的流程示意图;
图7为本发明区块链节点共识方法第六实施例的流程示意图;
图8为本发明区块链节点共识方法第七实施例的流程示意图;
图9为本发明区块链节点共识方法第八实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境中的区块链节点共识装置所属终端的结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、便携计算机等具有显示功能的可移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及区块链节点共识程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的区块链节点共识程序。
处理器1001调用存储器1005中存储的区块链节点共识程序时,执行以下操作:
确定当前节点是否产生新区块;
在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;
基于所述信用基数发送奖励至所述当前节点。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的能力系数;
根据所述能力系数,确定所述当前节点的信用基数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的责任系数;
根据所述责任系数和所述能力系数,确定所述当前节点的信用基数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的历史权利记录量;
根据所述历史权利记录量,确定所述当前节点的能力系数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
基于所述信用基数计算所述当前节点的奖励额度;
发送所述奖励额度对应的奖励至所述当前节点。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点;
所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述验证区块的优先级顺序;
按照所述优先级顺序对所述验证区块进行验证。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取预设区块校验规则;
按照所述优先级顺序,根据所述预设区块校验规则对所述验证区块进行校验。
本发明提供一种区块链节点共识方法,参照图2,图2是本发明区块链节点共识方法第一实施例的流程示意图。
在本实施例中,该区块链节点共识方法包括:
步骤S1000,确定当前节点是否产生新区块;
在本实施例中,在区块链的网络中,该区块链网络中的一些节点会根据获取到的交易信息进行新区块的挖掘,因此,每隔预设出块周期即有可能会产生一个新区块,该新区块则包括了上一个区块产生到当前时间为止发生的所有交易记录。在当前节点获取到的交易信息的哈希值与目标哈希值匹配,则确定产生该交易信息对应的验证区块;在该当前节点产生该验证区块时,则将该验证区块发送至该当前节点的相邻节点,在该相邻节点接收到该验证区块时,该相邻节点则对该新区块进行验证。
具体地,该相邻节点在预设出块周期内可能会陆续接收到多个验证区块,获取该验证区块的优先级顺序,在该预设出块周期内该相邻节点越早接收到的验证区块对应的优先级顺序越高。根据预设区块校验规则可以对该验证区块进行验证,其中,该预设区块校验规则为预先设定的对该验证区块的校验规则;在根据该预设区块校验规则对该验证区块进行验证时,若该验证区块满足该预设区块校验规则中的所有校验规范时,即确定该验证区块验证通过;在该验证区块不满足该预设区块校验规则中至少一条校验规范时,即确定该验证区块验证失败。在该验证区块被验证通过时,则确定该验证区块为该交易信息对应的新区块,即确定该当前节点产生新区块;在该验证区块被验证失败时,则确定该验证区块并非该交易信息对应的新区块,即确定该当前节点未产生新区块。
步骤S2000,在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;
在本实施例中,在确定该当前节点产生新区块时,则获取该当前节点的信用基数,其中,该信用基数当前区块链系统中,该当前节点的诚信系数,通过该当前节点的能力系数以及该当前节点的责任系数可以确定该信用基数。具体地,该能力系数为该当前节点的出块能力,根据该当前节点的历史权利记录量可以确定该当前节点的出块能力;该当前节点的历史权利记录量越多,该当前节点的出块能力则越强,该当前节点的能力系数越大;该当前节点的历史权利记录量越少,该当前节点的出块能力则越弱,该当前节点的能力系数越小。该责任系数则为该当前节点对职责的履行情况的反映,根据该当前节点的违规情况和出块正确性可以计算得到对应的责任系数。在获取到该能力系数以及该责任系数时,根据该能力系数以及该责任系数则可以计算得到该当前节点的信用基数。该信用基数可以通过该能力系数以及该责任系数简单的求和计算得到,亦可对该能力系数以及该责任系数按照权重占比的方式计算得到,在本实施例中,并不对该信用基数的计算方式进行限定。
步骤S3000,基于所述信用基数发送奖励至所述当前节点。
在本实施例中,在获取到该当前节点的信用基数时,则根据该信用基数计算对应的奖励额度,并发送该奖励额度至该当前节点以奖励该当前节点。具体地,该当前节点的奖励额度不仅仅跟该计算得到的信用基数相关,该当前节点的奖励额度亦与该当前节点加入当前区块链网络共识所抵押的代币数、当前该新区块提供的手续费、本轮共识节点个数、该当前节点的出块间隔时长以及一年总时间相关。通过该信用基数、共识抵押代币数、新区块手续费、本轮共识节点数、出块间隔时长以及一年总时长共同计算得到该当前节点的奖励额度。
本实施例提出的区块链节点共识方法,通过确定当前节点是否产生新区块,接着在确定所述当前节点产生新区块时,获取所述当前节点的信用基数,而后基于所述信用基数发送奖励至所述当前节点,实现了在节点挖掘到新区块时,通过共识奖励机制对该节点的奖励,实现了所有节点的共同竞争,进一步地保证了区块链系统所有节点的正常工作,避免了违法节点的恶意操作,确保了交易安全。
基于第一实施例,提出本发明区块链节点共识方法的第二实施例,参照图3,在本实施例中,步骤S2000包括:
步骤S2100,获取所述当前节点的能力系数;
步骤S2200,根据所述能力系数,确定所述当前节点的信用基数。
在本实施例中,该能力系数为该当前节点的出块能力,根据该当前节点的历史权利记录量可以确定该当前节点的出块能力;该当前节点的历史权利记录量越多,该当前节点的出块能力则越强,该当前节点的能力系数越大;该当前节点的历史权利记录量越少,该当前节点的出块能力则越弱,该当前节点的能力系数越小。该历史权利记录量即为该当前节点的历史出块记录量,一个节点对一个新区块的有效产出,即为该节点一个有效的历史权利记录量;一个节点的算力则会影响到该节点产生新区块的能力,从而影响该节点的历史权利记录量,因此,算力越弱的节点,其对应的历史权利记录量则越少,算力越强的节点,则其对应的历史权利记录量则越多。
在获取到该当前节点的能力系数时,则根据该能力系数可以计算得到该当前节点的信用基数。具体地,在获取到该能力系数时,获取该当前节点的责任系数,根据该责任系数与该能力系数共同计算得到该当前节点的能力系数。
本实施例提出的区块链节点共识方法,通过获取所述当前节点的能力系数,接着根据所述能力系数,确定所述当前节点的信用基数,实现了根据该当前节点的能力系数对该当前节点的信用基数的确定,进一步地使得能力越强的节点获得的奖励更多,以此更好的激励节点的工作。
基于第二实施例,提出本发明区块链节点共识方法的第三实施例,参照图4,在本实施例中,步骤S2200包括:
步骤S2210,获取所述当前节点的责任系数;
步骤S2220,根据所述责任系数和所述能力系数,确定所述当前节点的信用基数。
在本实施例中。该责任系数为该当前节点对职责的履行情况的反映,根据该当前节点的违规情况和出块正确性可以计算得到对应的责任系数。具体地,节点由于硬件配置或者网络的原因,可能造成在共识期间掉线、死机等情况出现,从而导致无法出块,由此对当前区块链系统造成一定的影响;在该种情况下,则冻结该节点的保证金第一预设时长,并降低该节点的信用等级。除此之外,在当前系统中若存在双花、尝试分叉系统以及不遵守共识规则的恶意节点出现时,则冻结该节点的保证金第二预设时长,并拒绝该节点的再次共识接入;其中,该第二预设时长大于该第一预设时长。该当前节点的责任系数则与该当前节点的历史信用等级相关,对于信用等级越高的节点,其对应的责任系数则越大,对于信用等级越低的节点,其对应的责任系数则越小。在获取到该责任系数时,则根据该责任系数与该能力系数,计算该当前节点对应的信用基数。
本实施例提出的区块链节点共识方法,通过获取所述当前节点的责任系数,接着根据所述责任系数和所述能力系数,确定所述当前节点的信用基数,实现了根据能力系数以及责任系数对该当前节点的信用基数的确定,进一步地实现了对节点更完善的奖励与惩罚机制。
基于第二实施例,提出本发明区块链节点共识方法的第四实施例,参照图5,在本实施例中,步骤S2100包括:
步骤S2110,获取所述当前节点的历史权利记录量;
步骤S2120,根据所述历史权利记录量,确定所述当前节点的能力系数。
在本实施例中,该历史权利记录量为该当前节点的历史出块记录量,一个节点对一个新区块的有效产出,即为该节点一个有效的历史权利记录量;一个节点的算力则会影响到该节点产生新区块的能力,从而影响该节点的历史权利记录量,因此,算力越弱的节点,其对应的历史权利记录量则越少,算力越强的节点,则其对应的历史权利记录量则越多;根据该历史权利记录量即可确定该当前节点的能力系数。具体地,在获取到该当前节点的历史权利记录量时,获取该历史权利记录量与能力系数对应的计算关系,根据该计算关系确定当前该历史权利记录量对应的能力系数。
本实施例提出的区块链节点共识方法,通过获取所述当前节点的历史权利记录量,接着根据所述历史权利记录量,确定所述当前节点的能力系数,实现了根据该当前节点的历史权利记录量对该当前节点的能力系数的确定,进一步地使得根据该能力系数对该当前节点进行信用评估。
基于第一实施例,提出本发明区块链节点共识方法的第五实施例,参照图6,在本实施例中,步骤S3000包括:
步骤S3100,基于所述信用基数计算所述当前节点的奖励额度;
步骤S3200,发送所述奖励额度对应的奖励至所述当前节点。
在本实施例中,在获取到该信用基数时,则根据该信用基数计算该当前节点的奖励额度。具体地,在获取到该信用基数时,获取该当前节点的共识抵押代币数、新区块手续费、本轮共识节点数、出块间隔时长以及一年总时长。其中,该共识抵押代币数为该当前节点加入当前区块链网络共识所抵押的代币数,该新区块手续费为该新区块提供的手续费,该本轮共识节点数为当前该区块产生时参与共识的节点的个数,该出块间隔时长为该当前节点产生的新区块与产生上一区块的间隔时长,该出块间隔时长与该一年总时长的单位均以秒为单位。根据该信用基数、共识抵押代币数、新区块手续费、本轮共识节点数、出块间隔时长以及一年总时长共同计算得到该当前节点的奖励额度。该奖励额度计算公式如下所示:
Figure BDA0001684933840000101
其中,coinbase表示奖励额度,fee表示新区块手续费,rnc表示本轮共识节点数,bti表示出块间隔时长,spy表示一年总时长,cmc表示共识抵押代币数,cr表示信用基数。
本实施例提出的区块链节点共识方法,通过基于所述信用基数计算所述当前节点的奖励额度,接着发送所述奖励额度对应的奖励至所述当前节点,实现了对该当前节点奖励额度的获取,进一步地实现了根据该奖励额度对当前节点工作的奖励,保证了区块链系统所有节点的正常工作。
基于第一实施例,提出本发明区块链节点共识方法的第六实施例,参照图7,在本实施例中,步骤S1000包括:
步骤S1100,在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点;
步骤S1200,所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块。
在本实施例中,该验证区块即为该当前节点对获取到的交易信息进行挖掘所产生的区块,在该验证区块被该当前节点的相邻节点验证通过时,该验证区块即为该交易信息对应的新区块。具体地,在该当前区块对该交易信息进行区块挖掘时,会不断地计算该验证区块的区块头的哈希值,该区块头的哈希值即为测试哈希值。在计算得到的该测试哈希值不小于该目标哈希值时,即确定该测试哈希值与该目标哈希值匹配成功;若该测试哈希值大于该目标哈希值时,即确定该测试哈希值与该目标哈希值匹配失败。在获取到与该目标哈希值匹配成功的测试哈希值时,该当前节点则基于该交易信息,以及该测试哈希值生成对应的验证区块,该验证区块则包括了该有效交易信息,以及前一个区块的哈希值与该测试哈希值、时间戳等信息。在该验证区块构建成功时,该当前节点则将该验证区块发送至相邻节点,该相邻节点则对该验证区块进行区块验证。
具体地,该相邻节点在预设出块周期内可能会陆续接收到多个验证区块,获取该验证区块的优先级顺序,在该预设出块周期内该相邻节点越早接收到的验证区块对应的优先级顺序越高。根据预设区块校验规则可以对该验证区块进行验证,其中,该预设区块校验规则为预先设定的对该验证区块的校验规则;在根据该预设区块校验规则对该验证区块进行验证时,若该验证区块满足该预设区块校验规则中的所有校验规范时,该相邻节点则发送验证通过信息,即确定该验证区块验证通过,该验证区块即为新区块;在该新区块不满足该预设区块校验规则中至少一条校验规范时,该相邻节点则发送验证失败信息,即确定该新区块验证失败,该验证区块即非新区块。
本实施例提出的区块链节点共识方法,通过在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点,接着所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块,实现了在接收到验证区块时,对该验证区块的验证,确保只有有效的区块能在区块链网络中传播,以避免非法节点的恶意操作,减少了资源浪费。
基于第六实施例,提出本发明区块链节点共识方法的第七实施例,参照图8,在本实施例中,步骤S1200包括:
步骤S1210,获取所述新区块的优先级顺序;
步骤S1220,按照所述优先级顺序对所述新区块进行验证。
在本实施例中,在获取到该验证区块时,产生该验证区块的当前节点则将该验证区块发送至对应的相邻节点。在该相邻节点接收到该验证区块时,则需要对该验证区块进行验证,确保只有有效的区块能在区块链网络中传播,以避免非法节点的恶意操作。
具体地,在该预设出块周期内,该相邻节点可能会先后接受到多个验证区块,因此,在该相邻节点获取到该验证区块时,确定该验证区块的优先级顺序;其中,该优先级顺序为在同一预设出块周期内接收到的验证区块的时间顺序,越早接收到的验证区块其优先级顺序越高,该预设出块周期则为预先设定的出块周期,该预设出块周期具体可由当前区块链出块难度进行确定。在接收到该验证区块时,按照该验证区块的优先级顺序对该验证区块进行验证,具体地,按照该验证区块的优先级顺序,获取预设区块校验规则对该验证区块进行验证。其中,在该验证区块满足该预设区块校验规则中的所有校验规范时,即确定该验证区块验证通过;在该验证区块不满足该预设区块校验规则中至少一条校验规范时,即确定该验证区块验证失败。
本实施例提出的区块链节点共识方法,通过获取所述验证区块的优先级顺序,接着按照所述优先级顺序对所述验证区块进行验证,实现了在相邻节点在预设出块周期内接收到多个验证区块时,根据优先级顺序对该验证区块的验证,进一步地实现了对新区块的高效验证。
基于第七实施例,提出本发明区块链节点共识方法的第八实施例,参照图8,在本实施例中,步骤S1210包括:
步骤S1211,获取预设区块校验规则;
步骤S1212,按照所述优先级顺序,根据所述预设区块校验规则对所述新区块进行校验。
在本实施例中,该预设区块校验规则即为预先设定的对该验证区块的校验规则,该预设区块校验规则包括了:区块的数据结构是否符合语法规范、区块的哈希值是否与目标哈希值匹配成功以及区块的时间戳是否满足预设条件等校验规范。根据该预设区块校验规则可对该验证区块进行校验,具体地,在相邻节点对该验证区块进行校验时,则获取在预设出块周期内该验证区块的优先级顺序,对优先级顺序最高的验证区块先进行验证。若该验证区块满足该预设区块校验规则中的所有校验规范时,即确定该验证区块验证通过;在该验证区块不满足该预设区块校验规则中至少一条校验规范时,即确定该验证区块验证失败。
本实施例提出的区块链节点共识方法,通过获取预设区块校验规则,接着按照所述优先级顺序,根据所述预设区块校验规则对所述验证区块进行校验,实现了根据预设区块校验规则和优先级顺序对该验证区块的校验,进一步地实现了对该验证区块的精确校验,避免了对验证区块的误校验。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有区块链节点共识程序,所述区块链节点共识程序被处理器执行时实现如下操作:
确定当前节点是否产生新区块;
在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;
基于所述信用基数发送奖励至所述当前节点。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的能力系数;
根据所述能力系数,确定所述当前节点的信用基数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的责任系数;
根据所述责任系数和所述能力系数,确定所述当前节点的信用基数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述当前节点的历史权利记录量;
根据所述历史权利记录量,确定所述当前节点的能力系数。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
基于所述信用基数计算所述当前节点的奖励额度;
发送所述奖励额度对应的奖励至所述当前节点。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点;
所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取所述验证区块的优先级顺序;
按照所述优先级顺序对所述验证区块进行验证。
进一步地,所述区块链节点共识程序被处理器执行时还实现如下操作:
获取预设区块校验规则;
按照所述优先级顺序,根据所述预设区块校验规则对所述验证区块进行校验。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种区块链节点共识方法,其特征在于,所述区块链节点共识方法包括:确定当前节点是否产生新区块;
在确定所述当前节点产生新区块时,获取所述当前节点的信用基数;
基于所述信用基数发送奖励至所述当前节点;
其中,所述获取所述当前节点的信用基数的步骤包括:
获取所述当前节点的能力系数,其中,所述能力系数为所述当前节点的出块能力,并依据所述当前节点的历史权利记录量而确定;
根据所述能力系数,确定所述当前节点的信用基数;
其中,所述根据所述能力系数,确定所述当前节点的信用基数的步骤包括:
获取所述当前节点的责任系数;
根据所述责任系数和所述能力系数,确定所述当前节点的信用基数。
2.如权利要求1所述的区块链节点共识方法,其特征在于,所述获取所述当前节点的能力系数的步骤包括:
获取所述当前节点的历史权利记录量;
根据所述历史权利记录量,确定所述当前节点的能力系数。
3.如权利要求1所述的区块链节点共识方法,其特征在于,所述基于所述信用基数发送奖励至所述当前节点的步骤包括:
基于所述信用基数计算所述当前节点的奖励额度;
发送所述奖励额度对应的奖励至所述当前节点。
4.如权利要求1所述的区块链节点共识方法,其特征在于,所述确定当前节点是否产生新区块的步骤包括:
在当前节点生成验证区块时,发送所述验证区块至所述当前节点的相邻节点;
所述相邻节点验证所述验证区块,其中,在获取到所述相邻节点发送的验证通过信息,确定所述当前节点产生新区块,所述新区块即为所述验证区块。
5.如权利要求4所述的区块链节点共识方法,其特征在于,所述相邻节点验证所述验证区块的步骤包括:
获取所述验证区块的优先级顺序;
按照所述优先级顺序对所述验证区块进行验证。
6.如权利要求5所述的区块链节点共识方法,其特征在于,所述按照所述优先级顺序对所述验证区块进行验证的步骤包括:
获取预设区块校验规则;
按照所述优先级顺序,根据所述预设区块校验规则对所述验证区块进行校验。
7.一种区块链节点共识装置,其特征在于,所述区块链节点共识装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的区块链节点共识程序,所述区块链节点共识程序被所述处理器执行时实现如权利要求1至6中任一项所述的区块链节点共识方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有区块链节点共识程序,所述区块链节点共识程序被处理器执行时实现如权利要求1至6中任一项所述的区块链节点共识方法的步骤。
CN201810567595.7A 2018-06-05 2018-06-05 区块链节点共识方法、装置及计算机可读存储介质 Active CN108923929B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810567595.7A CN108923929B (zh) 2018-06-05 2018-06-05 区块链节点共识方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810567595.7A CN108923929B (zh) 2018-06-05 2018-06-05 区块链节点共识方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN108923929A CN108923929A (zh) 2018-11-30
CN108923929B true CN108923929B (zh) 2021-07-23

Family

ID=64418352

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810567595.7A Active CN108923929B (zh) 2018-06-05 2018-06-05 区块链节点共识方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN108923929B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109784956B (zh) * 2019-02-25 2023-05-30 重庆邮电大学 基于区块链技术的农产品溯源方法
CN109951474B (zh) * 2019-03-15 2021-07-30 杭州云象网络技术有限公司 一种实现区块链共识出块的方法
CN110049109B (zh) * 2019-03-26 2022-04-01 湖南天河国云科技有限公司 区块链共享存储的核算方法、系统和计算机可读存储介质
CN110427433B (zh) * 2019-08-08 2023-04-07 上海中通吉网络技术有限公司 一种区块链共识方法和存储介质
CN110650135B (zh) * 2019-09-20 2022-06-21 腾讯科技(深圳)有限公司 一种节点处理方法、相关设备及计算机可读存储介质
CN111277627B (zh) * 2020-01-08 2022-04-01 深圳讴谱科技有限公司 一种基于贡献量权重证明共识机制的方法
CN111695997B (zh) * 2020-05-12 2024-02-20 成都芯域矩阵科技有限公司 一种基于节点信用评分和预交诚意金的区块链共识方法及系统
CN113179286B (zh) * 2021-06-30 2022-08-19 广州平云信息科技有限公司 一种区块链的数据监管方法和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488675A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种区块链的分布式共享总账构建方法
WO2017018928A1 (en) * 2015-07-28 2017-02-02 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
CN107077674A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 交易验证处理方法、装置及节点设备
WO2017192837A1 (en) * 2016-05-04 2017-11-09 Silvio Micali Distributed transaction propagation and verification system
CN107438003A (zh) * 2016-05-27 2017-12-05 索尼公司 电子设备、用于电子设备的方法和信息处理系统
CN107809484A (zh) * 2017-10-30 2018-03-16 中国联合网络通信集团有限公司 区块链交易信息处理方法及区块链节点

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017018928A1 (en) * 2015-07-28 2017-02-02 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
CN105488675A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种区块链的分布式共享总账构建方法
WO2017192837A1 (en) * 2016-05-04 2017-11-09 Silvio Micali Distributed transaction propagation and verification system
CN107438003A (zh) * 2016-05-27 2017-12-05 索尼公司 电子设备、用于电子设备的方法和信息处理系统
CN107077674A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 交易验证处理方法、装置及节点设备
CN107809484A (zh) * 2017-10-30 2018-03-16 中国联合网络通信集团有限公司 区块链交易信息处理方法及区块链节点

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
区块链共识机制综述;杨宇光,张树新;《信息安全研究》;20180405;369-379 *

Also Published As

Publication number Publication date
CN108923929A (zh) 2018-11-30

Similar Documents

Publication Publication Date Title
CN108923929B (zh) 区块链节点共识方法、装置及计算机可读存储介质
CN109067541B (zh) 基于区块链的数据验证方法及装置、电子设备
US9710977B2 (en) Vehicle data collection and verification
CN103440456B (zh) 一种应用程序安全评估的方法及装置
CN108960837A (zh) 区块链共识验证方法、装置及计算机可读存储介质
CN109144665A (zh) 一种模拟器识别方法、识别设备及计算机可读介质
CN109145590B (zh) 一种函数hook检测方法、检测设备及计算机可读介质
US10165062B2 (en) Method and apparatus for implementing action instruction based on barcode
CN106204035A (zh) 离线身份认证方法、智能终端及系统
CN103067853B (zh) 验证定位真实性的方法和系统
CN109102266A (zh) 账户数值转移方法及装置
CN107688924A (zh) 制证方法、装置及计算机可读存储介质
CN107292970A (zh) 一种电子票生成与验证方法及系统
CN108629586A (zh) 支付验证方法、设备及计算机可读存储介质
US10904362B2 (en) Game recap push advertisements
CN103166683A (zh) 电子券使用方法和系统
CN111541549A (zh) 基于区块链的信息传递方法、装置、设备及存储介质
CN108462580A (zh) 数值转移方法及装置
CN108810243A (zh) 信息展示方法、装置、终端及计算机可读存储介质
US20110171621A1 (en) System and Method for Managing and Delivering Course Content to Mobile Devices
CN114090689A (zh) 基于联盟链的智能合约数据处理方法、及其相关设备
US20190325478A1 (en) Motion sensor-based fraud prevention
WO2015043290A1 (en) Method and apparatus for implementing action instruction based on barcode
CN111723307A (zh) 信息处理方法、装置、系统、存储介质及计算机设备
KR101748116B1 (ko) 클라우드 모바일 환경에서의 스미싱 차단장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant