Plebbit is a theoretical design for a Reddit alternative built partly using IPFS' experimental pubsub feature. View the whitepaper.
One of the design that needs to be tested is how big can the pubsub network scale, and how much spam resistance does the captcha service over pubsub provides.
Multiple scenarios should be tested:
- How much time does it take on average to complete a full captcha challenge request-answer-validation exchange.
- What is the maximum amount of posts per minute that can be published without breaking.
- Can the captcha service successfully prevent attackers from spamming captcha challenge requests.
- Can the captcha service successfully prevent attackers from spamming captcha challenge answers that are incorrect.
Deliverables
The "captcha puzzle" doesn't need to be implemented, the captcha challenges and answers should be simulated for the experiment. The captcha answers validation and blocking of peers who submit too many incorrect captcha answers (or too many captcha challenge requests without answers) should be implemented. This might require forking the IPFS go client to add the functionality of blocking a pubsub peer. It might be possible without forking using IPFS swarm filter.
The experiments should be done using at least 3 nodes on 3 servers: A subplebbit owner's node running the simulated captcha service, one (or more) well behaving nodes publishing posts, and one spammer node trying to break the pubsub.
A video running the experiments and explaining the conclusion should be uploaded to Youtube so that we don't have to set it up and run it ourselves. Each iteration will require uploading a new video until the work is approved.
Everything should be written in Node.js/Javascript or Typescript, using the IPFS go CLI client, and preferably/optionally using Docker (though Docker can sometimes cause P2P problems with IPFS).
Submit PRs to this repo inside this folder /proof-of-concepts/pubsub-spam-resistance
For more in depth explanation of the task contact me on telegram @estebanabaroa or discord estebanabaroa#2853
Plebbit is a theoretical design for a Reddit alternative built partly using IPFS' experimental pubsub feature. View the whitepaper.
One of the design that needs to be tested is how big can the pubsub network scale, and how much spam resistance does the captcha service over pubsub provides.
Multiple scenarios should be tested:
Deliverables
The "captcha puzzle" doesn't need to be implemented, the captcha challenges and answers should be simulated for the experiment. The captcha answers validation and blocking of peers who submit too many incorrect captcha answers (or too many captcha challenge requests without answers) should be implemented. This might require forking the IPFS go client to add the functionality of blocking a pubsub peer. It might be possible without forking using IPFS swarm filter.
The experiments should be done using at least 3 nodes on 3 servers: A subplebbit owner's node running the simulated captcha service, one (or more) well behaving nodes publishing posts, and one spammer node trying to break the pubsub.
A video running the experiments and explaining the conclusion should be uploaded to Youtube so that we don't have to set it up and run it ourselves. Each iteration will require uploading a new video until the work is approved.
Everything should be written in Node.js/Javascript or Typescript, using the IPFS go CLI client, and preferably/optionally using Docker (though Docker can sometimes cause P2P problems with IPFS).
Submit PRs to this repo inside this folder /proof-of-concepts/pubsub-spam-resistance
For more in depth explanation of the task contact me on telegram @estebanabaroa or discord estebanabaroa#2853