Skip to main content
Log in

Non-Malleable Functions and their Applications

  • Research Article
  • Published:
Journal of Cryptology Aims and scope Submit manuscript

Abstract

We formally study “non-malleable functions” (NMFs), a general cryptographic primitive which simplifies and relaxes “non-malleable one-way/hash functions” (NMOWHFs) introduced by Boldyreva et al. (in: Advances in cryptology—ASIACRYPT 2009, pp 524–541, 2009) and refined by Baecher et al. (in: CT-RSA 2011, pp 268–283, 2011). NMFs focus on basic functions, rather than one-way/hash functions considered in the literature of NMOWHFs. We formalize a game-based definition for NMFs. Roughly, a function f is non-malleable if given an image \(y^* \leftarrow f(x^*)\) for a randomly chosen \(x^*\), it is hard to output a value y together with a transformation \(\phi \) from some prefixed transformation class such that y is an image of \(\phi (x^*)\) under f. Our non-malleable notion is strong in the sense that only trivial copy solution \((\mathsf {id}, y^*)\) is forbidden, where \(\mathsf {id}\) is the identity transformation. We also consider the adaptive notion, which stipulates that non-malleability holds even when an inversion oracle is available. We investigate the relations between non-malleability and one-wayness in depth. In the non-adaptive setting, we show that non-malleability generally implies one-wayness for poly-to-one functions but not vice versa. In the adaptive setting, we show that for most algebra-induced transformation classes, adaptive non-malleability (ANM) is equivalent to adaptive one-wayness (AOW) for injective functions. These results establish theoretical connections between non-malleability and one-wayness for functions and extend to trapdoor functions as well, resolving the open problems left by Kiltz et al. (in: Advances in cryptology—EUROCRYPT 2010, pp 673–692, 2010). We also study the relations between standard OW/NM and hinting OW/NM, where the latter notions are typically more useful in practice. Toward efficient realizations of NMFs, we give a deterministic construction from adaptive trapdoor functions as well as a randomized construction from all-but-one lossy functions and one-time signature. This partially solves an open problem posed by Boldyreva et al. (in: Advances in cryptology—ASIACRYPT 2009, pp 524–541, 2009). Finally, we explore applications of NMFs in security against related-key attacks (RKA). We first show that, somewhat surprisingly, the implication AOW \(\Rightarrow \) ANM sheds light on addressing non-trivial copy attacks in RKA security. We then show that NMFs give rise to a generic construction of RKA-secure authenticated key derivation functions, which have proven to be very useful in achieving RKA security for numerous cryptographic primitives. Particularly, our construction simplifies and unifies the result due to Qin et al. (in: Public-key cryptography—PKC 2015, volume 9020 of LNCS. Springer, Berlin, pp 557–578, 2015).

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

Notes

  1. Historically, Boldyreva et al. [6] aggregated both one-way functions and hash functions under the term hash functions for simplicity.

  2. See [11] for a detailed discussion on simulation-based non-malleable notion.

  3. The basic design principle for cryptographic hash functions is one-wayness.

  4. We say “partially” since the posed question in [6] is to construct efficient NMFs in the context of their simulation-based definition.

  5. Virtually, all “interesting” security notions are achievable only for well-spread distributions \({\mathcal {C}}\) (i.e., with super-logarithmic min-entropy). Therefore, we will stick to this requirement in our work.

  6. Roughly speaking, we say f is near to g if their outputs agree on most inputs. The extent of nearness is determined by the number of agreed inputs.

  7. To make hinting notions achievable, hint functions must meet some necessary conditions. For instance of hinting non-malleability, \(\mathsf {hint}\) should be at least uninvertible. (Finding the exact preimage is infeasible.) We prefer to keep the definition as general as possible, so we do not explicitly impose concrete restrictions on \(\mathsf {hint}\) in definition.

  8. If \(R_f\) is empty, this algorithm simply outputs a distinguished symbol \(\bot \).

  9. We will continue to use BRS to denote poly-bounded root set for simplicity.

  10. \(\Phi \)-homomorphism means that for any \(\phi \in \Phi \) and any \(x \in X\), \(f(\phi (x)) = \phi (f(x))\).

  11. Briefly, \(\Phi \)-fingerprinting property requires that \(\phi (sk) \ne sk\) always invalidates the challenge ciphertext \(c^*\). Notice that queries \(\langle \phi , c^* \rangle \) such that \(\phi (sk) = sk\) are already forbidden by the definition, the reduction can thus safely reject all RKA queries of the form \(\langle \phi , c^*\rangle \) without even looking at \(\phi \), since either \(\phi (sk) = sk\) or \(\phi (sk) \ne sk\) will yield the same output \(\bot \) with respect to \(c^*\).

  12. We note that a family of universal hash functions is sufficient here.

  13. As we discussed in Sect. 3, non-malleability is impossible to achieve if \(\Phi \) contains constant transformations. Thus, we have \(\Phi \cap \mathsf {cf} = \emptyset \).

  14. Clearly, reveal query on the challenge tag \(t^*\) is not allowed to avoid trivial attack.

  15. We limit the length of x to be at most \(2^{\ell (\lambda )} - 1\) so that its length can fit into a single block of length \(\ell (\lambda )\) bits. This is not a limitation because we assume that all messages considered are of length polynomial in \(\lambda \) and not exponential.

