69 lines
2.5 KiB
Protocol Buffer
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;
|
|
}
|