区块链节点权限控制方法、区块链系统及存储介质技术方案

技术编号:19242647 阅读:46 留言:0更新日期:2018-10-24 05:21
本发明专利技术公开了一种区块链节点权限控制方法,应用于包括第一类型区块链节点、第二类型区块链节点及第三类型区块链节点的区块链系统,该方法包括:一个所述第一类型区块链节点在收到另一个其他区块链节点的接入请求后,根据第一白名单中的第一标识和第二白名单中的第二标识,确定所述其他区块链节点的节点类型;根据所述节点类型,分别利用第一白名单中的第一公钥或第二白名单中的第二公钥验证所述其他区块链节点的签名是否合法;若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接。本发明专利技术还提供一种区块链系统及存储介质。由此,能够使区块链交易数据的安全性得到有效的保障。

【技术实现步骤摘要】
区块链节点权限控制方法、区块链系统及存储介质
本专利技术涉及区块链
,尤其涉及一种区块链节点权限控制方法、区块链系统及存储介质。
技术介绍
区块链(Blockchain)技术具备去中心化、信息不可篡改性等特点,运用区块链技术可实现多方参与的交易事件(如转账交易、支付交易等)。例如,银行A与银行B在区块链上进行交易,那么该区块链上所有其他节点都会知晓这笔交易,其他参与方可以一起参与确认交易准确性,防止信息的篡改。进一步地,区块链本质上是一个基于智能合约的分布式的数据库,区块链上面的信息就会被P2P(Peer-to-peer,对等)网络分享到所有节点上去。然而,现有的区块链数据交易系统架构中,区块链节点间没有有效的节点权限控制机制,无法有效区分非法区块链节点产生的区块数据并加以限制,交易数据的安全性得不到有效的保障。
技术实现思路
有鉴于此,本专利技术提出一种区块链节点权限控制方法、区块链系统及存储介质,以解决如何保障区块链系统交易数据的安全性的问题。首先,为实现上述目的,本专利技术提出一种区块链节点权限控制方法,应用于包括多个第一类型区块链节点、至少一个第二类型区块链节点及至少一个第三类型区块链节点的区块链系统,该方法包括步骤:一个所述第一类型区块链节点在收到另一个其他区块链节点的接入请求后,根据保存的第一白名单中的第一标识和第二白名单中的第二标识,确定所述其他区块链节点的节点类型;若所述其他区块链节点属于第一类型区块链节点,则利用所述第一白名单中的第一公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接;若所述其他区块链节点属于第二类型区块链节点,则利用所述第二白名单中的第二公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接。可选地,所述方法还包括步骤:一个所述第一类型区块链节点在生成区块数据后,利用保存的私钥对产生的区块数据的区块头部进行签名,并将签名后的区块数据发送给通信连接的其他第一类型区块链节点和第二类型区块链节点。可选地,所述方法还包括步骤:若一个其他第一类型区块链节点接收到所述签名后的区块数据,则利用保存的第一白名单中的第一公钥对所述签名后的区块数据的区块头部签名进行合法验证,若区块头部签名合法,则保存所述签名后的区块数据;若一个第二类型区块链节点接收到所述签名后的区块数据,则确定发送所述签名后的区块数据的第一类型区块链节点是否与保存的第三白名单中的一个第一标识对应,若与一个所述第一标识对应,则保存所述签名后的区块数据,并将所述签名后的区块数据发送给通信连接的第三类型区块链节点。可选地,所述第三类型区块链节点包括轻量钱包节点和全量钱包节点,所述将该签名后的区块发送给通信连接的第三类型区块链节点的步骤包括:若所述通信连接的第三类型区块链节点是轻量钱包节点,则将该签名后的区块数据的区块头发送给所述轻量钱包节点;若所述通信连接的第三类型区块链节点是全量钱包节点,则将该签名后的区块数据整体发送给所述全量钱包节点。可选地,所述第一类型区块链节点为矿机节点,所述第二类型区块链节点为接入节点。此外,为实现上述目的,本专利技术还提供一种区块链系统,所述区块链系统包括多个第一类型区块链节点、至少一个第二类型区块链节点及至少一个第三类型区块链节点,其中:各个所述第一类型区块链节点分别保存有第一白名单和第二白名单,所述第一白名单包括用于标识其他第一类型区块链节点的第一标识,所述第二白名单包括用于标识各个第二类型区块链节点的第二标识;所述第一白名单中含有其他合法的第一类型区块链节点的第一公钥,所述第二白名单中含有各个合法的第二类型区块链节点的第二公钥;所述第一公钥用于在对应的第一类型区块链节点请求接入时验证接入的第一类型区块链节点的签名是否合法;所述第二公钥用于在对应的第二类型区块链节点请求接入时验证接入的第二类型区块链节点的签名是否合法。可选地,各个所述第一类型区块链节点用于产生区块数据,各个所述第一类型区块链节点分别保存有一个私钥,所述私钥用于对产生的区块数据的区块头部进行签名。可选地,各个所述第二类型区块链节点分别保存有第三白名单,所述第三白名单包括用于标识各个合法的第一类型区块链节点的第一标识;各个所述第二类型区块链节点用于从各个合法的第一类型区块链节点同步所述区块数据,各个第三类型区块链节点用于从对应的第二类型区块链节点同步所述区块数据。可选地,所述第一类型区块链节点为矿机节点,所述第二类型区块链节点为接入节点,所述第三类型区块链节点为钱包节点,所述钱包节点包括轻量钱包节点和全量钱包节点,所述全量钱包节点用于保存所述第一类型区块链节点产生的全部区块数据,所述轻量钱包节点用于保存区块头数据。进一步地,为实现上述目的,本专利技术还提供一种存储介质,所述存储介质存储有区块链节点权限控制程序,所述区块链节点权限控制程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的区块链节点权限控制方法的步骤。相较于现有技术,本专利技术所提出的区块链节点权限控制方法、区块链系统及存储介质,可以保证区块链节点之间通信连接的合法性,并有效区分非法区块链节点产生的区块数据并加以限制,使交易数据的安全性得到有效的保障。附图说明图1是本专利技术第一实施例提出的一种区块链系统的架构示意图;图2是所述区块链系统的一种可选的具体实施例的架构示意图;图3是本专利技术第二实施例提出的一种区块链节点权限控制方法的流程示意图;图4是本专利技术第三实施例提出的一种区块链节点权限控制方法的流程示意图;本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,在本专利技术中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本专利技术要求的保护范围之内。第一实施例参阅图1所示,本专利技术第一实施例提出一种基于节点权限控制的区块链系统。本实施例中,所述区块链系统2可包括,但不仅限于,可通过区块链网络相互通信连接的多个第一类型区块链节点22、至少一个第二类型区块链节点24及至少一个第三类型区块链节点26。需要指出的是,图1仅示出了具有节点22-26的区块链系统2,但是应理解的是,可以替代的实施更多或者更少的组件。在本实施例中,所述第一类型区块链节点22可以是矿机(miningmachine)节点,所述第二类型区块链节点24可以是接入节点,所述第三类型区块链节点26可以是钱包节点。所述钱包节点包括轻量钱包节点和全量钱包节点。如图2所示,为所述区块链系本文档来自技高网...

