Monitoring alignment of computer file states across a group of users
First Claim
1. A system for monitoring content alignment of files across a group of different users, the system comprising:
- a plurality of client devices at least including a first client device and a second client device; and
a computer server coupled to each of the client devices via a network;
wherein a first user of the group selects a first file to declare as their new declared version to the group utilizing a user interface of the first client device, the first file selected to be declared hereinafter being referred to as a first declared file, and the first user selecting the first file to declare hereinafter being referred to as the first user declaring the first declared file;
in response to the first user declaring the first declared file, the first client device is operable to calculate a first declared hash value and send the first declared hash value to the computer server via the network, the first declared hash value being calculated by the first client device running a hash function on a content of the first declared file at a point in time that the first declared file is declared;
the computer server is operable to store the first declared hash value received from the first client device along with any other declared hash values received from other users in the group;
a second user of the group selects a second file to declare as their new declared version to the group utilizing a user interface of the second client device, the second file selected to declare hereinafter being referred to as a second declared file, and the second user selecting the second file to declare hereinafter being referred to as the second user declaring the second declared file;
in response to the second user declaring the second declared file, the second client device is operable to calculate a second declared hash value and send the second declared hash value to the computer server via the network, the second declared hash value being calculated by the second client device running the hash function on a content of the second declared file at a point in time that the second declared file is declared;
the computer server is operable to store the second declared hash value received from the second client device;
in response to receiving the second declared hash value from the second client device, the computer server is operable to compare a plurality of declared hash values of the group including the first declared hash value and the second declared hash value in order to determine whether there is more than one unique declared hash value for the group, and then send at least a first message to the first client device via the network, the first message including a group alignment status specifying whether or not all users in the group have a same declared hash value;
the first client device is operable to automatically display a group alignment indication utilizing the user interface of the first client device, the group alignment indication being an icon overlay on a file icon representing the first file as shown by a file manager running on the first client device, the group alignment indication being overlaid on the file icon from the point in time that the first file is declared; and
in response to receiving the group alignment status from the computer server, the first client device is operable to update the group alignment indication according to the group alignment status received from the computer server, the first client device updating the group alignment indication to show an aligned state when the first message specifies that all users of the group have the same declared hash value and to show a not aligned state when the first message specifies that not all users of the group have the same declared hash value, the group alignment indication thereby making the first user aware of whether the content of the first declared file matches content of declared files by all other users in the group.
1 Assignment
0 Petitions
Accused Products
Abstract
A first state identifier is determined according to the state of a first file at a first time point, and a second state identifier is determined according to the state of a second file at a second time point. The first and second state identifiers are compared and an alignment indication is displayed to a user of a client device thereby making the user aware of the alignment state between the files. The files may be associated with different client devices or different users thereby showing group alignment. The files may also be associated with a single user or client device thereby showing local alignment. The state identifiers may include digest hashes of content of the first and second files, metadata, or state information regarding the files. The files may be encrypted and access check keys utilized to determine whether a client device is authorized to receive an encrypted file.
9 Citations
20 Claims
-
1. A system for monitoring content alignment of files across a group of different users, the system comprising:
-
a plurality of client devices at least including a first client device and a second client device; and a computer server coupled to each of the client devices via a network; wherein a first user of the group selects a first file to declare as their new declared version to the group utilizing a user interface of the first client device, the first file selected to be declared hereinafter being referred to as a first declared file, and the first user selecting the first file to declare hereinafter being referred to as the first user declaring the first declared file; in response to the first user declaring the first declared file, the first client device is operable to calculate a first declared hash value and send the first declared hash value to the computer server via the network, the first declared hash value being calculated by the first client device running a hash function on a content of the first declared file at a point in time that the first declared file is declared; the computer server is operable to store the first declared hash value received from the first client device along with any other declared hash values received from other users in the group; a second user of the group selects a second file to declare as their new declared version to the group utilizing a user interface of the second client device, the second file selected to declare hereinafter being referred to as a second declared file, and the second user selecting the second file to declare hereinafter being referred to as the second user declaring the second declared file; in response to the second user declaring the second declared file, the second client device is operable to calculate a second declared hash value and send the second declared hash value to the computer server via the network, the second declared hash value being calculated by the second client device running the hash function on a content of the second declared file at a point in time that the second declared file is declared; the computer server is operable to store the second declared hash value received from the second client device; in response to receiving the second declared hash value from the second client device, the computer server is operable to compare a plurality of declared hash values of the group including the first declared hash value and the second declared hash value in order to determine whether there is more than one unique declared hash value for the group, and then send at least a first message to the first client device via the network, the first message including a group alignment status specifying whether or not all users in the group have a same declared hash value; the first client device is operable to automatically display a group alignment indication utilizing the user interface of the first client device, the group alignment indication being an icon overlay on a file icon representing the first file as shown by a file manager running on the first client device, the group alignment indication being overlaid on the file icon from the point in time that the first file is declared; and in response to receiving the group alignment status from the computer server, the first client device is operable to update the group alignment indication according to the group alignment status received from the computer server, the first client device updating the group alignment indication to show an aligned state when the first message specifies that all users of the group have the same declared hash value and to show a not aligned state when the first message specifies that not all users of the group have the same declared hash value, the group alignment indication thereby making the first user aware of whether the content of the first declared file matches content of declared files by all other users in the group. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer server for monitoring content alignment of files across a group of different users, the computer server comprising:
-
a network interface coupled via a network to a plurality of client devices at least including a first client device and a second client device; a storage device; and one or more processors coupled to the network interface and the storage device; wherein, by the one or more processors executing software instructions loaded from the storage device, the one or more processors are configured to; receive a first declared hash value from the first client device and store the first declared hash value in the storage device, the first declared hash value corresponding to a hashed value of a content of the first declared file at a point in time that the first declared file is selected to be declared by a user of the first client device as their new declared version to the group; receive a second declared hash value from the second client device and store the second declared hash value in the storage device, the second state identifier corresponding to a hashed value of a content of the second declared file at a point in time that the second declared file is selected to be declared by a user of the second client device as their new declared version to the group; store the first declared hash value and the second declared hash value in the storage device along with any other declared hash values received from other users in the group; in response to receiving the second declared hash value from the second client device, compare a plurality of declared hash values of the group including the first declared hash value and the second declared hash value to determine whether there is more than one unique declared hash value for the group; and send at least a first message to the first client device via the network, the first message including a group alignment status specifying whether or not all users in the group have a same declared hash value; wherein the first client device thereafter automatically updates a group alignment indication displayed on a user interface of the first client device in response to receiving the group alignment status from the computer server, the first client device updating the group alignment indication to show an aligned state when the first message specifies that all users of the group have the same declared hash value and to show a not aligned state when the first message specifies that not all users of the group have the same declared hash value, the group alignment indication thereby making the user of the first client device aware of whether the content of the first declared file matches content of declared files by all other users in the group. - View Dependent Claims (19)
-
-
20. A method of monitoring content alignment of files across a group of different users, the method comprising:
-
calculating a first declared hash value corresponding to a content of first declared file at a point in time that the first declared file is selected to be declared to the group by a first user, the first declared file being associated with a first client device; determining a second declared hash value corresponding to a content of a second declared file at a point in time that the second declared file is selected to be declared to the group by a second user, the point in time that the second declared file is selected to be declared being after the point in time that the first declared file is selected to be declared, the second declared file being associated with a second client device; storing the first declared hash value and the second declared hash value along with any other declared hash values received from other users in the group at a computer server coupled to the first and second client devices via a computer network; comparing by the computer server a plurality of declared hash values of the group including the first declared hash value and the second declared hash value in order to determine whether there is more than one unique declared hash value for the group; sending at least a first message by the computer server to the first client device via the computer network, the first message including group alignment status specifying whether or not all users in the group have a same declared hash value; displaying a group alignment indication on a user interface of the first client device from the point in time that the first file is declared, the group alignment indication being an icon overlay on a file icon representing the first file as shown by a file manager running on the first client device; and automatically updating the group alignment indication displayed on the user interface of the first client device in response to receiving the group alignment status from the computer server, updating the group alignment indication to show an aligned state when the first message specifies that all users of the group have the same declared hash value and to show a not aligned state when the first message specifies that not all users of the group have the same declared hash value, the group alignment indication thereby making the first user aware of whether the content of the first declared file matches content of declared files by all other users in the group.
-
Specification