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

ULC: mechanism to remove and add trusted servers #60

Open
8 tasks
JekaMas opened this issue Jun 5, 2018 · 0 comments
Open
8 tasks

ULC: mechanism to remove and add trusted servers #60

JekaMas opened this issue Jun 5, 2018 · 0 comments
Assignees

Comments

@JekaMas
Copy link

JekaMas commented Jun 5, 2018

At the moment we can't ban for a period of time any trusted server that sends incorrect or malicious blocks. We should have one.

And we should have a possibility to extend a list of trusted servers: explore new servers with good stats, validate them and add to the trusted list.

Both parts need some storage to store data related to trusted nodes stats and blacklist information.

Implementation steps:

  • Store trusted nodes list in the DB
  • Store stats: number of incorrect blocks since last epoch
  • Store blacklist data: when a blacklisted node should be removed from the list
  • Load trusted nodes data from the DB. If DB doesn't contain any data, we should use config data
  • Add config param, when we should add a node to the blacklist, how long should it be.
  • Remove nodes from the blacklist after given period of time
  • Adding new trusted nodes mechanism: for example if an untrusted server sends to a user correct blocks for an epoch, we can trust this node and add it to the list.
  • Add config param to disable adding new trusted nodes mechanism
@JekaMas JekaMas self-assigned this Jun 5, 2018
@b00ris b00ris added this to the ULC 2018-06-04 milestone Jun 6, 2018
@b00ris b00ris modified the milestones: ULC 2018-06-04, ULC 2018-06-18 Jun 18, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants