Data synchronization
First Claim
1. A method performed under control of a client device, the method comprising:
- connecting to a server based at least, in part, on user account login information;
receiving, from the server, a data file stored in connection with a user account;
storing the received data file on a local data storage;
receiving a request to logout the client device;
responsive to a determination that either,the client device is disconnected from the server, orthe data file stored on the local data storage has been modified after being stored and the modified data file is out-of-synchronization with the data file stored in connection with the user account,encrypting the data file stored on the local data storage;
generating an encryption key based on at least one of the user account login information or device information of the client device;
transmitting the encryption key to the server,wherein the encrypting the data file is based at least, in part, on the encryption key;
deleting the encryption key after the encrypting the data file;
reconnecting to the server based at least, in part, on the user account login information; and
transmitting, to the server, the encrypted data file stored on the local data storage to update the data file stored in connection with the user account on the server after the client device reconnects to the server.
5 Assignments
0 Petitions
Accused Products
Abstract
Technologies are generally described for a data synchronization scheme. In some examples, a method performed under control of a client device may include connecting to a server based at least in part on user account login information; receiving, from the server, a data file stored in connection with the user account; storing the received data file in a local data storage; receiving a request to logout the client device; determining that the client device is disconnected from the server and/or that the data file stored on the local data storage is not synchronized with the data file stored in connection with the user account; and encrypting the data file stored on the local data storage.
-
Citations
9 Claims
-
1. A method performed under control of a client device, the method comprising:
-
connecting to a server based at least, in part, on user account login information; receiving, from the server, a data file stored in connection with a user account; storing the received data file on a local data storage; receiving a request to logout the client device; responsive to a determination that either, the client device is disconnected from the server, or the data file stored on the local data storage has been modified after being stored and the modified data file is out-of-synchronization with the data file stored in connection with the user account, encrypting the data file stored on the local data storage; generating an encryption key based on at least one of the user account login information or device information of the client device; transmitting the encryption key to the server, wherein the encrypting the data file is based at least, in part, on the encryption key; deleting the encryption key after the encrypting the data file; reconnecting to the server based at least, in part, on the user account login information; and transmitting, to the server, the encrypted data file stored on the local data storage to update the data file stored in connection with the user account on the server after the client device reconnects to the server. - View Dependent Claims (2, 3)
-
-
4. A client device, comprising:
-
a user interface configured to receive at least one of a request to connect to a server or a request to logout the client device; a communication interface configured to connect to the server based at least, in part, on user account login information and to receive, from the server, a data file stored in connection with a user account; a memory configured to store instructions; and a processor operatively coupled to the user interface, the communication interface, and the memory, wherein the processor is configured to execute the instructions stored in the memory to; store the received data file on the memory; and based on a determination that either the user interface has received the request to logout the client device or that the client device is disconnected from the server, encrypt the data file stored on the memory, wherein the processor is further configured to execute the instructions stored in the memory to generate an encryption key based on at least one of the user account login information or device information of the client device, wherein the communication interface is further configured to transmit the encryption key to the server, wherein the processor is configured to execute the instructions stored in the memory to encrypt the data file stored on the memory based at least, in part, on the encryption key, wherein the processor is further configured to execute the instructions stored in the memory to delete the encryption key after the data file is encrypted, wherein the communication interface is further configured to transmit, to the server, the encrypted data file stored in the memory to update the data file stored in connection with the user account on the server, and wherein the transmission is performed after the client device is reconnected to the server based at least, in part, on the user account login information. - View Dependent Claims (5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium having stored executable instructions that, in response to execution, cause a client device to perform or control performance of operations, comprising:
-
connect to a server based at least, in part, on user account login information; identify a data file received from the server, wherein the data file was stored in connection with a user account; store the data file on a local data storage; modify the data file stored on the local data storage in accordance with an input to the client device; detect a request to logout the client device; encrypt the modified data file, based on a determination that either the client device is disconnected from the server or that the modified data file is out-of-synchronization with the data file stored in connection with the user account; generate an encryption key based on at least one of the user account login information or device information of the client device; transmit the encryption key to the server, wherein the encryption of the data file is based at least, in part, on the encryption key; delete the encryption key after the encryption of the data file; reconnect to the server based at least, in part, on the user account login information; and transmit, to the server, the encrypted data file stored on the local data storage. - View Dependent Claims (9)
-
Specification