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

Helper aggregation: implement check that client reports fall into valid window for task. #3524

Open
branlwyd opened this issue Nov 27, 2024 · 0 comments
Assignees

Comments

@branlwyd
Copy link
Contributor

DAP-13 has a few task parameters which define the "valid" time window in which client reports are accepted:

  • task_start: The time from which the Clients will start uploading reports to a task. Aggregators MUST reject reports with timestamps earlier than task_start.

  • task_duration: The duration of a task. The task is considered completed after the end time task_start + task_duration. Aggregators MUST reject reports that have timestamps later than the end time, and MAY choose to opt out of the task if task_duration is too long.

(this has been refactored somewhat over time, but previous DAP drafts had similar parameters)

Janus has never implemented this check for the Helper aggregation codepath. We should consider doing so. Despite the MUST, I think this isn't mandatory because:

  • A Leader aggregator which follows the DAP protocol will never send a report which should be denied by this check, so we are spec-compliant as far as can be observed by correct protocol interaction.
  • A malicious Leader aggregator cannot bypass the privacy/robustness properties of DAP due to the lack of this check, so we are OK in practice.

Still, it would be easy to implement this, and it might be better to protect ourselves from pointlessly aggregating "bad" reports from a misconfigured/buggy Leader.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant