Files
media_cas_proxy_sdk/ubuntu/protos/public/signed_device_info.proto
2021-07-12 21:46:29 +00:00

69 lines
2.5 KiB
Protocol Buffer

// 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;
}