IP Library Granted Patent US 9,424,433
Granted Patent B2
US 9,424,433 · App. 13/371,633 · Granted Aug 23, 2016

Data storage management

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 9,424,433
App. No.
13/371,633
Granted
Aug 23, 2016
Kind
B2
Abstract

A method of data storage management. A server receives a data upload request from a remote client, the upload request including information identifying the data to be uploaded. The server determines that a duplicate of the data is stored at a data storage device. The server receives proof of possession information derived by the client from the data using additional information known to the server. On the basis of the received information, the server determines whether to allow the client or a user associated with the client to subsequently access the duplicate data stored at the data storage device.

Claims (44)

1. A method of data storage management, the method comprising, at a server:

sending a request to a remote client for a proof of possession information;

receiving a data upload request from the remote client, the data upload request relating to data stored at the remote client and the data upload request including information identifying the data, and wherein the data upload request does not include the data;

determining that a duplicate of the data is stored at a data storage device;

receiving the proof of possession information derived by the client by applying a one way function to a specific portion of the data using client authorization information known to the server and the client, wherein the specific portion of the data is indicated in the request to the client for the proof of possession information, wherein the specific portion of the data is different for different users; and

on the basis of the received information, determining whether to allow the client or a user associated with the client to subsequently access the duplicate data stored at the data storage device.

2. The method of claim 1 , wherein the one way function is applied using any of:

predetermined information known only to the client and the server;

shared knowledge of a specific part of the data;

a collection of hashes of blocks of the data; and

validity period data.

3. The method according to claim 1 , wherein the determination whether to allow the client or user associated with the client to subsequently access the duplicate data stored at the data storage device comprises:

comparing the received proof of possession information derived by the client from the data with proof of possession information derived by the server from the duplicate data using the client authorization information known to the server.

4. A method of data storage management, the method comprising, at a client:

receiving a request from a remote server for proof of possession information; and

sending a data upload request to the remote server, the data upload request relating to data stored at the client and the data upload request requesting that the data to be uploaded to a data storage device, and includes information identifying the data and the proof of possession information derived by the client by applying a one way function to a specific portion of the data using client authorization information known to the server, and wherein the data upload request does not include the data, wherein the specific portion of the data is indicated in the request from the server for the proof of possession information, wherein the specific portion of the data is different for different users.

5. A data storage server comprising:

a transmitter for sending a request to a remote client for proof of possession information;

a receiver for receiving a data upload request from the remote client, the data upload request relating to data stored at the client and the data upload request including information identifying the data, and wherein the data upload request does not include the data;

a processor arranged to determine that a duplicate of the data is stored at a data storage device accessible by the server;

the receiver being further arranged to receive the proof of possession information derived by the client by applying a one way function to a specific portion of the data using client authorization information known to the server, wherein the specific portion of the data is indicated in the request to the client for the proof of possession information, wherein the specific portion of the data is different for different users; and

the processor being further arranged to, on the basis of the received information, determine whether to allow the client or a user associated with the client to subsequently access the duplicate data stored at the data storage device.

6. The server according to claim 5 , wherein the processor is arranged to compare the received proof of possession information derived by the client from the data using client authorization information known to the server, with proof of possession information derived by the server from the duplicate data using the client authorization information known to the server.

7. A client device comprising:

a receiver for receiving a request from a remote server for proof of possession information;

a processor for generating the proof of possession information derived by applying a one way function to a specific portion of data stored at the client device using client authorization information known to the remote server, wherein the specific portion of the data is indicated in the request from the remote server for the proof of possession information, wherein the specific portion of the data is different for different users; and

a transmitter for sending a data upload request to the remote server, the data upload request including information identifying the data and the generated proof of possession information, and wherein the data upload request does not include the data.

8. A non-transitory computer readable medium storing a computer program which, when run on a server, causes the server to behave as a data storage server according to claim 5 .

9. A non-transitory computer readable medium storing a computer program which, when run on a client device, causes the client device to behave as a client device according to claim 7 .

10. A computer program product comprising a non-transitory computer-readable medium bearing computer program code for use with a computer, the computer program code comprising:

code for sending a request to a remote client for a proof of possession information;

