Secure pattern matching based on bit parallelism

Non-interactive protocols for non-deterministic string matching automata evaluation
  • Mohammad Hasan Samadani
  • Mehdi Berenjkoob
  • Marina BlantonEmail author
Regular Contribution


In this paper, we consider the problem of secure pattern matching that uses evaluation of non-deterministic string matching automata (NSMA). Our solution is based on a class of hardware-based pattern matching algorithms called bit-parallel pattern matching, which simulates the behavior of NSMAs. The properties of this class of algorithms allow our constructions to handle any fixed-length pattern in a non-interactive way with only two rounds of communication. Our secure protocol is able to handle the Hamming distance computation and substring and subpattern matching for any finite alphabet. It is also possible to use this protocol for keyword, text, and live text search. Security of our protocol is proved in the semi-honest model. Then, in order to strengthen security of the solution and retain its efficiency, we design a variant of the protocol which is proved to be secure with one-sided simulation in the malicious model. As a proof of concept, we also present another protocol that shows how our basic idea can be extended to other scenarios of pattern matching such as secure computation outsourcing.


Secure pattern matching Two-party computation Outsourcing Keyword search Text search Bit-parallel pattern matching 



The first author would like to thank Professor Yehuda Lindell for his priceless comments in Crypto Stack Exchange community, Babak Siabi, and Professor Salman Niksefat for useful comments and discussions regarding secure multi-party computation. Portions of this work were supported by Grants CNS-1223699 and CNS-1319090 from the US National Science Foundation and FA9550-13-1-0066 from the US Air Force Office of Scientific Research. Any opinions, findings, and conclusions or recommendations expressed in this publication are those of the authors and do not necessarily reflect the views of the funding agencies.


  1. 1.
    Atallah, M.J., Kerschbaum, F., Du, W.: Secure and private sequence comparisons. In: The 2003 ACM Workshop on Privacy in the Electronic Society, pp. 39–44. ACM (2003)Google Scholar
  2. 2.
    Baeza-Yates, R., Gonnet, G.H.: A new approach to text searching. Commun. ACM 35(10), 74–82 (1992)CrossRefGoogle Scholar
  3. 3.
    Baron, J., El Defrawy, K., Minkovich, K., Ostrovsky, R., Tressler, E.: 5PM: Secure pattern matching. Tech. rep. (2012)Google Scholar
  4. 4.
    Baron, J., El Defrawy, K., Minkovich, K., Ostrovsky, R., Tressler, E.: 5PM: secure pattern matching. J. Comput. Secur. 21(5), 601–625 (2013)CrossRefzbMATHGoogle Scholar
  5. 5.
    Bethencourt, J.: Pallier library (2010).
  6. 6.
    Blanton, M., Aliasgari, M.: Secure outsourcing of DNA searching via finite automata. In: Foresti, S., Jajodia, S. (eds.) Data and Applications Security and Privacy XXIV. DBSec 2010. Lecture Notes in Computer Science, vol. 6166, pp. 49–64. Springer, Berlin, Heidelberg (2010)Google Scholar
  7. 7.
    Blanton, M., Atallah, M.J., Frikken, K.B., Malluhi, Q.: Secure and efficient outsourcing of sequence comparisons. In: Computer Security–ESORICS 2012, pp. 505–522. Springer (2012)Google Scholar
  8. 8.
    Du, W., Atallah, M.J.: Protocols for secure remote database access with approximate matching. In: E-Commerce Security and Privacy, pp. 87–111. Springer (2001)Google Scholar
  9. 9.
    Faloutsos, C.: Sub-pattern matching. In: Searching Multimedia Databases by Content, pp. 77–81. Springer (1998)Google Scholar
  10. 10.
    Faro, S., Lecroq, T.: Twenty years of bit-parallelism in string matching. Festschrift for Borivoj Melichar pp. 72–101 (2012)Google Scholar
  11. 11.
    Frikken, K.B.: Practical private DNA string searching and matching through efficient oblivious automata evaluation. In: Data and Applications Security XXIII, pp. 81–94. Springer (2009)Google Scholar
  12. 12.
    Galbraith, S.D., Paterson, K.G., Smart, N.P.: Pairings for cryptographers. Discrete Appl. Math. 156(16), 3113–3121 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Gennaro, R., Hazay, C., Sorensen, J.S.: Automata evaluation and text search protocols with simulation-based security. J. Cryptol. 1–40 (2010)Google Scholar
  14. 14.
    Gennaro, R., Hazay, C., Sorensen, J.S.: Text search protocols with simulation based security. In: Public Key Cryptography–PKC 2010, pp. 332–350. Springer (2010)Google Scholar
  15. 15.
    Gonnet, G.H.: Unstructured data bases or very efficient text searching. In: the 2nd ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, pp. 117–124. ACM (1983)Google Scholar
  16. 16.
    Groth, J., Ostrovsky, R., Sahai, A.: Perfect non-interactive zero knowledge for NP. In: Advances in Cryptology-EUROCRYPT 2006, pp. 339–358. Springer (2006)Google Scholar
  17. 17.
    Hazay, C., Lindell, Y.: Efficient protocols for set intersection and pattern matching with security against malicious and covert adversaries. J. Cryptol. 23(3), 422–456 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Hazay, C., Lindell, Y.: Efficient Secure Two-Party Protocols: Techniques and Constructions. Springer, Berlin (2010)CrossRefzbMATHGoogle Scholar
  19. 19.
    Hazay, C., Toft, T.: Computationally secure pattern matching in the presence of malicious adversaries. J. Cryptol. 27(2), 358–395 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Hoffmann, H., Howard, M.D., Daily, M.J.: Fast pattern matching with time-delay neural networks. In: The 2011 International Joint Conference on Neural Networks (IJCNN), pp. 2424–2429. IEEE (2011)Google Scholar
  21. 21.
    Katz, J., Malka, L.: Secure text processing with applications to private DNA matching. In: the 17th ACM Conference on Computer and Communications Security, pp. 485–492. ACM (2010)Google Scholar
  22. 22.
    Kerschbaum, F.: Practical private regular expression matching. In: Security and Privacy in Dynamic Environments, pp. 461–470. Springer (2006)Google Scholar
  23. 23.
    Kerschbaum, F.: Secure conjunctive keyword searches for unstructured text. In: 5th International Conference on Network and System Security (NSS), pp. 285–289. IEEE (2011)Google Scholar
  24. 24.
    Knuth, D.E., Morris Jr., J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(2), 323–350 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
  25. 25.
    Laud, P., Willemson, J.: Universally composable privacy preserving finite automata execution with low online and offline complexity. IACR Cryptol. ePrint Arch. 2013, 678 (2013)Google Scholar
  26. 26.
    Lindell, A.Y.: Making privacy-preserving data mining practical with smartcards. In: Black Hat Briefings (2009)Google Scholar
  27. 27.
    Melichar, B., Holub, J., Polcar, J.: Text searching algorithms. (2005)
  28. 28.
    Mohassel, P., Niksefat, S., Sadeghian, S., Sadeghiyan, B.: An efficient protocol for oblivious DFA evaluation and applications. In: Topics in Cryptology–CT-RSA 2012, pp. 398–415. Springer (2012)Google Scholar
  29. 29.
    Naor, M., Ostrovsky, R., Venkatesan, R., Yung, M.: Perfect zero-knowledge arguments for NP can be based on general complexity assumptions. In: Advances in Cryptology-CRYPTO92, pp. 196–214. Springer (1992)Google Scholar
  30. 30.
    Naor, M., Reingold, O.: From unpredictability to indistinguishability: A simple construction of pseudo-random functions from MACs. In: Advances in Cryptology-CRYPTO’98, pp. 267–282. Springer (1998)Google Scholar
  31. 31.
    Niksefat, S., Sadeghiyan, B., Mohassel, P., Sadeghian, S.: ZIDS: A privacy-preserving intrusion detection system using secure two-party computation protocols. Comput. J. p. bxt019 (2013)Google Scholar
  32. 32.
    Paillier, P.: Public-key cryptosystems based on composite degree residuosity classes. In: Advances in Cryptology-EUROCRYPT99, pp. 223–238. Springer (1999)Google Scholar
  33. 33.
    Rabin, M.O.: How to exchange secrets with oblivious transfer. IACR Cryptol. ePrint Arch. 2005, 187 (2005)Google Scholar
  34. 34.
    Sasakawa, H., Harada, H., duVerle, D., Arimura, H., Tsuda, K., Sakuma, J.: Oblivious evaluation of non-deterministic finite automata with application to privacy-preserving virus genome detection. In: The 13th Workshop on Privacy in the Electronic Society, pp. 21–30. ACM (2014)Google Scholar
  35. 35.
    Sipser, M.: Introduction to the Theory of Computation, vol. 2. Thomson Course Technology Boston (2006)Google Scholar
  36. 36.
    Thomas, B.M., Ziring, N.L.: Using classified intelligence to defend unclassified networks. In: 48th Hawaii International Conference on System Sciences (HICSS), pp. 2298–2307. IEEE (2015)Google Scholar
  37. 37.
    Troncoso-Pastoriza, J.R., Katzenbeisser, S., Celik, M.: Privacy preserving error resilient DNA searching through oblivious automata. In: The 14th ACM Conference on Computer and Communications Security, pp. 519–528. ACM (2007)Google Scholar
  38. 38.
    Yao, A.: How to generate and exchange secrets. In: 27th Annual Symposium on Foundations of Computer Science, pp. 162–167. IEEE (1986)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  • Mohammad Hasan Samadani
    • 1
  • Mehdi Berenjkoob
    • 1
  • Marina Blanton
    • 2
    Email author
  1. 1.Department of Electrical and Computer EngineeringIsfahan University of TechnologyIsfahanIran
  2. 2.Department of Computer Science and EngineeringUniversity at Buffalo (SUNY)BuffaloUSA

Personalised recommendations