Conflict resolution for keychain syncing
First Claim
1. A non-transitory machine-readable medium storing a program which when executed by at least one processing unit of a first device in a set of peer devices synchronizes a keychain stored on the first device with a set of keychains stored on other devices in the set of peer devices, each keychain comprising a set of keychain items, the set of peer devices communicatively coupled to one another in a peer-to-peer network through a set of network storage devices, the program comprising sets of instructions for:
- receiving a notification from the set of network storage devices that a second device in the set of peer devices has stored, at a time when the first device has been offline, a first keychain item in the set of network storage devices for retrieval by the first device;
retrieving, from the set of network storage devices, the first keychain item for updating the keychain stored on the first device;
determining whether a first unique identifier associated with the first keychain item matches a second unique identifier associated with a second keychain item in the keychain stored on the first device; and
resolving, when the second unique identifier is determined to match the first unique identifier, a conflict between the first and second keychain items and updating the second keychain item based on resolution of the conflict.
0 Assignments
0 Petitions
Accused Products
Abstract
Some embodiments provide a program that synchronizes a keychain stored on a device with a set of other devices. The keychain includes a set of keychain items. The program receives (1) a list of keychain items for updating the keychain stored on the device and (2) data representing the keychain items specified in the list of keychain items. For each keychain item in the list of keychain items, the program updates the keychain stored on the device with the data that represents the keychain item.
-
Citations
20 Claims
-
1. A non-transitory machine-readable medium storing a program which when executed by at least one processing unit of a first device in a set of peer devices synchronizes a keychain stored on the first device with a set of keychains stored on other devices in the set of peer devices, each keychain comprising a set of keychain items, the set of peer devices communicatively coupled to one another in a peer-to-peer network through a set of network storage devices, the program comprising sets of instructions for:
-
receiving a notification from the set of network storage devices that a second device in the set of peer devices has stored, at a time when the first device has been offline, a first keychain item in the set of network storage devices for retrieval by the first device; retrieving, from the set of network storage devices, the first keychain item for updating the keychain stored on the first device; determining whether a first unique identifier associated with the first keychain item matches a second unique identifier associated with a second keychain item in the keychain stored on the first device; and resolving, when the second unique identifier is determined to match the first unique identifier, a conflict between the first and second keychain items and updating the second keychain item based on resolution of the conflict. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of synchronizing a keychain stored on a first device in a set of peer devices with a set of keychains stored on other devices in the set of peer devices, each keychain comprising a set of keychain items, the set of peer devices communicatively coupled to one another in a peer-to-peer network through a set of network storage devices, the method comprising:
-
receiving a notification from the set of network storage devices that a second device in the set of peer devices has stored, at a time when the first device has been offline, a first keychain item in the set of network storage devices for retrieval by the first device; retrieving, from the set of network storage devices, the first keychain item for updating the keychain stored on the first device; determining whether a first unique identifier associated with the first keychain item matches a second unique identifier associated with a second keychain item in the keychain stored on the first device; and resolving, when the second unique identifier is determined to match the first unique identifier, a conflict between the first and second keychain items and updating the second keychain item based on resolution of the conflict. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A first device, comprising:
-
a set of physical processing units for executing sets of instructions; and a non-transitory machine readable medium storing a program which when executed by at least one of the physical processing units synchronizes a keychain stored on the first device with a set of keychains stored on other devices in a set of peer devices, each keychain comprising a set of keychain items, the set of peer devices communicatively coupled to one another in a peer-to-peer network through a set of network storage devices, the program comprising sets of instructions for; receiving a notification from the set of network storage devices that a second device in the set of peer devices has stored, at a time when the first device has been offline, a first keychain item in the set of network storage devices for retrieval by the first device; retrieving, from the set of network storage devices, the first keychain item for updating the keychain stored on the first device; determining whether a first unique identifier associated with the first keychain item matches a second unique identifier associated with a second keychain item in the keychain stored on the first device; and resolving, when the second unique identifier is determined to match the first unique identifier, a conflict between the first and second keychain items and updating the second keychain item based on resolution of the conflict. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification