Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Side by Side Diff: chromeos/attestation/attestation_constants.h

Issue 20873002: Added support for the content protection profile to AttestationFlow. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_ 5 #ifndef CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_
6 #define CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_ 6 #define CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_
7 7
8 #include "chromeos/chromeos_export.h" 8 #include "chromeos/chromeos_export.h"
9 9
10 namespace chromeos { 10 namespace chromeos {
11 namespace attestation { 11 namespace attestation {
12 12
13 // Options available for customizing an attestation certificate.
14 enum AttestationCertificateOptions {
15 CERTIFICATE_OPTION_NONE = 0,
16 // A stable identifier is simply an identifier that is not affected by device
17 // state changes, including device recovery.
18 CERTIFICATE_INCLUDE_STABLE_ID = 1,
19 // Device state information contains a quoted assertion of whether the device
20 // is in verified mode.
21 CERTIFICATE_INCLUDE_DEVICE_STATE = 1 << 1,
22 };
23
24 // Key types supported by the Chrome OS attestation subsystem. 13 // Key types supported by the Chrome OS attestation subsystem.
25 enum AttestationKeyType { 14 enum AttestationKeyType {
26 // The key will be associated with the device itself and will be available 15 // The key will be associated with the device itself and will be available
27 // regardless of which user is signed-in. 16 // regardless of which user is signed-in.
28 KEY_DEVICE, 17 KEY_DEVICE,
29 // The key will be associated with the current user and will only be available 18 // The key will be associated with the current user and will only be available
30 // when that user is signed-in. 19 // when that user is signed-in.
31 KEY_USER, 20 KEY_USER,
32 }; 21 };
33 22
34 // Options available for customizing an attestation challenge response. 23 // Options available for customizing an attestation challenge response.
35 enum AttestationChallengeOptions { 24 enum AttestationChallengeOptions {
36 CHALLENGE_OPTION_NONE = 0, 25 CHALLENGE_OPTION_NONE = 0,
37 // Indicates that a SignedPublicKeyAndChallenge should be embedded in the 26 // Indicates that a SignedPublicKeyAndChallenge should be embedded in the
38 // challenge response. 27 // challenge response.
39 CHALLENGE_INCLUDE_SIGNED_PUBLIC_KEY = 1, 28 CHALLENGE_INCLUDE_SIGNED_PUBLIC_KEY = 1,
40 }; 29 };
41 30
42 // Available attestation certificate profiles. 31 // Available attestation certificate profiles.
43 enum AttestationCertificateProfile { 32 enum AttestationCertificateProfile {
44 // Uses the following certificate options: 33 // Uses the following certificate options:
45 // CERTIFICATE_INCLUDE_STABLE_ID 34 // CERTIFICATE_INCLUDE_STABLE_ID
46 // CERTIFICATE_INCLUDE_DEVICE_STATE 35 // CERTIFICATE_INCLUDE_DEVICE_STATE
47 PROFILE_ENTERPRISE_MACHINE_CERTIFICATE, 36 PROFILE_ENTERPRISE_MACHINE_CERTIFICATE,
48 // Uses the following certificate options: 37 // Uses the following certificate options:
49 // CERTIFICATE_INCLUDE_DEVICE_STATE 38 // CERTIFICATE_INCLUDE_DEVICE_STATE
50 PROFILE_ENTERPRISE_USER_CERTIFICATE, 39 PROFILE_ENTERPRISE_USER_CERTIFICATE,
40 // A profile for certificates intended for protected content providers.
41 PROFILE_CONTENT_PROTECTION_CERTIFICATE,
51 }; 42 };
52 43
53 // A key name for the Enterprise Machine Key. This key should always be stored 44 // A key name for the Enterprise Machine Key. This key should always be stored
54 // as a DEVICE_KEY. 45 // as a DEVICE_KEY.
55 CHROMEOS_EXPORT extern const char kEnterpriseMachineKey[]; 46 CHROMEOS_EXPORT extern const char kEnterpriseMachineKey[];
56 47
57 // A key name for the Enterprise User Key. This key should always be stored as 48 // A key name for the Enterprise User Key. This key should always be stored as
58 // a USER_KEY. 49 // a USER_KEY.
59 CHROMEOS_EXPORT extern const char kEnterpriseUserKey[]; 50 CHROMEOS_EXPORT extern const char kEnterpriseUserKey[];
60 51
52 // The key name prefix for content protection keys. This prefix must be
53 // appended with an origin-specific identifier to form the final key name.
54 CHROMEOS_EXPORT extern const char kContentProtectionKeyPrefix[];
55
61 } // namespace attestation 56 } // namespace attestation
62 } // namespace chromeos 57 } // namespace chromeos
63 58
64 #endif // CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_ 59 #endif // CHROMEOS_ATTESTATION_ATTESTATION_CONSTANTS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698