diff options
author | Wei-Ning Huang <w@dexon.org> | 2019-03-11 15:47:29 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-03-12 12:19:09 +0800 |
commit | 2af2607585ee7145fe49d8ab4eba400dddad942d (patch) | |
tree | 77bd602e00480f025ddf6320527e271b4a9821f5 /core/vm/oracle.go | |
parent | 17a969ad66402ed9af16c166fbc7a8080274e44b (diff) | |
download | dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar.gz dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar.bz2 dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar.lz dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar.xz dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.tar.zst dexon-2af2607585ee7145fe49d8ab4eba400dddad942d.zip |
core: vm: remove delegation mechanism (#245)
The current delegation mechanism are prone to unstaking attack. i.e. a
malicious attacker could unstake a small amount from a lot of node it
staked before and make them unqualified, which leads to potential
failure of the network.
Since DEXON does not use consensus like DPoS, node is required to have
at least MinStake in order to become a node. Voting mechanism is not
required in our system since qualified node does not depends on the
number of votes. Instead of managing the delegation mechanism in
governance contract, we should let the owner manage the delegation and
reward distribution mechanism on their own.
Diffstat (limited to 'core/vm/oracle.go')
-rw-r--r-- | core/vm/oracle.go | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/core/vm/oracle.go b/core/vm/oracle.go index 14ba9b2f5..81755cd9b 100644 --- a/core/vm/oracle.go +++ b/core/vm/oracle.go @@ -25,14 +25,11 @@ import ( ) var GovernanceContractAddress = common.HexToAddress("63751838d6485578b23e8b051d40861ecc416794") -var NodeInfoOracleAddress = common.HexToAddress("58a7c88ad1f32e7252bebba54def98d3e7b3df11") var GovernanceABI *OracleContractABI -var NodeInfoOracleABI *OracleContractABI func init() { GovernanceABI = NewOracleContractABI(GovernanceABIJSON) - NodeInfoOracleABI = NewOracleContractABI(NodeInfoOracleABIJSON) } // OracleContract represent special system contracts written in Go. @@ -45,7 +42,6 @@ var OracleContracts = map[common.Address]OracleContract{ GovernanceContractAddress: &GovernanceContract{ coreDKGUtils: &defaultCoreDKGUtils{}, }, - NodeInfoOracleAddress: &NodeInfoOracleContract{}, } // Run oracle contract. |