When a request is made to the /report endpoint, the response should include the expiration time of the allocated upload token. The main difficulty is to make sure that the phone agrees with the server on when the time is (taking into consideration disagreeing clocks, time zones, etc). Some considerations:
- We can solve the time zone problem by reporting the time in UTC.
- We can partially solve the disagreeing clocks problem by reporting a delta (that is, the duration of the expiration period) rather than a timestamp. However, this may be broken by the phone changing its clock after the phone has stored the response from the server and calculated the expiration time in terms of its local clock.
When a request is made to the
/reportendpoint, the response should include the expiration time of the allocated upload token. The main difficulty is to make sure that the phone agrees with the server on when the time is (taking into consideration disagreeing clocks, time zones, etc). Some considerations: