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

Verification of the Free World Bit and Country code in Neighborhood. #479

Open
czarte opened this issue Apr 26, 2024 · 3 comments
Open

Verification of the Free World Bit and Country code in Neighborhood. #479

czarte opened this issue Apr 26, 2024 · 3 comments

Comments

@czarte
Copy link
Collaborator

czarte commented Apr 26, 2024

We need to create verification process of Exit nodes geo location, to prevent Nodes from lying in several scopes

  1. Every time that we spot the change of Country code of Exit Node in recieved gossip and there is discrapance in previous state and current state, we need to react by checking the IP of Exit Node if it matches with our DB record and if not, there need to be process to verify the real state of localization particular IP
  2. there needs to be put in place the defence mechanism, something like "Malefactor ban", to provide opportunity to ban the Exit Node, which is lying about his Country code or Free World Bit.
  3. Can distant members validate?
  4. Validation thru the requested web content - send some restricted content, delivered from exit node, to the network and ask to validate its content
  5. Put list of countries (countries.rs) to DB and load it on startup of the Node to the pub static ref COUNTRIES: Vec<Country>
  6. CLI interface to turn true to false on Free World Bit
@czarte
Copy link
Collaborator Author

czarte commented May 2, 2024

Scheme of Node jump into full neighborship with exit node, to verify its Free World Bit and Country Code

Scheme before move:
Redesign_Gossip_protocol_Switch_to_Exit_Node_Neighborhood

Scheme after move:
Redesign_Gossip_protocol_Switch_to_Exit_Node_Neighborhood_2

Scheme of the new design of "I am alive" Gossip, where Node with Malefactor Ban of broadcasted Node "I am alive" gossip is not passing this gossip to its primary Neighbors, so these neighbors are stuffing up some malefactor threshold in theirs NodeRecordMetadata for particular Node.
Redesign_Gossip_protocol

@czarte
Copy link
Collaborator Author

czarte commented May 3, 2024

Here is the commit with the malefactor changes which is putting the fn ban_malefactor() to particular places where we are now logging the malefactor to the Log. This function is empty and waiting for implementation in the Epic of Malefactor ban:

1501cec

If you do a git fetch to pull this commit down, you can probably cherry-pick it into your branch

@kauri-hero kauri-hero added wontfix This will not be worked on hardenning design me and removed wontfix This will not be worked on labels Jun 2, 2024
@kauri-hero
Copy link
Contributor

This card will likely be modified to validate immediate neighbor country code only

Potentially, it will be a periodic check of the country-code

@kauri-hero kauri-hero transferred this issue from MASQ-Project/MASQ-Node-issues Aug 18, 2024
@github-project-automation github-project-automation bot moved this to Backlog in MASQNode Aug 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 📋 Backlog
Status: Backlog
Development

No branches or pull requests

2 participants