Flooding spoofed advertisements with new keypairs causes problems.
Fix:
For nodes:
Let nodes add a proof-of-work (PoW) to the advertisement based on public key and appdata. Exclude the timestamp and location (lat long). By doing this it gets harder to spam the whole network with false advertisements and run an Sybil attack (https://en.wikipedia.org/wiki/Sybil_attack). For harder PoWs (aka more leading zero bits in the hash) the cellphone can be used to offload the work to an faster CPU.
For repeaters:
Check PoW and signature before forwarding.
How to implement:
depending on the hardness of the PoW a field for a uint32_t should be added with a PoW-counter, this counter is increased till the hash of the adevertisement message has X leading zero's. The minimal amount of leading zero's should be defined network width.
Flooding spoofed advertisements with new keypairs causes problems.
Fix:
For nodes:
Let nodes add a proof-of-work (PoW) to the advertisement based on public key and appdata. Exclude the timestamp and location (lat long). By doing this it gets harder to spam the whole network with false advertisements and run an Sybil attack (https://en.wikipedia.org/wiki/Sybil_attack). For harder PoWs (aka more leading zero bits in the hash) the cellphone can be used to offload the work to an faster CPU.
For repeaters:
Check PoW and signature before forwarding.
How to implement:
depending on the hardness of the PoW a field for a uint32_t should be added with a PoW-counter, this counter is increased till the hash of the adevertisement message has X leading zero's. The minimal amount of leading zero's should be defined network width.