-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathTemporaryExposureKeyExport.proto
41 lines (41 loc) · 1.59 KB
/
TemporaryExposureKeyExport.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
syntax = "proto2";
message TemporaryExposureKeyExport {
// Time window of keys in this batch based on arrival to server, in UTC seconds
optional fixed64 start_timestamp = 1;
optional fixed64 end_timestamp = 2;
// Region for which these keys came from (e.g., country)
optional string region = 3;
// E.g., File 2 in batch size of 10. Ordinal, 1-based numbering.
optional int32 batch_num = 4;
optional int32 batch_size = 5;
// Information about associated signatures
repeated SignatureInfo signature_infos = 6;
// The TemporaryExposureKeys themselves
repeated TemporaryExposureKey keys = 7;
}
message SignatureInfo {
// Apple App Store Application Bundle ID
optional string app_bundle_id = 1;
// Android App package name
optional string android_package = 2;
// Key version for rollovers
// Must be in character class [a-zA-Z0-9_]
optional string verification_key_version = 3;
// Alias with which to identify public key to be used for verification
// Must be in character class [a-zA-Z0-9_]
optional string verification_key_id = 4;
// ASN.1 OID for Algorithm Identifier. Supported algorithms are
// either 1.2.840.10045.4.3.2 or 1.2.840.10045.4.3.4
optional string signature_algorithm = 5;
}
message TemporaryExposureKey {
// Key of infected user
optional bytes key_data = 1;
// Varying risk associated with a key depending on diagnosis method
optional int32 transmission_risk_level = 2;
// The interval number since epoch for which a key starts
optional int32 rolling_start_interval_number = 3;
// Increments of 10 minutes describing how long a key is valid
optional int32 rolling_period = 4
[default = 144]; // defaults to 24 hours
}