Reject any non-encrypted data sent by a client
- Dominant language
- Go
- Stars
- 367
- Forks
- 83
- Avg merge
- 3d 8h
- Merged PRs (30d)
- 4
Description
While we encrypt everything client-side in Brave, Chromium supports non-encrypted Sync as well. We should therefore add a server-side check to detect any client bugs that end up sending unencrypted data to the backend.
This could simply involve checking this field: https://github.com/brave/go-sync/blob/e2356a7a31a88d7f6707ae0dbfd18a001e970ed4/schema/protobuf/sync_pb/entity_specifics.proto#L76
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the referenced entity_specifics.proto field and trace where the server accepts client entity data. Determine how that field indicates encryption, then add server-side rejection for non-encrypted data and verify that encrypted client data remains accepted. Done means unencrypted client payloads are rejected consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- security
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100