一种基于许可链的资源配额管理方法技术

技术编号:15724274 阅读:82 留言:0更新日期:2017-06-29 09:47
本发明专利技术公开了一种基于许可链的资源配额管理方法,该方法为许可链设置配额管理系统,增强了管理员对系统资源的分配能力,不再需要设定代币系统与手续费系统,简化了区块链资源的分配和节点激励机制,同时可以为不同用户设置不同的配额和周期,满足不同类型用户的不同需求。通过设置周期性的用户配额,可以让用户灵活管理自己交易的频率和峰值,避免直接对每个块的配额进行控制,粒度过细。

【技术实现步骤摘要】
一种基于许可链的资源配额管理方法
本专利技术涉及一种基于许可链的资源配额管理方法,在现有许可链协议的基础之上,添加了资源配额管理方法,使管理员可以对许可链的计算资源、存储资源等进行合理分配。
技术介绍
区块链是一种新的分布式技术,按照访问和管理权限可以分为公有链和许可链。公有链是指没有准入机制,全世界任何人都可以根据公开协议,生成合法账户,参与读取,发送交易,交易确认,甚至参与共识的区块链。许可链是指节点和用户有准入机制的区块链,由若干个机构组成共同体,每个机构都运行着一个节点,为了使每个区块生效需要获得其中多数机构的确认。区块链上用户的身份也经过审核,大多为实名制,与现实世界的身份关系对应。由于所有节点均保存全局账本的同一个副本,消耗同样的计算资源和存储资源,然而各节点的机器资源有限,所以需要对用户对资源的消耗进行合理分配。公有链用户如果需要进行转账或者部署合约等写入操作,需要首先购买一定的代币,支付一定数量的以该代币计价的手续费后,由节点打包入块,手续费也归节点所有。但在联盟链严格控制准入的情况下,一般没有代币系统,而且代币手续费模式也很容易被用户滥用,造成区块链阻塞等问题,使管理员对许可链的控制程度降低。
技术实现思路
本专利技术是目的是针对现有技术的不足,提供一种基于许可链的资源配额管理方法。本专利技术的目的是通过以下技术方案实现的:一种基于许可链的资源配额管理方法,该方法为:(1)管理员生成自己的账户,并把初始“管理员地址”和“块资源限额”置入创世块中。在创世块中构建“用户资源限额”变量UsersQuotaLimit,结构为map(用户地址=>用户配额)、“用户资源重置周期”变量UsersResetBlocks,结构为map(用户地址=>重置块数)、以及“配额管理”函数,参数为:用户地址、用户配额、重置块数,作用为根据用户地址,修改相应的UsersQuotaLimit和UsersResetBlocks。每个区块中打包的全部交易不得超过所述“块资源限额”。(2)各节点在创世块后生成一个“用户资源剩余”变量:UsersQuotaLeft,定义为map(用户地址=>剩余配额)。(3)用户生成自己的账户地址,向管理员提出配额申请。(4)管理员指定该用户的“用户配额”、“重置块数”,调用“配额管理”函数并发起交易。(5)节点收到“配额管理”函数的调用交易后,首先验证交易发起者是否为管理员,如果是则打包交易,将“用户地址”、“用户配额”、“重置块数”分别录入到“用户资源限额”变量和“用户资源重置周期”变量中。同时,将“用户资源剩余”中该用户的“剩余配额”初始化为“用户配额”。(6)当用户发起其它交易tx后,节点根据交易的配额消耗计算方法f,计算交易tx所需消耗的资源数量:f(tx);并根据用户地址获得该用户的“剩余资源”,若“剩余资源”>=f(tx),则打包交易,并将“剩余资源”更新为“剩余资源”-f(tx);若“剩余资源”<f(tx),则不打包交易。节点在打包和同步每个区块前,都需要遍历“用户资源剩余”中的所有用户,如果当前块高度减去上一次重置该用户的块高度大于等于该用户的“重置块数”后,重置该用户的“剩余资源”为“用户配额”。进一步地,所述步骤6中配额消耗计算方法为:根据每单位存储空间消耗和每步运算消耗等衡量标准,计算交易所需消耗的资源数量进一步地,管理员还可以修改用户的配额设置,再次调用“配额管理”函数发起交易。本专利技术的有益效果在于:为许可链设置配额管理系统,增强了管理员对系统资源的分配能力,不再需要设定代币系统与手续费系统,简化了区块链资源的分配和节点激励机制,同时可以为不同用户设置不同的配额和周期,满足不同类型用户的不同需求。通过设置周期性的用户配额,可以让用户灵活管理自己交易的频率和峰值,避免直接对每个块的配额进行控制,粒度过细。具体实施方式本专利技术涉及一种基于许可链的资源配额管理方法,管理员设定全局的“块资源限额”,管理员为每个用户设定“用户资源限额”,以及“用户资源重置周期”,用户资源设置可以根据不同的用户类别进行调整,用户资源不再需要自行购买,而是由系统分配,按照若干块的数量为周期定期重置。节点接收到用户的交易后,检查用户当前周期内是否还有配额,并是否能够满足当前交易的消耗,满足则为合法交易,否则为非法交易。具体步骤如下:(1)管理员生成自己的账户,并把初始“管理员地址”和“块资源限额”置入创世块中。在创世块中构建“用户资源限额”变量UsersQuotaLimit,结构为map(用户地址=>用户配额)、“用户资源重置周期”变量UsersResetBlocks,结构为map(用户地址=>重置块数)、以及“配额管理”函数,参数为:用户地址、用户配额、重置块数,作用为根据用户地址,修改相应的UsersQuotaLimit和UsersResetBlocks。每个区块中打包的全部交易不得超过所述“块资源限额”。(2)各节点在创世块后生成一个“用户资源剩余”变量:UsersQuotaLeft,定义为map(用户地址=>剩余配额)。(3)用户生成自己的账户地址,向管理员提出配额申请。(4)管理员指定该用户的“用户配额”、“重置块数”,调用“配额管理”函数并发起交易。(5)节点收到“配额管理”函数的调用交易后,首先验证交易发起者是否为管理员,如果是则打包交易,将“用户地址”、“用户配额”、“重置块数”分别录入到“用户资源限额”变量和“用户资源重置周期”变量中。同时,将“用户资源剩余”中该用户的“剩余配额”初始化为“用户配额”。(6)当用户发起其它交易tx后,节点根据交易的配额消耗计算方法f,计算交易tx所需消耗的资源数量:f(tx);并根据用户地址获得该用户的“剩余资源”,若“剩余资源”>=f(tx),则打包交易,并将“剩余资源”更新为“剩余资源”-f(tx);若“剩余资源”<f(tx),则不打包交易。节点在打包和同步每个区块前,都需要遍历“用户资源剩余”中的所有用户,如果当前块高度减去上一次重置该用户的块高度大于等于该用户的“重置块数”后,重置该用户的“剩余资源”为“用户配额”。所述步骤6中配额消耗计算方法为:根据每单位存储空间消耗和每步运算消耗等衡量标准,计算交易所需消耗的资源数量此外,管理员还可以修改用户的配额设置,再次调用“配额管理”函数发起交易。本文档来自技高网...

