eu-digital-green-certificates / dgca-verifier-app-android

Repository for the dgca verifier android app.
Apache License 2.0
102 stars 117 forks source link

Feature: App should inform the user about background public keys download status so user could know that he has all public keys #70

Open Tomas-Alb opened 3 years ago

Tomas-Alb commented 3 years ago

Feature description

App should inform the user about background public keys download status so user could know that he has all public keys

Problem and motivation

We had a situation when a user has downloaded the app and tried to scan QR codes. For some countries, he was able to verify QR codes but for some countries not. We suspected that app doesn't have the required public key (keys were uploaded two weeks ago). After manual synchronization user was able to validate QR codes they were failing before synchronization.

I think it could be a common scenario for users who have a poor internet connection so we should give some feedback about background synchronization status.

RalicaY commented 3 years ago

@Tomas-Alb Which version did you use? The manual triggering of the public key synchronisation has been already implemented in Release 1.0.2.

Tomas-Alb commented 3 years ago

Yes, there is a manual synchronization feature. But it solves the issue for advanced users. For a simple user who downloads and uses app on the go - it will be a crucial thing because some QR's will be invalid and he will not know that he needs to synchronize public keys manually or wait for fore some time. So it's important to inform users that background download is in progress.

RalicaY commented 3 years ago

@Tomas-Alb In the current phase, supported verifier app scenarios include only offline verification (synchronisation is triggered automatically once every 24 hours given internet connection is available at the time of synchronisation) and the actors using the app are border control officials, i.e. more or less only "advanced" users but not the certificate holders themselves.

Tomas-Alb commented 3 years ago

I think that the issue is not clear to you :) I will try to provide issue reproduction steps maybe it will be clear.

  1. Install application - but don't start the app
  2. decrease your internet connection for example to 56 kbit/s
  3. start the application and start QR code scanning (do it right away - don't wait for some time and don't perform manual synchronization)

In this case, some QR's will be invalid because background synchronization will be in progress you will have not all public keys and you will not know that.

RalicaY commented 3 years ago

@Tomas-Alb Thanks for elaborating further on the problem. Question to 1.) : Was internet on during the time of installation?

Tomas-Alb commented 3 years ago

Yes it was on but it was realyyyy slow :)

RalicaY commented 3 years ago

@Tomas-Alb If synchronisation was started but was not finished due to problems with the connection a round circle is seen showing that the progress is ongoing but not finished. When the synchronisation was successful, the time shown as "Last Updated" is shown.

mauimauer commented 3 years ago

Validation should not be permitted until all certificates have been received/synced

Tomas-Alb commented 3 years ago

@mauimauer this could be a solution.