🤖 AI Summary
This study addresses the vulnerability of regular expressions with backreferences (REWB) to ReDoS attacks and the lack of efficient matching algorithms. Combining fine-grained complexity theory and string algorithms, it establishes new theoretical lower bounds by proving, under the Strong Exponential Time Hypothesis (SETH), that k-REWB matching cannot be solved in O(n^{2k−ε}) time for any ε > 0. This result elevates the parameterized complexity of the problem from W[1] to W[2] and reveals a novel connection to the triangle detection problem. On the algorithmic front, the paper presents the first near-linear-time matching algorithm for 1-use REWB, achieving O(n log²n) time complexity—substantially improving upon the previous O(n²) bound—by leveraging suffix trees, transition monoids, factorization forests, and periodicity analysis.
📝 Abstract
ReDoS is a well-known type of algorithmic complexity attack, where an adversary supplies maliciously crafted strings to a regular expression matching engine, aiming to exhaust computational resources of systems. Even quadratic-time behavior in matching engines has been exploited in successful attacks, as exemplified by major outages at Stack Overflow (2016) and Cloudflare (2019). These incidents motivate a fundamental question: Is it possible to construct matching engines that are provably efficient, running in (near-)linear time in the length of the input string?
For classical regular expressions (REGEX), Thompson's construction yields a linear-time algorithm. However, practical engines support powerful features such as backreferences, which strictly extend the expressive power of REGEX but unfortunately increase the risk of ReDoS attacks.
This paper investigates the fine-grained complexity of the string matching problem for regular expressions with backreferences (REWBs). Specifically, we consider $r$-use $k$-REWBs.
On the hardness side, we show that the string matching problem for $k$-REWBs cannot be solved in $O(n^{2k-ε})$ time for any $ε> 0$ under SETH. We also prove that this problem is \textbf{W[2]}-hard when parameterized by the length of the REWB expression, strengthening the previous \textbf{W[1]}-hardness. Moreover, we prove that this problem for $2$-use $2$-REWBs cannot be solved in $n^{1+o(1)}$ time unless the triangle detection problem can be solved in that time.
On the algorithmic side, we present an $O(n \log^2 n)$-time algorithm for $1$-use REWBs, which significantly improves upon the recent $O(n^2)$-time algorithm by Nogami and Terauchi (MFCS, 2025). Our algorithm employs several techniques including suffix trees, transition monoids of REGEXes, factorization forest data structures, and periodicity of strings.