1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // TODO(xhwang): Move this out of media if it is needed anywhere else.
6 module media.interfaces;
8 // Allows authorized services to verify that the underlying platform is trusted.
9 // An example of a trusted platform is a Chrome OS device in verified boot mode.
10 // This can be used for protected content playback.
13 // - |service_id|: the service ID for the |challenge|.
14 // - |challenge|: the challenge data.
17 // - |success|: whether the platform is successfully verified. If true/false the
18 // following 3 parameters should be non-empty/empty.
19 // - |signed_data|: the data signed by the platform.
20 // - |signed_data_signature|: the signature of the signed data block.
21 // - |platform_key_certificate|: the device specific certificate for the
23 interface PlatformVerification {
24 ChallengePlatform(string service_id, string challenge) =>
27 string? signed_data_signature,
28 string? platform_key_certificate);