// Copyright 2019 Google LLC. All rights reserved. // // This is a pared down copy of the file in: // google3/google/chrome/widevine/deviceinfo/v1 // // Do not modify this file without keeping the other file in sync. // Items in the original file but removed here include. // - comments // - SignedDeviceInfoService definition // - Google api annotations. // // TODO(blueeyes, yawenyu): Figure out how we can avoid having two copies // of the same file. syntax = "proto3"; package video_widevine; import "protos/public/hash_algorithm.proto"; option csharp_namespace = "Google.Chrome.Widevine.Deviceinfo.V1"; option java_multiple_files = true; option java_outer_classname = "DeviceCertificateStatusProtos"; option java_package = "com.google.chrome.widevine.deviceinfo.v1"; // GCWDI == Google Chrome Widevine Device Info option objc_class_prefix = "GCWDI"; // A request sent to Widevine Provisioning Server (keysmith) to retrieve // 'DeviceCertificateStatusList'. message DeviceCertificateStatusListRequest { // The version of sdk. Required. string sdk_version = 1; // POSIX time, in seconds, when this request was created. Required. uint64 sdk_time_seconds = 2; // The serialized service certificate used to sign the request. Required. bytes service_certificate = 3; } // A device certificate status resource in the Widevine Signed Device Info // API. It intended to carry information about DRM and OEM certificate // status and device information for a specific system ID. The information is // intended to be shared publicly. // A signed request sent to Widevine Provisioning Server (keysmith) to retrieve // 'DeviceCertificateStatusList'. message SignedDeviceInfoRequest { // A serialized DeviceCertificateStatusListRequest. Required. bytes device_certificate_status_list_request = 1; // TODO(yawenyu): What's the signature algorithm and the key used? bytes signature = 2; // Optional field that indicates the hash algorithm used in signature scheme. HashAlgorithmProto hash_algorithm = 3; } // Contains a serialized DeviceCertificateStatusList and the signature. message SignedDeviceInfo { // Serialized DeviceCertificateStatusList. Required. bytes device_certificate_status_list = 1; // Signature of device_certificate_status_list_request. Signed with root // certificate private key using RSASSA-PSS. Required. bytes signature = 2; // Optional field that indicates the hash algorithm used in signature scheme. HashAlgorithmProto hash_algorithm = 3; }