References

  1. M. Abdalla, F. Benhamouda, A. Passelègue, K.G. Paterson, Related-key security for pseudorandom functions beyond the linear barrier, in Advances in Cryptology—CRYPTO 2014. LNCS, vol. 8616 (Springer, 2014), pp. 77–94

  2. A. Akavia, S. Goldwasser, V. Vaikuntanathan, Simultaneous hardcore bits and cryptography against memory attacks, in Theory of Cryptography, 6th Theory of Cryptography Conference, TCC 2009. LNCS, vol. 5444 (Springer, 2009), pp. 474–495

  3. B. Applebaum, D. Harnik, Y. Ishai, Semantic security under related-key attacks and applications, in Innovations in Computer Science—ICS 2010 (2011), pp. 45–60

  4. M. Bellare, A. Boldyreva, A. O’Neill, Deterministic and efficiently searchable encryption, in Advances in Cryptology—CRYPTO 2007. LNCS, vol. 4622 (Springer, 2007), pp. 535–552

  5. M. Bellare, D. Cash, Pseudorandom functions and permutations provably secure against related-key attacks, in Advances in Cryptology—CRYPTO 2010 (2010), pp. 666–684

  6. A. Boldyreva, D. Cash, M. Fischlin, B. Warinschi, Foundations of non-malleable hash and one-way functions, in Advances in Cryptology—ASIACRYPT 2009 (2009), pp. 524–541

  7. M. Bellare, D. Cash, R. Miller, Cryptography secure against related-key attacks and tampering, in Advances in Cryptology—ASIACRYPT 2011. LNCS, vol. 7073 (Springer, 2011), pp. 486–503

  8. D. Boneh, R.A. DeMillo, R.J. Lipton. On the importance of checking cryptographic protocols for faults (extended abstract), in Advances in Cryptology—EUROCRYPT 1997 (1997), pp. 37–51

  9. M. Bellare, A. Desai, D. Pointcheval, P. Rogaway. Relations among notions of security for public-key encryption schemes, in Advances in Cryptology—CRYPTO 1998.LNCS, vol. 1462 (Springer, 1998), pp. 26–45

  10. E.R. Berlekamp, Factoring polynomials over large finite fields. Math. Comput. 24:713–735 (1970)

    Article  MathSciNet  Google Scholar 

  11. P. Baecher, M. Fischlin, D. Schröder, Expedient non-malleability notions for hash functions, in CT-RSA 2011 (2011), pp. 268–283

  12. M. Bellare, S. Halevi, A. Sahai, S.P. Vadhan, Many-to-one trapdoor functions and their ralation to public-key cryptosystems, in CRYPTO 1998. LNCS, vol. 1462 (Springer, 1998), pp. 283–298

  13. M. Bellare, T. Kohno, A theoretical treatment of related-key attacks: RKA-PRPS, RKA-PRFS, and applications, in Advances in Cryptology—EUROCRYPT 2003. LNCS, vol. 2656 (Springer, 2003), pp. 491–506

  14. M. Bellare, K.G. Paterson, S. Thomson, RKA security beyond the linear barrier: Ibe, encryption and signatures, in ASIACRYPT 2012 (2012), pp. 331–348

  15. M. Bellare, P. Rogaway. Random oracles are practical: A paradigm for designing efficient protocols, in 1st ACM Conference on Computer and Communications Security (1993), pp. 62–73

  16. E. Biham, A. Shamir. Differential fault analysis of secret key cryptosystems, in Advances in Cryptology—CRYPTO 1997 (1997), pp. 513–525

  17. M. Bellare, A. Sahai, Non-malleable encryption: Equivalence between two notions, and an indistinguishability-based characterization, in Advances in Cryptology—CRYPTO 1999. LNCS, vol. 1666 (Springer, 1999), pp. 519–536

  18. M. Bellare, I. Stepanovs, S. Tessaro, Poly-many hardcore bits for any one-way function and a framework for differing-inputs obfuscation, in Advances in Cryptology—ASIACRYPT 2014. LNCS, vol. 8874 (Springer, 2014), pp. 102–121

  19. R. Canetti, R.R. Dakdouk, Extractable perfectly one-way functions, in Automata, Languages and Programming, 35th International Colloquium, ICALP 2008. LNCS, vol. 5126 (Springer, 2008), pp. 449–460

  20. D. Catalano, R. Gennaro, N. Howgrave-Graham, The bit security of Paillier’s encryption scheme and its applications, in Advances in Cryptology—EUROCRYPT 2001. Lecture Notes in Computer Science, vol. 2045 (Springer, 2001), pp. 229–243

  21. G.D. Crescenzo, Y. Ishai, R. Ostrovsky, Non-interactive and non-malleable commitment, in Proceedings of the Thirtieth Annual ACM Symposium on the Theory of Computing, STOC 1998 (ACM, 1998), pp. 141–150

  22. G.D. Crescenzo, J. Katz, R. Ostrovsky, A. Smith, Efficient and non-interactive non-malleable commitment, in Advances in Cryptology—EUROCRYPT 2001. LNCS, vol. 2045 (Springer, 2001), pp. 40–59

  23. Y. Chen, B. Qin, J. Zhang, Y. Deng, S.S.M. Chow, Non-malleable functions and their applications, in Public-Key Cryptography—PKC 2016 (2016). Full version to appear at JoC (2022), pp. 386–416

  24. R. Cramer. Modular design of secure yet practical cryptographic protocols. Ph.D. Thesis (CWI and University of Amsterdam, 1996)

  25. R. Canetti, M. Varia, Non-malleable obfuscation, in Theory of Cryptography, 6th Theory of Cryptography Conference, TCC 2009. LNCS, vol. 5444 (Springer, 2009), pp. 73–90

  26. D. Dolev, C. Dwork, M. Naor, Non-malleable cryptography (extended abstract), in STOC (ACM, 1991), pp. 542–552

  27. D. Dolev, C. Dwork, M. Naor. Nonmalleable cryptography. SIAM J. Comput. 30(2):391–437 (2000)

  28. W. Diffie, M.E. Hellman, New directions in cryptograpgy. IEEE Trans. Inf. Theory 22(6):644–654 (1976)

  29. Y. Dodis, R. Ostrovsky, L. Reyzin, A. Smith, Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. SIAM J. Comput. 38(1):97–139 (2008)

    Article  MathSciNet  Google Scholar 

  30. S. Dziembowski, K. Pietrzak, D. Wichs, Non-malleable codes, in Innovations in Computer Science—ICS 2010 (Tsinghua University Press, 2010), pp. 434–452

  31. Y. Dodis, Y. Yu, Overcoming weak expectations, in Theory of Cryptography—10th Theory of Cryptography Conference, TCC 2013. LNCS, vol. 7785 (Springer, 2013), pp. 1–22

  32. M. Fischlin, R. Fischlin, Efficient non-malleable commitment schemes, in Advances in Cryptology—CRYPTO 2000. LNCS, vol. 1880 (Springer, 2000), pp. 413–431

  33. S. Faust, P. Mukherjee, J.B. Nielsen, D. Venturi. Continuous non-malleable codes, in Theory of Cryptography—11th Theory of Cryptography Conference, TCC 2014. LNCS, vol. 8349 (Springer, 2014), pp. 465–488

  34. S. Faust, P.Mukherjee, D.Venturi, D. Wichs, Efficient non-malleable codes and key-derivation for poly-size tampering circuits, in Advances in Cryptology—EUROCRYPT 2014. LNCS, vol. 8441 (Springer, 2014), pp. 111–128

  35. O. Goldreich, L.A. Levin, A hard-core predicate for all one-way functions, in Proceedings of the 21st Annual ACM Symposium on Theory of Computing, STOC 1989 (ACM, 1989), pp. 25–32

  36. D. Goldenberg, M. Liskov, On related-secret pseudorandomness, in Theory of Cryptography, 7th Theory of Cryptography Conference, TCC 2010 (2010), pp. 255–272

  37. V. Goyal, A. O’Neill, V. Rao, Correlated-input secure hash functions, in Theory of Cryptography—8th Theory of Cryptography Conference, TCC 2011. LNCS, vol. 6597 (Springer, 2011), pp. 182–200

  38. J. Håstad, A.W. Schrift, A. Shamir, The discrete logarithm modulo a composite hides o(n) bits. J. Comput. Syst. Sci. 47(3):376–404 (1993)

    Article  MathSciNet  Google Scholar 

  39. A. Juels, J.G. Brainard, Client puzzles: A cryptographic countermeasure against connection depletion attacks, in Proceedings of the Network and Distributed System Security Symposium, NDSS 1999 (The Internet Society, 1999)

  40. D. Jia, X. Lu, B. Li, Q. Mei, RKA secure PKE based on the DDH and HR assumptions, in Provable Security—7th International Conference, ProvSec 2013. LNCS, vol. 8209. (Springer, 2013), pp. 271–287

  41. Z. Jafargholi, D. Wichs, Tamper detection and continuous non-malleable codes, in Theory of Cryptography—12th Theory of Cryptography Conference, TCC 2015. LNCS, vol. 9014 (Springer, 2015), pp. 451–480

  42. E. Kiltz, P. Mohassel, A. O’Neill, Adaptive trapdoor functions and chosen-ciphertext security, in Advances in Cryptology—EUROCRYPT 2010 (2010), pp. 673–692

  43. X. Lu, B. Li, D. Jia, Related-key security for hybrid encryption, in Information Security—17th International Conference, ISC 2014. LNCS, vol. 8783 (Springer, 2014), pp. 19–32

  44. H. Lin, R. Pass, W.-L.D. Tseng, M. Venkitasubramaniam, Concurrent non-malleable zero knowledge proofs, in Advances in Cryptology—CRYPTO 2010. LNCS, vol. 6223 (Springer, 2010), pp. 429–446

  45. S. Lucks, Ciphers secure against related-key attacks, in Fast Software Encryption, 11th International Workshop, FSE 2004 (2004), pp. 359–370

  46. R. Ostrovsky, G. Persiano, I. Visconti, Constant-round concurrent non-malleable zero knowledge in the bare public-key model, in Automata, Languages and Programming, 35th International Colloquium, ICALP 2008. LNCS, vol. 5126 (Springer, 2008), pp. 548–559

  47. O. Pandey, R. Pass, V. Vaikuntanathan, Adaptive one-way functions and applications, in Advances in Cryptology—CRYPTO 2008. LNCS, vol. 5157 (Springer, 2008), pp. 57–74

  48. R. Pass, A. Rosen, Concurrent non-malleable commitments, in 46th Annual IEEE Symposium on Foundations of Computer Science, FOCS 2005 (IEEE Computer Society, 2005), pp. 563–572

  49. S. Patel, G.S. Sundaram, An efficient discrete log pseudo random generator, in Advances in Cryptology—CRYPTO 1998.Lecture Notes in Computer Science, vol. 1462. (Springer, 1998), pp. 304–317

  50. C. Peikert, B. Waters, Lossy trapdoor functions and their applications, in Proceedings of the 40th Annual ACM Symposium on Theory of Computing, STOC 2008 (2008), pp. 187–196

  51. B. Qin, S. Liu, Leakage-resilient chosen-ciphertext secure public-key encryption from hash proof system and one-time lossy filter, in Advances in Cryptology—ASIACRYPT 2013.LNCS, vol. 8270 (Springer, 2013), pp. 381–400

  52. B. Qin, S. Liu, Leakage-flexible CCA-secure public-key encryption: Simple construction and free of pairing, in Public-Key Cryptography - PKC 2014—17th International Conference on Practice and Theory in Public-Key Cryptography. LNCS, vol. 8383 (Springer, 2014), pp. 19–36

  53. B. Qin, S. Liu, T.H. Yuen, R.H. Deng, K. Chen. Continuous non-malleable key derivation and its application to related-key security, in Public-Key Cryptography—PKC 2015. LNCS, vol. 9020 (Springer, 2015), pp. 557–578

  54. A. Rosen, G. Segev, Chosen-ciphertext security via correlated products, in Theory of Cryptography, 6th Theory of Cryptography Conference, TCC 2009. LNCS, vol. 5444 (Springer, 2009), pp. 419–436

  55. A. Sahai, Non-malleable non-interactive zero knowledge and adaptive chosen-ciphertext security, in FOCS 1999 (ACM, 1999), pp. 543–553

  56. J. von zur Gathen, V. Shoup, Computing frobenius maps and factoring polynomials (extended abstract), in Proceedings of the 24th Annual ACM Symposium on Theory of Computing, STOC 1992 (ACM, 1992), pp. 97–105

  57. H. Wee, Efficient chosen-ciphertext security via extractable hash proofs, in Advances in Cryptology—CRYPTO 2010, vol. 6223 (2010), pp. 314–332

  58. H. Wee, Public key encryption against related key attacks, in Public Key Cryptography—PKC 2012 (2012), pp. 262–279

