CN113783899B - 节点退出方法和区块链系统 - Google Patents
节点退出方法和区块链系统 Download PDFInfo
- Publication number
- CN113783899B CN113783899B CN202111336333.8A CN202111336333A CN113783899B CN 113783899 B CN113783899 B CN 113783899B CN 202111336333 A CN202111336333 A CN 202111336333A CN 113783899 B CN113783899 B CN 113783899B
- Authority
- CN
- China
- Prior art keywords
- node
- voting
- super
- chain
- verification
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种节点退出方法和区块链系统,节点位于区块链的从链上,区块链包括1条主链和至少1条从链,主链包括至少三个超级节点,方法包括:举报节点确定待退出的节点后,向验证节点进行举报,其中,举报节点为任一超级节点,验证节点为与举报节点距离最近的超级节点;验证节点收到举报后,确定投票节点,并请求投票节点针对待退出的节点进行投票,投票节点为除举报节点和验证节点之外的超级节点;投票节点投票后,向验证节点反馈投票结果;验证节点根据所有投票结果确定举报成功后,将待退出的节点放入黑名单中,以使待退出的节点退出区块链。本发明提供的方法通过超级节点维护的黑名单,实现了从链上节点的退出。
Description
技术领域
本申请涉及区块链技术,具体地,涉及一种节点退出方法和区块链系统。
背景技术
区块链技术是一种多方共同维护的账本技术,由共识机制、密码算法、网络路由、合约脚本等多种技术融合组成,具有分布式可信、难篡改、多方维护等技术特点。这些技术特点使得区块链被认为是互联网普及以来最具颠覆性的技术之一,受到全球各方的高度关注。
目前在一个区块链网络上,当一个节点请求退出区块链网络时,向全网请求退出,经各节点管理员同意后成功退出区块链网络。例如,选择退出的节点向全网广播退出请求,各节点管理员选择同意其退出则向全网广播删除退出节点;当全网共识同意节点退出后更新各自的连接信息并与选择退出节点断开连接,将该节点清出区块链网络中。
发明内容
本申请实施例中提供了一种节点退出方法和区块链系统,以解决上述技术问题。
根据本申请实施例的第一个方面,提供了一种节点退出方法,所述节点位于区块链的从链上,所述区块链包括1条主链和至少1条从链,所述主链包括至少三个超级节点,所述方法包括:
举报节点确定待退出的节点后,向验证节点进行举报,其中,所述举报节点为任一超级节点,所述验证节点为与所述举报节点距离最近的超级节点;
所述验证节点收到举报后,确定投票节点,并请求投票节点针对所述待退出的节点进行投票,所述投票节点为除所述举报节点和验证节点之外的超级节点;
所述投票节点投票后,向所述验证节点反馈投票结果;
所述验证节点根据所有投票结果确定举报成功后,将所述待退出的节点放入黑名单中,以使所述待退出的节点退出所述区块链。
可选地,每一条从链与一个超级节点锚定,不同从链锚定的超级节点不同;
所述方法还包括:
被锚定的超级节点对其锚定的从链进行实时监管;
若监管到从链中任一节点行为异常,确定该任一节点为待退出的节点。
可选地,所述举报节点向验证节点进行举报时,向所述验证节点发送异常行为数据的存储地址;
所述验证节点请求投票节点针对所述待退出的节点进行投票时,向所述投票节点发送所述存储地址;
所述投票节点对存储地址中存储的异常行为数据进行验证,并根据验证结果进行投票。
可选地,所述存储地址具有状态变量,所述状态变量用于描述有权对所述存储地址进行访问的超级节点信息;
所述请求投票节点针对所述待退出的节点进行投票,包括:
从未反馈投票结果的投票节点中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,开启针对所述选择的投票节点的计时器,将所述选择的投票节点信息写入所述状态变量中;
若所述计时器终止之前,接收到所述选择的投票节点反馈的投票结果,则重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,开启针对所述选择的投票节点的计时器,将所述选择的投票节点信息写入所述状态变量中的步骤,直至所有投票节点均反馈投票结果;
若所述计时器终止时,仍未收到所述选择的投票节点反馈的投票结果,则确定所述选择的投票节点的反馈结果为投票失败,重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,开启针对所述选择的投票节点的计时器,将所述选择的投票节点信息写入所述状态变量中的步骤,直至所有投票节点均反馈投票结果。
可选地,所述方法还包括:
所述验证节点根据所有投票结果确定举报成功后,对所述举报节点进行激励;
所述验证节点根据所有投票结果确定举报失败后,对所述举报节点进行惩罚。
可选地,所述验证节点根据所有投票结果确定举报失败后,还包括:
记录所述举报节点的举报结果;
所述验证节点根据所有投票结果确定举报失败后,对所述举报节点进行惩罚,包括:
所述验证节点根据所有投票结果确定举报失败后,获取所述举报节点的历史举报结果,若与本次距离最近的预设数量个举报结果均为举报失败,则对所述举报节点进行惩罚。
可选地,所述主链还包括监管节点;
所述将所述待退出的节点放入黑名单中之后,还包括:
退出的节点通过其锚定的超级节点,向所述监管节点发起申诉;
所述监管节点确定所述退出的节点位于黑名单中后,通过用于异议处理的智能合约对所述申诉进行处理;
若对所述申诉进行处理的结果为申诉成功,则将所述待退出的节点从所述黑名单中删除;
若对所述申诉进行处理的结果为申诉失败,则向所述退出的节点反馈处理结果。
根据本申请实施例的第二个方面,提供了一种区块链系统,所述区块链系统包括一条主链和至少一条从链;
所述主链包括1个监管节点和至少三个超级节点;
每条从链包括1个骨干节点和至少一个服务节点,所述骨干节点与一个超级节点锚定,不同骨干节点锚定的超级节点不同;
所述骨干节点,用于向所述监管节点同步其所在从链的数据;
所述超级节点,用于执行上述第一方面所提供的任一种节点退出方法中超级节点的步骤;
所述监管节点,用于执行上述第一方面所提供的任一种节点退出方法中监管节点的步骤;
所述服务节点,用于在其被加入黑名单后,执行上述第一方面所提供的任一种节点退出方法中待退出的节点的步骤。
可选地,不同从链包括的骨干节点互不相同,或者,至少两条从链共用一个骨干节点。
可选地,任意两条从链的结构相同,或者,不同。
本实施例中提供的方案中,举报节点确定待退出的节点后,向验证节点进行举报,其中,举报节点为任一超级节点,验证节点为与举报节点距离最近的超级节点;验证节点收到举报后,确定投票节点,并请求投票节点针对待退出的节点进行投票,投票节点为除举报节点和验证节点之外的超级节点;投票节点投票后,向验证节点反馈投票结果;验证节点根据所有投票结果确定举报成功后,将待退出的节点放入黑名单中,以使待退出的节点退出区块链。本发明提供的方法通过超级节点维护的黑名单,实现了从链上节点的退出。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例中提供的一种区块链系统的结构示意图;
图2示出了本申请实施例中提供的一种区块链系统中主链的功能架构示意图;
图3示出了本申请实施例中提供的一种区块链系统中从链的功能架构示意图;
图4示出了本申请实施例中提供的一种节点退出方法的流程示意图;
图5示出了本申请实施例中提供的一种节点退出方法的交互图;
图6示出了本申请实施例中提供的一种节点退出后的申诉交互图;
图7示出了本申请实施例中提供的另一种区块链系统的结构示意图。
具体实施方式
目前在一个区块链网络上,当一个节点请求退出区块链网络时,向全网请求退出,经各节点管理员同意后成功退出区块链网络。例如,选择退出的节点向全网广播退出请求,各节点管理员选择同意其退出则向全网广播删除退出节点;当全网共识同意节点退出后更新各自的连接信息并与选择退出节点断开连接,将该节点清出区块链网络中。
基于此,本申请提供一种节点退出方法,举报节点确定待退出的节点后,向验证节点进行举报,其中,举报节点为任一超级节点,验证节点为与举报节点距离最近的超级节点;验证节点收到举报后,确定投票节点,并请求投票节点针对待退出的节点进行投票,投票节点为除举报节点和验证节点之外的超级节点;投票节点投票后,向验证节点反馈投票结果;验证节点根据所有投票结果确定举报成功后,将待退出的节点放入黑名单中,以使待退出的节点退出区块链。通过超级节点维护的黑名单,实现了从链上节点的退出。
本发明提供的节点退出方法中退出的节点是区块链系统中从链的节点,如服务节点。该区块链系统是一个主从链结构,即“1+N”主从链架构。具体的,如图1所示,该区块链系统包括一条主链和至少一条从链。主链包括1个监管节点和至少三个超级节点。每条从链包括1个骨干节点和至少一个服务节点,骨干节点与一个超级节点锚定,不同骨干节点锚定的超级节点不同。骨干节点,用于向监管节点同步其所在从链的数据。从链通过该骨干节点与主链执行跨链交互过程。
不同从链包括的骨干节点互不相同,或者,至少两条从链共用一个骨干节点。
任意两条从链的结构相同,或者,不同。
1、主链
主链基础功能为保证链群高效运行,服务功能为整个链群生态的健康发展保驾护航。如未整个链群结构提供公共服务,培育生态蓬勃发展;为各个区块链提供跨链交易平台及规范,促进数据共享、共融;为各行业提供托管服务,保证数据不可篡改和可恢复;提供可信认证,保证节点及其数据跨域可信性,拥有认证权限的节点对节点或标识提供认证服务;为各区块链提供监管服务和安全监测服务,确保整个链群结构中各节点合法合规性和运行安全性;主链对外开放应用服务,服务节点可自由进入或退出主链享受主链开放服务,促进企业能力提升。
主链中包括多个超级节点和1个监管节点。
1)超级节点
超级节点负责执行主链共识,同时具备数据托管、跨链网关、资质审核、链群管理等功能;提供可信计算环境,基于可信计算硬件来运行预言机服务;获取外部数据,经过核验后可对外提供可信数据服务。
链群中所有节点可申请成为超级节点候选人,并拥有超级节点被选举权。
超级节点负责节点群建设,针对自由接入的服务节点数据同步权限进行管理,提升主链整体服务能力。
2)监管节点
监管节点负责对整个链群用户和节点数据、行为进行合法合规监管,并对违法违规行为进行处置,如关停服务、限制权限、控制流量、不可信用户标记等;同时,监管节点对超级节点和骨干节点等具有管理权限的节点进行资质审核和可信认证,确保关键节点的可信性。
主链功能架构图2所示:
主链具有基础功能和服务功能,其中基础功能包括但不限于:可插拔架构,高性能共识机制,高可靠智能合约,隐私保护,加密机制,自治理,同构异构链接入,激励机制。服务功能包括但不限于:数字身份BID,可信认证服务,多标识根区管理,标识注册解析,托管服务,公共服务,接口服务,跨链。
监管节点除了具有上述基础功能和服务功能之外,还具有但不限于如下功能:数据内容监管,节点行为监管,超级节点资质审核,骨干节点资质审核,应用违规处置,节点违规处置,超级节点认证,骨干节点认证。
超级节点除了具有上述基础功能和服务功能之外,还具有但不限于如下功能:公共数据管理,用户/节点身份认证,对外公共服务,节点群建设与管理,从链准入认证,链群管理,合约管理,可信计算环境,大数据分析,运行监测,主链共识,跨链网关,提供可信数据服务,基于可信硬件提供预言机服务。
通过主链的监管节点和超级节点,可以实现共享交互平台,监测监管服务,平等协作共治,生态建设运营。
2、从链
从链基础功能是保证骨干节点下属从链高效运行,服务功能为从链业务正常开展、产业生态良性发展提供保障。例如:根据业务场景不同,从链支持其具体的个性化业务活动,并支持其独立执行共识。
从链接入方式分为两种:一种是基于主链创建同构从链,另一种是现有异构区块链根据主链接口规范开发接口接入主链。
从链接入需要向主链递交申请,并通过骨干节点与主链对接。
从链可使用整个链群的公共服务或资源,也可以根据需求部署个性化应用或智能合约。
从链可以为基础从链,也可以为区域性的从链,还可以为行业从链等。
从链包括一个骨干节点和多个服务节点。
1)骨干节点
具有锚定主链、从链公式、从链监管、智能合约部署等功能。
其中,监管职责是由主链监管节点指派地方监管部门参与监管活动。
从链通过骨干节点与主链执行跨链交互过程。
从链之间可以共用一个骨干节点,从链自己包括一个骨干节点。
2)服务节点
执行具体业务活动,其权限由骨干节点同一分配管理。
除此之外,从链还可以包括共识节点,该共识节点仅用于进行共识。
从链功能架构图3所示:
从链也具有基础功能和服务功能,其中基础功能包括但不限于:可插拔架构,高性能共识机制,高可靠智能合约,隐私保护,加密机制,自治理,主链互联互通,激励机制。服务功能包括但不限于:数字身份BID,可信认证服务,多标识融合管理,标识注册解析,个性化定制服务,对外服务,接口服务,跨链。
骨干节点除了具有上述基础功能和服务功能之外,还具有但不限于如下功能:锚定主链,从链管理,从链节点权限管理,从链共识,对外提供服务,智能合约订制,可插拔组件配置,参与链群投票。
共识节点除了具有上述基础功能和服务功能之外,还具有但不限于如下功能:智能合约订制,同步从链数据,对外提供服务,从链共识,执行具体业务活动,参与链群投票。
服务节点除了具有上述基础功能和服务功能之外,还具有但不限于如下功能:参与投票链群,同步从链数据,智能合约订制,对外提供公共服务,使用链群公共服务,执行具体业务活动。
通过从链的骨干节点、共识节点和服务节点,可以实现业务自治,独立共识,服务订制,公共资源共享。
参见图4,基于上述区块链中从链的节点的退出方案为:
101,举报节点确定待退出的节点后,向验证节点进行举报。
其中,举报节点也为提议节点,举报节点为任一超级节点,验证节点为与举报节点距离最近的超级节点。即主链上的所有节点都可以做举报节点。
由于每一条从链与一个超级节点锚定,不同从链锚定的超级节点不同。因此,被锚定的超级节点对其锚定的从链进行实时监管。若监管到从链中任一节点行为异常(如节点向外推送垃圾信息,或者,永远不能共识的信息,或者,发送异常数据),确定该任一节点为待退出的节点。
另外,在向验证节点进行举报的时候,举报节点还会向验证节点发送异常行为数据的存储地址。
102,验证节点收到举报后,确定投票节点,并请求投票节点针对待退出的节点进行投票。
投票节点为除举报节点和验证节点之外的超级节点。
主链上的超级节点在本实施例提供的节点退出方案中被分为几类,第1类为举报节点,该节点为1个,即当任何一个超级节点发现其监管的从链出现违规操作,该超级节点即成为举报节点进行举报。第2类为验证节点,该验证节点为1个,是距离举报节点最近的超级节点,即举报接的邻居节点,若有多个邻居节点与举报接的距离相同时,可以任选一个座位超级节点。第3类为投票节点,投票节点可以为剩下所有的超级节点,也可以为剩下的部分超级节点,可以通过智能合约确定具体投票节点。
各超级节点上均部署有用于处理举报进行投票的智能合约,该智能合约的能力为能识别举报信息,并在接收到举报信息之后,发起投票。
另外,若在向验证节点进行举报的时候,举报节点还向验证节点发送异常行为数据的存储地址,那么验证节点请求投票节点针对待退出的节点进行投票时,也会向投票节点发送存储地址。
103,投票节点投票后,向验证节点反馈投票结果。
若验证节点请求投票节点针对待退出的节点进行投票时,向投票节点发送了存储地址,那么投票节点投票时,会对存储地址中存储的异常行为数据进行验证,如验证举报内容是否真实有效等,并根据验证结果进行投票,如得到一个同意或者不同意的结果。
104,验证节点根据所有投票结果确定举报成功后,将待退出的节点放入黑名单中,以使待退出的节点退出区块链。
其中,本步骤中的投票通过可以为全部投票节点均投通过票,或者,投通过票的投票节点数量占总投票节点数量的比例高于预设阈值。
黑名单是一个文件,里面写有非法节点的地址。该黑名单写在注册表里,或者写在可信执行环境TEE中,TEE可以位于主链上,也可以位于链下。黑名单的存储地址在全网广播,所有节点均有权限进行查看,但是,只有超级节点有黑名单的写入权限。
节点在进行操作的时候,均会查询黑名单,如果操作对象在黑名单中,则不再执行相应操作,此时,相当于黑名单中的节点退出区块链。
为了防止多个投票节点同时对存储地址进行方案,存储地址还可以具有状态变量,该状态变量用于描述有权对存储地址进行访问的超级节点信息。此时步骤102中验证节点收到举报,确定投票节点后,从未反馈投票结果的投票节点中选择一个投票节点(选择方式可以随机选择,也可以根据一定规则选择,规则可以通过智能合约设置),请求选择的投票节点对待退出的节点进行投票,并在请求时,开启针对选择的投票节点的计时器,将选择的投票节点信息写入状态变量中。
若计时器终止之前,接收到选择的投票节点反馈的投票结果,则重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对待退出的节点进行投票,并在请求时,开启针对选择的投票节点的计时器,将选择的投票节点信息写入状态变量中的步骤,直至所有投票节点均反馈投票结果。
若计时器终止时,仍未收到选择的投票节点反馈的投票结果,则确定选择的投票节点的反馈结果为投票失败,重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对待退出的节点进行投票,并在请求时,开启针对选择的投票节点的计时器,将选择的投票节点信息写入状态变量中的步骤,直至所有投票节点均反馈投票结果。
通过状态变量可以实现一个投票节点进行投票时,所有其他投票节点处于不可投票状态。
此外,为了激励有效的举报行为,验证节点根据所有投票结果确定举报成功后,对举报节点进行激励,如将举报对象的押金给举报节点。验证节点根据所有投票结果确定举报失败后,对举报节点进行惩罚,如对举报节点进行惩罚,如扣其押金,或者将此次举报事件写入黑名单中。
具体惩罚方式,可以存在一次失败的举报就进行惩罚,也可以在连续进行多次失败的举报时再进行惩罚。例如,在每次举报失败之后,验证节点记录举报节点的举报结果。那么,验证节点在每次根据所有投票结果确定举报失败后,获取举报节点的历史举报结果,若与本次距离最近的预设数量个举报结果均为举报失败,则对举报节点进行惩罚。
为了避免错误举报,错误投票造成的节点的错误退出,在将待退出的节点放入黑名单中之后,退出的节点可以通过其锚定的超级节点,向监管节点发起申诉。监管节点确定退出的节点位于黑名单中后,通过用于异议处理的智能合约对申诉进行处理。若对申诉进行处理的结果为申诉成功,则将待退出的节点从黑名单中删除。若对申诉进行处理的结果为申诉失败,则向退出的节点反馈处理结果。
如监管节点根据国家文件判断其是否违法,若确认违法,则反馈不同意异议的结构,若确认不违法,则将其从黑名单中删除,并在删除后向超级节点发送通知。
此外,本实施例提供的方案,还包括节点退出后的恢复方法,即当黑名单中的节点在预设时间段内(如3个月)没再次受到举报,则可以在黑名单中标注,该节点从黑名单中删除。此时,节点可以参与区块链的正常处理。
其中,验证节点只能向黑名单中写入信息。监管节点为异议节点,只能从黑名单中删除信息。
下面以图5为例,对本实施例提供的节点退出方法进行再次说明。
1、举报节点向验证节点提交举报提案。
如举报节点检查链上节点(如从链上节点),进行区块违法行为检测。即举报节点会对其他节点进行监管,若监测到某一节点异常(如异常发送数据),那么该举报节点就会向验证节点提交举报提案。
2、验证节点接收到举报提案后对该举报提案进行验证。
验证过程为:基于相应的智能合约向主链上的投票节点发起投票机制。此处进行投票的超级节点即为投票节点。
以投票节点为除举报节点和验证节点之外的所有超级节点为例,当验证节点接收到举报信息之后,会基于该智能合约向除举报节点和验证节点之外的所有超级节点发起投票流程。因为所有节点部署了相应的智能合约,投票节点基于智能合约开始基于规则进行投票,如确认举报内容是否真实有效后,基于智能合约得到一个同意或不同意结果。
验证节点上部署接收投票,并进行投票汇总。
例如,基于相应的智能合约向主链上投票节点发起投票邀请。各超级节点上均部署有用于处理举报的智能合约。智能合约包括函数有:
(1)举报节点能够在正确的流程下发起投票流程的函数;
举报节点提供举报信息参数,包括被举报事件的存储地址等,要求函数调用后,状态变量根据举报信息参数得到修改,状态变量修改后触发投票流程函数并传递举报信息参数;
(2)投票流程函数:投票节点能够在正确的流程中参与投票并在合约中记录投票结果相关信息的函数;
被调用后,向所有超级节点发送投票邀请通知,通知中包含举报信息参数,发送后,触发计时器,在时间阈值内,投票结果状态变量根据是否接收到投票数量阈值的投票结果得到修改,
a. 修改为新状态(投票成功)后触发黑名单写入函数;
b. 超过时间阈值后,触发投票失败函数。
(3)黑名单写入函数:被举报节点在投票通过时被写入黑名单的函数。
(4)投票失败函数:举报节点在投票不通过时查看举报结果的函数。
3、投票节点进行投票后反馈投票结果。
4、若投票通过,则验证节点通过智能合约将非法节点的地址写入黑名单中,将黑名单进行全网共识,完成一次举报提案的处理。
验证节点可以通过智能合约的黑名单写入函数,将非法节点的地址写入黑名单中,将黑名单进行全网共识,完成一次举报提案的处理。
5、举报提案处理完成之后,若提案成功,即举报对象加入黑名单中,则对举报节点进行奖励。若提案失败,则对举报节点进行惩罚,或者累计提案失败次数多于预设数值,则对举报节点进行处罚。
被写入黑名单的节点可以对该结果进行申诉,申诉流程如图6所示:
6、被写入黑名单的节点若存疑,则向监管节点发送申诉。
7、监管节点接收到申诉后,首先确认其为黑名单成员,然后触发其存储的用于异议处理的智能合约。
8、基于该智能合约,监管节点根据国家文件判断其是否违法,若确认违法,则反馈不同意异议的结构,若确认不违法,则将其从黑名单中删除,并在删除后向超级节点发送通知。
下面再以图7所示的区块链结构为例,对本实施例提供的方法举例说明:
各个超级节点均会通过其锚定的骨干节点对从链中的节点进行监管。若超级节点3通过骨干节点监测到服务节点B最近一段时间内的数据发送异常,则超级节点对服务节点B的行为进行举报,此时,超级节点3为举报节点。主链上的所有节点均为验证节点,如超级节点1、超级节点4均为验证节点。
根据图6所示,距离超级节点3最近的超级节点是超级节点2,那么超级节点2为验证节点。那么,
1、超级节点3向超级节点2提交举报提案。
2、超级节点2接收到举报提案之后,向超级节点1、超级节点4发起投票请求。
3、超级节点1和超级节点4分别通过相应的智能合约进行投票,并将投票结果反馈给超级节点2。
4、超级节点2根据投票结果确定服务节点B是否为非法节点。
如,超级节点1和超级节点4均投通过票,则服务节点B为非法节点。超级节点1投通过票,超级节点4投否定票,则服务节点B为合法节点。
5、若超级节点2确定服务节点B为合法节点,则向超级节点3反馈其举报失败的结果,并对超级节点3进行惩罚。
若超级节点2确定服务节点B为合法节点,则将服务节点B的地址加入黑名单中,并向超级节点3反馈举报成功的结果,并对超级节点3进行奖励。
若服务节点B认为超级节点3的举报不实,则
6、服务节点B向监管节点发送申诉请求。
7、监管节点接收到申诉后,首先确认服务节点B是否为黑名单成员,如果是,则触发监管节点存储的用于异议处理的智能合约。
8、基于该智能合约,监管节点根据国家文件判断其是否违法,若确认违法,则反馈不同意异议的结构,若确认不违法,则将服务节点B从黑名单中删除,并在删除后向超级节点1、超级节点2、超级节点3、超级节点4发送通知。
本实施例提供的方法,举报节点确定待退出的节点后,向验证节点进行举报,其中,举报节点为任一超级节点,验证节点为与举报节点距离最近的超级节点;验证节点收到举报后,确定投票节点,并请求投票节点针对待退出的节点进行投票,投票节点为除举报节点和验证节点之外的超级节点;投票节点投票后,向验证节点反馈投票结果;验证节点根据所有投票结果确定举报成功后,将待退出的节点放入黑名单中,以使待退出的节点退出区块链,进而通过超级节点维护的黑名单,实现了从链上节点的退出。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (9)
1.一种节点退出方法,其特征在于,所述节点位于区块链的从链上,所述区块链包括1条主链和至少1条从链,所述主链包括至少三个超级节点,所述方法包括:
举报节点确定待退出的节点后,向验证节点进行举报,其中,所述举报节点为任一超级节点,所述验证节点为与所述举报节点距离最近的超级节点,所述举报节点向验证节点进行举报时,向所述验证节点发送异常行为数据的存储地址;
所述验证节点收到举报后,确定投票节点,并请求投票节点针对所述待退出的节点进行投票,所述投票节点为除所述举报节点和验证节点之外的超级节点,所述验证节点请求投票节点针对所述待退出的节点进行投票时,向所述投票节点发送所述存储地址;
所述投票节点对存储地址中存储的异常行为数据进行验证,并根据验证结果进行投票;
所述投票节点投票后,向所述验证节点反馈投票结果;
所述验证节点根据所有投票结果确定举报成功后,将所述待退出的节点放入黑名单中,以使所述待退出的节点退出所述区块链;
其中,所述存储地址具有状态变量,所述状态变量用于描述有权对所述存储地址进行访问的超级节点信息;所述请求投票节点针对所述待退出的节点进行投票,包括:从未反馈投票结果的投票节点中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,将所述选择的投票节点信息写入所述状态变量中;被写入状态变量的主链投票节点处于可投票状态,未被写入状态变量的主链投票节点处于不可投票状态;
其中,每个超级节点上均部署有用于处理举报的智能合约,所述智能合约包括投票流程函数,所述投票流程函数的触发条件是:所述状态变量被修改。
2.根据权利要求1所述的方法,其特征在于,每一条从链与一个超级节点锚定,不同从链锚定的超级节点不同;
所述方法还包括:
被锚定的超级节点对其锚定的从链进行实时监管;
若监管到从链中任一节点行为异常,确定该任一节点为待退出的节点。
3.根据权利要求2所述的方法,其特征在于,所述请求投票节点针对所述待退出的节点进行投票,还包括:
在请求时,开启针对所述选择的投票节点的计时器;
若所述计时器终止之前,接收到所述选择的投票节点反馈的投票结果,则重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,开启针对所述选择的投票节点的计时器,将所述选择的投票节点信息写入所述状态变量中的步骤,直至所有投票节点均反馈投票结果;
若所述计时器终止时,仍未收到所述选择的投票节点反馈的投票结果,则确定所述选择的投票节点的反馈结果为投票失败,重复执行从未反馈投票结果的投票中选择一个投票节点,请求选择的投票节点对所述待退出的节点进行投票,并在请求时,开启针对所述选择的投票节点的计时器,将所述选择的投票节点信息写入所述状态变量中的步骤,直至所有投票节点均反馈投票结果。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述验证节点根据所有投票结果确定举报成功后,对所述举报节点进行激励;
所述验证节点根据所有投票结果确定举报失败后,对所述举报节点进行惩罚。
5.根据权利要求4所述的方法,其特征在于,所述验证节点根据所有投票结果确定举报失败后,还包括:
记录所述举报节点的举报结果;
所述验证节点根据所有投票结果确定举报失败后,对所述举报节点进行惩罚,包括:
所述验证节点根据所有投票结果确定举报失败后,获取所述举报节点的历史举报结果,若与本次距离最近的预设数量个举报结果均为举报失败,则对所述举报节点进行惩罚。
6.根据权利要求1所述的方法,其特征在于,所述主链还包括监管节点;
所述将所述待退出的节点放入黑名单中之后,还包括:
退出的节点通过其锚定的超级节点,向所述监管节点发起申诉;
所述监管节点确定所述退出的节点位于黑名单中后,通过用于异议处理的智能合约对所述申诉进行处理;
若对所述申诉进行处理的结果为申诉成功,则将所述待退出的节点从所述黑名单中删除;
若对所述申诉进行处理的结果为申诉失败,则向所述退出的节点反馈处理结果。
7.一种区块链系统,其特征在于,所述区块链系统包括一条主链和至少一条从链;
所述主链包括1个监管节点和至少三个超级节点;
每条从链包括1个骨干节点和至少一个服务节点,所述骨干节点与一个超级节点锚定,不同骨干节点锚定的超级节点不同;
所述骨干节点,用于向所述监管节点同步其所在从链的数据;
所述超级节点,用于执行权利要求1-6任一种节点退出方法中超级节点的步骤;
所述监管节点,用于执行权利要求1-6任一种节点退出方法中监管节点的步骤;
所述服务节点,用于在其被加入黑名单后,执行权利要求1-6任一种节点退出方法中待退出的节点的步骤。
8.根据权利要求7所述的区块链系统,其特征在于,不同从链包括的骨干节点互不相同,或者,至少两条从链共用一个骨干节点。
9.根据权利要求7所述的区块链系统,其特征在于,任意两条从链的结构相同,或者,不同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111336333.8A CN113783899B (zh) | 2021-11-12 | 2021-11-12 | 节点退出方法和区块链系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111336333.8A CN113783899B (zh) | 2021-11-12 | 2021-11-12 | 节点退出方法和区块链系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113783899A CN113783899A (zh) | 2021-12-10 |
CN113783899B true CN113783899B (zh) | 2022-03-08 |
Family
ID=78957017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111336333.8A Active CN113783899B (zh) | 2021-11-12 | 2021-11-12 | 节点退出方法和区块链系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113783899B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114169890A (zh) * | 2021-12-17 | 2022-03-11 | 中国电子科技网络信息安全有限公司 | 一种基于骨干节点联盟链跨链接入方法及架构系统 |
CN114372812A (zh) * | 2021-12-29 | 2022-04-19 | 国网天津市电力公司 | 一种基于区块链能源数据的正向激励的能耗监测方法 |
US20240177144A1 (en) * | 2022-11-30 | 2024-05-30 | Nagravision Sarl | System and method for sharing a distributed revocation list on a blockchain |
CN115859340B (zh) * | 2023-02-20 | 2023-05-16 | 武汉大学 | 基于多区块链的链上加密数据的内容审查系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188137A (zh) * | 2019-04-19 | 2019-08-30 | 杭州电子科技大学 | 一种基于诚信的区块链共识机制 |
CN111600960A (zh) * | 2020-05-22 | 2020-08-28 | 昆明大棒客科技有限公司 | 区块链中的混合式共识机制的切换方法及相关设备 |
CN111865968A (zh) * | 2020-07-16 | 2020-10-30 | 南京工业大学 | 一种实用于区块链的优化拜占庭容错算法 |
CN112950201A (zh) * | 2021-02-08 | 2021-06-11 | 深圳前海益链网络科技有限公司 | 一种应用于区块链系统的节点管理方法及相关装置 |
CN113364768A (zh) * | 2021-06-03 | 2021-09-07 | 上海分未信息科技有限公司 | 一种基于区块链技术的面向虚拟电厂的联盟链节点管理系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493187A (zh) * | 2019-07-10 | 2019-11-22 | 布比(北京)网络技术有限公司 | 一种区块链的验证节点选举方法及系统 |
-
2021
- 2021-11-12 CN CN202111336333.8A patent/CN113783899B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188137A (zh) * | 2019-04-19 | 2019-08-30 | 杭州电子科技大学 | 一种基于诚信的区块链共识机制 |
CN111600960A (zh) * | 2020-05-22 | 2020-08-28 | 昆明大棒客科技有限公司 | 区块链中的混合式共识机制的切换方法及相关设备 |
CN111865968A (zh) * | 2020-07-16 | 2020-10-30 | 南京工业大学 | 一种实用于区块链的优化拜占庭容错算法 |
CN112950201A (zh) * | 2021-02-08 | 2021-06-11 | 深圳前海益链网络科技有限公司 | 一种应用于区块链系统的节点管理方法及相关装置 |
CN113364768A (zh) * | 2021-06-03 | 2021-09-07 | 上海分未信息科技有限公司 | 一种基于区块链技术的面向虚拟电厂的联盟链节点管理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113783899A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113783899B (zh) | 节点退出方法和区块链系统 | |
CN115210741B (zh) | 部分有序的区块链 | |
CN111741114B (zh) | 基于区块链的可监管跨链交互系统、方法及设备 | |
CN106850536B (zh) | 区块链共识方法及系统 | |
CN110602217B (zh) | 基于区块链的联盟管理方法、装置、设备及存储介质 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
CN111601258A (zh) | 一种基于区块链的车联网节点数据安全通信方法 | |
CN113726913B (zh) | 骨干节点接入方法和区块链系统 | |
CN111131209A (zh) | 一种改进的高效共识方法、系统、计算机设备及存储介质 | |
Ciccarelli et al. | Collusion in peer-to-peer systems | |
CN114493865A (zh) | 基于区块链的去中心化互联网协同系统和数据交互方法 | |
US11343313B1 (en) | Fault tolerant periodic leader rotation for blockchain | |
CN111737104A (zh) | 区块链网络服务平台及其测试用例共享方法、存储介质 | |
CN109472698A (zh) | 基于区块链的公益监督方法及系统 | |
CN112269838A (zh) | 基于区块链的监管方法、装置、电子设备及存储介质 | |
CN115987697A (zh) | 基于事件订阅机制的多层级情报数据共享方法及系统 | |
Quamara et al. | An in-depth security and performance investigation in hyperledger fabric-configured distributed computing systems | |
Brotsis et al. | On the security of permissioned blockchain solutions for iot applications | |
CN116957110B (zh) | 一种基于联盟链的可信联邦学习方法及系统 | |
Mohsenzadeh et al. | A novel reputation-based consensus framework (RCF) in distributed ledger technology | |
CN112102118A (zh) | 一种基于区块链的协同执法办案方法 | |
CN114912856B (zh) | 一种基于区块链的飞行模拟器维护方法 | |
CN113225191B (zh) | 共识节点的生成方法、装置、存储介质及处理器 | |
Chen et al. | A Vehicular Trust Blockchain Framework with Scalable Byzantine Consensus | |
Li et al. | Enterprise Composite Blockchain Double Layer Consensus Algorithm Based on Improved DPoS and BFT |
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 |