Neo: Increase the cost of registering as a candidate

Created on 15 Jan 2021  ·  19Comments  ·  Source: neo-project/neo

The idea is from https://github.com/neo-project/neo/issues/2203#issuecomment-760468150

We should increase the cost of registering as a candidate to prevent attacks.

Question: What is the appropriate price for RegisterCandidate?

discussion

Most helpful comment

My worry is:

I pay for be a candidate, but I am waiting for two mothns without luck, one day I am candidate, but maybe I had shutdowned my computer and leaved the crypto world, we should need an ACK before be a valid one.

All 19 comments

Hi Erik, I have a few questions:

  • If they lose the election, their money is gone, right?
  • Is the APY is GAS based?
  • What happens to the tokens if they are not elected? Is it burned?
  • Is the registration permanent? Once registered, I can always get votes and never be elected, or is there a limit for a candidate to get the votes?

My only concern is that it may be too risky for 'regular people' to participate. I mean, if there is a chance to lose $10.000, I would probably not have the courage to register as a candidate. But if that means that I will be a candidate 'forever', then it may be a good thing to increase the price.

Question: What is the appropriate price for RegisterCandidate?

I suggest that we do something based on the available supply, like 0.0001% of the circulating GAS/NEO

If they lose the election, their money is gone, right?

Yes.

Is the APY is GAS based?

Yes.

What happens to the tokens if they are not elected? Is it burned?

Yes.

Is the registration permanent?

Currently, yes. But maybe we can add an expiration date.

Hmm, maybe adding an expiration date will add too much complexity. What happens if it expires while they are elected?

Do you want to make it 'fiat pegged' prices, like U$1.000, or are you looking for something based on NEO/GAS? The second one will need to adjustable since the prices will likely go up.

Hmm, maybe adding an expiration date will add too much complexity. What happens if it expires while they are elected?

Do you want to make it 'fiat pegged' prices, like U$1.000, or are you looking for something based on NEO/GAS? The second one will need to adjustable since the prices will likely go up.

i believe NEO /GAS based should be the best option to go!

I suggest that we do something based on the available supply, like 0.0001% of the circulating GAS/NEO

i like your idea to use available supply as index , this could work also like halving mechanism

My worry is:

I pay for be a candidate, but I am waiting for two mothns without luck, one day I am candidate, but maybe I had shutdowned my computer and leaved the crypto world, we should need an ACK before be a valid one.

we should need an ACK before be a valid one.

We thought this before. One way is that candidate can send an ack transaction before it becomes a validator(Validator need one epoch to take effect). Another way we can take advantage of committee's epoch to switch up to 1/3 nodes at a time, while checking the block production within epoch.

What about 1000 GAS for register as a candidate? @neo-project/ngd-shanghai What do you think?

What about 1000 GAS for register as a candidate?

it's good for me

It is suggested to set the parameter as 1000gas tentatively, which can be adjusted by voting in the future.

What about 1000 GAS for register as a candidate? @neo-project/ngd-shanghai What do you think?

I suggest to do a formula based of circulate supply since gas supply is unlimited in few years 1000 gas could be very cheap so a fixed percentage of supply could solve the problem for ever.

1000 might be too high, it may affects the level of engagement. I think we should prevent attacks, but remain attractive for many users. In Neo2's experience, many users can't easily deploy contract because it's too expensive.-O-

In Neo2's experience, many users can't easily deploy contract because it's too expensive.

This proposal is for registerCandidate, not for deployment.

It's good for me, and it'll be better, if we can set a parameter.

It is suggested to set the parameter as 1000gas tentatively, which can be adjusted by voting in the future.

@erikzhang may I bring up two questions:

  1. Could we code this as an adjustable params so that committee will be able to adjust it in the future according to the reward and price of GAS ? Initial 1000 GAS is good.
  2. Should we think about punishment as well ? To prevent committees or CN act maliciously or off line irresponsibly which we have experienced for Neo2 mainnet.

@wanglongfei88 i agree with, The Carrot and the Stick !

Could we code this as an adjustable params so that committee will be able to adjust it in the future according to the reward and price of GAS ?

Sure.

Should we think about punishment as well ?

Any idea?

Any idea?
well my idea is to have a 10-20% of their stake a insurance against malicious actions if they do something illegal this insurance percentage will be burned. or be distributed among other legal voters or commites.

What is considered a malicious action? Can we list all cases?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

igormcoelho picture igormcoelho  ·  34Comments

superboyiii picture superboyiii  ·  42Comments

EdgeDLT picture EdgeDLT  ·  59Comments

erikzhang picture erikzhang  ·  43Comments

lock9 picture lock9  ·  62Comments