System and method of dynamic, encrypted searching
First Claim
1. A non-transitory computer readable medium comprising computer executable instructions stored thereon to cause one or more processing units of a processing device to:
- obtain a first plurality of unencrypted documents, wherein each document in the first plurality of unencrypted documents comprises;
a Small Index of tags based, at least in part, on a content of the respective document; and
a Large Index of tags based, at least in part, on a predictive analysis of the tags in the Small Index of the respective document;
obtain a second encrypted document, wherein the second encrypted document comprises a Small Index of tags based, at least in part, on a content of the second encrypted document;
create one or more associations between the second encrypted document and one or more documents of the first plurality of unencrypted documents based, at least in part, on the Small Index of tags of the second encrypted document and the respective Small Index of tags of the one or more of the first plurality of unencrypted documents;
generate a Large Index of tags for the second encrypted document based, at least in part, on a predictive analysis of the tags in the Small Index of tags of the second encrypted document;
augment the Large Index of tags for the second encrypted document based, at least in part, on the respective Large Index of tags for the one or more associated documents of the first plurality of unencrypted documents;
receive a query from a first user, wherein the query matches at least one tag in the augmented Large Index of tags for the second encrypted document; and
generate a result set of documents in response to the received query, wherein the result set comprises the second encrypted document.
1 Assignment
0 Petitions
Accused Products
Abstract
This disclosure relates to personalized and dynamic server-side searching techniques for encrypted data. Current so-called ‘zero-knowledge’ privacy systems (i.e., systems where the server has ‘zero-knowledge’ about the client data that it is storing) utilize servers that hold encrypted data without the decryption keys necessary to decrypt, index, and/or re-encrypt the data. As such, the servers are not able to perform any kind of meaningful server-side search process, as it would require access to the underlying decrypted data. Therefore, such prior art ‘zero-knowledge’ privacy systems provide a limited ability for a user to search through a large dataset of encrypted documents to find critical information. Disclosed herein are communications systems that offer the increased security and privacy of client-side encryption to content owners, while still providing for highly relevant server-side search-based results via the use of content correlation, predictive analysis, and augmented semantic tag clouds for the indexing of encrypted data.
-
Citations
25 Claims
-
1. A non-transitory computer readable medium comprising computer executable instructions stored thereon to cause one or more processing units of a processing device to:
-
obtain a first plurality of unencrypted documents, wherein each document in the first plurality of unencrypted documents comprises; a Small Index of tags based, at least in part, on a content of the respective document; and a Large Index of tags based, at least in part, on a predictive analysis of the tags in the Small Index of the respective document; obtain a second encrypted document, wherein the second encrypted document comprises a Small Index of tags based, at least in part, on a content of the second encrypted document; create one or more associations between the second encrypted document and one or more documents of the first plurality of unencrypted documents based, at least in part, on the Small Index of tags of the second encrypted document and the respective Small Index of tags of the one or more of the first plurality of unencrypted documents; generate a Large Index of tags for the second encrypted document based, at least in part, on a predictive analysis of the tags in the Small Index of tags of the second encrypted document; augment the Large Index of tags for the second encrypted document based, at least in part, on the respective Large Index of tags for the one or more associated documents of the first plurality of unencrypted documents; receive a query from a first user, wherein the query matches at least one tag in the augmented Large Index of tags for the second encrypted document; and generate a result set of documents in response to the received query, wherein the result set comprises the second encrypted document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
-
a memory; and one or more processing units, communicatively coupled to the memory, wherein the memory stores instructions to configure the one or more processing units to; obtain a first plurality of unencrypted documents, wherein each document in the first plurality of unencrypted documents comprises; a Small Index of tags based, at least in part, on a content of the respective document; and a Large Index of tags based, at least in part, on a predictive analysis of the tags in the Small Index of the respective document; obtain a second encrypted document, wherein the second encrypted document comprises a Small Index of tags based, at least in part, on a content of the second encrypted document; create one or more associations between the second encrypted document and one or more documents of the first plurality of unencrypted documents based, at least in part, on the Small Index of tags of the second encrypted document and the respective Small Index of tags of the one or more of the first plurality of unencrypted documents; generate a Large Index of tags for the second encrypted document based, at least in part, on a predictive analysis of the tags in the Small Index of tags of the second encrypted document; augment the Large Index of tags for the second encrypted document based, at least in part, on the respective Large Index of tags for the one or more associated documents of the first plurality of unencrypted documents; receive a query from a first user, wherein the query matches at least one tag in the augmented Large Index of tags for the second encrypted document; and generate a result set of documents in response to the received query, wherein the result set comprises the second encrypted document. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-implemented method, comprising:
-
obtaining a first plurality of unencrypted documents, wherein each document in the first plurality of unencrypted documents comprises; a Small Index of tags based, at least in part, on a content of the respective document; and a Large Index of tags based, at least in part, on a predictive analysis of the tags in the Small Index of the respective document; obtaining a second encrypted document, wherein the second encrypted document comprises a Small Index of tags based, at least in part, on a content of the second encrypted document; creating one or more associations between the second encrypted document and one or more documents of the first plurality of unencrypted documents based, at least in part, on the Small Index of tags of the second encrypted document and the respective Small Index of tags of the one or more of the first plurality of unencrypted documents; generating a Large Index of tags for the second encrypted document based, at least in part, on a predictive analysis of the tags in the Small Index of tags of the second encrypted document; augmenting the Large Index of tags for the second encrypted document based, at least in part, on the respective Large Index of tags for the one or more associated documents of the first plurality of unencrypted documents; receiving a query from a first user, wherein the query matches at least one tag in the augmented Large Index of tags for the second encrypted document; and generating a result set of documents in response to the received query, wherein the result set comprises the second encrypted document. - View Dependent Claims (22, 23, 24, 25)
-
Specification