Download references

Acknowledgements

We thank Shuai Han and Shengli Liu for many insightful discussions. We are grateful to the anonymous reviewers for their valuable comments on this paper. Yu Chen is supported by the National Key Research and Development Program of China (Grant No. 2021YFA1000600), the National Natural Science Foundation of China (Grant No. 61772522), and Shandong Key Research and Development Program (Grant No. 2020ZLYS09). Baodong Qin is supported by the National Natural Science Foundation of China (Grant Nos. 61872292, 61502400). Jiang Zhang is supported by the National Natural Science Foundation of China (Grant No. 62022018) and the National Key Research and Development Program of China (Grant No. 2018YFB0804105). Yi Deng is supported by the National Natural Science Foundation of China (Grant Nos. 61932019, 61772521), the Key Research Program of Frontier Sciences, CAS (Grant No. QYZDB-SSW-SYS035), and Municipal Natural Science Foundation (Grant No. M22003).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yi Deng.

Additional information

Communicated by Alon Rosen.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This paper is the extended version of [23] presented at PKC 2016.

Appendices

A An Improved Proof for the Non-malleability of the Strengthened Merkle–Damgård Transformation

Strengthened Merkle–Damgård Transformation  Let h be a fixed-length hash function with input length \(2\ell (\lambda )\) and output length \(\ell (\lambda )\), \(iv \in \{0,1\}^{\ell (\lambda )}\) be an initialization vector, \(\mathsf {pad}\) be a padding function which maps a message \(x \in \{0,1\}^*\) of length at most \(2^{\ell (\lambda )}-1\) to multiples of the block length \(\ell (\lambda )\) such that the final block contains the message length.Footnote 15 The strengthened Merkle–Damgård transformation \(\mathsf {MD}\) is defined as:

