US2020202078A1PendingUtilityA1

Efficient string search

Assignee: SONICWALL US HOLDINGS INCPriority: Jul 27, 2007Filed: Oct 29, 2019Published: Jun 25, 2020
Est. expiryJul 27, 2027(~1 yrs left)· nominal 20-yr term from priority
G06F 40/205G06F 40/53G06F 40/40G06F 16/90344
67
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Some embodiments of an efficient string search have been presented. In one embodiment, a string of bytes representing content written in a non-delimited language is received, wherein the content has been classified into a predetermined category. In a single pass through the string of bytes, a set of N-grams is searched for simultaneously. Statistical information on occurrences of the N-grams, if any, in the string of bytes is collected. In some embodiments, a model is generated based on the statistical information, where the model is usable by a content filter to classify content.

Claims

exact text as granted — not AI-modified
1 . (canceled) 
     
     
         2 . A method for string searches using finite state machines (FSMs), the method comprising:
 receiving a feature set inclusive of a number of N-grams, each N-gram corresponding to an undesirable keyword included in a set of characters in a non-delimited format;   assigning a state to each N-gram and to each prefix of the number of N-grams;   identifying a set of steps for implementing the FSM, the set of steps including state information identifying each of the assigned states;   comparing one or more characters of the set of characters with the state information to identify that the set of characters includes the undesirable keyword;   counting a number of undesirable keywords identified based on the comparison;   classifying the set of characters as undesirable when the count of the number of undesirable keywords at least meets a threshold level; and   preventing at least a portion of the received set of characters from being sent to a destination.   
     
     
         3 . The method of  claim 2 , wherein the set of characters include graphic data. 
     
     
         4 . The method of  claim 2 , wherein the set of characters include one or more symbolic representations. 
     
     
         5 . The method of  claim 4 , wherein the symbolic representations correspond to at least one of a Chinese, Japanese, or Thai language. 
     
     
         6 . The method of  claim 2 , further comprising:
 collecting statistical information regarding the number of N-grams; and   generating a model based on the statistical information.   
     
     
         7 . The method of  claim 6 , further comprising storing the model in a model repository. 
     
     
         8 . The method of  claim 2 , wherein the set of characters include one or more symbols. 
     
     
         9 . The method of  claim 2 , further comprising parsing the set of characters to identify at least one of a keyword or a token. 
     
     
         10 . The method of  claim 2 , further comprising receiving a policy that specifies how many undesirable keywords meet the threshold level, wherein classifying the set of characters as undesirable is based on the policy. 
     
     
         11 . An apparatus for string searches using finite state machines (FSMs), the apparatus comprising:
 a model repository that receives a feature set inclusive of a number of N-grams, each N-gram corresponding to an undesirable keyword included in a set of characters in a non-delimited format; and   a content filtering client that executes a finite state machine to:
 assign a state to each N-gram and to each prefix of the number of N-grams; 
 identify a set of steps for implementing the FSM, the set of steps including state information identifying each of the assigned states; 
 compare one or more characters of the set of characters with the state information to identify that the set of characters includes the undesirable keyword; 
 count via a counting module a number of undesirable keywords identified based on the comparison; and 
 classify via a classifying engine the set of characters as undesirable when the count of the number of undesirable keywords at least meets a threshold level; and 
 prevent at least a portion of the received set of characters from being sent to a destination. 
   
     
     
         12 . The apparatus of  claim 11 , wherein the set of characters include graphic data. 
     
     
         13 . The apparatus of  claim 11 , wherein the set of characters include one or more symbolic representations. 
     
     
         14 . The apparatus of  claim 13 , wherein the symbolic representations correspond to at least one of a Chinese, Japanese, or Thai language. 
     
     
         15 . The apparatus of  claim 11 , further comprising a model generator executable to:
 collect statistical information regarding the number of N-grams; and   generate a model based on the statistical information.   
     
     
         16 . The apparatus of  claim 15 , wherein the model repository further stores the generated model. 
     
     
         17 . The apparatus of  claim 11 , wherein the set of characters include one or more symbols. 
     
     
         18 . The apparatus of  claim 11 , wherein the content filter further parses the set of characters to identify at least one of a keyword or a token. 
     
     
         19 . The apparatus of  claim 11 , wherein the content filter further receives a policy that specifies how many undesirable keywords meet the threshold level, wherein the content filter classifies the set of characters as undesirable is based on the policy. 
     
     
         20 . A non-transitory computer-readable storage medium having embodied thereon a program executable by a processor for implementing a method for string searches using finite state machines (FSMs), the method comprising:
 receiving a feature set inclusive of a number of N-grams, each N-gram corresponding to an undesirable keyword included in a set of characters in a non-delimited format;   assigning a state to each N-gram and to each prefix of the number of N-grams;   identifying a set of steps for implementing the FSM, the set of steps including state information identifying each of the assigned states;   comparing one or more characters of the set of characters with the state information to identify that the set of characters includes the undesirable keyword;   counting a number of undesirable keywords identified based on the comparison;   classifying the set of characters as undesirable when the count of the number of undesirable keywords at least meets a threshold level; and   preventing at least a portion of the received set of characters from being sent to a destination.

Join the waitlist — get patent alerts

Track US2020202078A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.