【技术保护点】
一种基于许可链的资源配额管理方法,其特征在于,该方法为:(1)管理员生成自己的账户,并把初始“管理员地址”和“块资源限额”置入创世块中。在创世块中构建“用户资源限额”变量UsersQuotaLimit,结构为map(用户地址=>用户配额)、“用户资源重置周期”变量UsersResetBlocks,结构为map(用户地址=>重置块数)、以及“配额管理”函数,参数为:用户地址、用户配额、重置块数,作用为根据用户地址,修改相应的UsersQuotaLimit和UsersResetBlocks。每个区块中打包的全部交易不得超过所述“块资源限额”。(2)各节点在创世块后生成一个“用户资源剩余”变量:UsersQuotaLeft,定义为map(用户地址=>剩余配额)。(3)用户生成自己的账户地址,向管理员提出配额申请。(4)管理员指定该用户的“用户配额”、“重置块数”,调用“配额管理”函数并发起交易。(5)节点收到“配额管理”函数的调用交易后,首先验证交易发起者是否为管理员,如果是则打包交易,将“用户地址”、“用户配额”、“重置块数”分别录入到“用户资源限额”变量和“用户资源重置周期”变量中。同时,将“用户资源剩余”中该用户的“剩余配额”初始化为“用户配额”。(6)当用户发起其它交易tx后,节点根据交易的配额消耗计算方法f,计算交易tx所需消耗的资源数量:f(tx);并根据用户地址获得该用户的“剩余资源”,若“剩余资源”>=f(tx),则打包交易,并将“剩余资源”更新为“剩余资源”‑f(tx);若“剩余资源”<f(tx),则不打包交易。节点在打包和同步每个区块前,都需要遍历“用户资源剩余”中的所有用户,如果当前块高度减去上一次重置该用户的块高度大于等于该用户的“重置块数”后,重置该用户的“剩余资源”为“用户配额”。...

【技术特征摘要】
1.一种基于许可链的资源配额管理方法,其特征在于,该方法为:(1)管理员生成自己的账户,并把初始“管理员地址”和“块资源限额”置入创世块中。在创世块中构建“用户资源限额”变量UsersQuotaLimit,结构为map(用户地址=>用户配额)、“用户资源重置周期”变量UsersResetBlocks,结构为map(用户地址=>重置块数)、以及“配额管理”函数,参数为:用户地址、用户配额、重置块数,作用为根据用户地址,修改相应的UsersQuotaLimit和UsersResetBlocks。每个区块中打包的全部交易不得超过所述“块资源限额”。(2)各节点在创世块后生成一个“用户资源剩余”变量:UsersQuotaLeft,定义为map(用户地址=>剩余配额)。(3)用户生成自己的账户地址,向管理员提出配额申请。(4)管理员指定该用户的“用户配额”、“重置块数”,调用“配额管理”函数并发起交易。(5)节点收到“配额管理”函数的调用交易后,首先验证交易发起者是否为管理员,如果是则打...

【专利技术属性】
技术研发人员:谢晗剑岳利鹏
申请(专利权)人:杭州秘猿科技有限公司
类型:发明
国别省市:浙江,33

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

1