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

Proof of work rate limiting for NAT signalling and relaying #556

Open
tegefaulkes opened this issue Aug 25, 2023 · 1 comment
Open

Proof of work rate limiting for NAT signalling and relaying #556

tegefaulkes opened this issue Aug 25, 2023 · 1 comment
Labels
development Standard development

Comments

@tegefaulkes
Copy link
Contributor

tegefaulkes commented Aug 25, 2023

Specification

As per #148 we applied some rate limiting mechanisms for preventing amplification attacks. But to truly protect against this we need to implement a simple proof of work for making signalling requests.

Additional context

Tasks

  1. Implement a simple proof of work algorithm for limiting signalling and punch requests
  2. ...
  3. ...
@CMCDragonkai
Copy link
Member

The rate limiter is still quite basic atm, I had an upgraded design here #148 (comment).

Rate limiting wise, it's not guaranteed to prevent DOS. Only proof of work can do so. But it's a quick way of rate limiting based on certain identifiers. So it can be expanded further. Could combine proof of work along with some bucketing mechanism as a general "resource governor". It sort of reminds me of the resource-counter library that we have.

@CMCDragonkai CMCDragonkai changed the title Proof of work rate limiting for NAT signalling Proof of work rate limiting for NAT signalling and relaying Oct 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development
Development

No branches or pull requests

2 participants