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

Side by Side Diff: sync/protocol/nigori_specifics.proto

Issue 10916036: [Sync] Implement keystore migration support. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years, 3 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
« no previous file with comments | « sync/protocol/client_debug_info.proto ('k') | sync/protocol/proto_enum_conversions.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // Sync protocol datatype extension for nigori keys. 5 // Sync protocol datatype extension for nigori keys.
6 6
7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change 7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
8 // any fields in this file. 8 // any fields in this file.
9 9
10 syntax = "proto2"; 10 syntax = "proto2";
(...skipping 29 matching lines...) Expand all
40 40
41 // The platform of the device (ChromeOS, Linux, Mac, or Windows). 41 // The platform of the device (ChromeOS, Linux, Mac, or Windows).
42 optional string platform = 3; 42 optional string platform = 3;
43 43
44 // The Chrome version of the sync-enabled Chrome browser. 44 // The Chrome version of the sync-enabled Chrome browser.
45 optional string chrome_version = 4; 45 optional string chrome_version = 4;
46 } 46 }
47 47
48 // Properties of nigori sync object. 48 // Properties of nigori sync object.
49 message NigoriSpecifics { 49 message NigoriSpecifics {
50 optional EncryptedData encrypted = 1; 50 optional EncryptedData encryption_keybag = 1;
51 // True if |encrypted| is encrypted using a passphrase 51 // Once keystore migration is performed, we have to freeze the keybag so that
52 // explicitly set by the user. 52 // older clients (that don't support keystore encryption) do not attempt to
53 optional bool using_explicit_passphrase = 2; 53 // update the keybag.
54 // Previously |using_explicit_passphrase|.
55 optional bool keybag_is_frozen = 2;
54 56
55 // Obsolete encryption fields. These were deprecated due to legacy versions 57 // Obsolete encryption fields. These were deprecated due to legacy versions
56 // that understand their usage but did not perform encryption properly. 58 // that understand their usage but did not perform encryption properly.
57 // optional bool deprecated_encrypt_bookmarks = 3; 59 // optional bool deprecated_encrypt_bookmarks = 3;
58 // optional bool deprecated_encrypt_preferences = 4; 60 // optional bool deprecated_encrypt_preferences = 4;
59 // optional bool deprecated_encrypt_autofill_profile = 5; 61 // optional bool deprecated_encrypt_autofill_profile = 5;
60 // optional bool deprecated_encrypt_autofill = 6; 62 // optional bool deprecated_encrypt_autofill = 6;
61 // optional bool deprecated_encrypt_themes = 7; 63 // optional bool deprecated_encrypt_themes = 7;
62 // optional bool deprecated_encrypt_typed_urls = 8; 64 // optional bool deprecated_encrypt_typed_urls = 8;
63 // optional bool deprecated_encrypt_extensions = 9; 65 // optional bool deprecated_encrypt_extensions = 9;
(...skipping 20 matching lines...) Expand all
84 // If true, all current and future datatypes will be encrypted. 86 // If true, all current and future datatypes will be encrypted.
85 optional bool encrypt_everything = 24; 87 optional bool encrypt_everything = 24;
86 88
87 optional bool encrypt_extension_settings = 25; 89 optional bool encrypt_extension_settings = 25;
88 optional bool encrypt_app_notifications = 26; 90 optional bool encrypt_app_notifications = 26;
89 optional bool encrypt_app_settings = 27; 91 optional bool encrypt_app_settings = 27;
90 92
91 // User device information. Contains information about each device that has a 93 // User device information. Contains information about each device that has a
92 // sync-enabled Chrome browser connected to the user account. 94 // sync-enabled Chrome browser connected to the user account.
93 repeated DeviceInformation device_information = 28; 95 repeated DeviceInformation device_information = 28;
94 96
95 // Enable syncing favicons as part of tab sync. 97 // Enable syncing favicons as part of tab sync.
96 optional bool sync_tab_favicons = 29; 98 optional bool sync_tab_favicons = 29;
99
100 // The state of the passphrase required to decrypt |encryption_keybag|.
101 enum PassphraseType {
102 // Gaia-based encryption passphrase. Deprecated.
103 IMPLICIT_PASSPHRASE = 1;
104 // Keystore key encryption passphrase. Uses |keystore_bootstrap| to
105 // decrypt |encryption_keybag|.
106 KEYSTORE_PASSPHRASE = 2;
107 // Previous Gaia-based passphrase frozen and treated as a custom passphrase.
108 FROZEN_IMPLICIT_PASSPHRASE = 3;
109 // User provided custom passphrase.
110 CUSTOM_PASSPHRASE = 4;
111 }
112 optional PassphraseType passphrase_type = 30
113 [default = IMPLICIT_PASSPHRASE];
114
115 // The keystore decryptor token blob. Encrypted with the keystore key, and
116 // contains the encryption key used to decrypt |encryption_keybag|.
117 // Only set if passphrase_state == KEYSTORE_PASSPHRASE.
118 optional EncryptedData keystore_decryptor_token = 31;
119
120 // The time (in epoch milliseconds) at which the keystore migration was
121 // performed.
122 optional int64 keystore_migration_time = 32;
97 } 123 }
98 124
OLDNEW
« no previous file with comments | « sync/protocol/client_debug_info.proto ('k') | sync/protocol/proto_enum_conversions.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698