REVERSE NFA GENERATION AND PROCESSING
First Claim
1. A method comprising:
- in a processor of a security appliance coupled to a network;
walking an input of a sequence of characters through a finite automata graph generated for at least one given pattern; and
at a marked node of the finite automata graph;
if a specific type of the at least one given pattern is matched at the marked node, processing the input sequence of characters through a reverse non-deterministic finite automata (rNFA) graph generated for the specific type of the at least one given pattern by walking the input sequence of characters backwards through the rNFA beginning from an offset of the input sequence of characters associated with the marked node.
6 Assignments
0 Petitions
Accused Products
Abstract
In a processor of a security appliance, an input of a sequence of characters is walked through a finite automata graph generated for at least one given pattern. At a marked node of the finite automata graph, if a specific type of the at least one given pattern is matched at the marked node, the input sequence of characters is processed through a reverse non-deterministic finite automata (rNFA) graph generated for the specific type of the at least one given pattern by walking the input sequence of characters backwards through the rNFA beginning from an offset of the input sequence of characters associated with the marked node. Generating the rNFA for a given pattern includes inserting processing nodes for processing an input sequence of patterns to determine a match for the given pattern. In addition, the rNFA is generated from the given type of pattern.
-
Citations
58 Claims
-
1. A method comprising:
-
in a processor of a security appliance coupled to a network; walking an input of a sequence of characters through a finite automata graph generated for at least one given pattern; and at a marked node of the finite automata graph; if a specific type of the at least one given pattern is matched at the marked node, processing the input sequence of characters through a reverse non-deterministic finite automata (rNFA) graph generated for the specific type of the at least one given pattern by walking the input sequence of characters backwards through the rNFA beginning from an offset of the input sequence of characters associated with the marked node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method comprising:
-
in a processor of a security appliance coupled to a network; generating a reverse non-deterministic finite automata (rNFA) for a given pattern, the rNFA including processing nodes for processing an input sequence of patterns to determine a match for the given pattern, the rNFA being generated from the given type of pattern. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A security appliance coupled to a network, the security appliance comprising:
-
a processor configured to; walk an input of a sequence of characters through a finite automata graph generated for at least one given pattern; and at a marked node of the finite automata graph; if a specific type of the at least one given pattern is matched at the marked node, process the input sequence of characters through a reverse non-deterministic finite automata (rNFA) graph generated for the specific type of the at least one given pattern by walking the input sequence of characters backwards through the rNFA beginning from an offset of the input sequence of characters associated with the marked node. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A security appliance coupled to a network, the security appliance comprising:
-
a compiler configured to; generate a reverse non-deterministic finite automata (rNFA) for a given pattern, the rNFA including processing nodes for processing an input sequence of patterns to determine a match for the given pattern, the rNFA being generated from the given type of pattern. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
Specification