Personal computing device-based mechanism to detect preselected data
First Claim
Patent Images
1. A method for a client device, comprising:
- receiving, by the client device from a server, an abstract data structure derived from data elements of pre-selected data to be protected, the pre-selected data being stored on the server, the abstract data structure containing positional information identifying a position in the pre-selected data for each data element of the pre-selected data, the abstract data structure further containing pre-generated hashes of the data elements of the pre-selected data;
storing the abstract data structure containing the positional information and the pre-generated hashes in memory of the client device;
searching, locally, text contained in a plurality of documents stored on a plurality of data storage media of the client device for an indication that at least a portion of the pre-selected data stored on the server is contained in the text of the plurality of documents, the searching comprising creating hashes of text of at least one document in the plurality of documents, determining whether a sequence of hashes at least partially matches pre-generated hashes of data elements from at least one random row in the pre-selected data using the positional information in the abstract data structure;
detecting locally at least a portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the detection indicating that a user of the client device has caused the portion of the preselected data residing on the server to be stored on the client device, the detecting comprising determining that the sequence of hashes matches the pre-generated hashes of data elements from one or more columns in the pre-selected data using the positional information in the abstract data structure; and
sending, from the client device to the server, a notification of the detection of the portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the client device being a personal computing device.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for detecting pre-selected data stored on a personal computing device is described. In one embodiment, contents of data storage media of a personal computing device are searched for pre-selected sensitive data. In one embodiment, if at least a portion of the pre-selected sensitive data is detected, a notification of the detection of the pre-selected data is sent to a system via a network. In another embodiment, if at least a portion of pre-selected sensitive data is detected, the access to this data is blocked.
-
Citations
31 Claims
-
1. A method for a client device, comprising:
-
receiving, by the client device from a server, an abstract data structure derived from data elements of pre-selected data to be protected, the pre-selected data being stored on the server, the abstract data structure containing positional information identifying a position in the pre-selected data for each data element of the pre-selected data, the abstract data structure further containing pre-generated hashes of the data elements of the pre-selected data; storing the abstract data structure containing the positional information and the pre-generated hashes in memory of the client device; searching, locally, text contained in a plurality of documents stored on a plurality of data storage media of the client device for an indication that at least a portion of the pre-selected data stored on the server is contained in the text of the plurality of documents, the searching comprising creating hashes of text of at least one document in the plurality of documents, determining whether a sequence of hashes at least partially matches pre-generated hashes of data elements from at least one random row in the pre-selected data using the positional information in the abstract data structure; detecting locally at least a portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the detection indicating that a user of the client device has caused the portion of the preselected data residing on the server to be stored on the client device, the detecting comprising determining that the sequence of hashes matches the pre-generated hashes of data elements from one or more columns in the pre-selected data using the positional information in the abstract data structure; and sending, from the client device to the server, a notification of the detection of the portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the client device being a personal computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A client device apparatus comprising:
-
means for receiving, by the client device from a server, an abstract data structure derived from data elements of pre-selected data to be protected, the pre-selected data being stored on the server, the abstract data structure containing positional information identifying a position in the pre-selected data for each data element of the pre-selected data, the abstract data structure further containing pre-generated hashes of the data elements of the pre-selected data; means for storing the abstract data structure containing the positional information and the pre-generated hashes in memory of the client device; means for searching, locally, text contained in a plurality of documents stored on a plurality of data storage media of the client device for an indication that at least a portion of the pre-selected data stored on the server is contained in the text of the plurality of documents, the searching comprising creating hashes of text of at least one document in the plurality of documents, determining whether a sequence of hashes at least partially matches pre-generated hashes of data elements from at least one random row in the pre-selected data using the positional information in the abstract data structure; means for detecting locally at least a portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the detection indicating that a user of the client device has caused the portion of the preselected data residing on the server to be stored on the client device, the detecting comprising determining that the sequence of hashes matches the pre-generated hashes of data elements from one or more columns in the pre-selected data using the positional information in the abstract data structure; and means for sending, from the client device to the server, a notification of the detection of the portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the client device being a personal computing device. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A client device comprising:
-
a plurality of storage media storing an abstract data structure derived from data elements of pre-selected data to be protected, the pre-selected data being stored on a server, and a plurality of documents containing text for the client device, the client device being a personal computing device, the abstract data structure containing positional information identifying a position in the pre-selected data for each data element of the pre-selected data, the abstract data structure further containing pre-generated hashes of the data elements of the pre-selected data; and at least one processor coupled to the plurality of storage media, the at least one processor to execute a set of instructions which cause the at least one processor to search locally the text in the plurality of documents stored on a plurality of data storage media of the client device for an indication that at least a portion of the pre-selected data stored on the server is contained in the text of the plurality of documents, the searching comprising creating hashes of text of at least one document in the plurality of documents, determining whether a sequence of hashes at least partially matches pre-generated hashes of data elements from at least one random row in the pre-selected data using the positional information in the abstract data structure, to detect locally at least a portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the detection indicating that a user of the client device has caused the portion of the preselected data residing on the server to be stored on the client device, the detecting comprising determining that the sequence of hashes matches the pre-generated hashes of data elements from one or more columns in the pre-selected data using the positional information in the abstract data structure, and to send, from the client device to the server, a notification of the detection of the portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the client device being a personal computing device.
-
-
31. A computer readable medium that provides instructions, which when executed on a processor cause the processor to perform a method for a client device, comprising:
-
receiving, by the client device from a server, an abstract data structure derived from data elements of pre-selected data to be protected, the pre-selected data being stored on the server, the abstract data structure containing positional information identifying a position in the pre-selected data for each data element of the pre-selected data, the abstract data structure further containing pre-generated hashes of the data elements of the pre-selected data; storing the abstract data structure containing the positional information and the pre-generated hashes in memory of the client device; searching, locally, text contained in a plurality of documents stored on a plurality of data storage media of the client device for an indication that at least a portion of the pre-selected data stored on the server is contained in the text of the plurality of documents, the searching comprising creating hashes of text of at least one document in the plurality of documents, determining whether a sequence of hashes at least partially matches pre-generated hashes of data elements from at least one random row in the pre-selected data using the positional information in the abstract data structure; detecting locally at least a portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the detection indicating that a user of the client device has caused the portion of the preselected data residing on the server to be stored on the client device, the detecting comprising determining that the sequence of hashes matches the pre-generated hashes of data elements from one or more columns in the pre-selected data using the positional information in the abstract data structure; and sending, from the client device to the server, a notification of the detection of the portion of the pre-selected data in the text of at least one of the plurality of documents stored on any of the plurality of data storage media of the client device, the client device being a personal computing device.
-
Specification