风险提示:理性看待区块链,提高风险意识!
Qtum DGP 分布自治协议技术详解
首页 > 币界资讯 > 区块链新闻 2019-02-27 11:00:01
币界网报道:

Qtum 量子链的分布式自治协议(Decentralized Governance Protocol,DGP)是基于 Qtum 实现的链上协议,协议允许通过链上提案和投票系统对共识参数进行更改。提案一旦投票通过,就可以在不分叉主链的情况下对参数进行无缝调整。目前在Qtum链上部署了4个DGP合约,分别用于对4个共识参数进行动态控制:

· 区块大小: 区块的最大容量

· 默认是2 Mb, DGP 合约: 0000000000000000000000000000000000000081

· 最小Gas价格: 区块创建者可接受的最小Gas价格

· 默认是 40 satoshis, DGP 合约: 0000000000000000000000000000000000000082

· 区块Gas限制:一个区块所能消耗的最大Gas数

· 默认是4千万, DGP 合约: 0000000000000000000000000000000000000084

· EVM Gas调度: 每个EVM操作花费的Gas

· DGP 合约: 0000000000000000000000000000000000000080

将控制这4个常见的区块链参数的智能合约嵌入到 Qtum 主网的创世块的原因是:这4个参数是Qtum链中最为关键的几个参数,使用智能合约对它们进行动态更改,可以最大程度地减少对区块链网络的影响。

可以使用DGP合约来添加更多的可控参数,但这个过程需要执行一次硬分叉。因为需要对共识编码进行修改,才能让链上已经存储的参数值变得可控。

DGP 工作原理

每一个可被 DGP 合约控制的参数都需要独立部署一个相应的 DGP 合约。Qtum 客户端会从控制参数的各个 DGP 合约中获取每个区块共识下的 DGP 合约所控参数的值。

客户端如果没有读取到DGP合约中存储的参数值,就会直接返回在客户端代码中所定义的该参数的初始值。

DGP 合约管理席(管理人员)的任务是在需要时为每个 DGP 合约参数发起提案,并提交提案启动投票。一旦某个提案获得足够的支持票数,该提案会自动生效,同时新的参数规则将作为新的共识规则作用于相应的参数。

如果提案在21600个区块内没有获得所需的票数,那么它将被驳回,同时合约将接受新的提案。

DGP合约

DGP 合约是 solidity 合约,允许管理以下内容:

· 管理操作: 增加/删除合约管理席位和治理席位

· 设置管理操作所需的管理席位的票数

· 设置接受 DGP 合约参数值席位提案所需的管理席位票数

· 设置接受 DGP 合约参数值席位提案所需的治理席位票数

· 针对提案启动投票

· 获取投票中的提案:当前的票数,以及 DGP 合约参数和所需投票的当前值

首次部署DGP合约时,该合约是没有管理席位的。因此必须调用相应的setter方法(只能调用一次):setInitialAdmin(),来设置初始的管理席位。该方法将首次调用的发送者设置为第一个管理席位。设置完成后,该管理席位的代理人就可以发起提案并启动投票。提案有以下三种类型:

席位增加提案(3 种子类型):

· 增加新的管理席位提案

· 增加新的治理席位提案

· 增加新的 DGP 合约参数值席位提案

席位删除提案 (2种子类型):

· 删除当前管理席位提案

· 删除当前治理席位提案

所需票数更改提案 (3 种子类型):

· 更改接受 DGP 合约参数值席位增加提案所需的管理席票数

· 更改接受 DGP 合约参数值席位增加提案所需的治理席票数

· 针对管理席或治理席提案:席位增加/删除提案,或所需票数更改提案,更改接受这两类提案所需的管理席票数

提案一旦启动投票,获得的支持票数不能小于票数阈值,否则不能生效。

除了增加第一个管理席位之外,其他的任何操作(不包括标识提案过期操作)都需要创建提案并启动投票。

当管理席位代理人创建提案时,提案在创建完成那一刻就自动获得了该管理席位的投票。

任意给定时间,每种提案类型最多只能有一个提案启动投票。

治理席位代理人只能给增加新的DGP合约参数值席位提案进行投票。提案一旦通过,需要设置DGP合约所需的合约地址,用于获取共识下的该参数的值。

