Abstract
Pattern matching is a basic algorithmic problem that identifies the appearance as well as the location of a pattern in a specific text, and one of the most important variants of that, approximate pattern matching, can be used to discern a substring in the text that is similar to the pattern, as long as their differences stay within a certain threshold. It serves as a basic component in many real-world applications, such as facial recognition, DNA matching and music retrieval. Motivated by the newly emerging secure outsourced computing, in this paper we proposed protocols to realize these functionalities in a privacy-preserving manner. Specifically, we constructed exact and approximate matching protocols, and both of them ensure that the party holds the text (with length of n) learns noting about the pattern (with length of m). We composed a novel idea to combine secret sharing scheme with oblivious transfer (OT), such as to transform the secure pattern matching problem into reconstructing of a shared secret, which means that if a shared secret can be correctly reconstructed, it indicates the pattern indeed exists in the text. Our protocol for approximate pattern matching is generated in the cloud-assisted setting, where the reconstruction phase is outsourced to an honest-but-curious cloud server. Using oblivious transfer extension technique, a powerful method to use few integrated OTs to implement large-scale single OTs, our protocol is efficiently constructed. Both of the protocols are secure in semi-honest model, and we present a detailed secure simulation-based proof in this paper.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Al-Khalifa S, Jagadish HV, Koudas N et al (2002) Structural joins: a primitive for efficient XML query pattern matching. In: Proceedings of IEEE 18th international conference on data engineering, 2002, pp 141–152
Asharov G, Jain A, Lpez-Alt A, et al (2012) Multiparty computation with low communication, computation and interaction via threshold FHE. In: Proceedings of the 31st annual international conference on theory and applications of cryptographic techniques (EUROCRYPT 2012). Springer, pp 483–501
Asharov G, Lindell Y, Schneider T et al (2013) More efficient oblivious transfer and extensions for faster secure computation. In: Proceedings of the 2013 ACM SIGSAC conference on computer and communications security. ACM, pp 535–548
Baron J, El Defrawy K, Minkovich K et al (2012) 5pm: secure pattern matching. In: International conference on security and cryptography for networks. Springer, Berlin, pp 222–240
Bezawada B, Liu AX, Jayaraman B et al (2015) Privacy preserving string matching for cloud computing. In: IEEE 35th international conference on distributed computing systems (ICDCS), 2015, pp 609–618
Blakley GR (1979) Safeguarding cryptographic keys. In: Proceedings of the 1979 AFIPS national computer conference, vol 48, pp 313–317
Carter H, Mood B, Traynor P et al (2013) Secure outsourced garbled circuit evaluation for mobile devices. In: Proceedings of the 22nd USENIX security symposium (USENIX security 13), 2013, pp 289–304
Chase M, Shen E (2015) Substring-searchable symmetric encryption. Proc Priv Enhanc Technol 2:263–281
Chung KM, Kalai Y, Vadhan S (2010) Improved delegation of computation using fully homomorphic encryption. In: Advances in cryptolog, CCRYPTO, 2010, pp 483–501
Dharmapurikar S, Lockwood JW (2006) Fast and scalable pattern matching for network intrusion detection systems. IEEE J Sel Areas Commun 24(10):1781–1792
Even S, Goldreich O, Lempel A (1985) A randomized protocol for signing contracts. Commun ACM 28(6):637–647
Faber S, Jarecki S, Krawczyk H et al (2015) Rich queries on encrypted data: beyond exact matches. In: European symposium on research in computer security. Springer, pp 123–145
Faust S, Hazay C, Venturi D (2013) Outsourced pattern matching. In: International colloquium on automata, languages, and programming. Springer, Berlin, pp 545–556
Freedman MJ, Ishai Y, Pinkas B, Reingold O (2005) Keyword search and oblivious pseudorandom functions. In: Theory of cryptography conference. Springer, Berlin, pp 303–324
Gennaro R, Hazay C, Sorensen JS (2010) Text search protocols with simulation based security. In: International workshop on public key cryptography. Springer, pp 332–350
Gentry C (2009) Fully homomorphic encryption using ideal lattices. In: Proceedings of the 41st annual ACM symposium on symposium on theory of computing (STOC09). ACM Press, pp 169–169
Goldreich O (2004) Foundations of cryptography: vol 2 C basic applications. Cambridge University Press, Cambridge
Goldreich O, Micali S, Wigderson A (1987) How to play any mental game—a completeness theorem for protocols with honest majority. In: The 19th STOC, pp 218–229
Gennaro R, Gentry C, Parno B (2010) Non-interactive verifiable computing: outsourcing computation to untrusted workers. In: Advances in cryptology, CCRYPTO, 2010, pp 465–482
Gordon SD, Katz J, Liu FH et al (2015) Multi-client verifiable computation with stronger security guarantees. In: Proceedings of the 12th theory of cryptography conference on theory of cryptography (TCC12). Springer, Berlin, pp 144–168
Hazay C, Lindell Y (2010) Efficient secure two-party protocols: techniques and constructions. Springer, Berlin
Hazay C, Lindell Y (2010) Efficient protocols for set intersection and pattern matching with security against malicious and covert adversaries. J Cryptol 23(3):422–456
Hazay C, Toft T (2010) Computationally secure pattern matching in the presence of malicious adversaries. In: International conference on the theory and application of cryptology and information security (ASIACRYPT 10). Springer, Berlin, pp 195–212
Hazay C, Toft T (2014) Computationally secure pattern matching in the presence of malicious adversaries. J Cryptol 27(2):358–395
Iafrate AJ, Feuk L, Rivera MN et al (2004) Detection of large-scale variation in the human genome. Nat Genet 36(9):949–951
Ishai Y, Kilian J, Nissim K et al (2003) Extending oblivious transfers efficiently. In: Annual international cryptology conference. Springer, Berlin, pp 145–161
Jia N, Jia X, Wang D et al (2016) Structured queries with generalized pattern matching on encrypted cloud data. In: 2016 IEEE international conference on communications (ICC). IEEE, pp 1–7
Karp RM, Rabin MO (1987) Efficient randomized pattern-matching algorithms. IBM J Res Dev 31(2):249–260
Knuth DE, Morris JH Jr, Pratt VR (1977) Fast pattern matching in strings. SIAM J Comput 6(2):323–350
Kamara S, Mohassel P, Raykova M (2011) Outsourcing multi-party computation. Cryptology ePrint Archive, Report 2011/272, 2011. http://eprint.iacr.org/
Kamara S, Mohassel P, Riva B (2012) Salus: a system for server-aided secure function evaluation. In: Proceedings of the 2012 ACM conference on computer and communications security. ACM, pp 797–808
Katz J, Malka L (2010) Secure text processing with applications to private DNA matching. In: Proceedings of the 17th ACM conference on computer and communications security. ACM, pp 485–492
Liu Z, Groszschaedl J, Hu Z et al (2016a) Elliptic curve cryptography with efficiently computable endomorphisms and its hardware implementations for the internet of things. IEEE Trans Comput. http://ieeexplore.ieee.org/abstract/document/7727929/. Accessed 12 Mar 2017
Liu Z, Huang X, Hu Z et al (2016b) On emerging family of elliptic curves to secure internet of things: Ecc comes of age. IEEE Trans Dependable Secur Comput. http://ieeexplore.ieee.org/abstract/document/7486126/. Accessed 12 Mar 2017
Lpez-Alt A, Tromer E, Vaikuntanathan V (2012) On-the-fly multiparty computation on the cloud via multikey fully homomorphic encryption. In: Proceedings of the forty-fourth annual ACM symposium on theory of computing (STOC12). ACM, pp 1219–1234
Motoyama M, McCoy D, Levchenko K et al (2011) An analysis of underground forums. In: Proceedings of the 2011 ACM SIGCOMM conference on internet measurement conference. ACM, pp 71–80
Mohassel P, Niksefat S, Sadeghian S et al (2012) An efficient protocol for oblivious DFA evaluation and applications. In: Cryptographers track at the RSA conference. Springer, Berlin, pp 398–415
Naor M, Pinkas B, Sumner R (1999) Privacy preserving auctions and mechanism design. In: Proceedings of the 1st ACM conference on electronic commerce. ACM, pp 129–139
Rabin MO (1981) How to exchange secrets by oblivious transfer. Technical report, Harvard University
Risch NJ, Devlin B (1992) On the probability of matching DNA fingerprints. Science 255(5045):717
Sasakawa H, Harada H, duVerle D et al (2014) Oblivious evaluation of non-deterministic finite automata with application to privacy-preserving virus genome detection. In: Proceedings of the 13th workshop on privacy in the electronic society. ACM, pp 21–30
Shamir A (1979) How to share a secret. Commun ACM 22(11):612–613
Shulman A (2010) The underground credentials market. Comput Fraud Secur 3:5–8
Troncoso-Pastoriza JR, Katzenbeisser S, Celik M (2007) Privacy preserving error resilient DNA searching through oblivious automata. In: Proceedings of the 14th ACM conference on computer and communications security. ACM, pp 519–528
Tuzun E, Sharp AJ, Bailey JA et al (2005) Fine-scale structural variation of the human genome. Nat Genet 37(7):727–732
Van Lunteren J (2006) High-performance pattern-matching for intrusion detection. In: Proceedings of IEEE 25th international conference on computer communications (INFOCOM), 2006, pp 1–13
Venter JC, Adams MD, Myers EW et al (2001) The sequence of the human genome. Science 291(5507):1304–1351
Vergnaud D (2011) Efficient and secure generalized pattern matching via fast fourier transform. International conference on cryptology in Africa. Springer, Berlin, pp 41–58
Wang D, Jia X, Wang C et al (2015) Generalized pattern matching string search on encrypted data in cloud systems. In: IEEE conference on computer Communications (INFOCOM). IEEE, pp 2101–2109
Wang H, He D, Shen J et al (2016a) Verifiable outsourced ciphertext-policy attribute-based encryption in cloud computing. Soft Comput 1–11. doi:10.1007/s00500-016-2271-2
Wang J, Miao M, Gao Y et al (2016b) Enabling efficient approximate nearest neighbor search for outsourced database in cloud computing[J]. Soft Comput 20(11):4487–4495
Weiner P (1973) Linear pattern matching algorithms. In: Proceedings of the 14th annual symposium on switching and automata theory (swat 1973). IEEE Computer Society, pp 1–11
Wei L, Reiter MK (2012) Third-party private DFA evaluation on encrypted files in the cloud. In: European symposium on research in computer security. Springer, pp 523–540
Yao AC (1982) Protocols for secure computations. In: Proceedings of the 23rd annual symposium on foundations of computer science (FOCS82). IEEE Computer Society, pp 160–164
Acknowledgements
This work was supported by the National Natural Science Foundation of China under Grant Nos. 61173139 and 61572294.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Ethical approval
This article does not contain any studies with human participants or animals performed by any of the authors.
Additional information
Communicated by A. Di Nola.
Rights and permissions
About this article
Cite this article
Wei, X., Zhao, M. & Xu, Q. Efficient and secure outsourced approximate pattern matching protocol. Soft Comput 22, 1175–1187 (2018). https://doi.org/10.1007/s00500-017-2560-4
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-017-2560-4