CN112801791A - 一种基于授权的区块链共识方法及系统 - Google Patents
一种基于授权的区块链共识方法及系统 Download PDFInfo
- Publication number
- CN112801791A CN112801791A CN202110124440.8A CN202110124440A CN112801791A CN 112801791 A CN112801791 A CN 112801791A CN 202110124440 A CN202110124440 A CN 202110124440A CN 112801791 A CN112801791 A CN 112801791A
- Authority
- CN
- China
- Prior art keywords
- block
- authorization
- node
- nodes
- authorized
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于授权的区块链共识方法及系统,区块链系统初始化时预设一定数量的授权节点,这些授权节点组成授权节点集,拥有出块权的节点在授权节点集里随机产生,集合成员获得出块权的概率与其活跃度相关;区块高度每增加一定数量后,授权节点集发起投票调整授权节点集,剔除授权节点和晋升非授权节点。该方法有效降低出块权的竞争时间,同时避免出块权过于集中,使基于区块链的应用拥有更好的事务处理能力;同时还能根据一段时间内账户的活跃程度调整系统的状态,保持系统的高效性。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种基于授权的区块链共识方法及系统。
背景技术
进入21世纪以来,中国信息技术呈现一种飞速发展的态势。在许多司法诉讼案件中,证据开始以适合计算机处理存储的电子数据形式得以保存。电子证据属于法律规定的证据范畴,要求具有真实性、完整性、可靠性。传统的电子证据存证平台为中心化的存储系统,当系统收到攻击时,容易引发灾难性的后果,导致电子证据的失效,进而影响利益各方的权益。同时数据的增加、删除、修改等重要权限掌握在极少数管理角色手中,系统中存在人为篡改电子证据的风险。
区块链最早诞生于中本聪提出的一种点对点式的电子现金系统,作为实现该系统的重要底层技术之一。区块链实质上是一种分布式账本,一段时间内的交易数据打包成区块形式并按照时间先后顺序依次排列,形成一条单一向前的区块链。在整个区块链系统中,参与该网络的所有全节点都会保存一份相同的区块链数据,以保证该系统的去中心化、不可篡改、可追溯等特征,这些特征能有效解决电子证据所遇到的问题。为了实现参与者始终保存相同的区块链数据,需要参与各方达成共识,因此共识方法对于维护系统持续稳定有十分重要的意义。
目前规模和价值最大的区块链系统比特币采用PoW(Proof of Work)工作量证明共识方法。在该方法中,客户端产生新交易并向全网广播,每个节点收到请求后,将交易纳入区块中;每个节点通过hash方法对区块进行计算得到工作量证明的输出;当输出小于目标值,证明工作量完成并向全网广播,反之变更区块中的随机数继续计算;网络中最先完成工作证明并且全网广播得到验证的节点获得此区块的出块权,全网接受该节点产生的区块,在自己的区块链末尾链接上新的区块。该方法有效解决在复杂网络环境中完成庞大匿名用户群的共识问题,但十分消耗节点算力和网络资源,对于交易的处理能力非常有限。
比特币目前出块时间在10分钟左右,TPS(Transaction Per Second)每秒事务处理数约为7笔,无法满足在电子证据存证业务中的事务处理能力要求。由此可见,现有广泛使用的区块链共识方法无法满足高事务处理能力的应用场景。
而现有技术还未出现理想的解决方案,例如相关专利文献有如下缺陷:
申请公布号为CN 108616596 A的专利提出一种基于动态授权和网络环境感知的区块链自适应共识方法,该方法利用类似“人民代表大会选举制度”的选举机制筛选簇代表参与共识过程,采用传统分布式系统采用PBFT共识方法。该方法能够一定程度解决恶意节点的存在,但是PBFT共识方法存在通信开销随共识节点增多而指数增长的缺陷,不适用存在大量共识节点的场景。并且该专利中,每一笔交易都会有不同的簇代表进行共识决策,增加系统资源开销和复杂度,不利于支撑大量业务场景。最后,区块链打包交易出块的核心流程在该专利中无具体说明,无法支持该方法是基于区块链技术。
申请公布号为CN 109727038 A的专利提出一种基于信用证明PoC的区块链共识机制,该机制利用节点历史表现来生成该节点信用积分,高积分的节点有机会进入授权组参与出块工作。其中授权组采用一种轮流方法授予节点出块权完成出块工作,并且授权组成员通过投票更新替换本组的成员。该方法避免PoW的资源消耗,但节点获得积分的途径只有两种发起交易成功或出块成功,这会导致出块权被部分高积分节点垄断,不活跃节点逐渐边缘化,严重弱化了区块链去中心化的特征。
申请公布号为CN 109872152 A的专利提出一种基于股份授权证明机制的区块链共识方法,该方法从三个不同维度评价筛选合适的参选者,避免DPOS机制中存在的资源浪费。但是该方法仍存在出块权集中在某些资源充足、贡献度高、历史出块快的节点,同样严重弱化了区块链去中心化的特征。
发明内容
本发明的目的是提供一种基于授权的区块链共识方法及系统,应用于基于区块链的电子证据存证平台,实现电子证据的安全存储,推动区块链技术的普及和应用。
为达到上述目的,本发明提出了一种基于授权的区块链共识方法,包括如下步骤:
步骤一,区块链系统初始化时预设若干授权节点,这些授权节点组成授权节点集;出块权在授权节点集中随机产生,且授权节点集成员每隔一段时间会进行更新;
区块链系统初始化完成后,在授权账户集中随机选择一个成员承担出块任务,该授权节点为当前拥有出块权的授权节点;
步骤二,区块链网络中的各节点间发起交易并向全网广播;
步骤三,区块链网络中的授权节点收到请求后,将交易纳入本地交易池;
步骤四,当前拥有出块权的授权节点校验交易的合法性;
步骤五,当前拥有出块权的授权节点根据区块大小和出块时间要求完成打包出块,向全网广播,然后分别进入步骤六和步骤八;
步骤六,当前拥有出块权的授权节点判断区块高度增加数量是否达到预设值,若达成则进入步骤七进行后续的授权节点集成员更新,否则进入步骤九;
步骤七,授权节点集成员更新,增加数量清零重新开始计数,等待下一次达成进行下一次的成员更新,完成后进入步骤九;
步骤八,区块链网络中存储区块链数据的所有节点收到新的区块请求后,在本地区块链后添加上新的区块,区块高度增加一个单位;
步骤九,随机产生下一轮拥有出块权的授权节点;
步骤十,步骤八和步骤九完成后,下一轮拥有出块权的授权节点开始新的出块流程,循环往复,形成一条不断增长的区块链。
而且,所述授权节点不仅支持发起交易和查询区块链数据,还承担同步存储完整区块链数据的功能,并参与出块权的竞选,完成出块流程。
而且,所述随机产生下一轮拥有出块权的授权节点,实现方式如下,
当前拥有出块权的授权节点使用随机函数在授权节点集中随机选择下一轮拥有出块权的授权节点,并向该节点发送请求以确定该节点能够承担下一轮出块流程;
下一轮拥有出块权的授权节点收到请求后须回复当前拥有出出块权的授权节点;
当前拥有出块权的授权节点在限定时间内收到回复后,随机产生下一轮拥有出块权的授权节点流程结束;
反之,未在限定时间内收到,则判定所选节点不活跃,降低该节点获得出块权的概率,当前拥有出块权的授权节点再次使用随机函数选择新的下一轮拥有出块权的授权节点。
而且,所述授权节点集成员更新,实现方式如下,
当前拥有出块权的授权节点判断区块高度增长数量是否达到预设值,若未达成则不进行授权节点集成员更新,流程结束;反之,授权节点集通过投票的方式剔除部分授权节点,晋升等数量的非授权节点,保证授权节点集成员数量不变;完成后全网广播新的授权节点集。
而且,所述授权节点集成员数量根据实际网络中节点总数和需要进行匹配。
而且,所述区块高度增长数量达到的预设值或相应时间根据项目实际需要进行匹配。
另一方面,本发明还提供一种基于授权的区块链共识系统,用于实现如上所述的一种基于授权的区块链共识方法。
而且,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于授权的区块链共识方法。
或者,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于授权的区块链共识方法。
由以上本说明书提供的技术方案可见,传统区块链项目共识方法能有效解决巨量匿名用户之间的信任问题,同时带来了较低的事务处理能力;在电子证据存储应用场景中,参与者数量远小于比特币的用户数且身份明确,本说明书通过改进区块链共识方法,降低算力和网络通信消耗,保障参与者权益,有效提升系统的事务处理能力。
和现有专利文献公开的技术方案相比,本发明的优点在于:资源消耗小、保持了区块链去中心化的特征、通过随机指定出块的方式极大提升区块链的吞吐量。
附图说明
图1是本发明一个实施例的基于授权的区块链共识方法的原理图;
图2是本发明一个实施例的基于授权的区块链共识方法的流程图;
图3是本发明一个实施例的基于授权的区块链共识方法中的授权节点集成员更新流程图;
图4是本发明一个实施例的基于授权的区块链共识方法中的随机授权出块流程图;
图5是本发明一个实施例的区块链网络拓扑图。
具体实施方式
为了使相关技术领域的人员充分理解本说明书中的内容,下面结合附图对本发明的实施例进行说明,显然,所描述的一个或多个实施例仅仅是本说明书一部分实施例,用于说明和解释本发明,并不用于限定本发明。
本发明中,区块链网络由众多节点组成,节点可以是工作站、服务器、个人计算机、移动设备等,它们都拥有自己唯一的网络地址。这些不同的设备通过网络互相通信,实现系统功能;
区块链网络中的节点分为两类,授权节点和非授权节点;
非授权节点拥有发起交易和查询区块链数据的功能。其中可查询的内容包括但不限于已完成交易内容、区块头信息、本节点相关用户信息等。部分非授权节点具备同步存储区块链数据的功能,这样的节点在授权节点集成员更新是有可能晋升为授权节点;
授权节点不仅可以发起交易和查询区块链数据,同时还需要同步保存完整的区块链数据,因此授权节点具备大容量的存储空间以备不断增长的区块链数据。另外,区块链共识方法中出块权仅在授权节点集中随机产生,授权节点获得出块权后,在本节点出块时间段内从该节点本地交易池中打包一段时间内的交易完成出块;
每个授权节点均会在本地存储开辟一定空间的交易池,在接收到广播的交易后对交易的合法性进行校验,完成后将交易纳入交易池已备后续的打包出块。其中合法性校验包括但不限于交易双方地址的编码规范、交易消息的签名完整性、交易内容的规范性等;
系统初始授予一部分节点为授权节点,这些授权节点组成一个授权节点集。系统上线运行后授权节点集成员在区块高度每增加一定值后进行替换和更新;
区块高度每增加一定值后,授权节点集将发起投票剔除部分授权节点,同时晋升等数量的非授权节点,保证授权节点集成员数量不变,同时避免出块权过于集中;
交易和区块的全网广播指的是发起者所在节点首先向与本节点相邻的多个节点发送相关消息,相邻节点再将此消息依次转发给它们各自的相邻节点,从而保证节点信息被多个节点所接收;
根据本发明的一些实施例,所述预设授权节点的评判标准可根据行业内经济和技术实力进行制定,授权节点数量根据实际需要进行配置;
根据本发明的一些实施例,所述交易合法性,旨在校验发起者和接收者身份是否合法,以及交易内容是符合系统标准,例如:不能为负数、不能超过交易上限;
根据本发明的一些实施例,所述区块大小受限于网络资源和交易类型,实际产生的区块大小不固定,可参考比特币的1M上限;
根据本发明的一些实施例,所述区块高度增加一定数量开启投票,增加的数量需要保证各授权账户的权利和足量交易;
根据本发明的一些实施例,所述非授权节点为系统中除授权节点外的参与者,非授权节点在授权节点集成员更新的流程中有可能晋升为授权节点。
下面参照图1所示,为本发明实施例提供一种基于授权的区块链共识方法的流程图,应理解,该方法封装在区块链系统中的共识层,为区块链中的节点提供达成出块共识的服务,其执行主体可以是该系统中的全节点或者某种装置。
本发明提供的一种基于授权的区块链共识方法,包括:区块链系统初始化时预设一定数量的授权节点,这些授权节点组成授权节点集;出块权在授权节点集中随机产生,优选地集合中成员获得出块权的概率与其活跃度相关,且授权节点集成员每隔一段时间会进行更新。
图1简明阐述了该专利的原理,实现基本过程如下,
S101)即在区块链系统初始化时预设一定数量的授权节点,打包交易产生新区块的工作由这些授权节点组成的授权节点集完成。利用随机函数在保证随机和公平的情况下,在授权节点集中选择每轮出块轮次拥有出块权的授权节点,被选中的授权节点打包交易生产新的区块;
具体实施时,所述授权节点集成员数量可根据实际网络中节点总数和需要进行匹配,在本发明实施例中为总数的10%左右。
S102)若达到需要更新授权节点集成员的区块高度时,授权节点集通过投票的形式完成成员更新。
S103)最后,本轮次拥有出块权的授权节点利用随机函数再次在授权节点集中选择下一轮拥有出块权的授权节点,进入下一轮出块流程。
参见图2,本发明实施例所述基于授权的区块链共识方法可以包括以下步骤:
步骤201:区块链系统初始化完成后,在授权账户集中随机选择一个成员承担出块任务,该授权节点为当前拥有出块权的授权节点;
区块链系统完成初始化,系统预设一定数量的授权节点,在授权节点集中随机产生第一位拥有出块权的授权节点;
应理解,初始化包括但不限于创世区块设置、网络设置、节点设置、区块大小设置、出块间隔设置等。区块链网络由众多节点组成,每个节点在系统内拥有自己全网唯一的地址。节点分为两类,授权节点和非授权节点。非授权节点指的是系统中除授权节点以外的其他节点;
非授权节点可以发起交易和查询区块链数据。交易在区块链网络中所有节点间均可以产生,查询的区块链数据包括但不限于已完成交易内容、区块头信息、本节点相关用户信息等。
授权节点不仅可以发起交易和查询区块链数据,同时还需要同步保存完整的区块链数据,因此授权节点具备大容量的存储空间以备不断增长的区块链数据。另外,区块链共识方法中出块权仅在授权节点集中随机产生,授权节点获得出块权后,在本节点出块时间段内从该节点本地交易池中打包一段时间内的交易完成出块。
步骤202:区块链网络中的节点间发起交易并向全网广播;
交易内容根据实际应用灵活配置,在本发明的一个实施例中,交易为数据发送和接收方的地址、交易时间戳、交易数据的指纹摘要等;
全网广播通过p2p机制完成,交易和区块的全网广播指的是发起节点首先向与本节点相邻的多个节点发送相关消息,相邻节点再将此消息依次转发给它们各自的相邻节点,从而保证信息被多个节点所接收。
步骤203:区块链网络中的授权节点收到请求后,将交易纳入节点本地交易池;
授权节点具备充裕的本地存储空间,其中包括交易池。交易池用于授权节点保存一段时间的交易,在出块步骤中拥有出块权的授权节点会从交易池中打包交易进行出块。
步骤204:通过步骤201中产生的一个当前拥有出块权的授权节点校验交易的合法性;
后续出块权按照步骤207实施。交易的合法性校验主要验证交易发起者和接收者的身份是否合法,签名是否正确,交易是否满足系统标准,例如:不能为负数、不能超过交易上限。
步骤205:当前拥有出块权的授权节点根据区块大小和出块时间间隔要求完成打包出块,向全网广播,然后分别进入步骤206和步骤208;
步骤206和208是属于并行的两个任务,207和208都完成后就可进入下一轮出块流程;
一个完整的区块由区块头和区块体组成。步骤204中校验合法的交易由当前拥有出块权的授权节点打包出块,交易则保存在区块体中。
区块大小和出块时间间隔为可配置项,根据系统实际运行需要配置不同的值。目前在比特币系统中,区块大小约为1M,出块时间间隔约为10分钟。区块大小越大,广播给其他节点需要的时间越长,达成共识需要的时间应该相应增加。
步骤206:当前拥有出块权的授权节点判断区块高度增加数量是否达到预设值,若达成则进入步骤207进行后续的授权节点集成员更新。否则,进入步骤209。
从系统初始化开始,创世区块的区块高度为0,每完成一次出块,区块高度增加一个单位,区块高度信息在区块头中永久保存。区块高度增加数量达到预设值会触发授权节点集发起投票进行成员更新,内容详见图2授权节点集成员更新流程图。
具体实施时,所述区块高度增长数量达到的预设值根据项目实际需要进行匹配,由于出块时间在统计规律上是固定的,因此预设值可换算为一段时间。时间的长短根据项目需要进行设置。
步骤207:授权节点集成员更新,增加数量清零重新开始计数,等待下一次达成进行下一次的成员更新,然后进入步骤209。
步骤208:区块链网络中存储区块链数据的所有节点收到新的区块请求后,在本地区块链后添加上新的区块,区块高度增加一个单位,然后在步骤209完成后进入步骤210。
需要存储区块链数据的所有节点包括全部授权节点和部分非授权节点。非授权节点通过增加本地存储空间同步存储完整的区块链数据,这样的非授权节点在授权节点集进行成员更新时有可能晋升为授权节点。其它不同步区块链数据的非授权节点不会参与授权节点集成员更新流程。
步骤209:随机产生下一轮拥有出块权的授权节点,包括当前拥有出块权的授权节点使用随机函数在授权节点集中随机选择下一轮拥有出块权的授权节点,内容详见图3随机授权出块流程图。
步骤210:步骤208和步骤209完成后,进入下一轮出块流程,即下一轮拥有出块权的授权节点开始新的出块流程,循环往复,形成一条不断增长的区块链。
如图2所示,为本说明书实施例提供一种基于授权的区块链共识方法中的授权节点集成员更新流程图,通过投票的形式完成授权节点集的成员更新,具体流程如下:
步骤301:图1步骤206完成后,开始授权节点集成员更新流程;
步骤302:当前拥有出块权的授权节点判断区块高度增长数量是否达到预设值,达成则进入步骤303。否则,进入步骤304,结束授权节点集成员更新流程,进入下一个环节;
从系统初始化开始,创世区块的区块高度为0,每完成一次出块,区块高度增加一个单位,区块高度信息在区块头中永久保存。区块高度增加数量达到预设值会触发授权节点集发起投票进行成员更新,同时区块增加高度数量清零,等待下一达成进行新的授权节点集成员更新;
步骤303:授权节点集所有成员通过投票的方式进行成员更新,然后进入步骤304。成员更新需要更换一定数量的授权节点,该数量根据实际需求进行配置,可以是一位也可以是全部;
投票达成后,等数量的授权节点和非授权节点互换角色,形成新的授权节点集。全网广播新的授权节点集;
步骤304:结束授权节点集的成员更新,进入下一个环节;
如图3所示,为本发明一个实施例的基于授权的区块链共识方法中的随机授权出块流程图,通过在授权节点集中随机选择一个授权节点进行出块流程,具体流程如下:
步骤401:图2授权节点集成员更新流程完成后,开始随机授权出块流程;
步骤402:当前拥有出块权的授权节点使用随机函数计算下一轮拥有出块权的授权节点;
步骤403:当前拥有出块权的授权节点向下一轮拥有出块权的授权节点发送请求;
步骤404:当前拥有出块权的授权节点是否在限定时间内收到回复,收到回复则进入步骤406,随机授权出块流程结束。否则,进入步骤405;
步骤405:更新授权节点集成员获得出块权的概率分布,进入步骤402,寻找新的下一轮拥有出块权的授权节点;
随机函数在授权节点集中进行随机选择,集合成员获得出块权的概率与其活跃度相关。随机函数将授权节点集划分为高概率集合和低概率集合,两个集合中的成员获得出块权的概率在各自的集合中均相等,低概率集合中的成员获得出块权的概率比高概率集合中的成员获得出块权的概率小,两者的比例可根据实际应用进行调整,所有成员的概率总和应为1;首次出块使用随机函数时,所有成员均在高概率集合,各成员拥有相同的概率获得出块权,后续随着各自活跃度调整概率;
步骤403随机选择了下一轮拥有出块权的授权节点A,但在步骤404中当前拥有出块权的授权节点在限定时间内未收到节点A的回复,进入步骤405。授权节点A活跃度下降,划入低概率集合再次参与步骤402。节点A只有重新获得出块权并完成出块流程则自动回归高概率集合;
步骤406:随机授权出块流程结束;
上述技术方案的工作原理:区块链采用基于授权的共识方法,出块权在授权节点集中随机诞生,授权节点集定期发起投票,提供非授权节点获得出块权的机会。
上述技术方案的有益效果:基于特定行业领域,采用基于授权的共识方法,有效避免传统POW方法的算力浪费和低事务处理能力,同时出块权的随机和授权节点的竞争保障了区块链的去中心化。
具体实施时,本发明技术方案提出的方法可由本领域技术人员采用计算机软件技术实现自动运行流程,实现方法的系统装置例如存储本发明技术方案相应计算机程序的计算机可读存储介质以及包括运行相应计算机程序的计算机设备,也应当在本发明的保护范围内。
在一些可能的实施例中,提供一种基于授权的区块链共识系统,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于授权的区块链共识方法。
在一些可能的实施例中,提供一种基于授权的区块链共识系统,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于授权的区块链共识方法。
以上所述仅为本说明书的一个或多个实施例,并非用于限定本说明书的保护范围。凡在本说明书的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书的保护范围之内。
Claims (9)
1.一种基于授权的区块链共识方法,其特征在于,包括如下步骤:
步骤一,区块链系统初始化时预设若干授权节点,这些授权节点组成授权节点集;出块权在授权节点集中随机产生,且授权节点集成员每隔一段时间会进行更新;
区块链系统初始化完成后,在授权账户集中随机选择一个成员承担出块任务,该授权节点为当前拥有出块权的授权节点;
步骤二,区块链网络中的各节点间发起交易并向全网广播;
步骤三,区块链网络中的授权节点收到请求后,将交易纳入本地交易池;
步骤四,当前拥有出块权的授权节点校验交易的合法性;
步骤五,当前拥有出块权的授权节点根据区块大小和出块时间要求完成打包出块,向全网广播,然后分别进入步骤六和步骤八;
步骤六,当前拥有出块权的授权节点判断区块高度增加数量是否达到预设值,若达成则进入步骤七进行后续的授权节点集成员更新,否则进入步骤九;
步骤七,授权节点集成员更新,增加数量清零重新开始计数,等待下一次达成进行下一次的成员更新,完成后进入步骤九;
步骤八,区块链网络中存储区块链数据的所有节点收到新的区块请求后,在本地区块链后添加上新的区块,区块高度增加一个单位;
步骤九,随机产生下一轮拥有出块权的授权节点;
步骤十,步骤八和步骤九完成后,下一轮拥有出块权的授权节点开始新的出块流程,循环往复,形成一条不断增长的区块链。
2.如权利要求1所述的一种基于授权的区块链共识方法,其特征在于:所述授权节点不仅支持发起交易和查询区块链数据,还承担同步存储完整区块链数据的功能,并参与出块权的竞选,完成出块流程。
3.如权利要求1所述的一种基于授权的区块链共识方法,其特征在于:所述随机产生下一轮拥有出块权的授权节点,实现方式如下,
当前拥有出块权的授权节点使用随机函数在授权节点集中随机选择下一轮拥有出块权的授权节点,并向该节点发送请求以确定该节点能够承担下一轮出块流程;
下一轮拥有出块权的授权节点收到请求后须回复当前拥有出出块权的授权节点;
当前拥有出块权的授权节点在限定时间内收到回复后,随机产生下一轮拥有出块权的授权节点流程结束;
反之,未在限定时间内收到,则判定所选节点不活跃,降低该节点获得出块权的概率,当前拥有出块权的授权节点再次使用随机函数选择新的下一轮拥有出块权的授权节点。
4.如权利要求1所述的一种基于授权的区块链共识方法,其特征在于:所述授权节点集成员更新,实现方式如下,
当前拥有出块权的授权节点判断区块高度增长数量是否达到预设值,若未达成则不进行授权节点集成员更新,流程结束;反之,授权节点集通过投票的方式剔除部分授权节点,晋升等数量的非授权节点,保证授权节点集成员数量不变;完成后全网广播新的授权节点集。
5.根据权利要求1或2或3或4所述的一种基于授权的区块链共识方法,其特征在于:所述授权节点集成员数量根据实际网络中节点总数和需要进行匹配。
6.根据权利要求1或2或3或4所述的一种基于授权的区块链共识方法,其特征在于:所述区块高度增长数量达到的预设值或相应时间根据项目实际需要进行匹配。
7.一种基于授权的区块链共识系统,其特征在于:用于实现如权利要求1-6任一项所述的一种基于授权的区块链共识方法。
8.根据权利要求7所述基于授权的区块链共识系统,其特征在于:包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如权利要求1-6任一项所述的一种基于授权的区块链共识方法。
9.根据权利要求7所述基于授权的区块链共识系统,其特征在于:包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如权利要求1-6任一项所述的一种基于授权的区块链共识方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110124440.8A CN112801791B (zh) | 2021-01-29 | 2021-01-29 | 一种基于授权的区块链共识方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110124440.8A CN112801791B (zh) | 2021-01-29 | 2021-01-29 | 一种基于授权的区块链共识方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112801791A true CN112801791A (zh) | 2021-05-14 |
CN112801791B CN112801791B (zh) | 2023-06-16 |
Family
ID=75812741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110124440.8A Active CN112801791B (zh) | 2021-01-29 | 2021-01-29 | 一种基于授权的区块链共识方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112801791B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113518005A (zh) * | 2021-06-22 | 2021-10-19 | 腾讯科技(深圳)有限公司 | 一种区块共识方法、装置、设备及存储介质 |
CN115396443A (zh) * | 2022-10-31 | 2022-11-25 | 安徽中科晶格技术有限公司 | 基于时间因子的联盟链共识方法、装置、设备及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182636A (zh) * | 2018-01-30 | 2018-06-19 | 杨显波 | 基于贡献的区块链共识机制 |
CN108810077A (zh) * | 2018-04-19 | 2018-11-13 | 深圳市网心科技有限公司 | 区块链共识处理方法、电子装置及计算机可读存储介质 |
CN109727038A (zh) * | 2019-01-02 | 2019-05-07 | 浙江师范大学 | 一种基于信用证明PoC的区块链共识机制及实现方法 |
CN109872152A (zh) * | 2019-01-11 | 2019-06-11 | 平安科技(深圳)有限公司 | 基于股份授权证明机制的区块链共识方法及相关设备 |
CN109934608A (zh) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | 一种区块链共识机制 |
CN109934710A (zh) * | 2018-11-08 | 2019-06-25 | 杭州基尔区块链科技有限公司 | 基于双通证的适用于知识产权联盟链的智能共识机制 |
CN110445853A (zh) * | 2019-07-29 | 2019-11-12 | 杭州复杂美科技有限公司 | 平行链节点激励方法、设备和存储介质 |
CN110555764A (zh) * | 2018-05-31 | 2019-12-10 | 厦门本能管家科技有限公司 | 一种去中心化环境下区块链达成一致性的方法及系统 |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
KR20200054634A (ko) * | 2018-11-12 | 2020-05-20 | 한국과학기술원 | 위치정보를 이용한 블록체인 거래인증방법, 기록매체 및 블록체인 시스템 |
CN111372220A (zh) * | 2020-02-28 | 2020-07-03 | 长安大学 | 一种应用于车联网的区块链共识方法 |
US20200250747A1 (en) * | 2019-01-31 | 2020-08-06 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (dlt) |
CN111930845A (zh) * | 2020-08-12 | 2020-11-13 | 湖南宸瀚信息科技有限责任公司 | 一种区块链的共识方法、系统、终端、及存储介质 |
-
2021
- 2021-01-29 CN CN202110124440.8A patent/CN112801791B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109934608A (zh) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | 一种区块链共识机制 |
CN108182636A (zh) * | 2018-01-30 | 2018-06-19 | 杨显波 | 基于贡献的区块链共识机制 |
CN108810077A (zh) * | 2018-04-19 | 2018-11-13 | 深圳市网心科技有限公司 | 区块链共识处理方法、电子装置及计算机可读存储介质 |
CN110555764A (zh) * | 2018-05-31 | 2019-12-10 | 厦门本能管家科技有限公司 | 一种去中心化环境下区块链达成一致性的方法及系统 |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
CN109934710A (zh) * | 2018-11-08 | 2019-06-25 | 杭州基尔区块链科技有限公司 | 基于双通证的适用于知识产权联盟链的智能共识机制 |
KR20200054634A (ko) * | 2018-11-12 | 2020-05-20 | 한국과학기술원 | 위치정보를 이용한 블록체인 거래인증방법, 기록매체 및 블록체인 시스템 |
CN109727038A (zh) * | 2019-01-02 | 2019-05-07 | 浙江师范大学 | 一种基于信用证明PoC的区块链共识机制及实现方法 |
CN109872152A (zh) * | 2019-01-11 | 2019-06-11 | 平安科技(深圳)有限公司 | 基于股份授权证明机制的区块链共识方法及相关设备 |
US20200250747A1 (en) * | 2019-01-31 | 2020-08-06 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (dlt) |
CN110445853A (zh) * | 2019-07-29 | 2019-11-12 | 杭州复杂美科技有限公司 | 平行链节点激励方法、设备和存储介质 |
CN111372220A (zh) * | 2020-02-28 | 2020-07-03 | 长安大学 | 一种应用于车联网的区块链共识方法 |
CN111930845A (zh) * | 2020-08-12 | 2020-11-13 | 湖南宸瀚信息科技有限责任公司 | 一种区块链的共识方法、系统、终端、及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113518005A (zh) * | 2021-06-22 | 2021-10-19 | 腾讯科技(深圳)有限公司 | 一种区块共识方法、装置、设备及存储介质 |
CN115396443A (zh) * | 2022-10-31 | 2022-11-25 | 安徽中科晶格技术有限公司 | 基于时间因子的联盟链共识方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112801791B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cui et al. | A decentralized and trusted edge computing platform for Internet of Things | |
CN111131209B (zh) | 一种改进的高效共识方法、系统、计算机设备及存储介质 | |
JP2022136219A (ja) | ブロックチェーントランザクションの並列検証のためのシステム及び方法 | |
JP2024074969A (ja) | バリデータノードにより提供されるブロックチェーントランザクションをマイニングする方法及びシステム | |
CN108737375A (zh) | 一种区块链共识方法及系统 | |
CN112163856A (zh) | 用于区块链与物联网融合场景的共识方法及系统 | |
CN111130790B (zh) | 基于区块链节点网络的共识出块方法 | |
Xin et al. | On scaling and accelerating decentralized private blockchains | |
CN112801791A (zh) | 一种基于授权的区块链共识方法及系统 | |
CN112636905B (zh) | 基于多角色的可扩展共识机制的系统及方法 | |
CN112187866B (zh) | 一种基于共享存储的新型区块链共识方法 | |
US20220278854A1 (en) | Unity Protocol Consensus | |
CN113448694B (zh) | 一种提高事务处理能力的区块链共识方法 | |
Xue et al. | STBC: A novel blockchain-based spectrum trading solution | |
CN114663104A (zh) | 基于区块链产品供应链溯源的pbft | |
CN113626875A (zh) | 一种区块链分片赋能的知识图谱文件存储方法 | |
CN110990790B (zh) | 一种数据处理方法及设备 | |
CN114219650A (zh) | 一种低交易延迟的区块链共识方法 | |
Wu et al. | Blockchain consensus mechanism for distributed energy transactions | |
CN113746859B (zh) | 一种高网络性能与安全性的vaPBFT区块链共识方法 | |
CN110555764A (zh) | 一种去中心化环境下区块链达成一致性的方法及系统 | |
Jin et al. | Dispatcher: Resource-aware Nakamoto Blockchain via Hierarchical Topology and Adaptive Incentives | |
CN110443713B (zh) | 一种针对区块链交易效率提升的方法及系统 | |
CN111222984B (zh) | 一种用于区块链分布式交易同步处理方法及系统 | |
US20210234667A1 (en) | Method and system for proof of election on a blockchain |
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 |