Patent ID: 8069183

Claim:
A method, implemented by a computing device having at least one processor and at least one memory device storing instructions for examining a data stream to detect presence of at least one complex string belonging to a predefined complex dictionary containing a set of complex strings, the method comprising: associating an array of multi-bit Boolean state variables and an array of reference states with said predefined complex dictionary; detecting a simple string in said data stream, said simple string being a constituent string in each of said at least one complex string; shifting bits of a state variable associated with said each of at least one complex string by a number of positions determined according to a position of said simple string in said data stream and a previous position of any simple string detected in said data stream and belonging to said at least one complex string; setting an end bit of said Boolean state to indicate logical TRUE; performing a logical AND of said state variable and a bitmask associated with said simple string, said bitmask indicating said all relative positions of said simple string within said at least one complex string; and determining that said each of at least one complex string is present in said data stream subject to said state variable attaining a value equal to a multi-bit Boolean constant having a bit corresponding to a last simple string in said each of at least one complex string set to logical TRUE.