Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce the Clique SIGNER_LIMIT #14

Open
soc1c opened this issue Jul 8, 2019 · 1 comment
Open

Reduce the Clique SIGNER_LIMIT #14

soc1c opened this issue Jul 8, 2019 · 1 comment

Comments

@soc1c
Copy link

soc1c commented Jul 8, 2019

From EIP-1955: ethereum#1955

  • The SIGNER_LIMIT was removed from block sealing logic and is only required for voting. This allows the network to continue sealing blocks even if all but one of the validators are offline. The voting governance is not affected and still requires signer majority.

Using this as discussion-to: tracker. See also ref #10

@soc1c
Copy link
Author

soc1c commented Jul 8, 2019

Removing the SIGNER_LIMIT is dangerous as it would lead straightaway to a list of potential attacks.
Average block time being BLOCK_PERIOD, any signer in a N = 3 signers network can prepare a competing chain. Assume BLOCK_PERIOD is 15 seconds and the signer C decides to stop signing on the same chain as others. Then any 90 seconds that would create A B C A B C in turn blocks would create A B A B A B which gives difficulty of 10. Signer C can prepare C C C C C C chain which would have a difficulty of 10 too. Since C can now arbitrarily choose and accept any random time for signing they can create 7 blocks instead of 6 (by always choosing minimum time) and create an arbitrarily long alternative attack.

ethereum#1955 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant