IP Library Granted Patent US 11,409,889
Granted Patent B2
US 11,409,889 · App. 16/513,320 · Granted Aug 9, 2022

Method and system for encrypted searching

Inventors: Stephen Owens (Marietta, GA); Sonia Johnson (Los Altos, CA); Ramu Adapala (Cupertino, CA); Chris Elza Kurian (Sunnyvale, CA)
Assignee: YAHOO ASSETS LLC
G06F21/602G06F16/953G06F16/9566H04L9/0861H04L9/14
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 11,409,889
App. No.
16/513,320
Granted
Aug 9, 2022
Kind
B2
Abstract

The present teaching relates to a method, system, and programming for encrypted searching. In a search session, a uniform resource locator (URL) is received, wherein a portion of the URL is encrypted via a first key. A second key associated with the first key is obtained. A determination is made regarding whether a time-related criterion associated with the second key is satisfied. In response to the time-related criterion being satisfied, the portion of the URL is decrypted based on the second key to obtain a keyword, one or more search results are obtained based on the keyword, and a webpage including the one or more search results to be provided to a user is generated.

Claims (70)

1. A method, implemented on a machine having at least one processor, storage, and a communication platform capable of connecting to a network for encrypted searching, the method comprising:

receiving, by a search engine from a user device associated with a user, in a search session, a uniform resource locator (URL) including a keyword provided by the user, wherein a portion of the URL corresponding to the keyword is encrypted via a first key;

obtaining a second key associated with the first key;

determining whether a time-related criterion associated with the second key is satisfied; and

in response to the time-related criterion being satisfied,

decrypting, by the search engine, the encrypted portion of the URL based on the second key to obtain the keyword,

obtaining one or more search results based on the keyword, and

generating a webpage including the one or more search results to be provided to a the user.

2. The method of claim 1 , wherein the method further comprises:

in response to the time-related criterion being violated, directing the URL to a search box.

3. The method of claim 1 , wherein the time-related criterion associated with the second key corresponds to a time instant of receiving the URL being within an active time-window.

4. The method of claim 1 , wherein the step of obtaining a second key further comprises:

extracting a parameter from the URL; and

determining the second key based on the extracted parameter.

5. The method of claim 1 , wherein the step of obtaining one or more search results further comprises:

analyzing each of the one or more search results to determine whether the search result satisfies a criterion; and

in response to the search result satisfying the criterion, encrypting the search result via the first key.

6. The method of claim 1 , further comprising:

generating a plurality of sets of keys in accordance with a model;

selecting a set of keys from the plurality of sets of keys;

setting an active time-window for the selected set of keys; and

repeating the generating, the selecting, and the setting in accordance with a time-schedule.

7. The method of claim 6 , further comprising:

selecting, upon expiration of the active time-window, another set of keys.

8. A machine readable and non-transitory medium having information recorded thereon for encrypted searching, wherein the information, when read by the machine, causes the machine to perform:

receiving, by a search engine from a user device associated with a user, in a search session, a uniform resource locator (URL) including a keyword provided by the user, wherein a portion of the URL corresponding to the keyword is encrypted via a first key;

obtaining a second key associated with the first key;

determining whether a time-related criterion associated with the second key is satisfied; and

in response to the time-related criterion being satisfied,

decrypting, by the search engine, the encrypted portion of the URL based on the second key to obtain the keyword,

obtaining one or more search results based on the keyword, and

generating a webpage including the one or more search results to be provided to the user.

9. The medium of claim 8 , wherein the method further comprises:

in response to the time-related criterion being violated, directing the URL to a search box.

10. The medium of claim 8 , wherein the time-related criterion associated with the second key corresponds to a time instant of receiving the URL being within an active time-window.

11. The medium of claim 8 , wherein the step of obtaining a second key further comprises:

extracting a parameter from the URL; and

determining the second key based on the extracted parameter.

12. The medium of claim 8 , wherein the step of obtaining one or more search results further comprises:

analyzing each of the one or more search results to determine whether the search result satisfies a criterion; and

in response to the search result satisfying the criterion, encrypting the search result via the first key.

13. The medium of claim 8 , further comprising:

generating a plurality of sets of keys in accordance with a model;

selecting a set of keys from the plurality of sets of keys;

setting an active time-window for the selected set of keys; and

repeating the generating, the selecting, and the setting in accordance with a time-schedule.

14. The medium of claim 13 , further comprising:

selecting, upon expiration of the active time-window, another set of keys.

15. A system for encrypted searching comprising:

an extraction unit of a search engine implemented by a processor and configured to receive, from a user device associated with a user, in a search session, a uniform resource locator (URL) including a keyword provided by the user, wherein a portion of the URL corresponding to the keyword is encrypted via a first key;

a decryption unit of the search engine implemented by the processor and configured to

obtain a second key associated with the first key,

determine whether a time-related criterion associated with the second key is satisfied, and

decrypt, in response to the time-related criterion being satisfied, the encrypted portion of the URL based on the second key to obtain the keyword;

a content retrieving unit of the search engine implemented by the processor and configured to obtain, in response to the time-related criterion being satisfied, one or more search results based on the keyword; and

a result rendering unit of the search engine implemented by the processor and configured to generate a webpage including the one or more search results to be provided to the user.

16. The system of claim 15 , further comprising:

a redirecting unit implemented by the processor and configured to direct, in response to the time-related criterion being violated, the URL to a search box.

17. The system of claim 15 , wherein the time-related criterion associated with the second key corresponds to a time instant of receiving the URL being within an active time-window.

18. The system of claim 15 , wherein the extraction unit is further configured to:

extract a parameter from the URL; and

determine the second key based on the extracted parameter.

19. The system of claim 15 , further comprising:

a content parser implemented by the processor and configured to analyze each of the one or more search results to determine whether the search result satisfies a criterion; and

an encryption unit implemented by the processor and configured to encrypt, in response to the search result satisfying the criterion, the search result via the first key.

20. The system of claim 15 , further comprising:

a key generation unit implemented by the processor and configured to generate a plurality of sets of keys in accordance with a model; and

a key selection unit implemented by the processor and configured to

select a set of keys from the plurality of sets of keys, and

set an active time-window for the selected set of keys, wherein the system is further configured to repeat the generating, the selecting, and the setting in accordance with a time-schedule.

Assignments (4)
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Sep 29, 2022
From: YAHOO ASSETS LLC
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 061571/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: YAHOO AD TECH LLC (FORMERLY VERIZON MEDIA INC.)
To: YAHOO ASSETS LLC
Reel/Frame 058982/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2019
From: OWENS, STEPHEN; JOHNSON, SONIA; ADAPALA, RAMU; KURIAN, CHRIS ELZA
To: OATH INC.
Reel/Frame 049768/0192 →
Continuity (1)
Related Publication 20210019426A1 · Jan 21, 2021