Patent ID: 9596221
Date: 2017-03-14
CPC Classifications: G06F,H04L

Claim:
1. A method for encryption of user data for storage on a remote server, comprising: collecting, by a software client executed by a hardware processor, one or more sets of user authentication data from a user device, wherein the user authentication data includes one or more sets of: user's login and password, user's email account name and password, user's social network account name and password, user's instant messaging account name and password, one or more user's biometric identifiers, one or more unique identifiers of the user device, and geolocation data of the user device; performing user authentication using the one or more sets of user authentication data; when user authentication is successful, calculating a hash of at least one set of the user authentication data; generating an encryption key from the hash of the user authentication data; encrypting the user data using the generated encryption key; transmitting the encrypted user data to the remote network server for storage; and periodically encrypting the user data by at least: generating random data that are used as an additional input to a one-way function that hashes a selected portion of the user authentication data for each unique user, generating a new encryption key based on a hash result of the one-way function, and encrypting the user data using the new encryption key.