blob: 4e8b8752cfdf6c3f14e86365d60713ef6e2e7045 [file] [log] [blame]
// 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;
}