$$\begin{aligned} \mathsf {MD}_{iv}^h(x): = h_{iv}^*(x_1||\dots ||x_k) = h(\cdots h(h(iv, x_1), x_2) \cdots ) \end{aligned}$$

where \(x_1||\dots ||x_k = \mathsf {pad}(x)\). In the following, let \(y_i\) denote the i-th intermediate value when iterating h, i.e., \(h_{iv}^*(x_1||\dots ||x_i)\).

Baecher et al. [11, Proposition 4.2] proved that \(\mathsf {MD}\) is \(\Phi ^{\text {xor}}\)-non-malleable (for fixed-length message) if the compression function h is modeled as random oracle. In the following lemma, we show that \(\mathsf {MD}\) is essentially \(\Phi _{\text {brs}}^{\text {srs}}\cup \mathsf {id}\)-non-malleable.

Lemma A.1

For a random oracle \(h: \{0,1\}^{2\ell (\lambda )} \rightarrow \{0,1\}^{\ell (\lambda )}\) where \(\ell (\lambda ) = \mathsf {poly}(\lambda )\), the hash function \(\mathsf {MD}_{iv}^h: \{0,1\}^{n(\lambda )} \rightarrow \{0,1\}^{\ell (\lambda )}\) is \(\Phi _{\text {brs}}^{\text {srs}}\cup \mathsf {id}\)-non-malleable w.r.t. arbitrary \(\mathsf {hint}\) as long as \(\tilde{{\mathsf {H}}}_\infty (x^*|(\mathsf {hint}(x^*), y^*)) \ge \omega (\log \lambda )\) where \(x^* \xleftarrow {\text { R}}\{0,1\}^{n(\lambda )}\) and \(y^* = \mathsf {MD}_{iv}^h(x^*)\).

