IP Library Granted Patent US 12,598,206
Granted Patent B2
US 12,598,206 · App. 17/499,319 · Granted Apr 7, 2026

Determining exploit prevention using machine learning

Inventor: Jonathan Giffard (Donisthorpe, GB)
Assignee: OPEN TEXT INC.
H04L63/1433G06F16/2255G06N20/00
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 12,598,206
App. No.
17/499,319
Granted
Apr 7, 2026
Kind
B2
Abstract

Examples of the present disclosure describe systems and methods for determining exploit prevention software settings using machine learning. In aspects, exploit prevention software may be used to identify processes executing on a computing device. Metadata for the identified processes may be determined and transmitted to a machine learning system. The machine learning system may use an exploit prevention model to determine exploit prevention configuration settings for each of the processes, and may transmit the configuration setting to the computing device. The computing device may implement the configuration settings to protect the processes and monitor the stability of the protected processes as they execute. The computing device may transmit the stability data to the machine-learning system. The machine-learning system may then modify the exploit prevention model based on the stability data.

Claims (63)

1 . A method for adjusting exploit prevention configuration settings comprising:

receiving, by a machine learning system for exploit prevention from exploit prevention software executing on a computing device, process information for one or more protected processes protected by the exploit prevention software and executing on the computing device, the machine learning system comprising a machine learning model trained to determine process configuration settings for the one or more protected processes and exploit prevention configuration settings for the exploit prevention software, for each of the one or more protected processes, the machine learning model representing training data comprising:

training process information for each of one or more processes protectable by the exploit prevention software; and

training configuration settings;

generating, by the machine learning system, the exploit prevention configuration settings for the exploit prevention software and the process configuration settings for the one or more protected processes based on the process information for the one or more protected processes, wherein generating the exploit prevention configuration settings comprises applying the machine learning model to the process information for the one or more protected processes;

providing, by the machine learning system to the exploit prevention software executing on the computing device, the exploit prevention configuration settings;

providing, by the machine learning system, the process configuration settings to the one or more protected processes;

receiving, by the machine learning system from the exploit prevention software, monitored process stability data for each of the one or more protected processes, the monitored process stability data indicating monitored stability of each of the one or more protected processes monitored during execution before and after application of the exploit prevention configuration settings into the exploit prevention software, the monitored process stability data comprising for each of the one or more protected processes at least one of a number of processes crashes or a number of reported errors;

determining, by the machine learning system based on the received monitored process stability data, whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software;

based on whether the one or more protected processes have become more or less stable while executing on the computing device, adjusting:

the process configuration settings provided by the machine learning system to the one or more protected processes; and

the exploit prevention configuration settings provided by the machine learning system to the exploit prevention software; and

applying the adjusted process configuration settings and the adjusted exploit prevention configuration settings to the computing device.

2 . The method of claim 1 , wherein the process information comprises metadata for the one or more protected processes, wherein the metadata corresponds to at least one of a process identifier, methods or functions used by the one or more protected processes, and objects used during execution of the one or more protected processes.

3 . The method of claim 1 , wherein the process information comprises one or more hash values for the one or more protected processes, and wherein the one or more hash values are received by the machine learning system from the exploit prevention software.

4 . The method of claim 1 , wherein the exploit prevention configuration settings comprise at least one configuration setting for each protected process identified in the process information.

5 . The method of claim 1 , wherein applying the exploit prevention configuration settings comprises at least one of: a setting to cause restarting the computing device, a setting to cause restarting the one or more protected processes by the computing device, a setting to cause modifying previously-configured configuration settings by the computing device, and a setting to cause recompiling a file by the computing device.

6 . The method of claim 1 , wherein the monitored process stability data comprises at least one of: system health statistics for the computing device, performance statistics for the one or more protected processes, process status for the one or more protected processes, evaluations of event files, and evaluations of checkpoints in executing code.

7 . The method of claim 1 , further comprising:

evaluating the monitored process stability data; and

when the monitored process stability data indicates a decrease in the process stability of the one or more protected processes, reducing, by the computing device, exploit protection provided by the exploit prevention configuration settings.

8 . The method of claim 1 , wherein determining whether the one or more protected processes have become more or less stable comprises determining whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software and as compared to the one or more protected processes executing on the computing device with prior exploit configuration settings applied into the exploit prevention software.

9 . A system comprising:

at least one processor; and

memory coupled to the at least one processor, the memory storing computer executable instructions that, when executed by the at least one processor, performs a method comprising:

receiving, by a machine learning system for exploit prevention from exploit prevention software executing on a computing device, process information for one or more protected processes protected by the exploit prevention software and executing on the computing device;

generating, by the machine learning system, exploit prevention configuration settings for the exploit prevention software and process configuration settings for the one or more protected processes, based on the process information for the one or more protected processes, wherein generating the exploit prevention configuration settings comprises applying a machine learning model to the process information for the one or more protected processes, the machine learning model trained to determine the process configuration settings for the one or more protected processes and the exploit prevention configuration settings for the exploit prevention software, the machine learning model representing training data comprising:

training process information for each of one or more processes protectable by the exploit prevention software; and

training configuration settings;

providing, by the machine learning system to the exploit prevention software executing on the computing device, the exploit prevention configuration settings;

receiving, by the machine learning system from the exploit prevention software, monitored process stability data for each of the one or more protected processes, the monitored process stability data indicating stability monitored of each of the one or more protected processes monitored during execution before and after application of the exploit prevention configuration settings into the exploit prevention software, the monitored process stability data comprising for each of the one or more protected processes at least one of a number of processes crashes or a number of reported errors;

determining, by the machine learning system based on the received monitored process stability data, whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software;

based on whether the one or more protected processes have become more or less stable while executing on the computing device, adjusting:

the process configuration settings provided by the machine learning system to the one or more protected processes; and

the exploit prevention configuration settings provided by the machine learning system to the exploit prevention software; and

applying the adjusted process configuration settings and the adjusted exploit prevention configuration settings to the computing device.

10 . The system of claim 9 , wherein the process information comprises metadata for the one or more protected processes, wherein the metadata corresponds to at least one of a process identifier, methods or functions used by the one or more protected processes, and objects used during execution of the one or more protected processes.

11 . The system of claim 9 , wherein the process information comprises one or more hash values for the one or more protected processes, and wherein the one or more hash values are received by the machine learning system from the exploit prevention software.

12 . The system of claim 9 , wherein the exploit prevention configuration settings comprise at least one configuration setting for each protected process identified in the process information.

13 . The system of claim 8 , wherein applying the exploit prevention configuration settings comprises at least one of: a setting to cause restarting the computing device, a setting to cause restarting the one or more protected processes by the computing device, a setting to cause modifying previously-configured configuration settings by the computing device, and a setting to cause recompiling a file by the computing device.

14 . The system of claim 9 , wherein the monitored process stability data comprises at least one of: system health statistics for the computing device, performance statistics for the one or more protected processes, process status for the one or more protected processes, evaluations of event files, and evaluations of checkpoints in executing code.

15 . The system of claim 9 , wherein the method further comprises:

evaluating the monitored process stability data; and

when the monitored process stability data indicates a decrease in the process stability of the one or more protected processes, reducing, by the computing device, exploit protection provided by the exploit prevention configuration settings.

16 . The system of claim 9 , wherein determining whether the one or more protected processes have become more or less stable comprises determining whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software and as compared to the one or more protected processes executing on the computing device with prior exploit configuration settings applied into the exploit prevention software.

17 . A computer program product comprising a non-transitory computer-readable medium storing instructions executable by one or more processors to perform:

receiving, by a machine learning system for exploit prevention from exploit prevention software executing on a computing device, process information for one or more protected processes protected by the exploit prevention software and executing on the computing device;

generating, by the machine learning system, exploit prevention configuration settings for the exploit prevention software and process configuration settings for the one or more protected processes, based on the process information for the one or more protected processes, wherein generating the exploit prevention configuration settings and the process configuration settings comprises applying a machine learning model to the process information for the one or more protected processes, the machine learning model trained to determine the exploit prevention configuration settings for the exploit prevention software and the process configuration settings for the one or more protected processes, the machine learning model representing training data comprising:

training process information for each of one or more processes protectable by the exploit prevention software; and

training configuration settings;

providing, by the machine learning system to the exploit prevention software executing on the computing device, the exploit prevention configuration settings;

receiving, by the machine learning system from the exploit prevention software, monitored process stability data for each of the one or more protected processes, the monitored process stability data indicating stability of each of the one or more protected processes monitored during execution before and after application of the exploit prevention configuration settings into the exploit prevention software, the monitored process stability data comprising for each of the one or more protected processes at least one of a number of processes crashes or a number of reported errors;

determining, by the machine learning system based on the received monitored process stability data, whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software;

based on whether the one or more protected processes have become more or less stable while executing on the computing device, adjusting:

the process configuration settings provided by the machine learning system to the one or more protected processes; and

the exploit prevention configuration settings provided by the machine learning system to the exploit prevention software; and

applying the adjusted process configuration settings and the adjusted exploit prevention configuration settings to the computing device.

18 . The computer program product of claim 17 , wherein the process information comprises metadata for the one or more protected processes, wherein the metadata corresponds to at least one of a process identifier, methods or functions used by the one or more protected processes, and objects used during execution of the one or more protected processes.

19 . The computer program product of claim 17 , wherein the process information comprises one or more hash values for the one or more protected processes, and wherein the one or more hash values are received by the machine learning system from the exploit prevention software.

20 . The computer program product of claim 17 , wherein the exploit prevention configuration settings comprise at least one configuration setting for each protected process identified in the process information.

21 . The computer program product of claim 17 , wherein applying the exploit prevention configuration settings comprises at least one of: a setting to cause restarting the computing device, a setting to cause restarting the one or more protected processes by the computing device, a setting to cause modifying previously-configured configuration settings by the computing device, and a setting to cause recompiling a file by the computing device.

22 . The computer program product of claim 17 , wherein the monitored process stability data comprises at least one of: system health statistics for the computing device, performance statistics for the one or more protected processes, process status for the one or more protected processes, evaluations of event files, and evaluations of checkpoints in executing code.

23 . The computer program product of claim 17 , wherein determining whether the one or more protected processes have become more or less stable comprises determining whether the one or more protected processes have become more or less stable after application of the exploit prevention configuration settings into the exploit prevention software and as compared to the one or more protected processes executing on the computing device with prior exploit configuration settings applied into the exploit prevention software.

Assignments (4)
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Jul 6, 2023
From: CARBONITE, LLC
To: OPEN TEXT INC.
Reel/Frame 064351/0178 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2023
From: WEBROOT LLC
To: CARBONITE, LLC
Reel/Frame 064167/0129 →
CERTIFICATE OF CONVERSION Recorded Jun 29, 2023
From: WEBROOT INC.
To: WEBROOT LLC
Reel/Frame 064176/0622 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2021
From: GIFFARD, JONATHAN
To: WEBROOT INC.
Reel/Frame 057976/0078 →
Continuity (2)
Continuation 15952656 · Apr 13, 2018
Related Publication 20220030008A1 · Jan 27, 2022
References Cited (400)
US 5121345A · Lentz · 1992 [cited by applicant]
US 5359659A · Rosenthal · 1994 [cited by applicant]
US 5440723A · Arnold · 1995 [cited by applicant]
US 5450586A · Kuzara · 1995 [cited by applicant]
US 5473769A · Cozza · 1995 [cited by applicant]
US 5511184A · Lin · 1996 [cited by applicant]
US 5623600A · Ji · 1997 [cited by applicant]
US 5680547A · Chang · 1997 [cited by applicant]
US 5696822A · Nachenberg · 1997 [cited by applicant]
US 5826013A · Nachenberg · 1998 [cited by applicant]
US 5832208A · Chen · 1998 [cited by applicant]
US 5886699A · Belfiore · 1999 [cited by applicant]
US 5889943A · Ji · 1999 [cited by applicant]
US 5951698A · Chen · 1999 [cited by applicant]
US 5960170A · Chen · 1999 [cited by applicant]
US 5983348A · Ji · 1999 [cited by applicant]
US 5991881A · Conklin · 1999 [cited by applicant]
US 5999723A · Nachenberg · 1999 [cited by applicant]
US 6021510A · Nachenberg · 2000 [cited by applicant]
US 6035423A · Hodges · 2000 [cited by applicant]
US 6044155A · Thomlinson · 2000 [cited by applicant]
US 6088804A · Hill · 2000 [cited by applicant]
US 6092194A · Touboul · 2000 [cited by applicant]
US 6094731A · Waldin · 2000 [cited by applicant]
US 6149522A · Alcorn · 2000 [cited by applicant]
US 6154844A · Touboul · 2000 [cited by applicant]
US 6195587B1 · Hruska · 2001 [cited by applicant]
US 6272641B1 · Ji · 2001 [cited by applicant]
US 6321338B1 · Porras · 2001 [cited by applicant]
US 6327579B1 · Crawford · 2001 [cited by applicant]
US 6412071B1 · Hollander · 2002 [cited by applicant]
US 6460060B1 · Maddalazzo · 2002 [cited by applicant]
US 6578094B1 · Moudgill · 2003 [cited by applicant]
US 6594686B1 · Edwards · 2003 [cited by applicant]
US 6658571B1 · O'Brien · 2003 [cited by applicant]
US 6663000B1 · Muttik · 2003 [cited by applicant]
US 6704874B1 · Porras · 2004 [cited by applicant]
US 6721721B1 · Bates · 2004 [cited by applicant]
US 6728886B1 · Ji · 2004 [cited by applicant]
US 6735703B1 · Kilpatrick · 2004 [cited by applicant]
US 6742123B1 · Foote · 2004 [cited by applicant]
US 6742128B1 · Joiner · 2004 [cited by applicant]
US 6772346B1 · Chess · 2004 [cited by applicant]
US 6772363B2 · Pedone · 2004 [cited by applicant]
US 6775780B1 · Muttik · 2004 [cited by applicant]
US 6785732B1 · Bates · 2004 [cited by applicant]
US 6839850B1 · Campbell · 2005 [cited by applicant]
US 6842861B1 · Cox · 2005 [cited by applicant]
US 6873988B2 · Herrmann · 2005 [cited by applicant]
US 6880110B2 · Largman · 2005 [cited by applicant]
US 6886099B1 · Smithson · 2005 [cited by applicant]
US 6889167B2 · Curry · 2005 [cited by applicant]
US 6928550B1 · Le Pennec · 2005 [cited by applicant]
US 6944772B2 · Dozortsev · 2005 [cited by applicant]
US 6966059B1 · Shetty · 2005 [cited by applicant]
US 6971019B1 · Nachenberg · 2005 [cited by applicant]
US 6973577B1 · Kouznetsov · 2005 [cited by applicant]
US 6983377B1 · Beesley · 2006 [cited by applicant]
US 7024694B1 · Ko · 2006 [cited by applicant]
US 7043757B2 · Hoefelmeyer · 2006 [cited by applicant]
US 7055008B2 · Niles · 2006 [cited by applicant]
US 7055148B2 · Marsh · 2006 [cited by applicant]
US 7062553B2 · Liang · 2006 [cited by applicant]
US 7069480B1 · Lovy · 2006 [cited by applicant]
US 7080000B1 · Cambridge · 2006 [cited by applicant]
US 7089428B2 · Farley · 2006 [cited by applicant]
US 7093239B1 · van der Made · 2006 [cited by applicant]
US 7093292B1 · Pantuso · 2006 [cited by applicant]
US 7096215B2 · Bates · 2006 [cited by applicant]
US 7096500B2 · Roberts · 2006 [cited by applicant]
US 7099853B1 · Liu · 2006 [cited by applicant]
US 7107618B1 · Gordon · 2006 [cited by applicant]
US 7134141B2 · Crosbie · 2006 [cited by applicant]
US 7152164B1 · Loukas · 2006 [cited by applicant]
US 7152242B2 · Douglas · 2006 [cited by applicant]
US 7174566B2 · Yadav · 2007 [cited by applicant]
US 7178165B2 · Abrams · 2007 [cited by applicant]
US 7188369B2 · Ho · 2007 [cited by applicant]
US 7203960B1 · Painter · 2007 [cited by applicant]
US 7203962B1 · Moran · 2007 [cited by applicant]
US 7210168B2 · Hursey · 2007 [cited by applicant]
US 7225343B1 · Honig · 2007 [cited by applicant]
US 7228562B2 · Kobayashi et al. · 2007 [cited by applicant]
US 7231667B2 · Jordan · 2007 [cited by applicant]
US 7237008B1 · Tarbotton · 2007 [cited by applicant]
US 7257841B2 · Naitoh · 2007 [cited by applicant]
US 7263616B1 · Brackett · 2007 [cited by applicant]
US 7269851B2 · Ackroyd · 2007 [cited by applicant]
US 7287278B2 · Liang · 2007 [cited by applicant]
US 7287281B1 · Szor · 2007 [cited by applicant]
US 7290266B2 · Gladstone · 2007 [cited by applicant]
US 7290282B1 · Renert · 2007 [cited by applicant]
US 7302706B1 · Hicks · 2007 [cited by applicant]
US 7308487B1 · Dansie · 2007 [cited by examiner]
US 7308714B2 · Bardsley · 2007 [cited by applicant]
US 7310817B2 · Hinchliffe · 2007 [cited by applicant]
US 7334264B2 · Takahashi · 2008 [cited by applicant]
US 7340777B1 · Szor · 2008 [cited by applicant]
US 7345843B2 · Seol · 2008 [cited by applicant]
US 7352280B1 · Rockwood · 2008 [cited by applicant]
US 7356736B2 · Natvig · 2008 [cited by applicant]
US 7356843B1 · Kingsford · 2008 [cited by applicant]
US 7370361B2 · de los Santos · 2008 [cited by applicant]
US 7373664B2 · Kissel · 2008 [cited by applicant]
US 7373667B1 · Millard · 2008 [cited by applicant]
US 7376970B2 · Marinescu · 2008 [cited by applicant]
US 7386886B1 · Abrams · 2008 [cited by applicant]
US 7392543B2 · Szor · 2008 [cited by applicant]
US 7398399B2 · Palliyil · 2008 [cited by applicant]
US 7398553B1 · Li · 2008 [cited by applicant]
US 7401359B2 · Gartside · 2008 [cited by applicant]
US 7406454B1 · Liu · 2008 [cited by applicant]
US 7406603B1 · MacKay · 2008 [cited by applicant]
US 7415726B2 · Kelly · 2008 [cited by applicant]
US 7418729B2 · Szor · 2008 [cited by applicant]
US 7424609B2 · Kwan · 2008 [cited by applicant]
US 7426574B2 · Liao · 2008 [cited by applicant]
US 7434260B2 · Hong · 2008 [cited by applicant]
US 7434261B2 · Costea · 2008 [cited by applicant]
US 7448084B1 · Apap · 2008 [cited by applicant]
US 7448085B1 · Reyes · 2008 [cited by applicant]
US 7450005B2 · Anand · 2008 [cited by applicant]
US 7461339B2 · Liao · 2008 [cited by applicant]
US 7472288B1 · Chou · 2008 [cited by applicant]
US 7475135B2 · Bantz · 2009 [cited by applicant]
US 7478431B1 · Nachenberg · 2009 [cited by applicant]
US 7487543B2 · Arnold · 2009 [cited by applicant]
US 7496960B1 · Chen · 2009 [cited by applicant]
US 7509676B2 · Trueba · 2009 [cited by applicant]
US 7509677B2 · Saurabh · 2009 [cited by applicant]
US 7509680B1 · Sallam · 2009 [cited by applicant]
US 7512808B2 · Liang · 2009 [cited by applicant]
US 7516317B2 · Diwan · 2009 [cited by applicant]
US 7516476B1 · Kraemer · 2009 [cited by applicant]
US 7519998B2 · Cai · 2009 [cited by applicant]
US 7523493B2 · Liang · 2009 [cited by applicant]
US 7523501B2 · Liang · 2009 [cited by applicant]
US 7536456B2 · Williams · 2009 [cited by applicant]
US 7549055B2 · Zimmer · 2009 [cited by applicant]
US 7555777B2 · Swimmer · 2009 [cited by applicant]
US 7558796B1 · Bromwich · 2009 [cited by applicant]
US 7565550B2 · Liang · 2009 [cited by applicant]
US 7568233B1 · Szor · 2009 [cited by applicant]
US 7571482B2 · Polyakov · 2009 [cited by applicant]
US 7574741B2 · Aviani · 2009 [cited by applicant]
US 7577721B1 · Chen · 2009 [cited by applicant]
US 7587724B2 · Yeap · 2009 [cited by applicant]
US 7590813B1 · Szor · 2009 [cited by applicant]
US 7591018B1 · Lee · 2009 [cited by applicant]
US 7594111B2 · Kiriansky · 2009 [cited by applicant]
US 7594267B2 · Gladstone · 2009 [cited by applicant]
US 7594272B1 · Kennedy · 2009 [cited by applicant]
US 7603440B1 · Grabowski · 2009 [cited by applicant]
US 7603711B2 · Scheidell · 2009 [cited by applicant]
US 7613930B2 · Dotan · 2009 [cited by applicant]
US 7621613B2 · Kojima · 2009 [cited by applicant]
US 7624444B2 · Gupta · 2009 [cited by applicant]
US 7624448B2 · Coffman · 2009 [cited by applicant]
US 7627758B1 · Tock · 2009 [cited by applicant]
US 7627898B2 · Beck · 2009 [cited by applicant]
US 7634521B1 · Spertus · 2009 [cited by applicant]
US 7634806B2 · Zinda · 2009 [cited by applicant]
US 7636716B1 · Cheng · 2009 [cited by applicant]
US 7636946B2 · Verma · 2009 [cited by applicant]
US 7640434B2 · Lee · 2009 [cited by applicant]
US 7647636B2 · Polyakov · 2010 [cited by applicant]
US 7653941B2 · Gleichauf · 2010 [cited by applicant]
US 7657838B2 · Daniell · 2010 [cited by applicant]
US 7660999B2 · Kudallur · 2010 [cited by applicant]
US 7664626B1 · Ferrie · 2010 [cited by applicant]
US 7664984B2 · Wang · 2010 [cited by applicant]
US 7665123B1 · Szor · 2010 [cited by applicant]
US 7665138B2 · Song · 2010 [cited by applicant]
US 7673341B2 · Kramer · 2010 [cited by applicant]
US 7681226B2 · Kraemer · 2010 [cited by applicant]
US 7689531B1 · Diao · 2010 [cited by applicant]
US 7689984B2 · Riley · 2010 [cited by applicant]
US 7690038B1 · Ko · 2010 [cited by applicant]
US 7694150B1 · Kirby · 2010 [cited by applicant]
US 7702907B2 · Vaha-Sipila · 2010 [cited by applicant]
US 7707635B1 · Kuo · 2010 [cited by applicant]
US 7707636B2 · Catanzano · 2010 [cited by applicant]
US 7711673B1 · Diao · 2010 [cited by applicant]
US 7730481B2 · Chou · 2010 [cited by applicant]
US 7734790B1 · Chen · 2010 [cited by applicant]
US 7735138B2 · Zhao · 2010 [cited by applicant]
US 7739738B1 · Sobel · 2010 [cited by applicant]
US 7739739B2 · Dettinger · 2010 [cited by applicant]
US 7739741B2 · Saffre · 2010 [cited by applicant]
US 7743419B1 · Mashevsky · 2010 [cited by applicant]
US 7748038B2 · Oliver · 2010 [cited by applicant]
US 7756535B1 · Diao · 2010 [cited by applicant]
US 7756834B2 · Masters · 2010 [cited by applicant]
US 7765589B2 · Keochane · 2010 [cited by applicant]
US 7765592B2 · Wang · 2010 [cited by applicant]
US 7774824B2 · Ross · 2010 [cited by applicant]
US 7774845B2 · Shipman · 2010 [cited by applicant]
US 7778999B1 · Boisjolie · 2010 [cited by applicant]
US 7779119B2 · Ginter · 2010 [cited by applicant]
US 7779470B2 · Keochane · 2010 [cited by applicant]
US 7779472B1 · Lou · 2010 [cited by applicant]
US 7784098B1 · Fan · 2010 [cited by applicant]
US 7793091B2 · Weikel · 2010 [cited by applicant]
US 7802301B1 · Dreyer · 2010 [cited by applicant]
US 7809796B1 · Bloch · 2010 [cited by applicant]
US 7818800B1 · Lemley · 2010 [cited by applicant]
US 7822818B2 · Desouza · 2010 [cited by applicant]
US 7836133B2 · Quinlan · 2010 [cited by applicant]
US 7840763B2 · Murotake · 2010 [cited by applicant]
US 7840958B1 · Wan · 2010 [cited by applicant]
US 7841006B2 · Gassoway · 2010 [cited by applicant]
US 7845009B2 · Grobman · 2010 [cited by applicant]
US 7854006B1 · Andruss · 2010 [cited by applicant]
US 7856538B2 · Speirs · 2010 [cited by applicant]
US 7856573B2 · Ingram · 2010 [cited by applicant]
US 7861303B2 · Kouznetsov · 2010 [cited by applicant]
US 7865956B1 · Cambridge · 2011 [cited by applicant]
US 7874001B2 · Beck · 2011 [cited by applicant]
US 7877801B2 · Repasi · 2011 [cited by applicant]
US 7877809B1 · Sutton · 2011 [cited by applicant]
US 7890619B2 · Morota · 2011 [cited by applicant]
US 7899849B2 · Chaudhry · 2011 [cited by applicant]
US 7899901B1 · Njemanze · 2011 [cited by applicant]
US 7900194B1 · Mankins · 2011 [cited by applicant]
US 7913303B1 · Rouland · 2011 [cited by applicant]
US 7926106B1 · Kennedy · 2011 [cited by applicant]
US 7930746B1 · Sheleheda · 2011 [cited by applicant]
US 7934103B2 · Kidron · 2011 [cited by applicant]
US 7937758B2 · Kronenberg · 2011 [cited by applicant]
US 7941659B2 · Lam · 2011 [cited by applicant]
US 7945957B2 · Dettinger · 2011 [cited by applicant]
US 7949771B1 · Chen · 2011 [cited by applicant]
US 7966650B2 · Manring · 2011 [cited by applicant]
US 7971255B1 · Kc · 2011 [cited by applicant]
US 7975260B1 · Conover · 2011 [cited by applicant]
US 7975302B2 · Armingaud · 2011 [cited by applicant]
US 7979889B2 · Gladstone · 2011 [cited by applicant]
US 7984503B2 · Edwards · 2011 [cited by applicant]
US 7992156B1 · Wang · 2011 [cited by applicant]
US 7996374B1 · Jones · 2011 [cited by applicant]
US 7996637B2 · Inoue · 2011 [cited by applicant]
US 7996902B1 · Gordon · 2011 [cited by applicant]
US 7996905B2 · Arnold · 2011 [cited by applicant]
US 8015174B2 · Hubbard · 2011 [cited by applicant]
US 8023974B1 · Diao · 2011 [cited by applicant]
US 8024807B2 · Hall · 2011 [cited by applicant]
US 8028326B2 · Palmer · 2011 [cited by applicant]
US 8028336B2 · Schuba · 2011 [cited by applicant]
US 8037290B1 · Stutton · 2011 [cited by applicant]
US 8042102B2 · DeWitt · 2011 [cited by applicant]
US 8042186B1 · Polyakov · 2011 [cited by applicant]
US 8051487B2 · Huang · 2011 [cited by applicant]
US 8056136B1 · Zaitsev · 2011 [cited by applicant]
US 8069213B2 · Bloch · 2011 [cited by applicant]
US 8074287B2 · Barde · 2011 [cited by applicant]
US 8087087B1 · van Oorschot · 2011 [cited by applicant]
US 8090816B1 · Deshmukh · 2012 [cited by applicant]
US 8108332B2 · Misra · 2012 [cited by applicant]
US 8117433B2 · McIntosh · 2012 [cited by applicant]
US 8117659B2 · Hartrell · 2012 [cited by applicant]
US 8140664B2 · Huang · 2012 [cited by applicant]
US 8145904B2 · Cavanaugh · 2012 [cited by applicant]
US 8161548B1 · Wan · 2012 [cited by applicant]
US 8161552B1 · Sun · 2012 [cited by applicant]
US 8171552B1 · Chang · 2012 [cited by applicant]
US 8176527B1 · Njemanze · 2012 [cited by applicant]
US 8181244B2 · Boney · 2012 [cited by applicant]
US 8190868B2 · Schneider · 2012 [cited by applicant]
US 8191139B2 · Heimerdinger · 2012 [cited by applicant]
US 8200953B1 · Parsons · 2012 [cited by examiner]
US 8201243B2 · Boney · 2012 [cited by applicant]
US 8205261B1 · Andruss · 2012 [cited by applicant]
US 8220050B2 · Sarathy · 2012 [cited by applicant]
US 8225407B1 · Thrower · 2012 [cited by applicant]
US 8230499B1 · Pereira · 2012 [cited by applicant]
US 8230506B1 · Forristal · 2012 [cited by applicant]
US 8234687B2 · Baumhof · 2012 [cited by applicant]
US 8234710B2 · Wenzinger · 2012 [cited by applicant]
US 8239668B1 · Chen · 2012 [cited by applicant]
US 8239947B1 · Glick · 2012 [cited by applicant]
US 8261347B2 · Hrabik · 2012 [cited by applicant]
US 8266698B1 · Seshardi · 2012 [cited by applicant]
US 8272058B2 · Brennan · 2012 [cited by applicant]
US 8286239B1 · Sutton · 2012 [cited by applicant]
US 8291381B2 · Lai · 2012 [cited by applicant]
US 8291498B1 · Liang · 2012 [cited by applicant]
US 8312545B2 · Tuvell · 2012 [cited by applicant]
US 8321910B1 · English · 2012 [cited by applicant]
US 8327446B2 · Liang · 2012 [cited by applicant]
US 8332946B1 · Boisjolie · 2012 [cited by applicant]
US 8341649B2 · Freericks · 2012 [cited by applicant]
US 8365286B2 · Poston · 2013 [cited by applicant]
US 8370938B1 · Daswani · 2013 [cited by applicant]
US 8375450B1 · Oliver · 2013 [cited by applicant]
US 8387146B2 · Parish · 2013 [cited by applicant]
US 8412779B1 · Qian · 2013 [cited by applicant]
US 8418249B1 · Nucci · 2013 [cited by applicant]
US 8418250B2 · Morris · 2013 [cited by applicant]
US 8429180B1 · Sobel · 2013 [cited by applicant]
US 8429746B2 · Capalik · 2013 [cited by applicant]
US 8438386B2 · Hegli · 2013 [cited by applicant]
US 8443449B1 · Fan · 2013 [cited by applicant]
US 8458797B1 · Yu · 2013 [cited by applicant]
US 8464318B1 · Hallak · 2013 [cited by applicant]
US 8468602B2 · McDougal · 2013 [cited by applicant]
US 8484732B1 · Chen · 2013 [cited by applicant]
US 8490183B2 · Kondo · 2013 [cited by applicant]
US 8495144B1 · Cheng · 2013 [cited by applicant]
US 8495743B2 · Kraemer · 2013 [cited by applicant]
US 8505094B1 · Xuewen · 2013 [cited by applicant]
US 8510596B1 · Gupta · 2013 [cited by applicant]
US 8516583B2 · Thomas · 2013 [cited by applicant]
US 8533831B2 · Satish · 2013 [cited by applicant]
US 8533837B2 · Cavanaugh · 2013 [cited by applicant]
US 8549581B1 · Kailash · 2013 [cited by applicant]
US 8554907B1 · Chen · 2013 [cited by applicant]
US 8560466B2 · Diao · 2013 [cited by applicant]
US 8561182B2 · Lee · 2013 [cited by applicant]
US 8561190B2 · Marinescu · 2013 [cited by applicant]
US 8572729B1 · Lowe · 2013 [cited by applicant]
US 8578497B2 · Antonakakis · 2013 [cited by applicant]
US 8584240B1 · Yang · 2013 [cited by applicant]
US 8584241B1 · Jenks · 2013 [cited by applicant]
US 8601581B2 · Wenzinger · 2013 [cited by applicant]
US 8607066B1 · Kailash · 2013 [cited by applicant]
US 8619971B2 · Kurien · 2013 [cited by applicant]
US 8627458B2 · Muttik · 2014 [cited by applicant]
US 8635669B2 · Iftode · 2014 [cited by applicant]
US 8645340B2 · Kester · 2014 [cited by applicant]
US 8646038B2 · Blumfield · 2014 [cited by applicant]
US 8650648B2 · Howard · 2014 [cited by applicant]
US 8656488B2 · Liang · 2014 [cited by applicant]
US 8656493B2 · Capalik · 2014 [cited by applicant]
US 8661062B1 · Jamail · 2014 [cited by applicant]
US 8661541B2 · Beck · 2014 [cited by applicant]
US 8667590B1 · Lee · 2014 [cited by applicant]
US 8683031B2 · Green · 2014 [cited by applicant]
US 8688797B2 · Hesselink · 2014 [cited by applicant]
US 8709924B2 · Hanawa · 2014 [cited by applicant]
US 8713682B2 · Shulman · 2014 [cited by examiner]
US 8719924B1 · Williamson · 2014 [cited by applicant]
US 8719932B2 · Boney · 2014 [cited by applicant]
US 8719939B2 · Krasser · 2014 [cited by applicant]
US 8726389B2 · Morris · 2014 [cited by applicant]
US 8732824B2 · Arbaugh · 2014 [cited by applicant]
US 8763123B2 · Morris · 2014 [cited by applicant]
US 8789189B2 · Capalik · 2014 [cited by applicant]
US 8793798B2 · Fossen · 2014 [cited by applicant]
US 8799190B2 · Stokes · 2014 [cited by applicant]
US 8826439B1 · Hu · 2014 [cited by applicant]
US 8838992B1 · Zhu · 2014 [cited by applicant]
US 8839417B1 · Jordan · 2014 [cited by applicant]
US 8839422B2 · Ghosh · 2014 [cited by applicant]
US 8850570B1 · Ramzan · 2014 [cited by applicant]
US 8856473B2 · van Riel · 2014 [cited by applicant]
US 8856505B2 · Schneider · 2014 [cited by applicant]
US 8869139B2 · Le · 2014 [cited by applicant]
US 8875289B2 · Mahaffey · 2014 [cited by applicant]
US 8881283B2 · Tuvell · 2014 [cited by applicant]
US 8885928B2 · Forman · 2014 [cited by applicant]
US 8885938B2 · Hong · 2014 [cited by applicant]
US 8925101B2 · Bhargava · 2014 [cited by applicant]
US 8935788B1 · Diao · 2015 [cited by applicant]
US 8935792B1 · Spurlock · 2015 [cited by applicant]
US 8943592B1 · Mirski · 2015 [cited by applicant]
US 8955104B2 · Arbaugh · 2015 [cited by applicant]
US 8955133B2 · Kumar · 2015 [cited by applicant]
US 8955134B2 · Hartrell · 2015 [cited by applicant]
US 9021589B2 · Anderson · 2015 [cited by applicant]
US 9043894B1 · Dennison · 2015 [cited by applicant]
US 9043903B2 · Diehl · 2015 [cited by applicant]
US 9104871B2 · Tuvell · 2015 [cited by applicant]
US 9117075B1 · Yeh · 2015 [cited by applicant]
US 9129110B1 · Mason · 2015 [cited by applicant]
US 9129111B2 · Rothwell · 2015 [cited by applicant]
US 9152789B2 · Natarajan · 2015 [cited by applicant]
US 9171157B2 · Flores · 2015 [cited by applicant]
US 9177153B1 · Perrig · 2015 [cited by applicant]
US 9189750B1 · Narsky · 2015 [cited by applicant]
US 9208323B1 · Karta · 2015 [cited by applicant]
US 9213836B2 · Mayer · 2015 [cited by applicant]
US 9245120B2 · Friedrichs · 2016 [cited by applicant]
US 9251373B2 · AlHarbi · 2016 [cited by applicant]
US 9286182B2 · Fries · 2016 [cited by applicant]
US 9292881B2 · Alperovitch · 2016 [cited by applicant]
US 9306966B2 · Eskin · 2016 [cited by applicant]
US 9306971B2 · Altman · 2016 [cited by applicant]
US 9319385B2 · Iwanski · 2016 [cited by applicant]
US 9324034B2 · Gupta · 2016 [cited by applicant]
US 9330257B2 · Valencia · 2016 [cited by applicant]
US 9336390B2 · Pavlyushchik · 2016 [cited by applicant]
US 9349103B2 · Eberhardt · 2016 [cited by applicant]
US 9398034B2 · Ronen · 2016 [cited by applicant]
US 9400886B1 · Beloussov · 2016 [cited by applicant]
US 9411953B1 · Kane · 2016 [cited by applicant]
US 9413721B2 · Morris · 2016 [cited by applicant]
US 9424430B2 · Rosenan · 2016 [cited by applicant]
US 9465936B2 · Tosa · 2016 [cited by applicant]
US 9465940B1 · Wojnowicz · 2016 [cited by applicant]
US 9489514B2 · Mankin · 2016 [cited by applicant]
Cited By (1)
US 12,688,293