Pattern masking for dictionary matching: theory and practice
Charalampopoulos, Panagiotis and Chen, H. and Christen, P. and Loukides, G. and Pisanti, N. and Pissis, S.P. and Radoszewski, J. (2024) Pattern masking for dictionary matching: theory and practice. Algorithmica , ISSN 01784617.
Text
PP_string_masking.pdf  Author's Accepted Manuscript Restricted to Repository staff only Available under License Creative Commons Attribution. Download (764kB) 


Text
53168a.pdf  Published Version of Record Available under License Creative Commons Attribution. Download (1MB)  Preview 
Abstract
Data masking is a common technique for sanitizing sensitive data maintained in database systems which is becoming increasingly important in various application areas, such as in record linkage of personal data. This work formalizes the Pattern Masking for Dictionary Matching (PPSM) problem: given a dictionary D of d strings, each of length l, a query string q of length l, and a positive integer z, we are asked to compute a smallest set K⊆{1,...,l}, so that if q[i] is replaced by a wildcard for all i∈K, then q matches at least z strings from D. Solving PPSM allows providing data utility guarantees as opposed to existing approaches. We first show, through a reduction from the wellknown kClique problem, that a decision version of the PPSM problem is NPcomplete, even for binary strings. We thus approach the problem from a more practical perspective. We show a combinatorial O((dl)^{K/3}+dl)time and O(dl)space algorithm for PPSM for K=O(1). In fact, we show that we cannot hope for a faster combinatorial algorithm, unless the combinatorial kClique hypothesis fails [Abboud et al., SIAM J. Comput. 2018; Lincoln et al., SODA 2018]. Our combinatorial algorithm, executed with small K, is the backbone of a greedy heuristic that we propose. Our experiments on realworld and synthetic datasets show that our heuristic finds nearlyoptimal solutions in practice and is also very efficient. We also generalize this algorithm for the problem of masking multiple query strings simultaneously so that every string has at least z matches in D. PPSM can be viewed as a generalization of the decision version of the dictionary matching with mismatches problem: by querying a PPSM data structure with string q and z=1, one obtains the minimal number of mismatches of q with any string from D. The query time or space of all known data structures for the more restricted problem of dictionary matching with at most k mismatches incurs some exponential factor with respect to k. A simple exact algorithm for PPSM runs in time O(2^l d). We present a data structure for PPSM that answers queries over D in time O(2^{l/2}(2^{l/2}+τ)l) and requires space O(2^{l}d^2/τ^2+2^{l/2}d), for any parameter τ∈[1,d]. We complement our results by showing a twoway polynomialtime reduction between PPSM and the Minimum Union problem [Chlamtac et al., SODA 2017]. This gives a polynomialtime O(d^{1/4+ε})approximation algorithm for PPSM, which is tight under a plausible complexity conjecture. This is an extended version of a paper that was presented at ISAAC 2021.
Metadata
Item Type:  Article 

School:  Birkbeck Faculties and Schools > Faculty of Science > School of Computing and Mathematical Sciences 
Depositing User:  Panagiotis Charalampopoulos 
Date Deposited:  29 Feb 2024 14:34 
Last Modified:  01 May 2024 18:11 
URI:  https://eprints.bbk.ac.uk/id/eprint/53168 
Statistics
Additional statistics are available via IRStats2.