| // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| // |
| // Sync protocol datatype extension for nigori keys. |
| |
| // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change |
| // any fields in this file. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| option retain_unknown_fields = true; |
| |
| package sync_pb; |
| |
| import "encryption.proto"; |
| import "sync.proto"; |
| |
| message NigoriKey { |
| optional string name = 1; |
| optional bytes user_key = 2; |
| optional bytes encryption_key = 3; |
| optional bytes mac_key = 4; |
| } |
| |
| message NigoriKeyBag { |
| repeated NigoriKey key = 2; |
| } |
| |
| // Properties of nigori sync object. |
| message NigoriSpecifics { |
| optional EncryptedData encrypted = 1; |
| // True if |encrypted| is encrypted using a passphrase |
| // explicitly set by the user. |
| optional bool using_explicit_passphrase = 2; |
| |
| // Booleans corresponding to whether a datatype should be encrypted. |
| // Passwords are always encrypted, so we don't need a field here. |
| optional bool encrypt_bookmarks = 3; |
| optional bool encrypt_preferences = 4; |
| optional bool encrypt_autofill_profile = 5; |
| optional bool encrypt_autofill = 6; |
| optional bool encrypt_themes = 7; |
| optional bool encrypt_typed_urls = 8; |
| optional bool encrypt_extensions = 9; |
| optional bool encrypt_sessions = 10; |
| optional bool encrypt_apps = 11; |
| } |
| |
| extend EntitySpecifics { |
| optional NigoriSpecifics nigori = 47745; |
| } |
| |