From d989d3746f33270e8faa8eb85a345a48b8dc2862 Mon Sep 17 00:00:00 2001 From: Maximilian Lenkeit Date: Tue, 16 Mar 2021 07:05:51 +0100 Subject: [PATCH] feat(evreg): define QR code standard for interop --- docs/spec/event-registration-summary.md | 28 +++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/docs/spec/event-registration-summary.md b/docs/spec/event-registration-summary.md index 61ef909..d4ecd47 100644 --- a/docs/spec/event-registration-summary.md +++ b/docs/spec/event-registration-summary.md @@ -79,12 +79,28 @@ The base32 encoding allows to leverage the input mode _alphanumeric_ when genera ### Interoperability with Other Contact Tracing Apps -Other contact tracing apps that leverage QR code for Presence Tracing can integrate with CWA by including the necessary attributes in their QR code. +Other contact tracing apps that leverage QR code for Presence Tracing can integrate with CWA by creating QR codes according to the followig pattern: -These attributes are: -- SignedTraceLocation - a byte representation of the Protocol Buffer message `SignedTraceLocation`. Note that the data must still be signed by the CWA server. This information may be encoded as `base32` (recommended) or `base64`. -- Version - an integer to allow versioning +``` +//CWA1/ +``` -A regular expression must be provided to allow matching and validating supported QR codes and extracting the necessary attributes. +| Parameter | Description | +|---|---| +| `` | The URL associated with the respective contact tracing apps, with or without a partial path. | +| `` | Any vendor-specific data such as venue ids. This data may be passed to the vendor-specific app upon interaction by the user if a deeper integratio is required. | +| `` | A representation of the Protocol Buffer message SignedTraceLocation encoded in either base32 or base64 (see recommendations below). | -Any contact tracing apps that integrate with CWA must ensure that they do not process any information from the CWA part of the QR code. \ No newline at end of file +To optimize the readability and reduce density of the QR code, CWA recomends to generate QR codes with input mode [_alphanumeric_](https://en.wikipedia.org/wiki/QR_code#Storage) and to encode byte sequences (such as Protocol Buffer messages) with base32. + +**Note:** Any contact tracing apps that integrate with CWA must ensure that they do not process any information from the CWA part of the QR code. + +Examples: + +```shell +# upper-case for alphanumeric input mode + base32 encoding +HTTPS://PRESENCE-TRACING.APP/386D0384-8AAA-41B6-93C2-D3399894D0EE/CWA1/BIPEY33... + +# base64 encoding +https://check-in.pt.app/386d0384-8aaa-41b6-93c2-d3399894d0ee/CWA1/CiRmY2E... +``` \ No newline at end of file