管理席位代理人除了可以投票给增加新的DGP合约参数值席位提案之外,还可以投票给管理提案,其中包括所有其他类型的提案。

示 例

下面通过一个例子来解释说明。在下面的例子中,我们将运行一个* qtumd regtest*节点并使用DGP合约来修改最小Gas价格这一参数的值 (DGP合约: 0000000000000000000000000000000000000082)。

通过增加3个管理席位和2个治理席位,并将DGP合约参数席位增加提案生效所需的最少票数设置为2张管理席位投票和1张治理席位投票,从而将最小Gas价格参数修改为80 satoshi。我们还需要2张管理席位的投票,以便在添加第二个管理席之后能够继续添加更多管理席位或治理席位。

为实现上述目标,我们需要执行以下步骤:

· 设置初始的管理席位

· 由初始的管理席代理人创建提案,用于增加第2个管理席位

· 由任一管理席代理人创建提案,用于获取2张管理席投票从而使管理提案生效

· 由任一管理席代理人创建提案,用于增加第3个管理席位

· 由另一个管理席代理人对步骤4中创建的提案进行投票,因为需获取2张管理席投票从而使管理提案生效(现在我们已经有了3个管理席位)

· 由任一管理席代理人创建提案,用于增加第1个治理席位

· 由另一个管理席代理人对步骤6中创建的提案进行投票

· 由任一管理席代理人创建提案,用于增加第2个治理席位

· 由另一个管理席代理人对步骤8中创建的提案进行投票

· 由任一管理席代理人创建提案,用于获取2张管理席投票,以便接受DGP参数值席位增加提案

· 由另一个管理席代理人对步骤10中创建的提案进行投票

· 由任一管理席代理人创建提案,用于获取1张治理席投票,以便接受DGP参数值席位增加提案

· 由另一个管理席代理人对步骤12中创建的提案进行投票

· 基于minGasPrice-dgp-template模板创建参数值合约,并将最小Gas价格参数设置为80 satoshis,编译合约并在链上部署

· 由任一管理席代理人创建提案,使用步骤14中的合约地址增加一个新的DGP参数值席位

· 由另一个管理席代理人对步骤15中创建的提案进行投票

· 由任一治理席代理人对步骤15中创建的提案进行投票(使更改后的最小Gas价格参数的值生效,对于所有合约来说,新共识下的最小Gas价格现在是80 satoshis)

上一篇: Morpheus实验室使区块链的开发变得更容易
下一篇: 分布式公钥基础设施(PKI):开发和用例
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
61589.17 USDT
¥447,297.51
-0.34%
Solana
144.62 USDT
¥1,050.32
-2.87%
Curve
0.2919 USDT
¥2.12
-1.55%
Filecoin
4.5526 USDT
¥33.06
+2.12%
Beta Finance
0.078733 USDT
¥0.57
-17.63%
狗狗币
0.1271 USDT
¥0.92
+2.17%
柚子
0.5957 USDT
¥4.33
+1.72%
Conflux
0.1672 USDT
¥1.21
-1.59%
Shiba Inu
1.739E-5 USDT
¥0.00
-0.97%
Terra Classic
8.374E-5 USDT
¥0.00
+0.46%
Arweave
26.2937 USDT
¥190.96
-2.45%
波场
0.1225 USDT
¥0.89
-0.65%
最新快讯
更多
币界网最新行情晚报:DOT波卡币价格达6.418美元/枚,日内涨幅2.04%
2024-06-28 21:40:15
标记为美国政府地址转出11.84枚BTC,疑似大额转出前的小额测试
2024-06-28 21:34:22
美国政府地址转移11.84枚BTC,约72.6万美元
2024-06-28 21:31:24
CurveFinance采用crvUSD进行费用分配
2024-06-28 21:29:26
尼日利亚证监会:本地加密货币产业估值约为4亿美元
2024-06-28 21:26:45
CurveFinance改变费用分配机制,从3crv过渡到crvUSD
2024-06-28 21:25:24
尼日利亚SEC对当地加密货币产业的估值为4亿美元
2024-06-28 21:23:34
下载币界网APP