Proof

We prove this lemma by showing that if there exists a PPT adversary \({\mathcal {A}}\) that has non-negligible advantage against \(\Phi _{\text {brs}}^{\text {srs}}\cup \mathsf {id}\)-non-malleability of \(\mathsf {MD}_{iv}^h\) where h is a random oracle, then we can build a PPT adversary \({\mathcal {B}}\) that contradicts to the hypothesis \(\tilde{{\mathsf {H}}}_\infty (x^*|(\mathsf {hint}(x^*), y^*)) \ge \omega (\log \lambda )\). Here, \(h(\cdot )\) is implemented via an external random oracle \({\mathcal {O}}_\mathsf {ro}^h(\cdot )\), which maintains a list L to track random oracle queries. For each fresh random oracle query on point \((a, b) \in \{0,1\}^{2\ell (\lambda )}\), a random value \(c \xleftarrow {\text { R}}\{0,1\}^{\ell (\lambda )}\) is chosen and the tuple \(\langle (a, b), c \rangle \) is added into L. At the very beginning, \({\mathcal {B}}\) is given \(y^* = \mathsf {MD}_{iv}^h(x^*)\) and \(\mathsf {hint}(x^*)\) for a randomly chosen \(x^* \xleftarrow {\text { R}}\{0,1\}^{n(\lambda )}\) from its challenger. With the aim to recover \(x^*\), \({\mathcal {B}}\) invokes \({\mathcal {A}}\) with \(\mathsf {hint}(x^*)\) and \(y^*\) and simulates its challenger in the non-malleable security experiment. Let \(L_A\) be the subset of L which containing all the tuples indexed by \({\mathcal {A}}\)’s random oracle queries. When \({\mathcal {A}}\) outputs its solution \((\phi , y)\), \({\mathcal {B}}\) recovers \(x^*\) via the following steps:

  1. 1.

    Let \(x_1 ||\dots || x_k = \mathsf {pad}(\phi (x^*))\), \(y_0 = iv\), \(y_k = y\) and \(y_i = {\mathcal {O}}_\mathsf {ro}^h(y_{i-1}, x_i)\) for \(1 \le i \le k\). \({\mathcal {B}}\) initiates a counter \(j = k\), sets \(y_j' = y\). \({\mathcal {B}}\) then randomly picks a tuple in \(L_A\) whose image is \(y_j'\), sets the left part of the preimage as \(y_{j-1}'\), sets the right part of the preimage as \(x_j'\). \({\mathcal {B}}\) then sets the counter \(j = j-1\) and continues the above operation until \(j=0\). Finally, \({\mathcal {B}}\) obtains \(x_{k}', \dots , x_1'\). We claim that if \({\mathcal {A}}\) succeeds (i.e., \(\mathsf {MD}_{iv}^h(\phi (x^*)) = y\)) with some probability \(\epsilon (\lambda )\), then \(\Pr [\wedge _{i=1}^k x_i = x_i'] \ge \epsilon (\lambda )\). Let Q be the event that during the game \({\mathcal {A}}\) explicitly queries \({\mathcal {O}}_\mathsf {ro}^f(\cdot )\) at all intermediate points \((y_0, x_1)\), \((y_1, x_2), \dots , (y_{k-1}, x_k)\), and S be the event that \({\mathcal {A}}\) succeeds. Then, we have:

    $$\begin{aligned} \Pr [S] = \Pr [S \wedge {\overline{Q}}] + \Pr [S \wedge Q] \le \Pr [S \wedge {\overline{Q}}] + \Pr [Q] \end{aligned}$$

    Note that the output length \(\ell (\lambda ) = \mathsf {poly}(\lambda )\), the output of \({\mathcal {O}}_\mathsf {ro}^h(\cdot )\) is unpredictable, and \({\mathcal {O}}_\mathsf {ro}^h(\cdot )\) acts like a collision-resistant hash function. The first fact indicates that \(\Pr [S \wedge {\overline{Q}}] = \mathsf {negl}(\lambda )\). The second fact indicates that for each \(1 \le i \le k\), there is one and only one tuple \(\langle (y_{i-1}, x_i), y_i \rangle \) (whose image is \(y_i\)) in \(L_A\). Therefore, we must have \(y_j' = y_j\) and \(x_j' = x_j\) for each \(j \in [k]\). This proves the above claim.

  2. 2.

    \({\mathcal {B}}\) then recovers \(x' \in \{0,1\}^{n(\lambda )}\) from \((x_1', \dots , x_k')\). Conditioned on \({\mathcal {A}}\) succeeds, we must have \(\phi \ne \mathsf {id}\) because \(\mathsf {MD}_{iv}^h(\cdot )\) is deterministic. According to the above claim, if \({\mathcal {A}}\) succeeds with some non-negligible probability \(\epsilon (\lambda )\), then \(\Pr [\wedge _{i=1}^k x_i' = x_i] \ge \epsilon (\lambda )\) and thus \(\Pr [x' = \phi (x^*)] \ge \epsilon (\lambda )\). \({\mathcal {B}}\) then runs \(\mathsf {SampRS}\) to output a random solution of equation \(\phi (\alpha ) - x' = 0\) as its answer. Combining the fact \(\Pr [x' = \phi (x^*)] \ge \epsilon \) and the BRS and SRS properties of \(\Phi _{\text {brs}}^{\text {srs}}\), we conclude that \({\mathcal {B}}\) outputs \(x^*\) probability \(\epsilon (\lambda )/\mathsf {poly}(\lambda )\), which is still non-negligible in \(\lambda \).

During the recovering procedure, \({\mathcal {B}}\) only uses the information from \({\mathcal {A}}\)’s random oracle queries. The existence of \({\mathcal {B}}\) contradicts the hypothesis that \(\tilde{{\mathsf {H}}}_\infty (x^*|(\mathsf {hint}(x^*), y^*)) \ge \omega (\log \lambda )\). This proves Lemma A.1. \(\square \)

B Missing Cryptographic Primitives

1.1 B. 1 Universal Hash Functions

A family of functions \({\mathcal {H}} = \{h_i: X \rightarrow Y\}\) from domain X to range Y is said to be universal if, for every distinct \(x, x' \in X\), \(\Pr _{h \leftarrow {\mathcal {H}}}[h(x) = h(x')] = 1/|X|\).

1.2 B.2 Strongly Unforgeable One-Time Signatures

A signature scheme consists of three polynomial time algorithms as follows:

  • \(\mathsf {Gen}(1^\lambda )\): on input a security parameter \(\lambda \), outputs a verification key vk and a signing key sk.

  • \(\mathsf {Sign}(sk,m)\): on input a signing key sk and a message m from some message space M (M may depend on \(\lambda \) and vk), outputs a signature \(\sigma \).

  • \(\mathsf {Vefy}(vk, m, \sigma )\): on input a verification key vk, a message \(m \in M\) and a signature \(\sigma \), outputs a bit b, with \(b=1\) meaning “valid” and \(b=0\) meaning “invalid.”

Correctness For any \((vk, sk) \leftarrow \mathsf {Gen}(1^\lambda )\) and any \(m \in M\), \(\mathsf {Vefy}(vk, m, \mathsf {Sign}(sk,m)) = 1\). We can relax the standard correctness to require that \(\mathsf {Vefy}\) accepts with overwhelming probability over all the randomness of the experiment.

Strong unforgeability Let \({\mathcal {A}}\) be an adversary against signature and define its advantage in the following experiment:

$$\begin{aligned} \mathsf {Adv}_{\mathcal {A}}(\lambda ) = \Pr \left[ \begin{array}{c} \mathsf {Vefy}(vk, m, \sigma ) = 1 \\ \wedge (m, \sigma ) \notin {\mathcal {Q}} \end{array}: \begin{array}{l} (vk, sk) \leftarrow \mathsf {Gen}(1^\lambda );\\ (m, \sigma ) \leftarrow {\mathcal {A}}^{{\mathcal {O}}_\mathsf {sign}}(vk); \end{array} \right] \end{aligned}$$

Here, \({\mathcal {O}}_\mathsf {sign}\) is the signing oracle that on input m returns \(\sigma \leftarrow \mathsf {Sign}(sk, m)\). The set \({\mathcal {Q}}\) contains pairs of queries to \({\mathcal {O}}_\mathsf {sign}\) and their associated responses. A signature is said to be strongly unforgeable under one-time chosen message attack if no PPT adversary has non-negligible advantage in above experiment by accessing \({\mathcal {O}}_\mathsf {sign}\) once.

1.3 B.3 All-But-One Lossy Functions

Qin and Liu [52] introduced the notion of all-but-one lossy functions (ABOLFs), which could be viewed as the trapdoor-free version of all-but-one lossy trapdoor functions [50]. Formally, a collection of \((X, Y, \tau )\)-ABOLFs with branch set B consists of two polynomial time algorithms satisfying the following properties:

  • \(\mathsf {Gen}(1^\lambda , b^*)\): on input a security parameter \(\lambda \) and a branch \(b^* \in B\), outputs a function index s. For any \(b \ne b^*\), \(g_{s,b}(\cdot )\) is an injective function from X to Y, while \(g_{s, b^*}(\cdot )\) is a lossy function from X to Y whose image has size at most \(2^{\tau }\). In both cases, \(g_{s,b}(\cdot )\) is deterministic.

  • \(\mathsf {Eval}(s, b, x)\): on input a function index s, a branch \(b \in B\), and an element \(x \in X\), outputs \(y \leftarrow g_{s,b}(x)\).

Hidden lossy branch For any \(b_0^*, b_1^* \in B \times B\), the output \(s_0\) of \(\mathsf {Gen}(1^\lambda , b_0^*)\) and the output \(s_1\) of \(\mathsf {Gen}(1^\lambda , b_1^*)\) are computationally indistinguishable.

1.4 B.4 One-Time Lossy Filters

Qin and Liu [51] introduced the notion of one-time lossy filters (OTLFs), in which a lossy branch could be generated on-the-fly in a somewhat semi-customized (or adversary-dependent) manner. A collection of \((X, Y, \tau )\)-OTLFs with branch set \(B = B_c \times B_a\) (where \(B_c\) is the core branch set and \(B_a\) is the auxiliary branch set) consists of three polynomial time algorithms satisfying the following properties:

  • \(\mathsf {Gen}(1^\lambda )\): on input a security parameter \(\lambda \), outputs a function index s and a trapdoor td. B contains two disjoint subsets, the subset of injective branches \(B_\text {inj}\) and the subset of lossy branches \(B_\text {lossy}\). For any \(b \in B_\text {inj}\), \(g_{s, b}(\cdot )\) is an injective function from X to Y. For any \(b \in B_\text {lossy}\), \(g_{s, b}(\cdot )\) is a lossy function from X to Y whose image has size at most \(2^{\tau }\). In both cases, \(g_{s, b}(\cdot )\) is deterministic.

  • \(\mathsf {Eval}(s, b, x)\): on input a function index s, a branch \(b \in B\), and an element \(x \in X\), outputs \(y \leftarrow g_{s, b}(x)\).

  • \(\mathsf {SampLossy}(td, b_a)\): on input a trapdoor td and an auxiliary branch \(b_a\), outputs a core branch \(b_c\) such that \(b = (b_c, b_a)\) is lossy branch from \(B_\text {lossy}\).

Indistinguishability For any auxiliary branch \(b_a \in B_a\), a random lossy core branch \(b_c \leftarrow \mathsf {SampLossy}(td, b_a)\) and a random core branch \(b_c \xleftarrow {\text { R}}B_c\) are computationally indistinguishable.

Evasiveness For any PPT adversary, it is hard to generate a new lossy branch even given a lossy branch.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chen, Y., Qin, B., Zhang, J. et al. Non-Malleable Functions and their Applications. J Cryptol 35, 11 (2022). https://doi.org/10.1007/s00145-022-09422-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s00145-022-09422-6

Navigation