×

Secure cloud data sharing

  • US 9,767,299 B2
  • Filed: 03/11/2014
  • Issued: 09/19/2017
  • Est. Priority Date: 03/15/2013
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method for sharing a digital file, wherein the digital file is stored in a cloud-based storage system, wherein the cloud-based storage system comprises a first user node operable by a sending user wherein the sending user is associated with a first user identifier and a first user private identification key known only to the first user node, wherein the cloud-based storage system also comprises a second user node operable by a receiving user associated with a second user identifier and a second user private identification key known only to the second user node, the method comprising:

  • encrypting, via a processor of the first user node and using a file key generated by the processor of the first user node, a first file wherein a first digitally encrypted file is created,wherein the file key is not retained by the first user node,storing, via the processor of the first user node, the first digitally encrypted file in a cloud server;

    regenerating, via the processor of the first user node, the file key, in response to an instruction to share the first digitally encrypted file with the second user node,wherein the file key is usable to decrypt the first digitally encrypted file,generating, via the processor of the first user node, a share message, the share message including the generated file key and identifying at least the second user node and the first digitally encrypted file stored in the cloud server;

    transmitting the share message from the processor of the first user node to a network server comprising a network server computer processor that is a component of the first user node and a network server memory that is a component of the second user node,wherein the network server processor and the network server memory are separate and disposed at different locations;

    retrieving, from the network server memory that is a component of the second user node, a second user private identification key identified in the share message, wherein the network server memory contains a database comprising;

    the first user identifier and the first user private identification key; and

    the second user identifier and the second user private identification key,encrypting, via the network server computer processor the regenerated file key using the second user private identification key in the database contained in the network server memory to generate a share key;

    transmitting the share key from the network server to the cloud server to store the share key in the cloud server, wherein the share key is stored in the cloud server with a random dynamically-generated storage name,maintaining, by the network server memory, an index record of share keys and random dynamically-generated storage names associated with the share keys;

    notifying, by the network server computer processor, the second user node of at least one of the first digitally encrypted file and the random dynamically-generated storage name stored in the cloud server;

    retrieving, via a processor of the second user node, the digitally encrypted file and the share key from the cloud server by accessing the random dynamically-generated storage name;

    generating, via the processor of the second user node, the second user private identification key;

    decrypting, via the processor of the second user node, the share key using the second user private identification key to reconstruct the file key known only to the first user node; and

    decrypting, via the processor of the second user node, the first digitally encrypted file using the reconstructed file key.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×