package covidshield

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message EncryptedUploadRequest

covidshield.proto:53

We are using a NaCl Box (Curve25519+XSalsa20+Poly1305) to encrypt and authorize messages. Note that we are not *explicitly* signing the payload: NaCl Box provides non-repudiability for the receiving party. The receiving party (and only the receiving party) could forge the sender's signature on this message, but we there's no need or possibility for third-party verification in this scheme. See "Security Model" at https://nacl.cr.yp.to/box.html

message EncryptedUploadResponse

covidshield.proto:76

EncryptedUploadResponse is received from the server in response to a EncryptedUploadRequest. If the request was successful, error will be NONE.

enum EncryptedUploadResponse.ErrorCode

covidshield.proto:77

Used in: EncryptedUploadResponse

message KeyClaimRequest

covidshield.proto:16

Clients will receive a One Time Code via some external channel (i.e. SMS or verbal). Then, upon issuing THIS request, they will generate a new keypair. If the response comes back successful, the app_public_key (and the corresponding private key) and the returned server_public_key will be kept in local storage for the duration of this reporting window (the next 14 days). app_public_keys must not be re-used for new KeyClaimRequests, or the requests will fail.

message KeyClaimResponse

covidshield.proto:27

KeyClaimResponse is received from the server in response to a KeyClaimRequest. If the request was successful, error will be NONE and server_public_key will be set.

enum KeyClaimResponse.ErrorCode

covidshield.proto:28

Used in: KeyClaimResponse

message SignatureInfo

covidshield.proto:147

Used in: TEKSignature, TemporaryExposureKeyExport

message TEKSignature

covidshield.proto:190

Used in: TEKSignatureList

message TEKSignatureList

covidshield.proto:185

message TemporaryExposureKey

covidshield.proto:170

Used in: TemporaryExposureKeyExport, Upload

message TemporaryExposureKeyExport

covidshield.proto:124

message Upload

covidshield.proto:99

Upload is the decrypted type of the `payload` field in EncryptedUploadRequest.