code for identifying a data upload request received from the remote client, the data upload request relating to data stored at the remote client and the data upload request including information identifying the data to be uploaded to a data storage device, and wherein the data upload request does not include the data;

code for determining that a duplicate of the data is stored at the data storage device;

code for identifying the proof of possession information received from the client and derived by the client by applying a one way function to a specific portion of the data using client authorization information known to the computer and the client, wherein the specific portion of the data is indicated in the request to the client for the proof of possession information, wherein the specific portion of the data is different for different users; and

code for, on the basis of the received information, determining whether to allow the client or a user associated with the client to subsequently access the duplicate data stored at the data storage device.

11. A computer program product comprising a non-transitory computer-readable medium bearing computer program code for use with a computer, the computer program code comprising:

code for receiving a request from a remote server for proof of possession information;

code for the generating proof of possession information derived by applying a one way function to a specific portion of stored data possessed by the computer and client authorization information known to a remote server, wherein the specific portion of the stored data is indicated in the request to from the server for the proof of possession information, wherein the specific portion of the data is different for different users; and

code for sending a data upload request to the remote server, the data upload request including information identifying the data and the generated proof of possession infounation, and wherein the data upload request does not include the data.

12. The method of claim 4 , further comprising:

before sending the data upload request to the server, receiving the client authorization information from the server in response to sending a client authorization information request to the remote server, wherein the client authorization information includes a time-to-live value.

13. The server according to claim 5 , wherein the proof of possession information for the client is different from proof of possession information for another client.

14. The method of claim 1 , wherein a plurality of clients, including the remote client, is entitled to access the duplicate of the data that is stored at the data storage device.

15. The method of claim 14 , wherein based on a determination that the client or the user associated with the client is allowed to subsequently access the duplicated data stored at the data storage device, allowing the client or the user associated with the client to subsequently access the duplicated data stored at the data storage device without having the client having to upload the data in its entirety.

Assignments (10)
SECURITY INTEREST Recorded May 29, 2026
From: SYNCHRONOSS TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 074795/0700 →
RELEASE OF SECURITY INTEREST Recorded Apr 15, 2026
From: BGC LENDER REP LLC, AS ADMINISTRATIVE AGENT
To: SYNCHRONOSS TECHNOLOGIES, INC.; SYNCHRONOSS SOFTWARE IRELAND LIMITED
Reel/Frame 074370/0226 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 067964/0628 Recorded Feb 13, 2026
From: BGC LENDER REP LLC, AS ADMINISTRATIVE AGENT
To: SYNCHRONOSS TECHNOLOGIES, INC.; SYNCHRONOSS SOFTWARE IRELAND LIMITED
Reel/Frame 074858/0327 →
RELEASE OF SECURITY INTEREST Recorded Apr 7, 2025
From: SYNCHRONOSS TECHNOLOGIES, INC.
To: CITIZENS BANK, N.A.
Reel/Frame 071224/0279 →
SECURITY AGREEMENT Recorded Jun 28, 2024
From: SYNCHRONOSS TECHNOLOGIES, INC.; SYNCHRONOSS SOFTWARE IRELAND LIMITED
To: BGC LENDER REP LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 067964/0628 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2022
From: KUOSA, JUSSI; VALTONEN, HANNU; MAARANTEN, HANNU; PANKALA, JANNE; TAN, KUAN EEIK; KONOLA, JARKKO; TIKKA, SAMI; SUKANEN, JARI; PALOMAKI, PIRKKA; COOPER, JAMES
To: F-SECURE CORPOATION
Reel/Frame 062106/0393 →
SECURITY INTEREST Recorded Oct 29, 2019
From: SYNCHRONOSS TECHNOLOGIES, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 050854/0913 →
RELEASE OF SECURITY INTEREST Recorded Nov 14, 2017
From: GOLDMAN SACHS BANK USA
To: SYNCHRONOSS TECHNOLOGIES, INC.
Reel/Frame 044444/0286 →
SECURITY INTEREST Recorded Jan 23, 2017
From: SYNCHRONOSS TECHNOLOGIES, INC., AS GRANTOR
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 041072/0964 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2015
From: F-SECURE CORPORATION
To: SYNCHRONOSS TECHNOLOGIES, INC.
Reel/Frame 035863/0901 →