CN111275552A - 基于区块链的数据处理方法、装置和计算机设备 - Google Patents
基于区块链的数据处理方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN111275552A CN111275552A CN202010067283.7A CN202010067283A CN111275552A CN 111275552 A CN111275552 A CN 111275552A CN 202010067283 A CN202010067283 A CN 202010067283A CN 111275552 A CN111275552 A CN 111275552A
- Authority
- CN
- China
- Prior art keywords
- chain
- block
- inheritance
- bottom layer
- candidate block
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请涉及一种基于区块链的数据处理方法、装置、计算机设备和存储介质。该方法包括:接收到继承备选区块的继承默克尔根哈希值,并将继承默克尔根哈希值添加到底层链的底层备选区块的区块体的币基交易数据中;根据币基交易数据生成底层链的底层默克尔根哈希值,并将底层默克尔根哈希值添加到底层备选区块的区块头中;根据底层备选区块的区块头进行算账处理,得到底层备选区块对应的哈希结果值;根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。采用本方法能够实现区块链的算力继承,从而解决了现有技术中小型区块链项目的算力低于大型区块链项目的算力导致的网络安全问题。
Description
技术领域
本申请涉及区块链领域,特别是涉及一种基于区块链的数据处理方法、基于区块链的数据处理装置、计算机设备和存储介质。
背景技术
随着区块链技术的发展,越来越多的区块链项目出现,并且每个区块链项目都具有负责挖矿的节点。例如,诸如比特币、比特币现金等主要的较大的区块链网络已经产生,其已经汇聚了较多的算力资源。
在实际处理中,工作量证明(Proof of Work,POW)机制的区块链网络必须为了安全目的而进行密集的数学和加密相关操作。但是,区块链的工作量证明机制的缺陷也一直被人诟病。以小型区块链项目网络安全为例,与大型区块链项目的算力相比,小型区块链项目的算力对其毫无防御能力。在大型区块链网络的算力攻击下,小型区块链网络瞬间瓦解,即小型的区块链网络并不安全。例如,当前比特币网络已经吸引了全球大部分的计算力,使用POW工作量证明机制的区块链应用很难获得相同的计算力,并以此来保障自身的安全。
发明内容
基于此,有必要针对上述技术问题,提供一种基于区块链的数据处理方法、一种基于区块链的数据处理装置、一种计算机设备和一种计算机可读存储介质。
一种基于区块链的数据处理方法,所述区块链包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值,所述方法包括:
接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中;
根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中;根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值;
根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
优选地,所述底层链包括多条底层链,所述多条底层链进行算账处理时所使用的挖矿加密算法相同;所述继承链继承所述多条底层链的算力
优选地,根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播,包括:当所述哈希结果值小于所述继承难度阈值时,将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至所述继承链;所述继承链用于将所述区块头、所述币基交易数据及其对应的交易验证数据写入所述继承备选区块的区块头中,并在所述继承备选区块通过有效验证时将所述继承备选区块作为目标继承区块并进行广播。
优选地,所述底层备选区块的区块头包括底层难度阈值,所述方法还包括:
当所述哈希结果值小于所述底层难度阈值,且所述底层备选区块通过有效验证时,将所述底层备选区块作为目标底层区块并进行广播;
生成所述底层链的下一底层备选区块;
将所述继承默克尔根哈希值添加到所述底层链的下一底层备选区块的区块头中继续进行算账处理。
优选地,所述方法还包括:当所述哈希结果值大于或等于所述底层难度阈值,以及,所述哈希结果值大于或等于所述继承难度阈值时,修改所述底层备选区块的区块头中的随机数值;根据修改随机数值后的所述底层备选区块的区块头继续进行算账处理。
优选地,所述继承链具有子链,所述子链包括子链备选区块,所述子链备选区块的区块头包括子链默克尔根哈希值,所述继承链用于将所述子链默克尔根哈希值添加于继承备选区块的区块体的币基交易数据后,根据所述继承备选区块的区块体生成的继承默克尔根哈希值添加到所述继承备选区块的区块头中。
优选地,所述底层链和所述继承链算账处理和记账解耦;所述算账处理和记账解耦为所述底层链用于进行算账处理,所述继承链用于根据所述底层链算账处理所得的哈希结果值进行记账,所述底层链进行算账处理时使用POW工作量证明机制,所述继承链进行记账时使用记账共识机制,所述记账共识机制包含以下至少一种:所述POW工作量证明机制、POS权益证明机制和DPOS委托权益证明机制。
一种基于区块链的数据处理装置,所述区块链包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值,所述装置包括:
币基交易数据添加模块,用于接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中;
区块头添加模块,用于根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中;
算账处理模块,用于根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值;
目标继承区块确定模块,用于根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的基于区块链的数据处理方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于区块链的数据处理方法的步骤。
上述基于区块链的数据处理方法、基于区块链的数据处理装置、计算机设备和计算机可读存储介质,通过将接收到的继承备选区块的继承默克尔根哈希值添加到底层链的底层备选区块的区块体的币基交易数据中,随后根据币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中,以及根据底层备选区块的区块头进行算账处理,使得继承备选区块的继承默克尔根哈希值可以影响底层备选区块对应的哈希结果值,进而使得继承备选区块与底层备选区块相关连,即使得继承区块链的子链的区块与该区块链的区块相关连,实现了区块链的算力继承,从而增强了区块链的安全性,解决了现有技术中小型区块链项目的算力低于大型区块链项目的算力导致的网络安全问题;并且区块链的算力继承可以通过电力资源转换,不需要额外的能源消耗,从而能够节省耗社会算力资源,大大地提高了算力的能源转换效率,达到环保目的。
附图说明
图1是一个实施例的一种基于区块链的数据处理方法的流程示意图;
图2是一个可选实施例的一种基于区块链的数据处理方法的流程示意图;
图3是一个示例的一种底层链的区块结构示意图;
图4是一个示例的一种继承链的区块结构示意图;
图5是一个示例的一种基于区块链的数据处理方法的流程示意图;
图6是一个实施例的一种基于区块链的数据处理装置的结构框图;
图7是一个实施例的一种计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
区块链的工作量证明机制实现了区块链的去中心化创新,节点自由进出,但同时也存在一些缺陷。具体而言,工作量证明机制需要消耗大量能源计算能力,不可避免,如比特币网络的POW工作量证明机制18年消耗了几十亿美元的电力,造成巨大的浪费。若越来越多的小型区块链网络发展为大型区块链网络,则会进一步损耗社会算力资源,造成电力资源、水力资源的浪费,存在能源转换效率低的问题。另外,与大型区块链网络的算力相比,小型区块链项目的算力对其毫无防御能力,即存在小型区块链项目网络安全问题。此外,目前底层工作量证明机制的区块链网络,如比特币网络,产生区块间隔时间长,交易速度慢,区块记录交易笔数少,且区块产生时间不可调整,导致交易效率低的问题。
为了解决上述问题,本申请实施例提供了一种基于区块链的数据处理方法。本申请实施例提供的基于区块链的数据处理方法可以应用于区块链网络的节点,该节点可以但不限于是各种区块链项目中负责挖矿的节点。具体的,区块链可以包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值。
需要说明的是,底层链和继承链是互相独立的区块链,可以针对不同的交易领域的区块链,比如,底层链可以是针对金融交易,继承链可以是针对保险交易,其中,当底层链或者继承链达到其对应的难度阈值时将生成目标区块,并向其区块链网络进行广播。
如图1所示,本实施例提供的基于区块链的数据处理方法可以包括如下步骤:
步骤S110,接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中。
在具体实现中,区块链网络中的节点在接收到交易数据后,可以根据接收到的交易数据生成一个区块。其中,交易数据可以包含币基(Coinbase)交易数据和其他交易数据;该Coinbase交易数据可以是区块中的第一交易的数据。
本实施例的底层链在接收到继承备选区块的继承默克尔根哈希值(继承默克尔根哈希值为根据继承链接收到的保险交易生成)后,可以将该继承默克尔根哈希值添加到底层链的底层备选区块的区块体的币基交易数据中,以便后续可以根据包含继承默克尔根哈希值的币基交易数据和其他交易数据(其他交易数据可以是底层链接收到的金融交易)生成底层链的底层默克尔根哈希值,即执行步骤S120。其中,继承备选区块可以是指继承链中的备选区块。
需要说明的是,本实施例中的继承默克尔根哈希值可以是指继承链当前备选区块的默克尔(Merkle)根值,如可以是继承链的一个区块的默克尔(Merkle)根值,该Merkle根值可以将继承链的一个区块中的所有交易都整合到单个哈希值中,并可将该哈希值放到底层链的区块的Coinbase交易里面。其中,Coinbase交易可以是区块中的第一交易,这个第一交易可以是由挖矿节点构造并可用来奖励矿工们所做的工作量。
步骤S120,根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中。
本实施例中,底层备选区块可以是指底层链中的备选区块。该底层备选区块可以包含区块头和区块体。
步骤S130,根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值。
本实施例中,在底层链底层备选区块的区块头进行算账挖矿时,可以加入继承默克尔根哈希值进行计算,并可将计算得到的哈希值确定为底层备选区块对应的哈希结果值。其中,底层链可以是备选区块所在的挖矿节点所属的区块链,如在底层备选区块所在的挖矿节点为比特币网络中负责挖矿的节点的情况下,该底层链可以是比特币网络中的某一条区块链。
步骤S140,根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
在具体实现中,根据困难要求,计算得到的哈希结果值小于相应的难度阈值,才可以算挖矿成功。因此,在哈希结果值小于相应的难度阈值时,可以确定相应的区块链挖矿成功;若哈希结果值不小于相应的难度阈值,则可以确定相应的区块链挖矿失败。其中,难度阈值可以根据区块链的难度要求设置,如继承难度阈值可以是根据继承链难度要求设置的难度值,可以用于确定继承链是否挖矿成功,如果挖矿成功则可以确定目标继承区块并进行广播。
优选地,上述根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播,可以包括:当所述哈希结果值小于所述继承难度阈值时,将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至所述继承链。其中,所述继承链用于将所述区块头、所述币基交易数据及其对应的交易验证数据写入所述继承备选区块的区块头中,并在所述继承备选区块通过有效验证时将所述继承备选区块作为目标继承区块并进行广播。
具体而言,由于本实施例在计算底层备选区块对应的哈希结果值时加入了继承默克尔根哈希值,因此本实施例可以将计算得到的哈希结果值与继承难度阈值进行比较,以确定继承链区块是否挖矿成功。若底层备选区块对应的哈希结果值小于继承难度阈值,则可以确定继承链区块挖矿成功,随后可通过继承链节点进行有效验证,如将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至所述继承链进行验证,以在验证通时生成目标继承区块,随后可在继承链的网络中对该目标继承区块进行广播,实现了目标继承区块的上传。
综上,本实施例将接收到的继承备选区块的继承默克尔根哈希值添加到底层链的底层备选区块的区块体的币基交易数据中,随后根据币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中,以及根据底层备选区块的区块头进行算账处理,使得继承备选区块的继承默克尔根哈希值可以影响底层备选区块对应的哈希结果值,进而使得继承备选区块与底层备选区块相关连,即使得区块链的区块与继承该区块链的继承链的区块相关连,进而使得继承链可以继承底层链的算力,使得继承链网络不易被攻击,即实现了区块链的算力继承,增强了区块链的安全性。例如,继承链在继承底层链的算力后,可以利用底层链的算力进行算账,从而解决了现有技术中小型区块链项目的算力低于大型区块链项目的算力导致的网络安全问题,提高小型区块链项目网络安全性。
进一步的,本实施例实现了区块链的算力继承,使得继承链网络可以利用底层链的算力建立很高的安全壁垒,从而能够防止被恶意操纵,并且可以避免项目早期可能遇到的算力攻击问题,以及可以快速扩大应用规模对网络产生的压力;且区块链的算力继承可以通过电力资源转换,不需要额外的能源消耗,从而能够节省耗社会算力资源,大大地提高了算力的能源转换效率,达到环保目的。
其中,提供算力继承的区块链可以由多条底层链组成,底层链的区块大小结构可以不同,但需要这些底层链与继承链使用相同挖矿加密算法,从而实现算力的继承,并能够保障继承链拥有像底层链一样的安全性。需要说明的是,继承链可以是继承底层链算力的子链。
优选地,本申请实施例中的底层链可以包括多条底层链,所述多条底层链进行算账处理时所使用的挖矿加密算法相同,从而使得继承链可以利用多条底层链的算力进行算账,进一步提高了继承链网络的安全性。具体而言,在实际处理中,可以存在多条底层链,如底层链1,底层链2,底层链3等。每条底层链可以拥有强大的算力。继承链可以继承一条或多条底层链的算力,如可以继承区块链网络中的所有底层链的算力,以利用所有底层链的算力去算账;且在这种情况下,继承链的总算力可能超越某一个底层链的算力。算力越高的底层链,挖到继承链区块的概率也就越高。例如,底层链1的总算力为80EH/s,继承链A继承底层链1的总算力为70EH/s,底层链2的总算力为40EH/s,继承链A继承底层链2的总算力为30EH/s,这样继承链A的总算力为100EH/s,即超过了任一底层链的总算力;成功挖到继承链A区块的概率可以由底层链1和底层链2提供的算力获得,其中,70%概率可以由底层链1提供的算力获得,30%概率由底层链2提供的算力获得。
底层链的挖矿节点在拿到继承链的一个区块的哈希值后,可以将该哈希值放到底层链的区块的币基交易数据里面,作为本实施例中的继承链哈希值,从而实现了将继承链区块的哈希值嵌入到底层链区块的交易数据中,进而可以影响底层链的哈希结果值,使得底层链的区块是和继承链的区块相关联的,解决了现有技术中单个区块链网络应用范围有限的问题,提高了算力的能源利用率,能够为更多区块链网络提供安全保障,提高了能源转换率。
另外,本实施例中的继承链的出块时间可以通过调整出块难度阈值配置,从而解决了现有区块链网络中区块产生时间不可调整导致的交易效率低问题。例如,某一继承链与某一底层链的算力值相同时,该底层链的平均出块时间为10分钟,通过将底层链的难度阈值设置为继承链难度值的十分之一,即将底层难度阈值设置为继承难度阈值的十分之一,可使得继承链出块时间调整为平均1分钟生成一个区块。
在实际处理中,本实施例中的底层备选区块可以包含有的区块头包括底层难度阈值。该底层难度阈值可以是指底层链的难度阈值,具体可以用于判断底层链是否挖矿成功。若底层链挖矿成功,则可以通过底层链节点进行有效验证,以在验证通过时生成目标底层区块,并在底层链的网络中对所述目标底层区块进行广播。具体而言,本实施例除了可以将计算得到的哈希结果值与继承难度阈值进行比较之外,还可以将计算得到的哈希结果值与底层难度阈值进行比较,以确定底层链区块是否挖矿成功。若底层备选区块对应的哈希结果值小于底层难度阈值,则可以确定底层链区块挖矿成功;若底层备选区块对应的哈希结果值不小于底层难度阈值,如在底层备选区块对应的哈希结果值等于或大于底层难度阈值时,则可以确定底层链区块挖矿失败。
在上述实施例的基础上,可选的,上述基于区块链的数据处理方法还可以包括:当所述哈希结果值小于所述底层难度阈值,且所述底层备选区块通过有效验证时,将所述底层备选区块作为目标底层区块并进行广播;生成所述底层链的下一底层备选区块;将所述继承默克尔根哈希值添加到所述底层链的下一底层备选区块的区块头中继续进行算账处理。
在一个可选实施方式中,可以先将计算得到哈希结果值与底层难度阈值进行比较,即将计算得到哈希结果值与底层链的难度阈值进行比较,然后再将哈希结果值与继承难度阈值进行比较,以依据比较结果确定出挖矿结果。
具体的,在计算得到备选区块对应的哈希结果值后,可以判断哈希结果值是否小于底层难度阈值。若哈希结果值小于底层难度阈值,则可以确定底层链挖矿成功,并可判断哈希结果值是否小于继承难度阈值,从而可以在哈希结果值小于继承难度阈值时确定继承链也挖矿成功,随后通过继承链和底层链分别进行验证,以验证通过时生成相应的目标底层区块和目标继承区块,进而可以在底层链的网络中对目标底层区块进行广播,以将该目标底层区块广播至其他底层链节点,并可在继承链的网络中对目标继承区块进行广播,以将该目标继承区块广播至其他继承链节点;而在哈希结果值不小于继承难度阈值时确定继承链挖矿失败,随后可依据底层链挖矿成功结果通过底层链进行验证,以在验证通过时生成对应的目标底层区块,并在底层链的网络中对生成的目标底层区块进行广播。若哈希结果值不小于底层难度阈值,如在哈希结果值等于或大于底层难度阈值时,则可以确定底层链挖矿失败,随后可判断哈希结果值是否小于继承难度阈值,从而可以在哈希结果值小于继承难度阈值时确定继承链挖矿成功,并可将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至继承链,以通过继承链将底层备选区块的区块头、币基交易数据及其对应的交易验证数据写入继承备选区块的区块头中,随后依据该继承备选区块的区块头进行验证,在验证通过时将该继承备选区块作为目标继承区块并进行广播;而在哈希结果值不小于继承难度阈值时确定继承链挖矿失败,如在哈希结果值等于或大于继承难度阈值时确定继承链挖矿失败,即计算得到的哈希结果值没有小于底层链和继承链指定的难度阈值,因此底层链网络和继承链网络都不会承认这个解答是有效的工作量证明,进而不会有区间上传到账本上,即不会有区块上传到区块链网络。
当然,本实施例也可以先将计算得到哈希结果值与继承难度阈值进行比较,然后再将哈希结果值与底层难度阈值进行比较,本实施例对此不作具体限制。因此,在另一个可选实施例中,在得到哈希结果值后,可以判断该哈希结果值是否小于继承难度阈值,随后判断哈希结果值是否小于底层难度阈值。若哈希结果值小于继承难度阈值和小于底层难度阈值,则可以确定继承链和底层链均挖矿成功,随后分别通过继承链和底层链进行验证,即通过底层链的节点对该底层备选区块进行有效验证,从而可在验证通过后将底层备选区块作为目标底层区块,如可以将底层链的区块头部和底层链币基交易数据,以及对应的交易验证数据写入到目标底层区块中,即生成一个新的目标底层区块并广播到底层链网络的其他节点,同时可以将底层备选区块的区块头,币基交易数据及其对应的交易验证数据发送至继承链,以通过继承链节点将该底层备选区块的区块头、币基交易数据及其对应的交易验证数据写入到继承备选区块的区块头中并进行验证,从而在验证通过后将继承备选区块作为目标继承区块,并广播到继承链网络的其他节点。
此外,若哈希结果值不小于继承难度阈值,但小于底层难度阈值,则可以确定继承链挖矿失败、底层链挖矿成功,随后可通过底层链进行验证,并可在有效验证通过时将所述底层备选区块作为目标底层区块。若哈希结果值小于继承难度阈值,但不小于底层难度阈值,则可以确定继承链挖矿成功、底层链挖矿失败,随后通过继承链进行验证,即将底层备选区块的区块头,币基交易数据及其对应的交易验证数据发送至所述继承链,以触发继承链将底层备选区块的区块头、币基交易数据及其对应的交易验证数据写入继承备选区块的区块头中,随后对该继承备选区块进行有效验证,以在继承备选区块通过有效验证时将该继承备选区块作为目标继承区块。
进一步的,上述基于区块链的数据处理方法还可以包括:当所述哈希结果值大于或等于所述底层难度阈值,以及,所述哈希结果值大于或等于所述继承难度阈值时,修改所述底层备选区块的区块头中的随机数值;根据修改随机数值后的所述底层备选区块的区块头继续进行算账处理。具体而言,在哈希结果值不小于继承难度阈值,且不小于底层难度阈值时,本实施例可以确定继承链和底层链均挖矿失败,随后可修改底层备选区块的区块头中的随机数,以依据修改后的随机数重新计算底层备选区块对应的哈希结果值。
如图2所示,提供了一种基于区块链的数据处理方法,具体可以包括如下步骤:
步骤S210,依据接收到的交易数据生成底层备选区块。
具体的,挖矿节点在接收到交易数据后,可以依据该交易数据以及区块链的区块头数据生成相应的备选区块。因此,底层链节点在接收到交易数据后,可以根据该交易数据生成对应的底层备选区块。其中,交易数据可以包含有区块链区块体中的各种交易数据,具体可以包含Coinbase交易数据和其他交易数据等,Coinbase交易数据内包含有继承默克尔根哈希值,该继承默克尔根哈希值可以表示继承备选区块的哈希值。需要说明的是,区块链的区块头数据可以包含区块链区块头中的各种数据,具体可以包含有上个区块链区块哈希值、时间戳、难度值、随机数(Nonce)值以及当前区块链区块哈希值等。例如,如图3所示,底层链的区块可以包含有底层链区块头和底层链区块体,该底层链区块头包含有上个底层链区块哈希值、时间戳、难度值、Nonce值以及当前底层链区块哈希值,底层链区块体包含有Coinbase交易数据和其他交易数据,Coinbase交易数据内含有继承链当前备选区块的哈希值。
具体而言,本实施例在接收到继承备选区块的继承默克尔根哈希值后,可将该继承默克尔根哈希值添加到底层链的底层备选区块的区块体的币基交易数据中,并根据该币基交易数据生成底层链的底层默克尔根哈希值,以及将该底层默克尔根哈希值添加到底层备选区块的区块头中,从而使得继承链区块的哈希值能够影响底层链的哈希结果,进而使得底层链的区块与继承链的区块相连。例如,底层链的挖矿节点在接收到继承链的一个区块的Merkle根值后,可把该Merkle根值放到底层链的区块的Coinbase交易里面。其中,底层链可以是现有的区块链网络中的底层链,例如比特币网络中的底层链,也可以是自己构建的区块链,前提只需保证继承链和底层链采用相同的挖矿加密算法,就可以实现区块链的算力继承。
本实施例在将继承默克尔根哈希值添加到底层备选区块的区块体的币基交易数据后,可以根据该币基交易数据生成底层链的底层默克尔根哈希值,并将该底层默克尔根哈希值添加到底层备选区块的区块头中,以便后续结合该底层备选区块的区块头所包含默克尔根哈希值进行哈希碰撞,即执行步骤S220。其中,哈希碰撞可以用来计算区块头的哈希值,并可是挖矿的主要步骤。
步骤S220,根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值。
本实施例中,区块链网络中的矿工节点在计算底层链进行算账挖矿时,可以通过加入继承默克尔根哈希值,从而尝试得到答案,即结合继承默克尔根哈希值进行算账处理,得到底层备选区块对应的哈希结果值。直到根据困难度要求,计算得到的哈希结果值小于相应的难度值,才算挖矿成功。
在实际处理中,矿工节点主要是通过哈希碰撞来进行算账。在每次哈希碰撞尝试之后,可以得到相应的哈希值,以作为到底层备选区块对应的哈希结果值。随后可以将该哈希结果值与底层难度阈值和继承难度阈值进行比较,以在哈希结果值小于相应的难度阈值时确定挖矿成功。
需要说明的是,底层难度阈值和继承难度阈值是分别针对底层链的难度值和继承链的难度值,在将该哈希结果值与底层难度阈值和继承难度阈值进行比较时,可以先比较底层难度阈值再比较继承难度阈值,也可以先比较继承难度阈值再比较底层难度阈值,并且他们比较结果不会对另一个比较结果产生影响,即底层链的比较结果不会影响继承链的比较结果,继承链的比较结果不会影响底层链的比较结果。
优选地,本实施例中底层备选区块的区块头还可以包括随机数。在哈希碰撞过程中,挖矿节点可以通过底层备选区块中的Nonce值计算出每一哈希碰撞后的哈希结果值。例如,在底层链的节点生成在生成底层备选区块后,可以依据该底层备选区块中的区块头数据以及区块体数据来进行哈希碰撞,以确定出该底层备选区块对应的哈希结果值。区块头数据包含区块头中的各种数据,如时间戳、难度值、Nonce值等,区块体数据可以包含区块体中的各种交易数据,如Coinbase交易数据和其他交易数据等。
本实施例在每次哈希碰撞尝试后,可以出现以下四种结果中的任意一种:
第一种结果,在哈希结果值没有小于底层链和继承链指定的难度值时,即在哈希结果值不小于底层难度阈值和不小于继承难度阈值时,挖矿结果为目标挖矿失败结果,这两个区块链网络(即底层链网络和继承链网络)都不会承认这个解答是有效的工作量证明,因此不会有区块上传到账本上,同时可以尝试继续进行另一个哈希运算,如修改备选区块中的Nonce值,重新执行哈希碰撞,即可返回执行步骤S220。
第二种结果,在哈希结果值小于继承链指定的难度值,且大于底层链难度值的情况下,即在哈希结果值小于继承难度值且大于底层难度值时,挖矿结果为底层链挖矿失败、继承链挖矿成功的结果,执行步骤S230和步骤S260。
第三种结果,在哈希结果值小于继承链和底层链指定的难度值的情况下,即在哈希结果值小于继承难度值和底层难度值时,挖矿结果为目标挖矿成功结果,对于底层链和继承链这两个区块链而言,这个解答为有效的,随后可执行步骤S240、步骤S260以及步骤270。
第四种结果,在哈希计算结果小于底层链指定的难度值,且大于继承链的难度值的情况下,即在哈希结果值小于底层难度值且大于继承难度值时,挖矿结果为底层链挖矿成功、继承链挖矿失败的结果,底层链可以承认这个解答是有效的工作量证明,随后可执行步骤S250和步骤S270。优选地,在哈希结果值大于或等于继承难度阈值,且小于所述底层难度阈值时,还可以将所述继承默克尔根哈希值保留,并在生成底层链的下一备选区块时再次写入,以通过底层链继续针对继承默克尔根哈希值进行算账处理,即使得继承链可以继续利用已完成自身出块需求的底层链的算力进行算账,直至继承链对应的多条底层链中有一条底层链的哈希结果值小于继承链的继承难度值,即继承链挖矿成功,以此达到继承链继承多条底层链的算力的目的,进一步提高继承链网络的安全性。
步骤S230,将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至继承链,以通过继承链的节点进行有效验证,并在验证通过后将继承备选区块作为目标继承区块。
具体而言,在继承链挖矿成功,底层链挖矿失败的情况下,可以将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至继承链。继承链的节点作为验证节点,可以将接收到的底层备选区块的区块头、币基交易数据及其对应的交易验证数据写入继承备选区块的区块头中,随后对该继承备选区块进行有效验证,并在继承备选区块通过有效验证时将继承备选区块作为目标继承区块。例如,继承链的节点在接收到底层链挖矿节点发送的底层链的区块头数据、底层链区块中的币基交易数据、及币基交易所对应的交易验证数据后,就可以依据接收到的这些数据进行有效验证,得到继承链验证结果,随后可以依据该继承链验证结果将继承备选区块确定为依据这些数据生成的新区块,以作为目标继承区块,随后可执行步骤S260,以将目标继承区块广播至其他继承链节点。底层链的节点可修改底层备选区块的区块头中的随机数值,并可根据修改随机数值后的底层备选区块的区块头继续进行算账处理,即重新执行哈希碰撞,本实施例对此不作具体限制。
作为本申请的一个示例,本实施例提供的基于区块链的数据处理方法可以应用于底层链的节点中,该底层链可以为底层备选区块所在的区块链。底层链的节点在计算得到的哈希结果值不小于底层难度阈值且小于继承链难度阈值的情况下,可以将底层备选区块的区块头数据、Coinbase交易数据、及Coinbase交易所对应的Merkle Branch数据发送给继承链验证节点,从而使得继承链验证节点可以接收到底层链挖矿节点发送的底层备选区块的区块头数据、Coinbase交易数据、及Coinbase交易所对应的Merkle分支(Branch)数据。其中,Merkle Branch是Merkle树的一个分支,Merkle Branch数据可适用于快速验证Coinbase交易。
具体的,继承链的验证节点得到这些数据后,就可以进行有效验证。如果在属于的指定的难度下,可以找到继承链区块链的哈希值,则在广播到网络之前,继承链的验证节点可以将底层备选区块的区块头数据和Coinbase交易数据,及对应的Merkle Branch数据写入继承备选区块中,以在验证通过后可以将该继承备选区块作为目标继承区块,然后执行步骤260。其中,底层链可以为底层备选区块所在的区块链;继承链可以为继承底层链算力的子链。
例如,如图4所示,继承链的区块可以包含有继承链区块头和继承链区块体,该继承链区块头包含有上个继承链区块哈希值、时间戳、难度值、Nonce值以及当前继承链区块哈希值、底层链区块头数据、底层链的Coinbase交易数据以及Merkle Branch数据,继承链区块体包含有Coinbase交易数据和其他交易数据,Coinbase交易数据内含有继承链当前备选区块的哈希值。
在实际处理中,当将底层备选区块的区块头部嵌入到继承链区块头进来后,即在将底层备选区块的区块头数据、币基交易数据及其对应的交易验证数据写入到继承备选区块的区块头部后,继承链区块网络的矿工除了可以验证继承备选区块的哈希值是否在继承难度阈值之上,也可以验证底层链的哈希值是否和现有的继承备选区块相连接。具体的,因为底层备选区块的区块头数据包含了默克尔根哈希值,即有足够的证据说明这个哈希运算的答案对继承备选区块的工作量也是真实存在,所以继承链区块网络就能认可这种工作量是有效的。如果工作量达到继承链的算力难度值要求,即在计算得到的哈希值低于相应的难度阈值时,这样继承备选区块将被认可,继承链节点也会记录该新的继承备选区块,以作为目标继承区块,随后执行步骤S260。
步骤S240,通过底层链的节点和继承链的节点分别进行有效验证,并在验证通过时将底层备选区块作为目标底层区块和将继承备选区块作为目标继承区块。
本实施例中,在继承链挖矿成功,底层链挖矿成功的情况下,可以通过底层链的节点和继承链的节点分别进行有效验证,得到对应的底层链验证结果和继承链验证结果,并可在底层链验证结果和继承链验证结果均为验证通过结果时,将底层备选区块作为目标底层区块和将继承备选区块作为目标继承区块,随后执行步骤S260以及步骤270。
具体而言,底层链节点可以依据备选区块中的区块头数据和区块体数据,如备选区块的区块头中所包含的上个底层链区块哈希值、时间戳、难度值、Nonce值以及当前底层链区块哈希值,备选区块的区块体中所包含的Coinbase交易数据和其他交易数据等,进行有效验证,并可在验证通过后将该底层备选区块确定为底层链的一个新区块,以作为目标底层区块,并广播至其他底层链节点,即执行步骤270;同时,底层链节点还可以执行继承链挖矿成功情况下的所有流程,具体的,可以将将底层备选区块的区块头,币基交易数据及其对应的交易验证数据发送至继承链,即底层备选区块的区块头数据、Coinbase交易数据、及Coinbase交易所对应的Merkle Branch数据发送给继承链验证节点,从而使得继承链验证节点可以依据接收到的底层备选区块的区块头数据、底层备选区块的Coinbase交易数据、及Coinbase交易所对应的Merkle分支(Branch)数据进行有效验证。具体的,继承链验证节点可以将接收到的底层备选区块的区块头数据、币基交易数据及其对应的交易验证数据写入继承备选区块的区块头中,并在所述继承备选区块通过有效验证时将该继承备选区块确定为继承链的一个新区块,以作为目标继承区块广播至其他继承链节点,即执行步骤260。其中,底层备选区块的Coinbase交易数据可以保存有继承默克尔根哈希值。
步骤S250,通过底层链的节点对所述底层备选区块进行有效验证,并在有效验证通过时将所述底层备选区块作为目标底层区块。
具体而言,在继承链挖矿失败、底层链挖矿成功的情况下,底层链节点可以不将备选区块中诸如区块头数据等信息传输给继承链节点,而依据该备选区块中的数据对该备选区块进行有效验证,从而可在验证通过后生成新的底层链区块,以作为备选区块对应的目标底层区块并广播至其他底层链节点,即执行步骤270,从而使得已经完成难度问题的备选区块可以在底层链区块网络中进行广播。优选地,底层链节点在备选区块对应的目标底层区块生成后,还可以保留继承默克尔根哈希值,以待下一底层链区块生成时,比如在底层链网络接收到一个新的交易数据后,基于新的交易数据生成下一底层链区块,此时仍可以采用继承默克尔根哈希值进行算账处理。具体的,在下一底层链区块生成时,仍可以采用继承默克尔根哈希值与继承链的难度阈值进行算账处理,直到计算得到的结果哈希值直到低于底层链的难度值,才执行底层链挖矿成功情况下的全部流程。
步骤S260,在继承链的网络中对所述目标继承区块进行广播。
步骤S270,在底层链的网络中对所述目标底层区块进行广播。
作为本申请的一个示例,如图5所示,底层链的挖矿节点收到交易数据生成底层备选区块,通过哈希碰撞,得到底层备选区块对应的哈希结果值,可以判断哈希结果值是否小于底层难度阈值,随后可以判断哈希结果值是否小于继承难度阈值,以依据判断结果生成对应的挖矿结果,具体的,在判断出哈希结果值小于所述底层难度阈值后,可以判断该哈希结果值是否小于所述继承难度阈值;若该哈希结果值小于继承难度阈值,则可以执行第三种结果,确定继承链区块挖矿成功,底层链挖成功,随后底层链与继承链节点分别将进行验证,生成新区块,并广播至其他节点,即执行步骤S240、步骤S260以及步骤270;否则,可以执行第四种结果,确定继承链区块挖矿失败,底层链挖成功,底层链节点将验证,生成新区块,并广播至其他底层链节点,即执行步骤S250和步骤S270,并保留继承链的哈希值,待下个底层链区块生成时再执行挖矿,即保留将继承默克尔根哈希值,以在底层链的下一底层备选区块生成时将保留的继承默克尔根哈希值添加到下一底层备选区块的区块头中继续进行算账处理。同理,在判断出哈希结果值不小于所述底层难度阈值后,可以判断该哈希结果值是否小于所述继承难度阈值;若该哈希结果值小于继承难度阈值,则可以执行第二种结果,确定继承链区块挖矿成功,底层链挖失败,继承链节点将验证结果,生成新区块,并广播至其他继承链节点,即执行步骤S230和步骤S260,底层链重新执行哈希碰撞,即返回执行通过修改nonce值进行哈希碰撞,得到底层备选区块对应的哈希结果值的步骤;否则,可以执行第一种结果,修改Nonce值,重新执行哈希碰撞,然后返回执行通过修改nonce值进行哈希碰撞,得到底层备选区块对应的哈希结果值的步骤,即执行步骤S220。
可见,本示例在挖矿结果为底层链和继承链均挖矿成功时,生成目标底层区块和/或目标继承区块,并在底层链的网络中对所述目标底层区块进行广播和在继承链的网络中对所述目标继承区块进行广播;在底层链挖矿成功、继承链挖矿失败时,生成目标底层区块,以在底层链的网络中对该目标底层区块进行广播;在继承链挖矿成功、底层链挖掘失败时生成目标继承区块,以在继承链的网络中对所述目标继承区块进行广播;而在挖矿结果为底层链和继承链均挖矿失败结果时,修改Nonce值,以重新执行哈希碰撞。
可见,本实施例利用区块链中的数据具有去中心化和不可篡改的特性,将继承默克尔根哈希值放到区块链的交易数据中,从而使得该继承默克尔根哈希值可以影响依据该交易数据生成的备选区块的哈希结果值,即影响继承链所继承的底层链的哈希结果值,使得底层链和继承链相关联,进而使得继承链可以继承底层链的算力,使得继承链网络不易被攻击,即实现了区块链的算力继承,增强了区块链的安全性。
进一步而言,算力的可继承性可以延续的。优选地,本实施例中的继承链具有子链,所述子链包括子链备选区块,所述子链备选区块的区块头包括子链默克尔根哈希值,所述继承链用于将所述子链默克尔根哈希值添加于继承备选区块的区块体的币基交易数据后,根据所述继承备选区块的区块体生成的继承默克尔根哈希值添加到所述继承备选区块的区块头中。
具体而言,继承链的子链仍可利用继承链的算力,子链的每一笔交易都可以影响到子链区块的哈希值。该哈希值将保存至继承链的Coinbase交易中,继承链的Coinbase数据的变化也影响到底层链区块的哈希值,它会影响底层链默克尔根的结果。通过这个机制,底层链的区块是和继承链的子链区块是相关联的,子链的子链也是如此,从而实现了算力的无限继承性,即在理论上算力是可无限继承的。基于算力的无限继承性,可以避免的Coinbase交易不断膨胀的情况,从而能够避免越来越多的小型区块链网络发展为大型区块链网络导致社会算力资源进一步被消耗、浪费电力资源和水力资源等问题。
需要说明的是,每生成一条继承链,底层链的Coinbase数据大小将会扩充一点。但如果是新生成继承链的子链,底层链的数据大小不会膨胀,通过继承链添加部分数据至继承链区块的Coinbase交易内容即可,从而能够避免底层链因为算力继承而导致变慢或网络拥堵的问题。在具体实现中,子链的继承原理与继承链继承算力的区块的数据结构相同,原理也相同,具体情况可以参见继承链继承底层链的算力流程。
本实施例中,底层链用于进行算账处理,所述继承链用于根据所述底层链算账处理所得的哈希结果值进行记账。具体的,继承链的共识机制可与底层链的共识机制不同,继承链可以将算账与记账解耦,底层链提供工作量证明并负责算账,继承链负责记账。其中,底层链进行算账处理时可以使用POW工作量证明机制,而继承链进行算账处理时使用POW工作量证明机制,即使用记账共识机制进行记账。该记账共识机制可以包含以下至少一种:所述POW工作量证明机制、POS权益证明机制和DPOS委托权益证明机制等,本实施例对此不作具体限制。
在具体实现中,继承链的记账节点可以负责采集交易记录,并可将交易记录进行哈希值打包,随后可把该哈希值作为本实施例中的继承默克尔根哈希值传递给底层链节点;底层链的挖矿节点将负责算账,并可将算账结果与工作量证明数据传给继承链的节点。底层链的节点与继承链的节点可以在同一服务器运行。继承链的记账的共识机制不限制POW工作量证明机制,可以是多种不同方式,比如可以是POW机制与权益证明(Proof ofStake,POS)机制混合,POW机制与股份授权证明(Delegated Proof of Stake,DPOS)共识机制混合等。
需要说明的是,本实施例中的POW与POS混合模式与现有技术中POW+POS混合模式相比有所不同。具体的,本实施例中的POW与POS混合模式是指记账与算账的解耦,可以由不同的节点执行;而现有技术中的P0W+POS的混合模式是在同一个服务节点运行,即记账与算账并未解耦,属于同一个服务节点运行。此外,现有POW+POS混合模式的算力小,导致容易被攻击;而本实施例中的POW与POS混合共识机制增强了算力,从而不易被攻击,从而增强了区块链的安全性。本实施例使用这种POW与POS混合模式,通过利用现有的POW工作量证明网络,实现了区块链的算力继承;且因为继承该区块链的子链与该区块链采用了同样的加密算法,消耗的是同一批算力,不需要额外的能源消耗,所以区块链的算力继承不需要额外的能源消耗,达到环保目的,从而大大提高了算力的能源转换率。
例如,继承链的记账的共识机制可以是POS机制;算账仍然可以采用POW机制的工作量证明算力,根据币龄与币权(持有代币的时间和量)决定,并分配利润。因为记账与算账的解耦,从而能够保障继承算力链的效率,且继承链的数据结构与共识机制都不可以受底层链的限制,与原有纯POW工作量证明机制相比,本实施例可在不丢失安全性的情况下,采用这种混合模式能提高大大提高效率。具体而言,这种POW与POS混合模式的出块效率与数据结构并不受使用POW模式原有底层链的影响。POS记账节点在验证底层链的工作量证明的时候,通过锁定一定数量的令牌(Token)后就可以获取到权益的证明,进而可以提议和投票下一个区块的记账。其中,投票的权重可以取决于其持有代币的数量,也就是说当POS节点收到底层链的验证区块,这个节点所持有的代币越多,他获得生产下一个区块的概率就越大。
又如,在继承链的记账共识机制为DOPS证明机制的情况下,可以由用户之中竞选超级节点,用户进行投票,竞选成功的超级节点将运行,负责记账。当超级节点收到底层链挖矿节点发送过来的备选区块,超级节点将验证该备选区块的工作量证明,并发送给其他超级节点,当备选区块得到超级节点中三分之二的确认,该备选区块将记录到区块链上。
综上,本实施通过利用现有的工作量证明网络,实现了区块链的算力继承,从而解决了现有区块链网络使用工作量证明机制需要大量算力和消耗大量能源导致的能源转换率问题,大大提高算力的能源转换率;并且可以通过现存的已经实现大规模应用的区块链网络,建立很高的安全壁垒以防止区块链网络被恶意操纵,即能够避免项目早期可能遇到的算力攻击问题,以及可以快速扩大应用规模对网络产生的压力。
进一步的,应用本申请实施例提供的基于区块链的数据方法,可以实现记账与算账的解耦,从而能够达大大提高区块链网络的安全性,且继承链可以同时继承多条底层链的算力,从而增强继承链的算力,继承链的数据结构与共识机制都不受底层链的限制,从而大大提高区块链的运行效率。
此外,区块链的继承性能可以保证多条区块链的同时运行,从而保障继承算力链的效率,并且能够“循环利用”了底层链上的工作量,即提高了底层链矿工节点的价值,从而可以在不增加能耗的前提下帮助保护了多条区块链的安全运行,大大提高算力的能源利用率。
应该理解的是,虽然图1和图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1和图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种基于区块链的数据处理装置,包括:币基交易数据添加模块610、区块头添加模块620和目标继承区块确定模块640,其中:
币基交易数据添加模块610,用于接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中;
区块头添加模块620,用于根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中;所述底层备选区块的区块头包括底层难度阈值;
算账处理模块630,用于根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值;
目标继承区块确定模块640,用于根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
本实施例中,所述区块链包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值。
优选地,所述底层链包括多条底层链,所述多条底层链进行算账处理时所使用的挖矿加密算法相同;所述继承链继承所述多条底层链的算力。
优选地,所述目标继承区块确定模块640包含:发送子模块。所述发送子模块用于当所述哈希结果值小于所述继承难度阈值时,将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至所述继承链。所述继承链用于将所述区块头、所述币基交易数据及其对应的交易验证数据写入所述继承备选区块的区块头中,并在所述继承备选区块通过有效验证时将所述继承备选区块作为目标继承区块并进行广播。
优选地,所述底层备选区块的区块头包括底层难度阈值,所述基于区块链的数据处理装置还包括如下模块:
目标底层区块确定模块,用于当所述哈希结果值小于所述底层难度阈值,且所述底层备选区块通过有效验证时,将所述底层备选区块作为目标底层区块并进行广播;
备选区块生成模块,用于生成所述底层链的下一底层备选区块;
备选区块添加模块,用于将所述继承默克尔根哈希值添加到所述底层链的下一底层备选区块的区块头中,并触发算账处理模块630继续进行算账处理。
优选地,上述基于区块链的数据处理装置还包括:随机数修改模块。随机数修改模块,具体用于当所述哈希结果值大于或等于所述底层难度阈值,以及,所述哈希结果值大于或等于所述继承难度阈值时,修改所述底层备选区块的区块头中的随机数值。算账处理模块630具体用于根据修改随机数值后的所述底层备选区块的区块头继续进行算账处理。
优选地,所述继承链具有子链,所述子链包括子链备选区块,所述子链备选区块的区块头包括子链默克尔根哈希值,所述继承链用于将所述子链默克尔根哈希值添加于继承备选区块的区块体的币基交易数据后,根据所述继承备选区块的区块体生成的继承默克尔根哈希值添加到所述继承备选区块的区块头中。
优选地,所述底层链和所述继承链算账处理和记账解耦;所述算账处理和记账解耦为所述底层链用于进行算账处理,所述继承链用于根据所述底层链算账处理所得的哈希结果值进行记账,继承链的共识机制与所述底层链的共识机制不同,所述底层链进行算账处理时使用POW工作量证明机制,所述继承链进行记账时使用记账共识机制,所述记账共识机制包含以下至少一种:所述POW工作量证明机制、POS权益证明机制和DPOS委托权益证明机制。
关于基于区块链的数据处理装置的具体限定可以参见上文中对于基于区块链的数据处理方法的限定,在此不再赘述。上述基于区块链的数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
上述提供的基于区块链的数据处理装置可用于执行上述任意实施例提供的基于区块链的数据处理方法,具备相应的功能和有益效果。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种空气传感器的室内定位方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的基于区块链的数据处理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的基于区块链的数据处理方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于区块链的数据处理方法,其特征在于,所述区块链包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值,所述方法包括:
接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中;
根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中;
根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值;
根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
2.根据权利要求1所述的方法,其特征在于,所述底层链包括多条底层链,所述多条底层链进行算账处理时所使用的挖矿加密算法相同;所述继承链继承所述多条底层链的算力。
3.根据权利要求2所述的方法,其特征在于,所述根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播,包括:
当所述哈希结果值小于所述继承难度阈值时,将所述底层备选区块的区块头,所述币基交易数据及其对应的交易验证数据发送至所述继承链;所述继承链用于将所述区块头、所述币基交易数据及其对应的交易验证数据写入所述继承备选区块的区块头中,并在所述继承备选区块通过有效验证时将所述继承备选区块作为目标继承区块并进行广播。
4.根据权利要求3所述的方法,其特征在于,所述底层备选区块的区块头包括底层难度阈值,所述方法还包括:
当所述哈希结果值小于所述底层难度阈值,且所述底层备选区块通过有效验证时,将所述底层备选区块作为目标底层区块并进行广播;
生成所述底层链的下一底层备选区块;
将所述继承默克尔根哈希值添加到所述底层链的下一底层备选区块的区块头中继续进行算账处理。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述哈希结果值大于或等于所述底层难度阈值,以及,所述哈希结果值大于或等于所述继承难度阈值时,修改所述底层备选区块的区块头中的随机数值;
根据修改随机数值后的所述底层备选区块的区块头继续进行算账处理。
6.根据权利要求1所述的方法,其特征在于,所述继承链具有子链,所述子链包括子链备选区块,所述子链备选区块的区块头包括子链默克尔根哈希值,所述继承链用于将所述子链默克尔根哈希值添加于继承备选区块的区块体的币基交易数据后,根据所述继承备选区块的区块体生成的继承默克尔根哈希值添加到所述继承备选区块的区块头中。
7.根据权利要求1所述的方法,其特征在于,所述底层链和所述继承链算账处理和记账解耦;所述算账处理和记账解耦为所述底层链用于进行算账处理,所述继承链用于根据所述底层链算账处理所得的哈希结果值进行记账,所述继承链的共识机制与所述底层链的共识机制不同,所述底层链进行算账处理时使用POW工作量证明机制,所述继承链进行记账时使用记账共识机制,所述记账共识机制包含以下至少一种:所述POW工作量证明机制、POS权益证明机制和DPOS委托权益证明机制。
8.一种基于区块链的数据处理装置,其特征在于,所述区块链包括底层链和继承链,所述继承链包括继承备选区块,所述继承备选区块的区块头包括继承默克尔根哈希值及继承难度阈值,所述装置包括:
币基交易数据添加模块,用于接收到所述继承备选区块的继承默克尔根哈希值,并将所述继承默克尔根哈希值添加到所述底层链的底层备选区块的区块体的币基交易数据中;
区块头添加模块,用于根据所述币基交易数据生成所述底层链的底层默克尔根哈希值,并将所述底层默克尔根哈希值添加到所述底层备选区块的区块头中;
算账处理模块,用于根据所述底层备选区块的区块头进行算账处理,得到所述底层备选区块对应的哈希结果值;
目标继承区块确定模块,用于根据所述哈希结果值和所述继承难度阈值确定目标继承区块并进行广播。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现1至7中任一项所述的基于区块链的数据处理方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的基于区块链的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010067283.7A CN111275552B (zh) | 2020-01-20 | 2020-01-20 | 基于区块链的数据处理方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010067283.7A CN111275552B (zh) | 2020-01-20 | 2020-01-20 | 基于区块链的数据处理方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111275552A true CN111275552A (zh) | 2020-06-12 |
CN111275552B CN111275552B (zh) | 2023-09-08 |
Family
ID=71001147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010067283.7A Active CN111275552B (zh) | 2020-01-20 | 2020-01-20 | 基于区块链的数据处理方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111275552B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114499872A (zh) * | 2021-12-24 | 2022-05-13 | 山东浪潮工业互联网产业股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109409889A (zh) * | 2018-11-13 | 2019-03-01 | 杭州秘猿科技有限公司 | 一种区块链中的区块确定方法、装置及电子设备 |
CN109600230A (zh) * | 2018-11-27 | 2019-04-09 | 北京零和商务有限公司 | 一种区块链共识机制实现***及其实现方法 |
CN109766673A (zh) * | 2019-01-18 | 2019-05-17 | 四川大学 | 一种联盟式音视频版权区块链***及音视频版权上链方法 |
-
2020
- 2020-01-20 CN CN202010067283.7A patent/CN111275552B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109409889A (zh) * | 2018-11-13 | 2019-03-01 | 杭州秘猿科技有限公司 | 一种区块链中的区块确定方法、装置及电子设备 |
CN109600230A (zh) * | 2018-11-27 | 2019-04-09 | 北京零和商务有限公司 | 一种区块链共识机制实现***及其实现方法 |
CN109766673A (zh) * | 2019-01-18 | 2019-05-17 | 四川大学 | 一种联盟式音视频版权区块链***及音视频版权上链方法 |
Non-Patent Citations (2)
Title |
---|
刘家稷: "基于区块链技术的溯源***" * |
徐宇芹: "主从多链模型下的区块链共识性能研究" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114499872A (zh) * | 2021-12-24 | 2022-05-13 | 山东浪潮工业互联网产业股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
CN114499872B (zh) * | 2021-12-24 | 2024-05-28 | 浪潮工业互联网股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111275552B (zh) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230131970A1 (en) | Computer-implemented systems and methods for authorising blockchain transactions with low-entropy passwords | |
CN108694665B (zh) | 区块链管理装置、数据处理***及即时交易处理方法 | |
Chen et al. | A survey on blockchain systems: Attacks, defenses, and privacy preservation | |
JP7208930B2 (ja) | 制御された暗号化秘密鍵の開放 | |
WO2018189658A1 (en) | Secure transfer between blockchains | |
TW201837805A (zh) | 基於未判定資料保證區塊鏈交易的安全 | |
Zhang et al. | Blockchain-based two-party fair contract signing scheme | |
CN110084596B (zh) | 一种处理区块链混合共识的方法和装置 | |
US20200313855A1 (en) | Consensus method for blockchain via virtual machine based hybrid delegated proof of stake and proof of work (vdposw) | |
Li et al. | Blockchain-based searchable encryption with efficient result verification and fair payment | |
CN108399533B (zh) | 交易处理方法、装置、计算机设备和存储介质 | |
Fartitchou et al. | Security on blockchain technology | |
CN111275552B (zh) | 基于区块链的数据处理方法、装置和计算机设备 | |
Liu et al. | Data integrity audit scheme based on blockchain expansion technology | |
CN111259370A (zh) | 一种fpga程序安全验证方法、***、终端及存储介质 | |
CN112184226A (zh) | 一种区块链动态分片方法及*** | |
Li et al. | Decentralized IoT resource monitoring and scheduling framework based on blockchain | |
Baniata et al. | Approaches to overpower proof-of-work blockchains despite minority | |
Cao et al. | A high efficiency network using DAG and consensus in blockchain | |
FAN et al. | Cooperative evolution method for blockchain mining pool based on adaptive zero-determinant strategy | |
Mahatungade et al. | Performance analysis of Reinforcement Learning for Miner Selection in Blockchain | |
Huang et al. | Building blockchains with secure and practical public-key cryptographic algorithms: Background, motivations and example | |
CN118264387B (zh) | 一种用于内网环境的共识确定方法及*** | |
Wang et al. | A publicly verifiable outsourcing matrix computation scheme based on smart contracts | |
Baniata et al. | Bitcoin Revisited: Formalization, Benchmarking, and Open Security Issues |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220324 Address after: Room 201, No.1 Hanjing Road, Tianhe District, Guangzhou City, Guangdong Province Applicant after: GUANGZHOU YAME INFORMATION TECHNOLOGY Co.,Ltd. Applicant after: Yamei Zhilian Data Technology Co.,Ltd. Address before: Room 201, No.1 Hanjing Road, Tianhe District, Guangzhou City, Guangdong Province Applicant before: GUANGZHOU YAME INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |