IP Library Granted Patent US 10,176,310
Granted Patent B2
US 10,176,310 · App. 14/218,743 · Granted Jan 8, 2019

System and method for privacy-enhanced data synchronization

Inventor: Davit Baghdasaryan (San Francisco, CA)
Assignee: Nok Nok Labs, Inc.
G06F21/32G06F21/577G06Q20/204G06Q20/3224G06Q20/3274G06Q20/3278G06Q20/4012G06Q20/40145G06Q20/42G06Q20/425G07F19/20H04L9/0819H04L9/0822H04L9/0841H04L9/3231H04L9/3247H04L9/3297H04L63/0492H04L63/08H04L63/083H04L63/0861H04L63/20G06F2221/2115H04L2209/805H04L2463/102H04W12/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,176,310
App. No.
14/218,743
Granted
Jan 8, 2019
Kind
B2
Abstract

A system, apparatus, method, and machine readable medium are described for establishing a trust circle between multiple devices. For example, one embodiment of a method comprises: transmitting first data from a first device to a second device over a secure communication channel, the first data including at least one key and an identification code identifying a trust circle which includes the first device; the second device generating second data using at least a portion of the first data including the identification code and transmitting the second data over a network to a service; the first device connecting to the service using the identification code to identify the second data, validating the integrity of the second data, and responsively generating third data; and the service storing at least a portion of the second data and the third data to establish a trust relationship between the first device and the second device.

Claims (42)

1. A method for establishing trust between two or more devices comprising:

transmitting first data from a first device to a second device over a secure communication channel, the first data including at least a public key of the first device, a session key randomly generated by the first device, and an identification code identifying a trust circle which includes the first device;

the second device generating second data using at least a portion of the first data including the identification code and transmitting the second data over a network to a service, the second data comprising the public key of the second device combined with a timestamp, wherein the combination is encrypted with the session key, the second data further comprising a signature over the public key of the first device using a private key of the second device;

the first device connecting to the service using the identification code to identify the second data, the first device validating the integrity of the second data and responsively generating third data, the third data comprising a signature over a public key of the second device using a private key of the first device; and

the service storing at least a portion of the second data and the third data to establish a trust relationship between the first device and the second device, wherein the second device is added to the trust circle on the service with a combination of (1) the signature over the public key of the first device using the private key of the second device and (2) the signature over the public key of the second device using the private key of the first device.

2. The method as in claim 1 wherein validating the integrity of the second data comprises validating a public key of the second device and the timestamp using the session key.

3. The method as in claim 1 further comprising:

performing data synchronization operations between the first and second devices in which the data being synchronized is transmitted and stored on the service in an encrypted format.

4. A method for synchronizing data comprising:

a first device downloading trust data from a service, the trust data associated a set of one or more other devices, including a second device, which are considered trusted devices;

the first device generating a first encryption key and deriving a session key for each of the one or more other devices including the second device;

the first device encrypting the first encryption key with each of the session keys to generate an encrypted encryption key for each of the one or more other devices;

the first device encrypting the data to be synchronized with the first encryption key to generate encrypted data and providing each of the encrypted encryption keys and the encrypted data to the service;

the second device deriving its session key, retrieving the encrypted data and the encrypted encryption key from the service; and

the second device decrypting the encrypted encryption key using the session key and using the first encryption key to decrypt the data to be synchronized.

5. The method as in claim 4 wherein the trust data comprises a chain of authorization blocks each of which asserts a trust relationship between two devices.

6. The method as in claim 5 wherein the trust data includes public keys of the trusted devices.

7. The method as in claim 4 wherein the session keys for each of the devices are derived using the Diffie-Hellman key exchange algorithm.

8. The method as in claim 7 wherein the first device derives the session key for the second device using a public key of the second device and a private key of the first device.

9. The method as in claim 8 wherein the second device derives the session key for the first device using a public key of the first device and a private key of the first device.

10. The method as in claim 4 wherein generating the first encryption key comprises generating a random encryption key (REK).

11. The method as in claim 4 wherein the data to be synchronized is selected from the group consisting of: multimedia data files, productivity data files, client configuration data, and/or service registration data.

12. The method as in claim 11 wherein the service registration data comprises data usable for authentication with each service with which a device is registered.

13. A method implemented in a circle cloud comprising a plurality of storage servers, the method comprising:

logically grouping, by a trust chain hardware, multiple device into a trust circle, wherein any device in the trust circle trusts any other devices in the trust circle;

implementing, by a circle channel hardware, private data synchronization for synchronizing private data across multiple devices in the trust circle through the cloud storage service, where the data to be synchronized is stored in the cloud storage service in a secure format and the trust circle is identified with a circle-id;

performing a hash of the circle-id and storing the hash on a circle-cloud within the cloud storage service instead of on each of the devices; and

wherein each device is provided with a public and private key for authorizing other devices to be part of the trust circle.

14. The method as in claim 13 further comprising:

generating a trust-chain to indicate trust relationships between the devices within the same trust circle.

15. The method as in claim 14 wherein the devices use a key exchange algorithm to generate mutual session keys and encrypt the private data with those keys.

16. The method as in claim 15 wherein the key exchange algorithm comprises the Diffie-Hellman algorithm.

17. The method as in claim 15 wherein circle-cloud uses a challenge response protocol to authenticate a device before allowing it to put any data in a secure communication channel provided by the circle cloud.

18. The method as in claim 17 wherein a permanent circle group key is used to encrypt the private data to be synchronized.

19. The method as in claim 18 further comprising:

executing an application on each of the devices to share a user's private data among multiple other devices via the circle-cloud and stores an encrypted backup of the private data in the circle-cloud.

20. The method as in claim 19 wherein each device's private key (d.priv) and all operations that use this key are implemented inside an authenticator for remotely authenticating a user over a network.

21. The method as in claim 20 further comprising:

performing private data synchronization for user-controlled trust delegation to share authenticator registrations with a new device.

22. The method as in claim 20 further comprising:

using the private data synchronization for user-controlled trust delegation to a new device to share new registrations among a user's devices wherein a user does not need to authenticate with an authenticator every time when a new registration is being delegated to other devices.

23. The method as in claim 22 wherein the devices include a set of authenticators belonging to the same user and forming a circle, wherein these authenticators use the private data synchronization to synchronize authentication key pairs in order to share registrations of a single authenticator with other authenticators belonging to the same circle.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 71257 FRAME: 566. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2025
From: VENTURE LENDING & LEASING VII, INC.; VENTURE LENDING & LEASING VIII, INC.
To: NOK NOK LABS, INC.
Reel/Frame 073057/0274 →
SECURITY INTEREST Recorded Jul 1, 2025
From: NOK NOK LABS, INC.
To: MUFG BANK, LTD.
Reel/Frame 071773/0493 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY RECORDED PATENT APPLICATION NUMBER 14488747 PREVIOUSLY RECORDED ON REEL 71273 FRAME 25. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 18, 2025
From: VENTURE LENDING & LEASING IX, INC.; VENTURE LENDING & LEASING VIII, INC.
To: NOK NOK LABS, INC.
Reel/Frame 071773/0352 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2025
From: VENTURE LENDING & LEASING VIII, INC.; VENTURE LENDING & LEASING IX, INC.
To: NOK NOK LABS, INC.
Reel/Frame 071273/0025 →
RELEASE OF SECURITY INTEREST Recorded May 29, 2025
From: VENTURE LENDING & LEASING VII, INC.; VENTURE LENDING & LEASING VIII, INC.
To: NOK NOK LABS, INC.
Reel/Frame 071257/0566 →
SECURITY INTEREST Recorded Jul 5, 2018
From: NOK NOK LABS, INC.
To: VENTURE LENDING & LEASING IX, INC.; VENTURE LENDING & LEASING VIII, INC.
Reel/Frame 046492/0870 →
SECURITY INTEREST Recorded Jan 12, 2017
From: NOK NOK LABS, INC.
To: VENTURE LENDING & LEASING VII, INC.; VENTURE LENDING & LEASING VIII, INC.
Reel/Frame 041352/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2015
From: BAGHDASARYAN, DAVIT
To: NOK NOK LAB, INC.
Reel/Frame 034913/0148 →
Continuity (2)
Provisional Application 61804568 · Mar 22, 2013
Related Publication 20140289528A1 · Sep 25, 2014
Cited By (8)
US 12,367,726 US 12,495,298 US 12,511,966 US 12,609,112 US 12,620,281 US 12,621,664 US 12,633,185 US 12,651,500