MemeLabs / MemeLabs/strims

reevaluate hilbert curve id assignment

Open
#29 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

question
Dominant language
Go
Stars
10
Forks
6
PR merge metrics
No merged PRs in 30d

Description

In the js version we prefixed KAD IDs with the lat/lng of the user's geolocation on a Hilbert Curve... This meant that peer routing decisions and peer suggestions would tend to return peers that were geographically close to the target which could improve cold start performance...

The risk (outlined in BEP 42) is that allowing peers to arbitrarily pick IDs enables sybil attacks where malicious users block access to a parts of the network by filling the surrounding addresses with uncooperative hosts.

  • does this actually improve performance?
  • is there any way to mitigate the risk and if not can it be selectively enabled for networks of trusted peers?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the JavaScript KAD ID assignment and BEP 42, then measure whether Hilbert-curve geolocation improves peer routing or cold-start performance. Done means reaching a clear conclusion about the performance benefit and whether Sybil risk can be mitigated or the behavior limited to trusted-peer networks.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
distributed-systems, networking, performance, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.