CN111539819A - 一种离线权益证明方法及系统 - Google Patents
一种离线权益证明方法及系统 Download PDFInfo
- Publication number
- CN111539819A CN111539819A CN202010245065.8A CN202010245065A CN111539819A CN 111539819 A CN111539819 A CN 111539819A CN 202010245065 A CN202010245065 A CN 202010245065A CN 111539819 A CN111539819 A CN 111539819A
- Authority
- CN
- China
- Prior art keywords
- agent
- contract
- block
- proxy
- offline
- 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.)
- Pending
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
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供一种离线权益证明方法及系统,所述离线权益证明方法基于智能合约实现,所述智能合约为代理合约,所述代理合约包括与委托方相应的代理证明,所述代理证明用于证明所述离线权益证明的委托关系,本方案通过智能合约建立委托地址(或智能合约地址)和代理地址的离线Staking代理关系,并通过全网共识保证智能合约和Staking奖励分配的正确运行。
Description
技术领域
本发明实施例涉及区块链技术领域,具体涉及一种离线权益证明方法及系统。
背景技术
区块链系统中需要一套机制来证明,是由谁取得一个区块链的打包权(或称记账权),并且可以获得打包这一区块的奖励;又或者是谁意图进行危害,就会获得一定的惩罚,这就是区块链的共识机制。权益证明机制(Proof of Stake,简称PoS)是公有链最常用的共识机制之一。
权益证明机制的基本原理是根据共识参与者的权益(Stake,即“持币数量”或“币龄”),结合特定的随机算法选择出下一个新区块的生产者。区块生产者可以获得区块奖励。一般而言,持币数量越多,则所需要计算的难度越低,被选中成为区块生产者的概率越大。
权益证明共识机制要求参与共识的持币者保持在线,负责打包交易信息生成新区块、维护网络运行、参与社区治理。作为奖励,节点可以获得系统增发的代币,这种收益的方式就是Staking。持有代币和参与新区块生成这两个行为在PoS区块链中深度绑定,其设计初衷是为了网络安全性,因为Staking的过程需要持有代币并用代币参与新区块的生成,其参与度越高、币的分布越分散,说明持币用户对共识参与度越高,网络去中心化程度越高,因此不易遭受攻击,网络也相应越安全。如果只持有代币,但代币本身不参与区块生成过程,则这种“Staking”机制只是一种分红,无法保证网络的安全性。
在现实中,大部分普通持币者无法保证硬件设备始终在线。即使可以保持钱包在线,在线钱包容易受到黑客攻击,从而影响网络共识或导致币的丢失,这种安全隐患使部分持币大户不愿参与Staking。因此,在实际采用权益证明机制的网络中,参与权益证明共识的持币者比例往往较低。由于大部分持币者都无法进行Staking,系统产生的代币将被少数持币者获得,网络的去中心化程度也较低。
由于在线权益证明机制存在上述弊端,业内逐渐出现了各种离线权益证明机制(以下简称离线PoS),以满足大部分普通持币者在离线状态下参与PoS共识、获得区块奖励的需求。目前,行业内的离线PoS机制主要分为以下几种类型:
1.代币所有权转移的离线PoS
基本原理是普通持币者将持有的代币转移给代理方,再由代理方进行在线Staking,获取的收益按照事先约定分发给用户。用户一般需要向代理方支持手续费。大部分中心化PoS矿池、交易所的Staking服务等,都属于这种离线PoS。
该机制本质上是用户把币的所有权转移给他人,用户丧失了对自己代币的控制权,也无法直接参与Staking,资金的安全性和收益的获取都完全依靠受委托方的信用背书,有很大的资金安全隐患和网络中心化风险。
2.代币所有权不需要转移的离线PoS
主要有两种模式:
a.普通持币者只有投票权
以EOS项目采用的DPoS(Delegated-Proof-of-Stake,代理权益证明)共识机制为代表。其基本原理是普通持币者根据持币量投相应票数给超级节点,持币者仍有币的使用权。成为超级节点的门槛较高,需要有足够好的硬件和较好的声誉,普通用户很难成为超级节点。获得票数最多的若干超级节点将获得生成新区块并获得奖励的权利,被选中成为新区块生成者的概率和获得的票数成正比。通常超级节点会承诺分配一部分利益给为他们投票的普通持币者,但这种承诺并不具有任何保障。普通持币者只进行投票,无法直接参与共识,也无法直接获得奖励。DPoS机制使网络趋向中心化,大部分的区块奖励都由少数节点获得,不利于网络的安全性。
b.普通用户把记账权委托给代理方
以Tezos项目为代表的去中心化代理PoS机制,其基本原理是持币者将持有币对应的记账权委托给代理方(在Tezos中的代理方称为Baker),由代理方参与PoS共识,持币者本身仍然拥有币的控制权。代理方的Stake权重为自身持有的币与被委托的记账权的总和。在代理方获得区块奖励后,将按照事先约定的比例收取一部分手续费,并把剩余的奖励发送给委托方。只有被委托的记账权达到一定阈值(约10000Tezos代币),并抵押一部分代币时,代理方才具有生成区块的资格。当单个委托方的委托金额达不到阈值时,需要等待其他委托方继续委托,直到达到阈值。在代理方获取奖励后,将根据委托比例把奖励发给不同的委托方。此时,区块奖励由多个委托方分享。
Tezos的离线PoS共识机制使大多数普通持币者都可以参与PoS共识、获取奖励,且持币者始终拥有代币的控制权,在一定程度上保证了网络的去中心化和持币者自身资金的安全性。Tezos的离线PoS技术方案在行业内获得较多认可。
3.其他类似离线PoS机制
行业内还有其他一些类似离线PoS的Staking机制。如Algorand项目采用的PoS共识,由于节点可以预先知道参与共识的顺序,所以只需要在轮到自己的时候在线,其余时间保持离线。但这种机制本质上仍要求节点在线才能参与共识。
ThunderCore项目推出的Staking Pool即权益池,用户可以将代币冻结到权益池中,根据冻结的期限获得浮动利率的返现奖励。权益池服务中所有作为奖励分配给参与者的代币,并不是增发的区块奖励,而是预挖的。其本质上是持有代币的分红机制,并不是区块链共识机制的一部分,锁定的代币本身并不能参与共识,也无法保证网络的安全性。
智能合约(smart contract)是能够在区块链上自动执行的计算程序,执行结果由全网达成统一共识,大多数公链项目都支持智能合约。智能合约本身可以作为代币的接收方,持有代币。例如,以基于以太坊搭建的MakerDao智能合约,用户可以把以太坊代币ETH转入该智能合约,获得稳定币DAO。类似情况下,智能合约中会锁定大量代币。但目前在所有支持智能合约的PoS区块链中,由于智能合约中锁定的代币无法确定所有权,被锁定在智能合约中的代币通常无法用于Staking,因此也无法获得收益。
因此,如何提供一种离线权益证明方案,能够有效保护离线用户的权益,合理地对Staking奖励的收益进行分配,是本领域技术人员亟待解决的技术问题。
发明内容
为此,本发明实施例提供一种离线权益证明方法及系统,能够有效保护离线用户的权益,合理地对Staking奖励的收益进行分配。
为了实现上述目的,本发明实施例提供如下技术方案:
第一方面,本发明实施例提供一种离线权益证明方法,所述离线权益证明方法基于智能合约实现,所述智能合约为代理合约,所述代理合约包括与委托方相应的代理证明,所述代理证明用于证明所述离线权益证明的委托关系。
优选地,所述离线权益证明方法包括委托方和代理方,所述委托方可以为持币用户或智能合约。
优选地,包括:
委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
优选地,当所述委托方为持币用户时,所述代理合约包括以下中的一项或多项:
委托方地址、对应的代理方地址、委托方愿意支付的手续费率、委托时限、委托方和代理方达成的条件、委托方代理证明;所述委托方代理证明是委托方用其私钥对所述代理合约中信息的数字签名,用于共识验证。
优选地,当所述委托方为智能合约时,所述代理合约包括以下中的一项或多项:代理方地址、智能合约承诺的分红规则、智能合约中的币可用于Staking的条件、智能合约规定的代理条件、智能合约代理证明;所述智能合约代理证明是用智能合约特征信息对所述代理合约中信息的数字签名,用于共识验证。
优选地,所述代理方按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块,包括:根据所述代理合约创建CoinStake交易。
优选地,所述代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块,包括:
在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
优选地,所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块,包括:
获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
第二方面,本发明实施例提供一种离线权益证明系统,包括:
合约创建模块,用于委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
权益代理模块,用于代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
奖励验证模块,用于所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
优选地,所述权益代理模块包括:
合约监听单元,用于在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
UTXO获取单元,用于通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
UTXO筛选单元,用于代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
区块奖励单元,用于利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
优选地,所述奖励验证模块包括:
区块判断单元,用于获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
地址获取单元,用于若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
代理验证单元,用于构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
奖励验证单元,用于若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
区块确定单元,用于如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
第三方面,本发明实施例提供一种离线权益证明设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述第一方面任一种所述离线权益证明方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面任一种所述离线权益证明方法的步骤。
本发明实施例提供一种离线权益证明方法,所述离线权益证明方法基于智能合约实现,所述智能合约为代理合约,所述代理合约包括与委托方相应的代理证明,所述代理证明用于证明所述离线权益证明的委托关系,本方案通过智能合约建立委托地址(或智能合约地址)和代理地址的离线Staking代理关系,并通过全网共识保证智能合约和Staking奖励分配的正确运行。
本发明实施例提供一种离线权益证明方法及系统具有相同的上述有益效果,在此不再一一赘述。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
图1为本发明实施例提供的一种离线权益证明方法的流程图;
图2为本发明实施例提供的一种离线权益证明方法的委托方发起代理请求的流程图;
图3为本发明实施例提供的一种离线权益证明方法的代理方代理流程图;
图4为本发明实施例提供的一种离线权益证明方法的代理方代理简图;
图5为本发明实施例提供的一种离线权益证明方法的共识验证流程图;
图6为本发明实施例提供的一种离线权益证明方法的共识验证线框图;
图7为本发明实施例提供的一种离线权益证明系统的组成结构示意图;
图8为本发明实施例提供的一种离线权益证明系统的权益代理模块组成结构示意图;
图9为本发明实施例提供的一种离线权益证明系统的奖励验证模块组成结构示意图;
图10为本发明一种具体实施方式提供的离线权益证明设备的结构示意图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1、图2、图3,图1为本发明实施例提供的一种离线权益证明方法的流程图;图2为本发明实施例提供的一种离线权益证明方法的委托方发起代理请求的流程图;图3为本发明实施例提供的一种离线权益证明方法的代理方代理流程图。
在本发明一种实施方式中,本发明实施例提供一种离线权益证明方法,所述离线权益证明方法基于智能合约实现,所述智能合约为代理合约,所述代理合约包括与委托方相应的代理证明,所述代理证明用于证明所述离线权益证明的委托关系。所述离线权益证明方法包括委托方和代理方,所述委托方可以为持币用户或智能合约。
实践时,具体的该方法包括:
步骤S11:委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
首先,在本实施例中,委托方为了使得自己在离线时能够进行参与到Staking中,可以进行代理合约的创建。
本发实施例中的代理合约可以是用于规定Staking代理规则的智能合约,部署在区块链上。任何持币者都可以发布代理合约,链上可以同时存在任意多个代理合约,代理合约内部的具体规则可以编程,由发布者决定。代理合约必须包含相应的代理证明(proof ofdelegation,简称PoD),用于共识验证。代理合约部署到区块链上获得全网共识后即可生效。也就是说,代理合约发布到区块链,并且得到了区块链上的其他节点的承认。
在一种实施例中,如果委托方为普通持币用户,那么一个简单的用于登记代理信息的智能合约可以存储如下信息:<委托方地址>、<对应的代理方地址>、<委托方愿意支付的手续费率>、<委托时限>、<委托方和代理方达成的其他任何条件>、<委托方代理证明>。其中,委托方代理证明是委托方用其私钥对上述所有信息的数字签名,用于共识验证。
又例如,如果委托方为智能合约,那么一个可用于智能合约锁定的代币进行Staking的代理合约可以包含如下数据结构:<代理方地址>、<智能合约承诺的分红规则>、<智能合约中的币可用于Staking的条件>、<智能合约规定的其他任何代理条件>、<智能合约代理证明>。
该代理合约没有委托方,由智能合约将其本身锁定的代币委托给代理方进行Staking。开发者可以在部署任意功能的智能合约时,将上述代理合约内容附加到原始智能合约中,并部署到区块链上,则以后所有被锁定到智能合约中的币都可以用于Staking。其中,智能合约代理证明是用智能合约特征信息(如智能合约地址、智能合约创建者等)对代理信息的数字签名,用于共识验证。
也就是说,优选地,当所述委托方为委托方时,所述代理合约包括:委托方地址、对应的代理方地址、委托方愿意支付的手续费率、委托时限、委托方和代理方达成的条件、委托方代理证明;当所述委托方为智能合约时,所述代理合约包括:代理方地址、智能合约承诺的分红规则、智能合约中的币可用于Staking的条件、智能合约规定的代理条件、智能合约代理证明。
在一种实施例中,当委托方需要发起代理请求时,具体步骤如下:
1.委托方先确定要委托的地址;
2.委托方通过任意渠道了解代理方信息,并选择要代理的地址;
3.通过数字签名函数signmessage创建代理证明PoD:
PoD=signmessage(“委托方地址”“代理方地址”“承诺的手续费率”“其他条件”);
4.发送一笔交易调用代理合约,登记代理信息:
addDelegation(“委托方地址”“代理方地址”“承诺的手续费率”“其他条件”,“代理证明PoD”)
5.若需要更新已存在的代理合约,可以调用以下函数进行更新:
updateDelegation(“委托方地址”“代理方地址”“承诺的手续费率”“其他条件”,“代理证明PoD”)
6.委托方可以通过区块链客户端提供的UTXO管理工具(splitutxosforaddress)对委托地址的UTXO进行自动划分,提高Staking成功的概率。
对于智能合约锁定的代币的离线Staking,可以由智能合约创建者作为委托方发起上述代理请求过程。
步骤S12:代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
代理方可以选择接受代理申请并开始进行代理Staking,具体步骤如下:
1.代理方首先需要在区块链上监听与代理合约相关的事件,通过调用区块链客户端提供的getdelegationsforstaker命令可以自动监听和代理方相关的所有事件,并返回可供选择的委托地址列表;
2.通过调用客户端提供的getaddressutxos命令可以获取1中对应委托地址的所有UTXO;
3.代理方可以自行对委托方进行筛选,只接收符合自己要求的代理请求(如对最低费率,最低UTXO余额的要求等),获取用于Staking的代理UTXO列表;
4.用上述UTXO列表逐个尝试创建新区块。
步骤S13:所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
在代理方进行代理后,会产生新区块,并且伴随有奖励输出值的产生,而该奖励输出值是根据代理合约中约定的预设区块奖励分配方式产生的,代理方并不能够随意更改,如果随意更改,那么在验证时就不能通过,从而不会接受新区块。
进一步地,为了便于代理合约的管理,在一种实施例中,代理合约还包括:
代理信息添加接口,用于添加代理合约;
代理信息更新接口,用于更新代理合约;
代理信息删除接口,用于删除代理合约;
代理证明获取接口,用于获取地址对应的代理证明;
代理证明验证接口,用于验证委托方提供的对应地址的代理证明是否有效。
具体地,代理合约可以包含可供调用的接口函数,典型的接口函数如下:
addDelegation():用于添加代理信息;
updateDelegation():用于更新代理信息;
removeDelegation():删除代理信息;
上述代理合约内部至少还应包含用于验证代理证明的函数:
delegations(address):用于获取地址对应的代理证明;
verifyPoD(address):用于验证委托方提供的对应地址的代理证明是否有效;
代理合约的每个接口函数的调用都会在区块链上触发一个事件(Event),供区块链网络中的所有人监听。例如,上述合约中可能触发的事件包括:
event(AddDelegation):新的代理信息被添加后自动触发;
event(UpdateDeletgation):已存在的代理信息被更新后自动触发;
event(RemoveDelegation):已存在的代理信息被删除后自动触发;
代理合约的具体规则不限于上述信息,可以是由用户和开发者自定义的任意逻辑,但必须根据规则提供相应的的代理证明。
代理合约部署到区块链上后即开始生效,部署的具体方法如下:1.编写代理合约,主要包含上述信息和函数;2.发送一笔创建代理合约交易到链上,获得区块确认后即部署成功。3.若需要更新代理合约,则按上述步骤重新发布新合约,后续用户直接使用最新合约。
代理合约可以由任何人或团队发布,委托方或代理方可以自己部署代理合约,或者使用其他人开发的代理合约。
本发明实施例所述的离线PoS系统由代理合约创建、权益代理以及共识验证等过程组成,可以部署到已有的任意采用PoS共识的区块链。这里以基于UTXO(UnspentTransaction Output,未消费的交易输出)模型和兼容智能合约的公有链为例。本发明也可应用于其他区块链,如基于账户模型的区块链,原理类似。也就是说,UTXO模型和账户模型,或者是其他的模型并不限制本发明实施例的保护范围,本实施例只是拿UTXO举例说明,并不做限定。
请参考图4,图4为本发明实施例提供的一种离线权益证明方法的代理方代理简图。
进一步地,为了代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块,包括:
步骤S21:在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
步骤S22:通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
步骤S23:代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
步骤S24:利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
具体利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值的步骤如下:
a.获取新的UTXO,记为UTXO(1)其对应地址记为地址(1),其代理证明记为PoD(1);
b.代理方调用代理合约中的verifyPoD(地址(1))函数验证代理证明是否正确,若不正确,则返回步骤a继续尝试其他UTXO;若正确,则继续;
c.用UTXO(1)作为CoinStake交易的输入;
d.把代理证明PoD(1)写入新区块的区块头(block header)对应的proofOfDelegation字段中;
e.代理方需要提供一个自己的UTXO一起作为CoinStake交易的另一输入,防止PoS系统中最常见的Nothing-at-stake问题;
f.从代理合约中获取手续费率,记为f%,按照费率构造支付给代理方的UTXO,即(区块奖励+区块手续费)*f%作为CoinStake交易的第一个输出;
g.按照费率构造支付给委托方的Staking奖励,即(区块奖励+区块手续费)*(1-f%),作为CoinStake的第二个交易输出;
h.构造新区块,验证新区块哈希值是否满足共识要求,若满足则继续;若不满足则返回步骤a继续尝试;
i.提交新区块,返回步骤a。
上述步骤仅为本发明的一个实施例,对于其中手续费率以及Staking奖励作为CoinStake的第几个交易输出并没有强制要求,例如也可以将Staking奖励作为第一个交易输出,手续费率作为第二个交易输出。此外,对于交易手续费,本发明也没有强制要求,该实施例中举例手续费可以是区块奖励+区块手续费的一定比例,实际中,手续费也可以是固定值或其他设定值。对于其他参数的设置,方法类似,本专利没有强制限定。也就是说,对于代理合约中的预设区块奖励分配方式可以是任意委托方和代理方能够共同接受的方式,本实施例只是举例说明,对如何进行具体的区块奖励分配并不做限定。
请参考图5、图6,图5为本发明实施例提供的一种离线权益证明方法的共识验证流程图;图6为本发明实施例提供的一种离线权益证明方法的共识验证线框图。
具体地,为了区块链上的共识验证,所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块,具体可以进行以下步骤:
步骤S31:获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
步骤S32:若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
步骤S33:构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
步骤S34:若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
步骤S35:如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
也就是说,对于新区块来说,本发明实施例产生的区块具有与其他的区块不同的区块头,具有特有的标识。从而在检测到本发明实施例的新区块时可以进行与本申请相适应的验证方法,而如果是普通的新区块,则采用常规PoS验证流程。
当然,区块链中的所有参与者都可以对上述新区块进行验证,以达成全网共识。除标准的权益证明共识验证外,本发明还需要在共识验证阶段增加以下验证步骤:
1.获取新区块的区块头,根据区块头中的proofOfDelegation字段判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;若是代理Staking区块,则继续;
2.从新区块的区块头的prevoutStake字段获取用于Staking的币的地址;
3.从新区块的签名中恢复区块创建者的地址;
4.构造出代理证明PoD,并调用代理合约的verifyPoD()函数进行验证;若验证失败,则拒绝区块头;若验证成功,则继续;
5.继续获取新区块的交易数据,验证其中的CoinStake交易:
a.第一个输入必须为委托地址的UTXO;
b.第二个输入必须为代理方的UTXO;
c.第一个输出的接收方必须为代理地址;
d.第二个输出的接收方必须为委托方地址(或用于Staking的智能合约的地址);
6.用CoinStake交易的输入和输出构造代理证明PoD,并调用代理合约的verifyPoD()函数,验证代理证明的正确性;若验证失败,则拒绝新区块;若成功,则新区块验证通过。
上述验证过程中的步骤5的验证方法是针对前述实施例中的代理方代理Staking流程中设定的CoinStake构造方法,若CoinStake使用其他的构造方法,那么相应的验证CoinStake交易的方法也需要对应改变。
本发明实施例提供一种离线权益证明方法,所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。本方案通过在代理合约中预设区块奖励分配相关信息,新区块创建以及区块验证过程中确保CoinStake交易和代理合约中信息相匹配的方式,来有效保护离线用户的权益,合理地对Staking奖励的收益进行分配,防止代理方滥用权力。
本发明实施例设计一种基于智能合约的离线权益证明共识机制,与现有离线权益证明共识机制相比,其优势在于:
1.由于委托方只是通过代理合约提供了代理Staking的证明,并没有转移代币,因此代币的所有权和使用权始终掌握在用户手中;
2.用户委托的代币可以直接用于创建新区块,参与PoS共识,并直接获得奖励,实现离线Staking;
3.Staking奖励分配规则由代理合约决定,并通过底层共识验证步骤保障,无需人为分配;
4.智能合约中锁定的代币也可以用于Staking。某些情况下,用户不得不把代币锁定在某一合约中,本发明可以让用户在代币锁定情况下仍能获取Staking收益。
请参考图7、图8、图9,图7为本发明实施例提供的一种离线权益证明系统的组成结构示意图;图8为本发明实施例提供的一种离线权益证明系统的权益代理模块组成结构示意图;图9为本发明实施例提供的一种离线权益证明系统的奖励验证模块组成结构示意图。
在本发明又一具体实施方式中,本发明实施例提供一种离线权益证明系统700,包括:
合约创建模块710,用于委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
权益代理模块720,用于代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
奖励验证模块730,用于所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
优选地,所述权益代理模块720包括:
合约监听单元721,用于在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
UTXO获取单元722,用于通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
UTXO筛选单元723,用于代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
区块奖励单元724,用于利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
优选地,所述奖励验证模块730包括:
区块判断单元731,用于获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
地址获取单元732,用于若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
代理验证单元733,用于构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
奖励验证单元734,用于若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
区块确定单元735,用于如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
请参考图10,图10为本发明一种具体实施方式提供的离线权益证明设备的结构示意图。
本发明实施例提供一种离线权益证明设备1000,包括:
存储器1010,用于存储计算机程序;
处理器1020,用于执行所述计算机程序时实现如上述任一种实施例所述的离线权益证明方法的步骤。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种实施例所述的离线权益证明方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种离线权益证明方法,其特征在于,所述离线权益证明方法基于智能合约实现,所述智能合约为代理合约,所述代理合约包括与委托方相应的代理证明,所述代理证明用于证明所述离线权益证明的委托关系。
2.根据权利要求1所述的离线权益证明方法,其特征在于,
所述离线权益证明方法包括委托方和代理方,所述委托方可以为持币用户或智能合约。
3.根据权利要求1所述的离线权益证明方法,其特征在于,包括:
委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
4.根据权利要求1所述的离线权益证明方法,其特征在于,
当所述委托方为持币用户时,所述代理合约包括以下中的一项或多项:
委托方地址、对应的代理方地址、委托方愿意支付的手续费率、委托时限、委托方和代理方达成的条件、委托方代理证明;所述委托方代理证明是委托方用其私钥对所述代理合约中信息的数字签名,用于共识验证。
5.根据权利要求1所述的离线权益证明方法,其特征在于:
当所述委托方为智能合约时,所述代理合约包括以下中的一项或多项:代理方地址、智能合约承诺的分红规则、智能合约中的币可用于Staking的条件、智能合约规定的代理条件、智能合约代理证明;所述智能合约代理证明是用智能合约特征信息对所述代理合约中信息的数字签名,用于共识验证。
6.根据权利要求1所述的离线权益证明方法,其特征在于:
所述代理方按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块,包括:根据所述代理合约创建CoinStake交易。
7.根据权利要求3至6任一项所述的离线权益证明方法,其特征在于,
所述代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块,包括:
在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
8.根据权利要求3所述的离线权益证明方法,其特征在于,
所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块,包括:
获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
9.一种离线权益证明系统,其特征在于,包括:
合约创建模块,用于委托方创建代理合约并将所述代理合约发布到区块链上;其中所述代理合约包括:代理证明、委托方相关信息、代理方相关信息、预设区块奖励分配相关信息;
权益代理模块,用于代理方获取所述代理合约,并决定是否接受所述委托,如果接受委托则按照所述代理合约开始代理Staking,创建符合所述代理合约规定的新区块;
奖励验证模块,用于所述区块链中的节点在验证区块时,验证所述创建的新区块是否符合所述代理合约中的相关信息,得到验证结果;根据所述验证结果确定是否接受所述创建的新区块。
10.根据权利要求9所述的离线权益证明系统,其特征在于,
所述权益代理模块包括:
合约监听单元,用于在区块链上监听与代理方相关的代理合约,并返回可供选择的委托地址列表;
UTXO获取单元,用于通过调用客户端命令获取委托地址列表中对应委托地址的所有UTXO;
UTXO筛选单元,用于代理方对委托方进行筛选,只接收符合自己要求的代理请求,获取用于Staking的代理UTXO列表;
区块奖励单元,用于利用所述UTXO列表逐个尝试创建新区块,并得到委托方、代理方各自对应的新区块的奖励输出值。
11.根据权利要求9所述的离线权益证明系统,其特征在于,
所述奖励验证模块包括:
区块判断单元,用于获取新区块的区块头,并判断该区块是否为通过代理Staking产生的区块;若不是,则采用标准PoS验证流程进行验证;
地址获取单元,用于若是代理Staking区块,则从新区块的区块头的获取用于Staking的币的地址,并从新区块的签名中恢复区块创建者的地址;
代理验证单元,用于构造出代理证明PoD,并调用代理合约的验证函数进行验证;若验证失败,则拒绝区块头;
奖励验证单元,用于若验证成功,则继续获取新区块的交易数据,验证委托方、代理方各自对应的奖励输出值是否符合所述代理合约;
区块确定单元,用于如果委托方、代理方各自对应的奖励输出值符合所述代理合约,则接受所述新区块,并按照所述奖励输出值进行区块奖励分配;如果委托方、代理方各自对应的奖励输出值不符合所述代理合约,则拒绝所述新区块。
12.一种离线权益证明设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述离线权益证明方法的步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述离线权益证明方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010245065.8A CN111539819A (zh) | 2020-03-31 | 2020-03-31 | 一种离线权益证明方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010245065.8A CN111539819A (zh) | 2020-03-31 | 2020-03-31 | 一种离线权益证明方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111539819A true CN111539819A (zh) | 2020-08-14 |
Family
ID=71952211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010245065.8A Pending CN111539819A (zh) | 2020-03-31 | 2020-03-31 | 一种离线权益证明方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111539819A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960384A (zh) * | 2017-04-09 | 2017-07-18 | 赖灿 | 一种知识货币的生产和运作方法 |
CN108470276A (zh) * | 2018-03-12 | 2018-08-31 | 成都零光量子科技有限公司 | 一种采用代理记账的区块链共识方法 |
CN110348248A (zh) * | 2019-07-16 | 2019-10-18 | 山西智博睿星科技有限公司 | 一种区块链技术中分布式记账权生成方法 |
CN110535833A (zh) * | 2019-08-07 | 2019-12-03 | 中国石油大学(北京) | 一种基于区块链的数据共享控制方法 |
CN110659987A (zh) * | 2018-06-28 | 2020-01-07 | 厦门本能管家科技有限公司 | 一种基于区块链的离线交易方法及其系统 |
-
2020
- 2020-03-31 CN CN202010245065.8A patent/CN111539819A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960384A (zh) * | 2017-04-09 | 2017-07-18 | 赖灿 | 一种知识货币的生产和运作方法 |
CN108470276A (zh) * | 2018-03-12 | 2018-08-31 | 成都零光量子科技有限公司 | 一种采用代理记账的区块链共识方法 |
CN110659987A (zh) * | 2018-06-28 | 2020-01-07 | 厦门本能管家科技有限公司 | 一种基于区块链的离线交易方法及其系统 |
CN110348248A (zh) * | 2019-07-16 | 2019-10-18 | 山西智博睿星科技有限公司 | 一种区块链技术中分布式记账权生成方法 |
CN110535833A (zh) * | 2019-08-07 | 2019-12-03 | 中国石油大学(北京) | 一种基于区块链的数据共享控制方法 |
Non-Patent Citations (3)
Title |
---|
HTTP://WWW.BTC315.COM/ARTICLE-3392-1.HTML: "Qtum量子链将推出基于智能合约的离线Staking机制", 《BTC315.COM》 * |
HTTPS://WWW.BITCAT365.COM/TUTORIAL/HOW-TO-DELEGATE-FOR-BAKER: "如何将Tezos委托给面包师烘焙", 《BIT CAT》 * |
区块链卡咩: "Tezos里,委托烘焙这门生意经", 《微信公众平台》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11893626B2 (en) | Method for creating commodity assets from unrefined commodity reserves utilizing blockchain and distributed ledger technology | |
JP7128111B2 (ja) | ブロックチェーンを介して資産関連活動を制御するシステム及び方法 | |
US20200334674A1 (en) | Systems and methods for blockchain administration | |
CN108885761B (zh) | 用于区块链上的安全点对点通信的方法 | |
CN110163590B (zh) | 基于区块链的缴费代扣方法及装置、电子设备、存储介质 | |
KR102250810B1 (ko) | 트랜잭션 증명 방식의 합의 알고리즘이 적용된 블록체인 시스템 및 그 방법 | |
Buterin | Ethereum white paper | |
Buterin | A next-generation smart contract and decentralized application platform | |
JP2024042037A (ja) | ブロックチェーン上で匿名で保持されるトークンに関連付けられた交換を指示する方法及びシステム | |
CN110147990B (zh) | 基于区块链的缴费代扣签约方法及装置、电子设备 | |
JP2020523677A (ja) | バリデータノードにより提供されるブロックチェーントランザクションをマイニングする方法及びシステム | |
CN112200571B (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
Eklund et al. | Factors that impact blockchain scalability | |
CN110008716B (zh) | 区块链交易方法及装置、电子设备、存储介质 | |
CN110033370B (zh) | 账户创建方法及装置、电子设备、存储介质 | |
US11503036B2 (en) | Methods of electing leader nodes in a blockchain network using a role-based consensus protocol | |
CN110599348B (zh) | 股权激励的方法、装置、设备及存储介质 | |
CN112200568B (zh) | 基于区块链的账户创建方法、装置及电子设备 | |
CN112200567A (zh) | 基于区块链的资源管理方法、装置及电子设备 | |
CN109726249B (zh) | 一种去中心化芯片研发交易数据存储方法及系统 | |
CN110599144A (zh) | 一种区块链节点的入网方法以及装置 | |
CN112200572A (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
Hrga et al. | Technical analysis of an initial coin offering | |
Saad et al. | Decentralized directed acyclic graph based dlt network | |
CN110009492B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200814 |
|
RJ01 | Rejection of invention patent application after publication |