×

Process for storing data on a central server

  • US 8,874,908 B2
  • Filed: 11/07/2012
  • Issued: 10/28/2014
  • Est. Priority Date: 11/07/2012
  • Status: Active Grant
First Claim
Patent Images

1. A process for storing data on a central server, a plurality of users of said server each having a user password which is at least used for generating a user key and at least one client with data saved thereon being respectively assigned to at least some of these users and, as required, at least some of these data being subdivided into at least one data block to be uploaded, and, based on a unique data block ID value identifying each data block, it is determined whether a corresponding data block is already present on the server, the data blocks not being present on the server being uploaded to said central server, a data block list to be uploaded being compiled and uploaded to the central server, based on which data can be regenerated in their original form by a data recovery step following a request for data stored on the central server by the user,wherein a file key is generated using a key generation rule which uses an unencrypted file consisting of at least one data block as an integral component for generating said file key;

  • the following steps are carried out for each unencrypted data block on the client, wherein the unencrypted data block is first compressed, in order to determine the data blocks and the data block list to be uploaded to the central server;

    encrypting the unencrypted data block using the generated file key to create an encrypted data block based on a predefined encryption rule;

    generating a unique data block ID value based on the encrypted data block using a method known to the server and assigning of this unique data block ID value to the encrypted data block using a data block ID generation rule predetermined for each user in a data block ID value generating step,communicating this unique data block ID value from the client to the central server in a data block ID value communication step in order to receive a response from the server as to whether the encrypted data block assigned to this data block ID value has to be uploaded to the server, and, based on this response, uploading at least parts of the encrypted data block or information generated there from or not;

    saving said unique data block ID value in the data block list, which is to be uploaded to the server;

    and wherein the following steps are carried out after having completed the above steps for each unencrypted data block;

    encrypting the data block list using the file key;

    generating a unique data block list ID value from the encrypted list of data blocks and assigning said value to the encrypted list of data blocks;

    encrypting the data block list ID value using the user key, which is generated based on a data block list ID value key rule, said rule being managed by and only known to the user;

    encrypting the file key using the user key, which is generated based on a data block list ID value key rule, said rule being managed by and only known to the user;

    uploading the encrypted data block list and the encrypted data block list ID value as well as the encrypted file key from the client to the central server and assigning the encrypted file key to the encrypted data block ID value;

    the unencrypted data blocks, the unencrypted data block list, the unencrypted file key, the unencrypted ID value of the list of data blocks and the user key remaining exclusively on the client;

    and, in the data recovery step, the server sending the data which are stored on the server in their encrypted form, the server being not able to decrypt them, to the client, so that data recovery is only carried out on the client.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×