donau

Donation authority for GNU Taler (experimental)
Log | Files | Refs | Submodules | README | LICENSE

android.tex (1589B)


      1 \section{Android Verification App}\label{android_verification_app}
      2 The Android app is part of the verification process used by the tax authority
      3 to check the donation statement (see
      4 \ref{donor_sends_final_statement_to_a_validator}).
      5 
      6 The app decodes the received QR code from the donor, parse the signing
      7 values and the signature and use them to verify the signature. At the end, the
      8 values and the status of whether the signature is valid are displayed.
      9 The arguments of the QR code are defined in chapter \ref{donor_sends_final_statement_to_a_validator} which have to be separated with
     10 a delimiter. The delimiter depends on the encoding method for the binary values.
     11 Since the QR code should be kept as small as possible, base64 would be a good choice.
     12 With base64 a colon, for example, can be used as a delimiter. Colons are not available
     13 in the base64 alphabet. The base64 encoding allows the QR code to be alphanumeric encoded\footnote{alphanumeric encoded QR codes have
     14 a capacity of up to 4296 characters and support only a few special
     15 characters}. This enables to use more characters in a single QR code.\cite{qrcodedensowavewebsite}\\
     16 A possible QR code string specification with colons as delimiter could look like this:
     17 \begin{displaymath}
     18     YEAR:TOTALAMOUNT:TAXID:TAXIDSALT:ED25519SIGNATURE
     19 \end{displaymath}
     20 In order to correctly verify the signature everything have to be in form and order.
     21 As the tax ID and the tax ID salt were used hashed for the signing, this have to be repeated. Every signature in the Taler ecosystem uses unique signature codes to to
     22 avoid misuse.
     23