CN112822159B - 区块链账户的权限控制方法、装置、电子设备和存储介质 - Google Patents
区块链账户的权限控制方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112822159B CN112822159B CN202011579867.9A CN202011579867A CN112822159B CN 112822159 B CN112822159 B CN 112822159B CN 202011579867 A CN202011579867 A CN 202011579867A CN 112822159 B CN112822159 B CN 112822159B
- Authority
- CN
- China
- Prior art keywords
- account
- blockchain
- block chain
- transaction
- target
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/407—Cancellation of a transaction
-
- 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
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
- H04L2209/463—Electronic voting
-
- 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
Abstract
本申请涉及区块链技术领域,尤其涉及一种区块链账户的权限控制方法、装置、电子设备和存储介质。该方法包括:获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一;通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。通过这样设置,本申请能够实现针对类以太坊区块链平台的区块链账户的权限控制。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链账户的权限控制方法、装置、电子设备和存储介质。
背景技术
目前,市面上存在大量根据以太坊账户体系为原型开发的联盟区块链平台,这些类以太坊的区块链平台不提供账户的注册入口,相应的区块链账户只支持通过离线创建等方式生成。对于这类区块链平台,其不限制区块链账户数量,也不对区块链账户对平台接口的访问做限制。由此可见,类以太坊的区块链平台目前缺少针对区块链账户的权限控制机制。
发明内容
有鉴于此,本申请实施例提供了一种区块链账户的权限控制方法、装置、电子设备和存储介质,能够实现针对类以太坊区块链平台的区块链账户的权限控制。
本申请实施例的第一方面提供了一种区块链账户的权限控制方法,包括:
获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一;
通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
在本申请实施例中,当需要对某个区块链账户进行权限控制时,可由区块链网络的某个创世账户发起对该区块链账户的权限控制请求,然后通过区块链共识机制将该权限控制请求广播至该区块链网络的各个节点。接着,接收该区块链网络各个创世账户对该权限控制请求的共识结果,并基于该共识结果完成对该区块链账户的权限控制操作。通过设置上述权限控制机制,本申请实施例能够实现针对类以太坊区块链平台的区块链账户的权限控制。
在本申请的一个实施例中,所述获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,具体可以为:
获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易;
所述通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点,可以包括:
通过区块链共识机制将所述提案交易广播至所述区块链网络中的各个节点;
获取由所述区块链网络中的一个目标节点发起的针对所述提案交易的投票交易;
通过区块链共识机制将所述投票交易广播至所述区块链网络中的各个节点;
所述接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果,具体可以为:
接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果;
所述若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作,具体可以为:
若所述投票结果符合预设条件,则对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作。
在本申请实施例中,当需要对某个区块链账户进行权限控制时,可由区块链网络的某个创世账户发起对该区块链账户进行权限控制的提案交易,然后通过区块链共识机制将该提案交易广播至该区块链网络的各个节点;接着由区块链网络的另一个创世账户发起对提案交易的投票交易,收集各个创世账户对该投票交易的投票结果,最后根据投票结果决策是否对该区块链账户执行对应的权限控制操作。通过设置上述权限控制机制,本申请实施例能够实现针对类以太坊区块链平台的区块链账户的权限控制。
进一步的,在获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易之后,还可以包括:
将所述提案交易的状态设置为进行中的状态;
在接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果之后,还可以包括:
若所述投票结果不符合所述预设条件,则将所述提案交易的状态设置为已完成的状态;
在对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作之后,还可以包括:
将所述提案交易的状态设置为已完成的状态。
当区块链网络中的某个创世账户发起对目标区块链账户进行权限控制的提案交易之后,可以将该提案交易的提案状态设置为进行中的状态,表示该提案交易已激活且未完成。而在对该目标区块链账户执行与该提案交易类型对应的权限控制操作之后,则提案交易已完成,因此可以将该提案交易的状态设置为已完成的状态。
在本申请的一个实施例中,接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果,可以包括:
统计已接收到的针对所述投票交易的投票结果中的同意票数量与反对票数量之和,得到已投票数量;
若所述已投票数量和所述多个预设创世账户的数量相同,则确定已接收到所有目标节点返回的针对所述投票交易的投票结果。
区块链平台每隔一定时间可以统计已接收到的针对所述投票交易的投票结果,计算其中的同意票数量与反对票数量之和,得到已投票数量。然后,将该已投票数量和该区块链网络预设的创世账户的数量进行比较,若两者相同,则表示所有创世账户已完成投票。
在本申请的一个实施例中,对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作,可以包括:
若所述提案交易的类型为账户冻结提案,则将所述目标区块链账户添加到预先构建的已冻结账户列表中;其中,所述已冻结账户列表存储于所述区块链网络的世界状态中,所述世界状态为区块链所有节点都保持数据同步的一个存储空间;
若所述提案交易的类型为账户解冻提案,则将所述目标区块链账户从所述已冻结账户列表中移除。
提案交易的类型可以包括账户冻结提案和账户解冻提案,对于账户冻结提案,若确定对该目标区块链账户进行冻结,则将该目标区块链账户添加到预先构建的一个已冻结账户列表中。具体的,该已冻结账户列表可以为一个记录区块链账户地址的数组,存储在区块链网络的世界状态中。通过将账户冻结名单保存在世界状态,能够保证区块链所有节点对当前已冻结账户的记录都是一致的。对于账户解冻提案,若确定对该目标区块链账户进行解冻,则将该目标区块链账户从世界状态的已冻结账户列表中移除。
进一步的,所述权限控制方法还可以包括:
在接收到所述区块链网络中的任意节点发起的交易请求后,获取所述任意节点的登录账户;
若所述任意节点的登录账户处于所述已冻结账户列表中,则拒绝所述交易请求。
区块链平台通过在世界状态中维护一个已冻结账户列表,能够实现对区块链节点的访问控制。例如,区块链平台在接收到区块链网络中任意一个节点发起的交易请求后,首先会检测该节点的登录账户是否已冻结,若已冻结则拒绝该交易请求。
在本申请的一个实施例中,所述区块链网络的创世账户可以通过以下步骤设置:
生成多个创世账户;
在所述区块链网络初始化的过程中,将生成的所述多个创世账户写入所述区块链网络的创世区块中。
创世账户是区块链中具有投票权等较高权限的一组账户,这些账户在区块链网络初始化之前生成,并在区块链网络初始化的过程中写入区块链的创世区块中。
本申请实施例的第二方面提供了一种区块链账户的权限控制装置,包括:
权限控制请求获取模块,用于获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一;
权限控制请求广播模块,用于通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
共识验证结果接收模块,用于接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
权限控制操作模块,用于若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
本申请实施例的第三方面提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例的第一方面提供的区块链账户的权限控制方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本申请实施例的第一方面提供的区块链账户的权限控制方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行本申请实施例的第一方面所述的区块链账户的权限控制方法的步骤。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链账户的权限控制方法的一个实施例的流程图;
图2是本申请实施例提供的另一种区块链账户的权限控制方法的一个实施例的流程图;
图3是本申请实施例提供的一种区块链账户冻结操作的流程示意图;
图4是本申请实施例提供的一种区块链账户解冻操作的流程示意图;
图5是本申请实施例提供的一种区块链账户的权限控制装置的一个实施例的结构图;
图6是本申请实施例提供的一种电子设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。目前市面上的区块链平台对区块链账户的管理方式通常包含两种:一种是类似fabric区块链平台的,通过申请过程才能创建区块链账户;另一种是类似以太坊平台和比特币的,平台不提供注册流程,可以通过相关密码学算法离线创建区块链账户。本申请提出的权限控制机制针对的是上述第二种区块链平台,即类以太坊的区块链平台。
目前,类以太坊的区块链平台缺少针对区块链账户的权限控制机制,现有技术通常采用以下两种方式解决区块链账户的权限问题:
(1)从区块链的上层入手,在区块链平台上搭建一层web服务,从网络层面限制区块链账户对区块链的访问必须经过web服务,在web服务中实现区块链账户对区块链的访问控制机制。然而,一旦web服务被黑客绕过,仍然无法限制受控账户对区块链的访问。
(2)从智能合约入手,编写一份带有账户权限控制逻辑的智能合约,在该智能合约中实现账户的冻结解冻等各类权限控制操作,维护账户状态。然而,账户的权限控制只在当前智能合约范围内生效,在整个区块链平台中依然不受控制,不法用户可以通过调用其它智能合约的方式访问区块链。
由此可见,目前针对类以太坊的区块链平台,缺少一种有效的账户权限控制机制。
针对上述问题,本申请实施例提供了一种区块链账户的权限控制方法、装置、电子设备和存储介质,能够实现针对类以太坊区块链平台的区块链账户的有效权限控制。
应当理解,本申请各个方法实施例的执行主体可以为各种类型的电子设备,比如手机、平板电脑、笔记本电脑、台式电脑和可穿戴设备等。另外,该电子设备在实现本申请提出的权限控制方法时,可以作为一个区块链平台,用以限制区块链账户对区块链的访问。
请参阅图1,示出了本申请实施例提供的一种区块链账户的权限控制方法,包括:
101、获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求;
当需要对某个区块链账户进行权限控制时,可由区块链网络的其中一个创世账户发起对该区块链账户的权限控制请求。区块链平台在接收到由该创世账户所登录的目标节点发送的权限控制请求后,启动针对该区块链账户的权限控制流程。创世账户是在区块链网络初始化之前生成的第一批区块链账户,创世账户相对于普通的区块链账户来说,具有更高的操作权限,例如可以具有决策权和投票权等。该区块链网络预先创建了多个创世账户,其中任意的一个创世账户都可以通过该区块链网络的节点发起针对某个区块链账户的权限控制请求。权限控制请求可以是对该目标区块链账户的权限进行变更或者对该目标区块链账户的状态进行变更的请求,例如可以是冻结或者解冻该目标区块链账户的请求。
在本申请的一个实施例中,所述区块链网络的创世账户可以通过以下步骤设置:
(1)生成多个创世账户;
(2)在所述区块链网络初始化的过程中,将生成的所述多个创世账户写入所述区块链网络的创世区块中。
创世账户是区块链中具有投票权等较高权限的一组账户,这些账户在区块链网络初始化之前生成,并在区块链网络初始化的过程中写入区块链的创世区块(也叫做0号区块)中。例如,可以预先生成4个创世账户:genesisAcc-1,genesisAcc-2,genesisAcc-3和genesisAcc-4。然后,将这4个创世账户写入区块链配置文件,执行区块链初始化流程,生成创世区块,创世账户的信息保存在创世区块中。
102、通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
区块链平台在获取到该权限控制请求后,可以采用区块链共识机制将该权限控制请求广播至区块链网络的各个节点,完成共识。区块链的共识机制,是指通过特殊节点的投票,在很短的时间内完成对交易的验证和确认。对于区块链账户的权限控制请求,也可视作一个提案交易,采用区块链共识机制,通过各个创世账户对该提案交易进行验证和确认,从而决策是否执行该提案交易。
103、接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
区块链网络中的所有节点都会受到该权限控制请求,其中,具有投票权的创世账户所登录的目标节点,可以针对该权限控制请求发表意向,进行投票等操作,从而产生相应的共识结果,即是否同意该权限控制请求的结果。区块链平台通过收集各个创世账户对该权限控制请求的共识结果,以确定是否对该目标区块链账户执行对应的权限控制操作。
104、若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
区块链平台在获取到该共识结果后,会检测该共识结果是否符合某个预设的条件,若符合,则对该目标区块链账户执行与该权限控制请求对应的权限控制操作;若不符合,则不执行对该目标区块链账户的权限控制操作。具体的,该预设条件可以是共识结果中同意票的数量大于反对票的一半,等等。
在本申请实施例中,当需要对某个区块链账户进行权限控制时,可由区块链网络的某个创世账户发起对该区块链账户的权限控制请求,然后通过区块链共识机制将该权限控制请求广播至该区块链网络的各个节点。接着,接收该区块链网络各个创世账户对该权限控制请求的共识结果,并基于该共识结果完成对该区块链账户的权限控制操作。通过设置上述权限控制机制,本申请实施例能够实现针对类以太坊区块链平台的区块链账户的权限控制。
请参阅图2,示出了本申请实施例提供的另一种区块链账户的权限控制方法,包括:
201、获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易;
在本申请实施例中,对目标区块链账户的权限控制请求实质上为某个创世账户发起的提案交易。具体的,该提案交易可以包含提案标识、提案状态、提案类型、同意票数量、反对票数量和提案针对的区块链账户地址等各类属性信息。其中,提案标识为提案的唯一标识,提案状态用于表示提案当前所处的状态(例如进行中,已完成等),提案类型用于表示该提案交易涉及的权限控制类型(例如冻结账户提案,解冻账户提案),同意票数量为当前采集到的各个创世账户对该提案投出的同意票的数量,反对票数量为当前采集到的各个创世账户对该提案投出的反对票的数量,提案针对的区块链账户地址即权限控制针对的目标区块链账户的地址。
该提案交易的信息可以存储到该区块链网络的世界状态中,世界状态为区块链所有节点都保持数据同步的一个存储空间,记录着区块链所有账户的余额等信息,将提案交易的信息保存在世界状态中,能够保证区块链网络所有节点对该提案交易的信息都是一致的。
在本申请的一个实施例中,在获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易之后,还可以包括:
将所述提案交易的状态设置为进行中的状态。
当区块链网络中的某个创世账户发起对目标区块链账户进行权限控制的提案交易之后,可以将该提案交易的提案状态设置为进行中的状态,表示该提案交易已激活且未完成。
202、通过区块链共识机制将所述提案交易广播至所述区块链网络中的各个节点;
区块链平台在获取到该提案交易后,通过区块链共识机制将该提案交易广播至该区块链网络中的各个节点。区块链的所有节点都会收到该提案交易,并可在世界状态中查询得到该提案交易的信息,例如当前该提案交易的状态为进行中的状态,同意票数量为1(发起该提案交易的创世账户所投),反对票数量为0(此时除发起该提案交易的创世账户外,其它创世账户尚未投票)。
203、获取由所述区块链网络中的一个目标节点发起的针对所述提案交易的投票交易;
此时,区块链网络中的任意一个创世账户可以调用提案查询的API接口,查询到当前待投票的该提案交易,然后发起对该提案交易的投票交易。发起投票交易的创世账户可以是发起该提案交易的创世账户,也可以是该区块链网络的其它任意一个创世账户。另外,发起投票交易的创世账户此时可以按照自己的投票意向进行投票,若投同意票则同意票数量为2,反对票数量为0;若投反对票则同意票数量为1,反对票数量为1。
204、通过区块链共识机制将所述投票交易广播至所述区块链网络中的各个节点;
区块链平台在获取到该投票交易后,通过区块链共识机制将该投票交易广播至该区块链网络中的各个节点,等待接收除发起该提案交易的创世账户和发起该投票交易的创世账户外的其它创世账户的投票结果。
205、接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果;
区块链网络中的所有节点都会收到该投票交易,但只有创世账户所在的目标节点才具有针对该投票交易的投票权,区块链平台等待接收各个创世账户针对该投票交易的投票结果。
进一步的,接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果,可以包括:
(1)统计已接收到的针对所述投票交易的投票结果中的同意票数量与反对票数量之和,得到已投票数量;
(2)若所述已投票数量和所述多个预设创世账户的数量相同,则确定已接收到所有目标节点返回的针对所述投票交易的投票结果。
区块链平台每隔一定时间可以统计已接收到的针对所述投票交易的投票结果,计算其中的同意票数量与反对票数量之和,得到已投票数量。然后,将该已投票数量和该区块链网络预设的创世账户的数量进行比较,若两者相同,则表示所有创世账户已完成投票,此时可以根据投票结果进行决策是否对目标区块链账户执行对应的权限控制操作;若已投票数量小于创世账户数量,则表示还有创世账户未进行投票,此时可以继续等待至所有创世账户完成投票。另外,若在已投票数量中,同意票的数量大于创世账户的数量,或者反对票的数量大于创世账户的数量,则可以不必继续等待接收所有创世账户的投票结果,直接进行决策。
在本申请的一个实施例中,在接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果之后,还可以包括:
若所述投票结果不符合所述预设条件,则将所述提案交易的状态设置为已完成的状态。
这里的预设条件可以根据实际需要设置,例如可以设置为同意票的数量大于反对票数量,同意票的数量大于总创世账户数量的三分之一,反对票数量小于总创世账户数量三分之一,等等。若该投票结果不符合该预设条件,则表示该提案交易未通过,此时不会对目标区块链账户的权限进行变动,直接结束该提案交易,并将该提案交易的状态设置为已完成的状态。
206、若所述投票结果符合预设条件,则对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作。
若该投票结果符合预设条件,例如同意票数量大于反对票数量等,区块链平台则对该目标区块链账户执行与该提案交易的类型对应的权限控制操作。例如,若该提案交易的类型为冻结账户提案,则冻结该目标区块链账户;若该提案交易的类型为解冻账户提案,则解冻该目标区块链账户,等等。
在本申请的一个实施例中,在对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作之后,还可以包括:
将所述提案交易的状态设置为已完成的状态。
在对该目标区块链账户执行与该提案交易类型对应的权限控制操作之后,则提案交易已完成,因此可以将该提案交易的状态设置为已完成的状态。
在本申请的一个实施例中,对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作,可以包括:
(1)若所述提案交易的类型为账户冻结提案,则将所述目标区块链账户添加到预先构建的已冻结账户列表中;其中,所述已冻结账户列表存储于所述区块链网络的世界状态中,所述世界状态为区块链所有节点都保持数据同步的一个存储空间;
(2)若所述提案交易的类型为账户解冻提案,则将所述目标区块链账户从所述已冻结账户列表中移除。
在本申请实施例中,提案交易的类型可以包括账户冻结提案和账户解冻提案。对于账户冻结提案,若确定对该目标区块链账户进行冻结,则将该目标区块链账户添加到预先构建的一个已冻结账户列表中。具体的,该已冻结账户列表可以为一个记录区块链账户地址的数组,存储在区块链网络的世界状态中。通过将账户冻结名单保存在世界状态,能够保证区块链所有节点对当前已冻结账户的记录都是一致的。对于已冻结账户列表中的区块链账户向区块链发起的交易,区块链将拒绝处理。
对于账户解冻提案,若确定对该目标区块链账户进行解冻,则将该目标区块链账户从世界状态的已冻结账户列表中移除。需要说明的是,若在步骤201中该目标节点发起的是对目标区块链账户解冻的提案交易,则首先需要检测该已冻结账户列表中是否存在该目标区块链账户,若存在则区块链接收并广播该提案交易,若不存在则区块链拒绝该提案交易。
在本申请的一个实施例中,所述权限控制方法还可以包括:
(1)在接收到所述区块链网络中的任意节点发起的交易请求后,获取所述任意节点的登录账户;
(2)若所述任意节点的登录账户处于所述已冻结账户列表中,则拒绝所述交易请求。
区块链平台通过在世界状态中维护一个已冻结账户列表,能够实现对区块链节点的访问控制。例如,区块链平台在接收到区块链网络中任意一个节点发起的交易请求后,首先会检测该节点的登录账户是否已冻结,若已冻结则拒绝该交易请求。
在本申请实施例中,当需要对某个区块链账户进行权限控制时,可由区块链网络的某个创世账户发起对该区块链账户进行权限控制的提案交易,然后通过区块链共识机制将该提案交易广播至该区块链网络的各个节点;接着由区块链网络的另一个创世账户发起对提案交易的投票交易,收集各个创世账户对该投票交易的投票结果,最后根据投票结果决策是否对该区块链账户执行对应的权限控制操作。通过设置上述权限控制机制,本申请实施例能够实现针对类以太坊区块链平台的区块链账户的权限控制。
为便于理解本申请提出的权限控制方法,以下列举几个实际应用的示例。
基于本申请提出的权限控制方法是应用于区块链平台的,首先需要对区块链平台进行一系列的改造,如下:
(1)在区块链的世界状态中创建并维护一个“创世账户名单”,记录区块链的各个创世账户的信息;
(2)在区块链的世界状态中创建并维护一个“已冻结账户列表”,记录已冻结的区块链账户的地址;
(3)区块链平台开发新的用于处理“账户冻结提案交易”的API接口;
(4)区块链平台开发新的用于处理“账户解冻提案交易”的API接口;
(5)区块链平台开发新的用于处理“投票交易”的API接口;
(6)区块链平台需改造区块链交易验证模块,对收到的交易的发起者的身份进行验证,若该发起者的区块链账户处于该“已冻结账户列表”中,则拒绝交易。
通常来说,区块链平台的API接口主要提供两类功能,分别为查询类功能和交易类功能。对于查询类,例如查询区块信息、交易信息和账户地址信息等,此类调用无需发起区块链共识流程。对于交易类,例如发起的转账交易、部署合约交易、调用合约交易、冻结合约交易和解冻合约交易等,此类接口调用会改变区块链上的数据,故需要执行区块链共识流程。在本申请实施例中,“账户冻结提案交易”、“账户解冻提案交易”和“投票交易”都属于交易类功能,因此只有创世账户能够发起这类的交易。
本申请实施例针对提案交易制定了一种数据结构,见如下的表1:
表1
基于上述区块链平台的改造以及表1所示的提案交易数据结构,本申请实施例提供的一种区块链账户冻结操作的流程示意图如图3所示,以下针对图3的流程进行说明:
(1)由区块链其中一个创世账户genesisAcc-1发起“账户冻结提案”的交易,该提案交易的标识为Proposal-1,提案类型为0(表示冻结账户提案),对区块链账户地址ACC-X进行冻结申请。该提案交易通过区块链共识机制在区块链网络内广播,完成共识;
(2)区块链的所有节点都收到该提案交易Proposal-1,此时该提案交易Proposal-1的相关信息会存储到区块链的世界状态中,相应的提案状态为1(Status=1,表示提案投票中或者进行中),同意票数量(CountAgree)为1,为该创世账户genesisAcc-1的投票,反对票数量(CountNegative)为0;
(3)区块链的另一个创世账户genesisAcc-2调用提案查询的API接口,查询到当前待投票的提案交易Proposal-1,然后发起针对Proposal-1的投票交易(VOTE-1),此时genesisAcc-2可以发表投票意向(intention),1表示投同意票,2表示投反对票。该投票交易(VOTE-1)通过区块链共识机制在区块链网络内广播,完成共识;
(4)区块链的所有节点都收到该投票交易,节点在收到该投票交易后,可以通过读取投票交易中指向的提案ID,找到对应的提案交易Proposal-1;其中,普通区块链账户只能查询到该提案交易Proposal-1的相关信息,而不能执行投票,创世账户能够针对该投票交易(VOTE-1)发起投票,具体可以投同意票或者投反对票。当某个创世账户投同意票后,则Proposal-1的同意票数量(CountAgree)加1;当某个创世账户投反对票后,则Proposal-1的反对票数量(CountNegative)加1;
(5)区块链平台定时读取该投票交易的已投票数量,判断已投票数量是否和区块链具有的创世账户的数量相等。具体的,可以判断当前的同意票数量(CountAgree)+反对票数量(CountNegative)是否和创世账户的数量相等,若相等则表示所有创世账户已投票,可以执行后续的步骤(6);若不相等则表示还有创世账户未投票,此时可以等待直至所有创世账户完成投票;
(6)当所有创世账户完成投票后,区块链平台统计投票结果,若其中的同意票数量(CountAgree)大于反对票数量(CountNegative),则表示Proposal-1提案交易通过,执行步骤(7);否则表示Proposal-1提案交易未通过,执行步骤(8);
(7)Proposal-1提案交易通过,将Proposal-1中的TargetAddr添加到世界状态中的已冻结账户地址列表,从而完成对区块链账户ACC-X的冻结操作,在完成冻结操作后,将Proposal-1提案交易的状态(Status)改为0(已完成);
(8)Proposal-1提案交易未通过,拒绝冻结区块链账户ACC-X,并将Proposal-1提案交易的状态(Status)改为0(已完成)。
与上述区块链账户冻结操作流程相对应的,本申请实施例提供的一种区块链账户解冻操作的流程示意图如图4所示,以下针对图4的流程进行说明:
(1)由区块链其中一个创世账户genesisAcc-1发起“账户解冻提案”的交易,该提案交易的标识为Proposal-2,提案类型为1(表示解冻账户提案),对区块链账户地址ACC-X进行解冻申请。区块链平台在接收到该解冻提案交易后,首先检测世界状态的已冻结账户列表中是否存在该区块链账户地址ACC-X;若存在,则通过区块链共识机制将该提案交易Proposal-2广播至区块链网络,完成共识;若不存在,则拒绝该提案交易Proposal-2;
(2)区块链的所有节点都收到该提案交易Proposal-2,此时该提案交易Proposal-2的相关信息会存储到区块链的世界状态中,相应的提案状态为1(Status=1,表示提案投票中或者进行中),同意票数量(CountAgree)为1,为该创世账户genesisAcc-1的投票,反对票数量(CountNegative)为0;
(3)区块链的另一个创世账户genesisAcc-2调用提案查询的API接口,查询到当前待投票的提案交易Proposal-2,然后发起针对Proposal-2的投票交易(VOTE-2),此时genesisAcc-2可以发表投票意向(intention),1表示投同意票,2表示投反对票。该投票交易(VOTE-2)通过区块链共识机制在区块链网络内广播,完成共识;
(4)区块链的所有节点都收到该投票交易,节点在收到该投票交易后,可以通过读取投票交易中指向的提案ID,找到对应的提案交易Proposal-2;其中,普通区块链账户只能查询到该提案交易Proposal-2的相关信息,而不能执行投票,创世账户能够针对该投票交易(VOTE-2)发起投票,具体可以投同意票或者投反对票。当某个创世账户投同意票后,则Proposal-2的同意票数量(CountAgree)加1;当某个创世账户投反对票后,则Proposal-2的反对票数量(CountNegative)加1;
(5)区块链平台定时读取该投票交易的已投票数量,判断已投票数量是否和区块链具有的创世账户的数量相等。具体的,可以判断当前的同意票数量(CountAgree)+反对票数量(CountNegative)是否和创世账户的数量相等,若相等则表示所有创世账户已投票,可以执行后续的步骤(6);若不相等则表示还有创世账户未投票,此时可以等待直至所有创世账户完成投票;
(6)当所有创世账户完成投票后,区块链平台统计投票结果,若其中的同意票数量(CountAgree)大于反对票数量(CountNegative),则表示Proposal-2提案交易通过,执行步骤(7);否则表示Proposal-1提案交易未通过,执行步骤(8);
(7)Proposal-2提案交易通过,将Proposal-2中的TargetAddr从世界状态的已冻结账户地址列表中移除,从而完成对区块链账户ACC-X的解冻操作,在完成解冻操作后,将Proposal-2提案交易的状态(Status)改为0(已完成);
(8)Proposal-2提案交易未通过,拒绝解冻区块链账户ACC-X,并将Proposal-2提案交易的状态(Status)改为0(已完成)。
综上所述,本申请提供了一种能够实现针对类以太坊区块链平台的区块链账户的权限控制方案。采用本申请提出的权限控制方案,非法用户即使能够绕过区块链上层的web应用也无法获得交易调用权限,而被冻结的账户不仅仅是限制对某些特定合约的调用,而是限制对整个区块链平台上交易类接口和查询类接口的访问。
应理解,上述各个实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上面主要描述了一种区块链账户的权限控制方法,下面将对一种区块链账户的权限控制装置进行描述。
请参阅图5,本申请实施例中一种区块链账户的权限控制装置的一个实施例包括:
权限控制请求获取模块501,用于获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一;
权限控制请求广播模块502,用于通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
共识结果接收模块503,用于接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
权限控制操作模块504,用于若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
在本申请的一个实施例中,所述权限控制请求获取模块可以用于:获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易;
所述权限控制请求广播模块可以包括:
提案交易广播单元,用于通过区块链共识机制将所述提案交易广播至所述区块链网络中的各个节点;
投票交易获取单元,用于获取由所述区块链网络中的一个目标节点发起的针对所述提案交易的投票交易;
投票交易广播单元,用于通过区块链共识机制将所述投票交易广播至所述区块链网络中的各个节点;
所述共识结果接收模块可以用于:接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果;
所述权限控制操作模块可以用于:若所述投票结果符合预设条件,则对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作。
在本申请的一个实施例中,所述权限控制装置还可以包括:
第一交易状态设置模块,用于将所述提案交易的状态设置为进行中的状态;
第二交易状态设置模块,用于若所述投票结果不符合所述预设条件,则将所述提案交易的状态设置为已完成的状态;
第三交易状态设置模块,用于在对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作之后,将所述提案交易的状态设置为已完成的状态。
在本申请的一个实施例中,所述共识结果接收模块可以包括:
投票数量统计单元,用于统计已接收到的针对所述投票交易的投票结果中的同意票数量与反对票数量之和,得到已投票数量;
投票结果确定单元,用于若所述已投票数量和所述多个预设创世账户的数量相同,则确定已接收到所有目标节点返回的针对所述投票交易的投票结果。
在本申请的一个实施例中,所述权限控制操作模块可以包括:
账户冻结单元,用于若所述提案交易的类型为账户冻结提案,则将所述目标区块链账户添加到预先构建的已冻结账户列表中;其中,所述已冻结账户列表存储于所述区块链网络的世界状态中,所述世界状态为区块链所有节点都保持数据同步的一个存储空间;
账户解冻单元,用于若所述提案交易的类型为账户解冻提案,则将所述目标区块链账户从所述已冻结账户列表中移除。
进一步的,所述权限控制装置还可以包括:
交易请求接收模块,用于在接收到所述区块链网络中的任意节点发起的交易请求后,获取所述任意节点的登录账户;
交易请求拒绝模块,用于若所述任意节点的登录账户处于所述已冻结账户列表中,则拒绝所述交易请求。
进一步的,所述权限控制装置还可以包括:
创世账户生成模块,用于生成多个创世账户;
创世账户写入模块,用于在所述区块链网络初始化的过程中,将生成的所述多个创世账户写入所述区块链网络的创世区块中。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如图1或图2表示的任意一种区块链账户的权限控制方法的步骤。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在终端设备上运行时,使得终端设备执行实现如图1或图2表示的任意一种区块链账户的权限控制方法的步骤。
图6是本申请一实施例提供的电子设备的示意图。如图6所示,该实施例的电子设备6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62。所述处理器60执行所述计算机程序62时实现上述各个区块链账户的权限控制方法的实施例中的步骤,例如图1所示的步骤101至104。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至504的功能。
所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述电子设备6中的执行过程。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述电子设备6的内部存储单元,例如电子设备6的硬盘或内存。所述存储器61也可以是所述电子设备6的外部存储设备,例如所述电子设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述电子设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述电子设备所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种区块链账户的权限控制方法,其特征在于,包括:
获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一,所述创世账户是在区块链网络初始化之前生成的第一批区块链账户;
通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
2.如权利要求1所述的权限控制方法,其特征在于,所述获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,具体为:
获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易;
所述通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点,包括:
通过区块链共识机制将所述提案交易广播至所述区块链网络中的各个节点;
获取由所述区块链网络中的一个目标节点发起的针对所述提案交易的投票交易;
通过区块链共识机制将所述投票交易广播至所述区块链网络中的各个节点;
所述接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果,具体为:
接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果;
所述若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作,具体为:
若所述投票结果符合预设条件,则对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作。
3.如权利要求2所述的权限控制方法,其特征在于,在获取由所述区块链网络中的一个目标节点发起的对所述目标区块链账户进行权限控制的提案交易之后,还包括:
将所述提案交易的状态设置为进行中的状态;
在接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果之后,还包括:
若所述投票结果不符合所述预设条件,则将所述提案交易的状态设置为已完成的状态;
在对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作之后,还包括:
将所述提案交易的状态设置为已完成的状态。
4.如权利要求2所述的权限控制方法,其特征在于,接收由所述各个节点中的所有目标节点返回的针对所述投票交易的投票结果,包括:
统计已接收到的针对所述投票交易的投票结果中的同意票数量与反对票数量之和,得到已投票数量;
若所述已投票数量和所述多个预设创世账户的数量相同,则确定已接收到所有目标节点返回的针对所述投票交易的投票结果。
5.如权利要求2所述的权限控制方法,其特征在于,对所述目标区块链账户执行与所述提案交易的类型对应的权限控制操作,包括:
若所述提案交易的类型为账户冻结提案,则将所述目标区块链账户添加到预先构建的已冻结账户列表中;其中,所述已冻结账户列表存储于所述区块链网络的世界状态中,所述世界状态为区块链所有节点都保持数据同步的一个存储空间;
若所述提案交易的类型为账户解冻提案,则将所述目标区块链账户从所述已冻结账户列表中移除。
6.如权利要求5所述的权限控制方法,其特征在于,还包括:
在接收到所述区块链网络中的任意节点发起的交易请求后,获取所述任意节点的登录账户;
若所述任意节点的登录账户处于所述已冻结账户列表中,则拒绝所述交易请求。
7.如权利要求1至6中任一项所述的权限控制方法,其特征在于,所述区块链网络的创世账户通过以下步骤设置:
生成多个创世账户;
在所述区块链网络初始化的过程中,将生成的所述多个创世账户写入所述区块链网络的创世区块中。
8.一种区块链账户的权限控制装置,其特征在于,包括:
权限控制请求获取模块,用于获取由区块链网络中的一个目标节点发起的针对目标区块链账户的权限控制请求,其中,所述目标节点的登录账户为所述区块链网络的多个预设创世账户之一,所述创世账户是在区块链网络初始化之前生成的第一批区块链账户;
权限控制请求广播模块,用于通过区块链共识机制将所述权限控制请求广播至所述区块链网络中的各个节点;
共识结果接收模块,用于接收由所述各个节点中的所有目标节点返回的针对所述权限控制请求的共识结果;
权限控制操作模块,用于若所述共识结果符合预设条件,则对所述目标区块链账户执行与所述权限控制请求对应的权限控制操作。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的区块链账户的权限控制方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的区块链账户的权限控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011579867.9A CN112822159B (zh) | 2020-12-28 | 2020-12-28 | 区块链账户的权限控制方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011579867.9A CN112822159B (zh) | 2020-12-28 | 2020-12-28 | 区块链账户的权限控制方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112822159A CN112822159A (zh) | 2021-05-18 |
CN112822159B true CN112822159B (zh) | 2022-08-16 |
Family
ID=75854094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011579867.9A Active CN112822159B (zh) | 2020-12-28 | 2020-12-28 | 区块链账户的权限控制方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112822159B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113761581A (zh) * | 2021-09-24 | 2021-12-07 | 支付宝(杭州)信息技术有限公司 | 区块链中的权限管控方法、装置和电子设备 |
CN114401271A (zh) * | 2022-01-13 | 2022-04-26 | 中国人民解放军国防科技大学 | 一种试验数据防篡改方法、区块链系统及介质 |
CN115470292B (zh) * | 2022-08-22 | 2023-10-10 | 深圳市沃享科技有限公司 | 区块链共识方法、装置、电子设备及可读存储介质 |
CN117540356B (zh) * | 2024-01-10 | 2024-03-12 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107332701A (zh) * | 2017-06-26 | 2017-11-07 | 中国人民银行数字货币研究所 | 管理节点的方法和系统 |
US11190525B2 (en) * | 2017-08-18 | 2021-11-30 | Cloudminds (Shanghai) Robotics Co., Ltd. | Blockchain system and permission management method thereof |
CN107958371A (zh) * | 2017-11-13 | 2018-04-24 | 深圳超级区块链信息技术有限公司 | 一种分布式区块链身份证 |
US11310234B2 (en) * | 2017-11-16 | 2022-04-19 | International Business Machines Corporation | Securing permissioned blockchain network from pseudospoofing network attacks |
CN108123936B (zh) * | 2017-12-13 | 2021-04-13 | 北京科技大学 | 一种基于区块链技术的访问控制方法及系统 |
CN109063049B (zh) * | 2018-07-18 | 2020-12-08 | 百度在线网络技术(北京)有限公司 | 一种区块链网络的账号处理方法、装置、设备及存储介质 |
CN109213767B (zh) * | 2018-09-19 | 2020-07-21 | 挖财网络技术有限公司 | 一种适用于区块链的账户数据管理方法 |
CN109493063A (zh) * | 2018-12-29 | 2019-03-19 | 杭州趣链科技有限公司 | 一种联盟区块链中进行权限控制的方法 |
CN109784020A (zh) * | 2019-02-15 | 2019-05-21 | 上海优扬新媒信息技术有限公司 | 一种区块链权限管理方法及装置 |
CN110597918A (zh) * | 2019-09-23 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种账户管理方法、装置及计算机可读存储介质 |
CN111598693B (zh) * | 2020-04-30 | 2024-04-16 | 傲林科技有限公司 | 一种基于区块链的账户管理方法、系统及装置 |
-
2020
- 2020-12-28 CN CN202011579867.9A patent/CN112822159B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112822159A (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112822159B (zh) | 区块链账户的权限控制方法、装置、电子设备和存储介质 | |
CN108492180B (zh) | 资产管理方法及装置、电子设备 | |
CN108335207B (zh) | 资产管理方法及装置、电子设备 | |
CN108667632B (zh) | 基于区块链的信用记录共享方法及装置、电子设备 | |
CN108335206B (zh) | 资产管理方法及装置、电子设备 | |
CN109150943B (zh) | 信息的传输方法、装置和系统 | |
CN110896659B (zh) | 数据处理方法、节点、区块链网络及虚拟数据载体 | |
CN109598504A (zh) | 基于区块链的交易处理方法及装置、电子设备 | |
CN113434592A (zh) | 基于区块链的数据存证方法及装置、电子设备 | |
CN110046900B (zh) | 基于区块链的发票作废方法和装置、电子设备 | |
CN107169144A (zh) | 区块链分布式账本存储方法及服务器 | |
CN112950201B (zh) | 一种应用于区块链系统的节点管理方法及相关装置 | |
CN115131022B (zh) | 基于区块链的数字资产交易方法、装置、设备及介质 | |
CN110213290A (zh) | 数据获取方法、api网关以及存储介质 | |
US20230316263A1 (en) | Metaverse authentication | |
CN114090985A (zh) | 区块链中用户操作权限的设置方法、装置和电子设备 | |
CN109741070B (zh) | 一种基于网证的账户管理方法及装置 | |
CN113890739A (zh) | 跨区块链的认证方法、装置、电子设备及介质 | |
CN110134837B (zh) | 一种信息管理方法及装置 | |
CN116681527A (zh) | 基于元宇宙文化产品的数字资产交易方法、装置与系统 | |
CN114090633A (zh) | 车辆鉴权管理方法、装置、停车场设备及可读存储介质 | |
CN116319768A (zh) | 计算任务的执行方法、装置、存储介质及电子装置 | |
CN111369246A (zh) | 智能合约的调用鉴权方法、装置、电子设备及存储介质 | |
CN113259340B (zh) | 区块链数据处理方法、装置及电子设备 | |
CN112019337A (zh) | 一种基于区块链的突发事件处理方法、装置及设备 |
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 |