Closed ineiti closed 3 years ago
From @wouterl:
Binary encoding of countries is looking good. Thx. However, this API includes the implicit design decision that the list of visited countries applies to all keys (rather than per key). This design decision makes sense to us for two reasons:
DONE: Documentation Request: This design choice must be documented either in the code or in the technical specification. For now we ask you to please include a paragraph in the code so that we remember later on when writing the spec.
Requesting once per visited country implies that the user reveals:
We would therefore prefer that the countries visited is a parameter to the query. Using a similar encoding for exposed, to protect which/how many countries we would have a list of countries with a 0/1 value. (Different options: "countries=NL+DE+CH+XX+XX+..." or as a JSON data blob that gets send with the GET request.) Then we will need to pad the answers back to hide travelers and destinations. We are working on the scheme, please give us a couple of days do design the correct scheme.
In the mean time, we suggest that the return format accounts for returning different files per country and has a padding field where we can add a random string. This padding string should be ignored by the app, but allows us to increase the size of the response to the right value (to be determined).
SonarCloud Quality Gate failed.
0 Bugs
0 Vulnerabilities (and 0 Security Hotspots to review)
0 Code Smells
Outdated.
Key sharing with country code and shared flag:
This allows that clients can always send the full list of countries that are configured and setting the share flag for each country. This makes sure that fake upload requests can not be distinguished from non-fake uploads