1syntax = "proto2"; 2 3package android.os.statsd.conscrypt; 4 5import "frameworks/proto_logging/stats/atoms.proto"; 6import "frameworks/proto_logging/stats/atom_field_options.proto"; 7import "frameworks/proto_logging/stats/enums/conscrypt/ct/enums.proto"; 8 9option java_package = "com.android.os.conscrypt"; 10 11extend Atom { 12 optional CertificateTransparencyLogListStateChanged certificate_transparency_log_list_state_changed = 934 [(module) = "conscrypt"]; 13 optional ConscryptServiceUsed conscrypt_service_used = 965 [(module) = "conscrypt"]; 14 optional CertificateTransparencyVerificationReported certificate_transparency_verification_reported = 989 [(module) = "conscrypt"]; 15} 16 17/* 18 * Pushed atom on how successful was the loading of the log list. 19 * Pushed from: 20 * external/conscrypt/common/src/main/java/org/conscrypt/metrics/StatsLogImpl.java 21 */ 22message CertificateTransparencyLogListStateChanged { 23 // The status of the log list. 24 optional LogListStatus status = 1; 25 26 // The compatibility version. 27 optional LogListCompatibilityVersion loaded_compat_version = 2; 28 29 // The minimum compatibility version available. 30 optional LogListCompatibilityVersion min_compat_version = 3; 31 32 // Log list version. 33 optional int32 major_version = 4; 34 optional int32 minor_version = 5; 35} 36 37/* 38 * Pushed atom on certificate transparency verification outcome. 39 * Pushed from: 40 * external/conscrypt/common/src/main/java/org/conscrypt/metrics/StatsLogImpl.java 41 */ 42message CertificateTransparencyVerificationReported { 43 // The outcome of the verification. 44 optional VerificationResult result = 1; 45 46 // Why was the verification triggered? Is it a default or opt-in by the app? 47 optional VerificationReason reason = 2; 48 49 // Log list version and the compatibility version. 50 optional LogListCompatibilityVersion policy_compatibility_version = 3; 51 optional int32 major_version = 4; 52 optional int32 minor_version = 5; 53 54 // The number of SCTs found for each origin. 55 optional int32 num_cert_scts = 6; 56 optional int32 num_ocsp_scts = 7; 57 optional int32 num_tls_scts = 8; 58} 59 60/** 61 * Pushed algorithm usage counters from Conscrypt. 62 * Pushed from: 63 * external/conscrypt/common/src/main/java/org/conscrypt/metrics/StatsLogImpl.java 64 */ 65 66enum Algorithm { 67 UNKNOWN_ALGORITHM = 0; 68 CIPHER = 1; 69 SIGNATURE = 2; 70} 71 72enum Cipher { 73 UNKNOWN_CIPHER = 0; 74 AES = 1; 75 DES = 2; 76 DESEDE = 3; 77 DSA = 4; 78 BLOWFISH = 5; 79 CHACHA20 = 6; 80 RSA = 7; 81 ARC4 = 8; 82} 83 84enum Mode { 85 NO_MODE = 0; 86 CBC = 1; 87 CTR = 2; 88 ECB = 3; 89 CFB = 4; 90 CTS = 5; 91 GCM = 6; 92 GCM_SIV = 7; 93 OFB = 8; 94 POLY1305 = 9; 95} 96 97enum Padding { 98 NO_PADDING = 0; 99 OAEP_SHA512 = 1; 100 OAEP_SHA384 = 2; 101 OAEP_SHA256 = 3; 102 OAEP_SHA224 = 4; 103 OAEP_SHA1 = 5; 104 PKCS1 = 6; 105 PKCS5 = 7; 106 ISO10126 = 8; 107} 108message ConscryptServiceUsed { 109 optional Algorithm algorithm = 1; 110 optional Cipher cipher = 2; 111 optional Mode mode = 3; 112 optional Padding padding = 4; 113} 114