【技术保护点】
1.一种区块链节点权限控制方法,应用于包括多个第一类型区块链节点、至少一个第二类型区块链节点及至少一个第三类型区块链节点的区块链系统,所述方法包括步骤:一个所述第一类型区块链节点在收到另一个其他区块链节点的接入请求后,根据保存的第一白名单中的第一标识和第二白名单中的第二标识,确定所述其他区块链节点的节点类型;若所述其他区块链节点属于第一类型区块链节点,则利用所述第一白名单中的第一公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接;若所述其他区块链节点属于第二类型区块链节点,则利用所述第二白名单中的第二公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接。

【技术特征摘要】
1.一种区块链节点权限控制方法,应用于包括多个第一类型区块链节点、至少一个第二类型区块链节点及至少一个第三类型区块链节点的区块链系统,所述方法包括步骤:一个所述第一类型区块链节点在收到另一个其他区块链节点的接入请求后,根据保存的第一白名单中的第一标识和第二白名单中的第二标识,确定所述其他区块链节点的节点类型;若所述其他区块链节点属于第一类型区块链节点,则利用所述第一白名单中的第一公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接;若所述其他区块链节点属于第二类型区块链节点,则利用所述第二白名单中的第二公钥验证接入的所述其他区块链节点的签名是否合法,若签名合法,则响应所述接入请求,与所述其他区块链节点建立通信连接。2.如权利要求1所述的区块链节点权限控制方法,其特征在于,所述方法还包括步骤:一个所述第一类型区块链节点在生成区块数据后,利用保存的私钥对产生的区块数据的区块头部进行签名,并将签名后的区块数据发送给通信连接的其他第一类型区块链节点和第二类型区块链节点。3.如权利要求2所述的区块链节点权限控制方法,其特征在于,所述方法还包括步骤:若一个其他第一类型区块链节点接收到所述签名后的区块数据,则利用保存的第一白名单中的第一公钥对所述签名后的区块数据的区块头部签名进行合法验证,若区块头部签名合法,则保存所述签名后的区块数据;若一个第二类型区块链节点接收到所述签名后的区块数据,则确定发送所述签名后的区块数据的第一类型区块链节点是否与保存的第三白名单中的一个第一标识对应,若与一个所述第一标识对应,则保存所述签名后的区块数据,并将所述签名后的区块数据发送给通信连接的第三类型区块链节点。4.如权利要求3所述的区块链节点权限控制方法,其特征在于,所述第三类型区块链节点包括轻量钱包节点和全量钱包节点,所述将该签名后的区块发送给通信连接的第三类型区块链节点的步骤包括:若所述通信连接的第三类型区块链节点是轻量钱包节点,则将该签名后的区块数据的区块头发送给所述轻量钱包节点;若所述通信连接的第三类型区块链节点是全量钱包节点,则将...

【专利技术属性】
技术研发人员:张慧勇
申请(专利权)人:深圳市网心科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1