-
Notifications
You must be signed in to change notification settings - Fork 42
Temporary exposure keys upload
Artur Słomowski edited this page Jun 2, 2020
·
1 revision
Once the user is diagnosed with Covid-19 they can share their Temporary Exposure Keys(TEK) to inform others, with whom they had contact with, about potential exposition to virus.
Steps:
- User diagnosed with Covid-19 is given a unique 6-character code (PIN) from the authority employee
- User enters the code and agrees for TEK upload (PWA module)
- PWA module notifies native code through JS bridge that provided PIN should be used for TEKs upload
- Exposure Notification Framework asks the user for a permission to share TEK with ProteGo Safe App
- The app checks if 6-character code is valid by requesting ProteGo Safe server for a Token (proper Firebase Cloud Function is called with PIN as a payload):
- UseCase: UploadTemporaryExposureKeysUseCase
- Repository function: CloudRepository.getAccessToken(pinItem: PinItem)
- Repository implementation: FirebaseCloudRepositoryImpl.getAccessToken(pinItem: PinItem)
- The app generates Verification Payload(VP) using SafetyNet Attestation API. It helps to determine whether the server is interacting with a genuine app.
- UseCase: GetSafetyNetAttestationTokenUseCase
- Manager function: SafetyNetAttestationWrapper.attestFor(keys: List, regions: List)
- Manager implementation: SafetyNetAttestationWrapperImpl.attestFor(keys: List, regions: List)
- The app generates Upload Request Payload(URP) with the following data:
- array of Temporary Exposure Keys
- Token
- Verification Payload
- Platform name("Android")
- Region("PL")
- App package name("pl.gov.mc.protegosafe")
- The app uploads URP to ProteGo Safe server with a proper Firebase Cloud Function

Android Documentation
- README
- Controlling exposure notification
- Receiving exposures documentation
- JavaScript bridge documentation
- Providing diagnosis keys
- Downloading diagnosis keys
- Removing historical data
- Reporting risk level
- Temporary exposure keys upload
About ProteGo
- Introduction
- SARS-CoV-2 infection risk groups
- Anonymity and security
- Further principles
- Version 2.0 functionalities scope
- Version 3.0 functionalities scope
- Version 4.0 functionalities scope
- ProteGO Safe and it’s documentation is licensed under
- Dictionary
Contributing
- How to contribute
- Code of conduct
- Feature request template
- Pull request template
- Issue template
- Security
- Support
- Contributors
- License
ProteGo Repositories