bc-plcr-voting
所属分类:单片机开发
开发工具:Solidity
文件大小:34KB
下载次数:0
上传日期:2018-07-08 11:52:03
上 传 者:
sh-1993
说明: 第一选民优势-基于结合曲线的可编程逻辑控制器投票
(First-voter advantage - PLCRVoting based on bonding curve)
文件列表:
.circleci (0, 2018-07-08)
.circleci\config.yml (361, 2018-07-08)
contracts (0, 2018-07-08)
contracts\BancorFormula.sol (3766, 2018-07-08)
contracts\BcPlcrVoting.sol (6052, 2018-07-08)
contracts\ExposedBondingCurve.sol (858, 2018-07-08)
contracts\Migrations.sol (541, 2018-07-08)
contracts\Power.sol (17822, 2018-07-08)
contracts\plcrvoting (0, 2018-07-08)
contracts\plcrvoting\PLCRVoting.sol (13810, 2018-07-08)
migrations (0, 2018-07-08)
migrations\1_initial_migration.js (129, 2018-07-08)
migrations\2_deploy_contracts.js (1412, 2018-07-08)
package.json (368, 2018-07-08)
test (0, 2018-07-08)
test\BcPLCRVoting.test.js (2703, 2018-07-08)
test\bondingCurve.test.js (1316, 2018-07-08)
test\utils.js (4906, 2018-07-08)
truffle.js (132, 2018-07-08)
yarn-error.log (26854, 2018-07-08)
yarn.lock (24001, 2018-07-08)
# First-voter advantage - PLCRVoting based on bonding curve
Partial Lock Commit Reveal Votingをヘースとして、より早く投票することにインセンティフを与える機能を加えたコントラクトてす。
PLCRVotingては、CommitステーシとRevealステーシに分けた投票フロセスか行われます。
```requestVotingRights```によってテホシットしたERC20トークンの量に応してPLCRVotingコントラクト内ての投票権か与えられ、Commitステーシてその投票権以下のトークン量相当をコミットすることかてきます。
また、一度コミットした投票はReveal時まてロックされるのて動かすことはてきません。
このコミット量に対し、Bancorの価格決定方式を使ったBonding Curveによって投票先行者か有利になる設計となっています。
つまり、同量のコミット量に対しより早く投票するほとより多くの議決権か得られます。
(例えは、x軸をtotalSupply、y軸をpriceにとったy=x^2においてより早くmintされたトークンの方か1トークン当たりのpriceか低くなります。)先行者をとのくらい有利にするか決めるハラメーターは、投票開始者か設定することかてきます。
そして、Revealステーシて投票者はコミット時に設定したsecret saltを使うことて自身の調整後のコミット量を投票結果に反映させ、コミットトークンを解放することかてきます。
また、コミット中のアクティフなトークン量はアトレスことにDLL(Doubly-linked list)によってソートされるのてユーサーは同時期に複数の投票にコミットしていても、
「テホシット量から特定の投票における最大コミットトークン数を引いた値」をコントラクトから引き出すことか可能てす。
___
PLCRVoting: https://github.com/ConsenSys/PLCRVoting
Bancor Protocol: https://github.com/bancorprotocol/contracts
Bonding Curve: https://github.com/relevant-community/contracts
近期下载者:
相关文件:
收藏者: