Skip to main content

Publicly Auditable Functional Encryption

  • Conference paper
  • First Online:
Applied Cryptography and Network Security (ACNS 2023)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 13906))

Included in the following conference series:

  • 588 Accesses

Abstract

We introduce the notion of publicly auditable functional encryption (PAFE). Compared to standard functional encryption, PAFE operates in an extended setting that includes an entity called auditor, besides key-generating authority, encryptor, and decryptor. The auditor requests function outputs from the decryptor and wishes to check their correctness with respect to the ciphertexts produced by the encryptor, without having access to the functional secret key that is used for decryption. This is in contrast with previous approaches for result verifiability and consistency in functional encryption that aim to ensure decryptors about the legitimacy of the results they decrypt.

We propose four different flavors of public auditability with respect to different sets of adversarially controlled parties (only decryptor, encryptor-decryptor, authority-decryptor, and authority-encryptor-decryptor) and provide constructions for building corresponding secure PAFE schemes from standard functional encryption, commitment schemes, and non-interactive witness-indistinguishable proof systems. At the core of our constructions lies the notion of a functional public key, that works as the public analog of the functional secret key of functional encryption and is used for verification purposes by the auditor. Crucially, in order to ensure that these new keys cannot be used to infer additional information about plaintext values (besides the requested decryptions by the auditor), we propose a new indistinguishability-based security definition for PAFE to accommodate not only functional secret key queries (as in standard functional encryption) but also functional public key and decryption queries. Finally, we propose a publicly auditable multi-input functional encryption scheme (MIFE) that supports inner-product functionalities and is secure against adversarial decryptors. Instantiated with existing MIFE using “El Gamal”-like ciphertexts and \(\varSigma \)-protocols, this gives a lightweight publicly auditable scheme.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 89.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Delloite-US. https://www2.deloitte.com/us/en.html

  2. Facebook Community Standards. https://www.facebook.com/communitystandards

  3. KPMG-CN. https://home.kpmg/cn/en/home.html

  4. Publicly auditable functional encryption. https://cse.hkust.edu.hk/vkoutsos/pafe.pdf (2023)

  5. Abdalla, M., Benhamouda, F., Gay, R.: From single-input to multi-client inner-product functional encryption. In: Galbraith, S.D., Moriai, S. (eds.) ASIACRYPT 2019. LNCS, vol. 11923, pp. 552–582. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-34618-8_19

    Chapter  Google Scholar 

  6. Agrawal, S., Goyal, R., Tomida, J.: Multi-input quadratic functional encryption from pairings. In: Malkin, T., Peikert, C. (eds.) CRYPTO 2021. LNCS, vol. 12828, pp. 208–238. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-84259-8_8

    Chapter  Google Scholar 

  7. Agrawal, S., Goyal, R., Tomida, J.: Multi-party functional encryption. In: Nissim, K., Waters, B. (eds.) TCC 2021. LNCS, vol. 13043, pp. 224–255. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90453-1_8

    Chapter  Google Scholar 

  8. Agrawal, S., Libert, B., Stehlé, D.: Fully secure functional encryption for inner products, from standard assumptions. In: Robshaw, M., Katz, J. (eds.) CRYPTO 2016. LNCS, vol. 9816, pp. 333–362. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53015-3_12

    Chapter  Google Scholar 

  9. Ambrona, M., Fiore, D., Soriente, C.: Controlled functional encryption revisited: Multi-authority extensions and efficient schemes for quadratic functions. Proc. Priv. Enhancing Technol. 2021(1), 21–42 (2021). https://doi.org/10.2478/popets-2021-0003

  10. Badertscher, C., Kiayias, A., Kohlweiss, M., Waldner, H.: Consistency for functional encryption. In: 34th IEEE Computer Security Foundations Symposium, CSF 2021, Dubrovnik, Croatia, 21–25 June 2021, pp. 1–16. IEEE (2021). https://doi.org/10.1109/CSF51468.2021.00045

  11. Badrinarayanan, S., Goyal, V., Jain, A., Sahai, A.: Verifiable functional encryption. In: Cheon, J.H., Takagi, T. (eds.) ASIACRYPT 2016. LNCS, vol. 10032, pp. 557–587. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53890-6_19

    Chapter  Google Scholar 

  12. Baltico, C.E.Z., Catalano, D., Fiore, D., Gay, R.: Practical functional encryption for quadratic functions with applications to predicate encryption. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. LNCS, vol. 10401, pp. 67–98. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63688-7_3

    Chapter  Google Scholar 

  13. Barbosa, M., Farshim, P.: Delegatable homomorphic encryption with applications to secure outsourcing of computation. In: Dunkelman, O. (ed.) CT-RSA 2012. LNCS, vol. 7178, pp. 296–312. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-27954-6_19

    Chapter  Google Scholar 

  14. Bellare, M., Palacio, A.: GQ and Schnorr identification schemes: proofs of security against impersonation under active and concurrent attacks. In: Yung, M. (ed.) CRYPTO 2002. LNCS, vol. 2442, pp. 162–177. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45708-9_11

    Chapter  Google Scholar 

  15. Bitansky, N., Paneth, O.: ZAPs and Non-interactive witness indistinguishability from indistinguishability obfuscation. In: Dodis, Y., Nielsen, J.B. (eds.) TCC 2015. LNCS, vol. 9015, pp. 401–427. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46497-7_16

    Chapter  MATH  Google Scholar 

  16. Blum, M., Feldman, P., Micali, S.: Non-interactive zero-knowledge and its applications (extended abstract). In: Simon, J. (ed.) Proceedings of the 20th Annual ACM Symposium on Theory of Computing, 2–4 May 1988, Chicago, Illinois, USA, pp. 103–112. ACM (1988). https://doi.org/10.1145/62212.62222

  17. Boneh, D., Sahai, A., Waters, B.: Functional encryption: definitions and challenges. In: Ishai, Y. (ed.) TCC 2011. LNCS, vol. 6597, pp. 253–273. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19571-6_16

    Chapter  Google Scholar 

  18. Camenisch, J., Stadler, M.: Efficient group signature schemes for large groups. In: Kaliski, B.S. (ed.) CRYPTO 1997. LNCS, vol. 1294, pp. 410–424. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0052252

    Chapter  Google Scholar 

  19. Chatzigiannis, P., Baldimtsi, F.: MiniLedger: compact-sized anonymous and auditable distributed payments. In: Bertino, E., Shulman, H., Waidner, M. (eds.) ESORICS 2021. LNCS, vol. 12972, pp. 407–429. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-88418-5_20

    Chapter  Google Scholar 

  20. Chotard, J., Dufour-Sans, E., Gay, R., Phan, D.H., Pointcheval, D.: Dynamic decentralized functional encryption. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020. LNCS, vol. 12170, pp. 747–775. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56784-2_25

    Chapter  Google Scholar 

  21. Chotard, J., Dufour Sans, E., Gay, R., Phan, D.H., Pointcheval, D.: Decentralized multi-client functional encryption for inner product. In: Peyrin, T., Galbraith, S. (eds.) ASIACRYPT 2018. LNCS, vol. 11273, pp. 703–732. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03329-3_24

    Chapter  Google Scholar 

  22. Confessore, N.: Cambridge analytica and facebook: the scandal and the fallout so far. https://www.nytimes.com/2018/04/04/us/politics/cambridge-analytica-scandal-fallout.html (2018)

  23. Gentry, C.: A fully homomorphic encryption scheme, Ph. D. thesis, Stanford University, USA (2009). https://searchworks.stanford.edu/view/8493082

  24. Goldwasser, S., et al.: Multi-input functional encryption. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 578–602. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_32

    Chapter  Google Scholar 

  25. Gong, J., Qian, H.: Simple and efficient FE for quadratic functions. Des. Codes Crypt. 89(8), 1757–1786 (2021). https://doi.org/10.1007/s10623-021-00871-x

    Article  MathSciNet  MATH  Google Scholar 

  26. Goyal, V., Jain, A., O’Neill, A.: Multi-input functional encryption with unbounded-message security. In: Cheon, J.H., Takagi, T. (eds.) ASIACRYPT 2016. LNCS, vol. 10032, pp. 531–556. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53890-6_18

    Chapter  Google Scholar 

  27. Kang, H., Dai, T., Jean-Louis, N., Tao, S., Gu, X.: FabZK: supporting privacy-preserving, auditable smart contracts in hyperledger fabric. In: DSN 2019, pp. 543–555. IEEE (2019). https://doi.org/10.1109/DSN.2019.00061

  28. Koutsos, V., Papadopoulos, D., Chatzopoulos, D., Tarkoma, S., Hui, P.: Agora: a privacy-aware data marketplace. IEEE Trans. Dependable Secur. Comput. 19(6), 3728–3740 (2022). https://doi.org/10.1109/TDSC.2021.3105099

    Article  Google Scholar 

  29. Libert, B., Ţiţiu, R.: Multi-client functional encryption for linear functions in the standard model from LWE. In: Galbraith, S.D., Moriai, S. (eds.) ASIACRYPT 2019. LNCS, vol. 11923, pp. 520–551. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-34618-8_18

    Chapter  MATH  Google Scholar 

  30. Narula, N., Vasquez, W., Virza, M.: zkLedger: privacy-preserving auditing for distributed ledgers. In: Banerjee, S., Seshan, S. (eds.) NSDI 2018, pp. 65–80. USENIX Association (2018). https://www.usenix.org/conference/nsdi18/presentation/narula

  31. Sahai, A., Waters, B.: Fuzzy identity-based encryption. In: Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 457–473. Springer, Heidelberg (2005). https://doi.org/10.1007/11426639_27

    Chapter  Google Scholar 

  32. Schoenmakers, B.: Cryptographic protocols. Lecture Notes, Department of Mathematics and Computer Science, Technical University of Eindhoven (2019)

    Google Scholar 

  33. Shafagh, H., Burkhalter, L., Hithnawi, A., Duquennoy, S.: Towards blockchain-based auditable storage and sharing of IoT data. In: ACM CCSW@CCS 2017, pp. 45–50 (2017)

    Google Scholar 

  34. Soroush, N., Iovino, V., Rial, A., Roenne, P.B., Ryan, P.Y.A.: Verifiable inner product encryption scheme. In: Kiayias, A., Kohlweiss, M., Wallden, P., Zikas, V. (eds.) PKC 2020. LNCS, vol. 12110, pp. 65–94. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45374-9_3

    Chapter  Google Scholar 

  35. Suzuki, T., Emura, K., Ohigashi, T., Omote, K.: Verifiable functional encryption using intel SGX. In: Huang, Q., Yu, Yu. (eds.) ProvSec 2021. LNCS, vol. 13059, pp. 215–240. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90402-9_12

    Chapter  Google Scholar 

  36. Tomida, J.: Tightly secure inner product functional encryption: multi-input and function-hiding constructions. In: Galbraith, S.D., Moriai, S. (eds.) ASIACRYPT 2019. LNCS, vol. 11923, pp. 459–488. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-34618-8_16

    Chapter  Google Scholar 

Download references

Acknowledgements

We would like to thank the anonymous reviewers for their constructive feedback. This work was partially supported by Hong Kong RGC under grant 16200721.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vlasis Koutsos .

Editor information

Editors and Affiliations

A Proof of Theorem 1

A Proof of Theorem 1

We prove the PAFE security game indistinguishable regardless of the challenger bit. We define multiple Hybrids to go from the execution of the PAFE security game with \(b=0\) to the execution with \(b=1\) and prove them subsequently indistinguishable. We state the advantage that the adversary has during each transformation and provide the total advantage at the end of our analysis.

Note that we exclude from our analysis adversarial strategies that trivially win the PAFE security game (by violating its winning conditions). This means that if the adversary issues a series of queries like (\(^\star \)) or (\(^{\star \star }\)) the advantage of the adversary is reduced to 0, from the PAFE security game (Definition 8).

figure am

Now, observe that we can divide all remaining possible, non-trivially-winning, strategies into two cases, based on whether the adversary issues QDec(\(\cdot \),\(\cdot \)) queries (case (i)) or not (case (ii)).

Intuitively by making such a division first we “exploit” the fact that adversaries who do not issue QDec(\(\cdot ,\cdot \)) queries (case (ii)), essentially degenerate into FE-type adversaries. The only exception is that they can also have access to functional public keys (which are computationally hiding commitments). On the other hand, we know that the adversary in case (i) will issue at least one non-trivially-violating QDec(\(\textsf {ct},\cdot \)) query, for QEnc(x\(_0\),x\(_1\))\(\rightarrow \) ct. This allows us to define hybrids over the total number of QEnc queries that are subsequently different in just a single output of the QEnc(x\(_0\),x\(_1\))\(\rightarrow \) ct\(^b\) query (based on the challenger bit) and prove them indistinguishable. In more detail, we present our analysis for the two cases below:

Proof

( Security ).

Case (i): We assume \(\mathcal {A}_{\textsf {PAFE}}\) issues at least one QDec(\(\cdot ,\cdot \)) query. We prove indistinguishability of the game that \(\mathcal {A}_{PAFE}\) plays when \(b=0\) and \(b=1\) through a series of hybrids. Below we define the hybrids and prove them consecutively indistinguishable. The challenger bit is represented in the game/hybrid exponents.

It is the security game when \(b=0\).

It is exactly the same game as \(\mathcal {G}_{UD}^0\) except for the computation of the c\(_d\). In \(\mathcal {G}_{UD}^0\) c\(_d\) \(\leftarrow \) Com.Commit(msk,\(;u_d\)), whereas in \(\mathcal {H}_{UD,1}^0\) c\(^\prime _d\) \(\leftarrow \) Com.Commit(\(\top ;u_d\)). From the hiding property of the employed commitment scheme no PPT adversary who sees a commitment can identify the committed value. Thus, \(\mathcal {G}_{UD}^0 \approx \mathcal {H}_{UD,1}^0\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {G}_{UD}^0-\mathcal {H}_{UD,1}^0}(\mathcal {A}_\textsf {PAFE})=Adv^\text {Com-Hidding}(\mathcal {A}_\textsf {PAFE})\).

It is exactly the same game as \(\mathcal {H}_{UD,1}^0\) except for the computation of \(\pi _d\). In \(\mathcal {H}_{UD,1}^0\) \(\pi _d\) \(\leftarrow \) NIWI\(_d\) .Prove(mpk,msk,f,sk\(_f\),\(r_f\),pk\(_f\),ct,y,c\(_d\),\(u_d\) ) using the first condition for relation \(\textsf {R}_{UD,d}\), whereas in \(\mathcal {H}_{UD,2}^0\), using the second condition of \(\textsf {R}_{UD,d}\), \(\pi _d^\prime \) \(\leftarrow \) NIWI\(_d\) .Prove(mpk,\(\bot \),f,\(\bot \),\(\bot \),pk\(_f\),ct,y,c\(_d\),\(u_d\) ) respectively. From the witness indistinguishability property of NIWI\(_d\) no PPT adversary can distinguish between which condition is satisfied for the generation of \(\pi _d\). Thus, \(\mathcal {H}_{UD,1}^0 \approx \mathcal {H}_{UD,2}^0\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,1}^0-\mathcal {H}_{UD,2}^0}(\mathcal {A}_\textsf {PAFE})=Adv^{WI}_{NIWI}(\mathcal {A}_\textsf {PAFE})\).

It is exactly the same game as \(\mathcal {H}_{UD,2}^0\) except for the computation of the y. In this case, we change y to be \(\textsf {y}=f(\textsf {x})\) instead of y \(\leftarrow \) FE.Dec(mpk,f,sk\(_f\),ct). Remember that for \(\mathcal {A}_{\textsf {PAFE}}\) to have non-negligible chance of winning in its game, it must be that for all functions f that \(\mathcal {A}_\textsf {PAFE}\) issues a QSKeyGen(f) query, for all \(\textsf {ct}\leftarrow \) QEnc(x\(_0\),x\(_1\)): \(f(\textsf {x})=f(\textsf {x}_0)=f(\textsf {x}_1)\). Additionally and similarly, for all functions f for which \(\mathcal {A}_\textsf {PAFE}\) has issued QPKeyGen(f) and QDec(ct,f) queries, where ct\(\leftarrow \) QEnc(x\(_0\),x\(_1\)), it must be that \(f(\textsf {x})=f(\textsf {x}_0)=f(\textsf {x}_1)\). In any other case by the restrictions of the security game for PAFE \(Adv^{sec-PAFE}\big (\mathcal {A}_\textsf {PAFE}(1^\lambda )\big )=0\). Since \(\mathcal {A}_{\textsf {PAFE}}\) cannot win in any of these two games with non-negligible advantage unless \(f(\textsf {x}_0)=f(\textsf {x}_1)\), \(\mathcal {H}_{UD,2}^0 \approx \mathcal {H}_{UD,3}^0\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,2}^0-\mathcal {H}_{UD,3}^0}(\mathcal {A}_\textsf {PAFE})=0\).

In this game we make the following change: the challenger samples , initializes a counter \(j=0\), and when \(\mathcal {A}_\textsf {PAFE}\) issues an encryption query, the challenger sets \(j=j+1\) and returns ct\(_j^b\) (we denote that query as QEnc(x\(_{0,j}\),x\(_{1,j}\)), more concretely). Now, when \(\mathcal {A}_\textsf {PAFE}\) issues a QPKeyGen(f) query, \(\mathcal {C}\) checks whether \(f(\textsf {x}_{0,j^\prime })\ne f(\textsf {x}_{1,j^\prime })\). If so, it samples z\(_f\), \(r_f\) and computes pk\(_f\) \(\leftarrow \) Com.Commit(z\(_f\),\(r_f\)). Remember that since \(f(\textsf {x}_{0,j^\prime })\ne f(\textsf {x}_{1,j^\prime })\) the adversary cannot issue a QSKeyGen(f) or a QDec(ct\(_{j^\prime }^b\),f) query — for that particular ciphertext. In such cases \(\mathcal {A}_\textsf {PAFE}\) would trivially diminish its advantage to 0, contradicting our assumption that it has non-negligible advantage \(\epsilon \) in winning the security game for PAFE. Therefore, from the hiding property of the underlying commitment scheme, similarly to \(\mathcal {G}_{UD}^0 \approx \mathcal {H}_{UD,1}\), we get that \(\mathcal {H}_{UD,3}^0 \approx \mathcal {H}_{UD,4}^0\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,3}^0-\mathcal {H}_{UD,4}^0}(\mathcal {A}_\textsf {PAFE})=Adv^\text {Com-Hidding}(\mathcal {A}_\textsf {PAFE})\).

We now define a series of hybrids, indexed by j. In these hybrids we make the following change: the challenger samples and when \(\mathcal {A}_\textsf {PAFE}\) issues a QEnc(x\(_0\),x\(_1\)) query \(\mathcal {C}\) returns ct\(^0\leftarrow \) PAFE.Enc(mpk,ek,x\(_0\) ), if \(j<j^\prime \), ct\(^1\leftarrow \) PAFE.Enc(mpk,ek,x\(_1\) ), if \(j>j^\prime \), and ct\(^b\leftarrow \) PAFE.Enc(mpk,ek,x\(_b\) ), if \(j=j^\prime \). Based on the choice of j we define \(m+1\) sub-hybrids, which we denote by \(\mathcal {H}_{UD,5.m+1}^b,\cdots \mathcal {H}_{UD,5.0}^b\). Clearly, \(\mathcal {H}_{UD,4}^0=\mathcal {H}_{UD,5.m+1}^b\), \(\mathcal {H}_{UD,4}^1=\mathcal {H}_{UD,5.0}^b\), and \(\mathcal {H}_{UD,5.j}^1=\mathcal {H}_{UD,5.j+1}^0\). Following we prove \(\mathcal {H}_{UD,5.j}^0\approx \mathcal {H}_{UD,5.j}^1\), which translates into \(\mathcal {H}_{UD,5.j}^0\approx \mathcal {H}_{UD,5.j+1}^0\), based on the above, and ultimately into \(\mathcal {H}_{UD,4}^0 \approx \mathcal {H}_{UD,4}^1\).

Lemma 1

Assuming the underlying FE scheme is secure as per Definition 4 \(\mathcal {H}_{UD,5.j}^0\approx \mathcal {H}_{UD,5.j}^1\).

Proof

We prove this via contraposition. We construct an adversary \(\mathcal {A}_\textsf {FE}\) that utilizes \(\mathcal {A}_\textsf {PAFE}\) to win in the security game of FE. Now, assuming \(\mathcal {A}_\textsf {PAFE}\) issues at most m Qenc(\(\cdot \)) queries, \(\mathcal {A}_\textsf {FE}\) functions as follows:

  • Initialization: \(\mathcal {A}_\textsf {FE}\) receives mpk from \(\mathcal {C}\), computes pp \(\leftarrow \) Com.Setup(\(1^\lambda \)), samples , initializes \(counter=0\), initializes a table \(\mathcal {T}_{enc}\), samples \(r_s \leftarrow \{0,1\}^\lambda \), computes c\(_d\) \(\leftarrow \) Com.Commit(\(\top ;u_d\) ), samples \(b^\prime \leftarrow \{0,1\}\), and forwards the triple (pp,mpk,c\(_d\)) to \(\mathcal {A}_{\textsf {PAFE}}\).

  • Encryption queries: When \(\mathcal {A}_{\textsf {PAFE}}\) issues a QEnc(x\(_0\),x\(_1\)) query to \(\mathcal {A}_\textsf {FE}\), the latter issues a QEnc(x\(_j\),x\(_j\)) query to \(\mathcal {C}\) and increments counter by 1. \(x_j=x_0\) for \(counter < j^\star \), and \(x_j=x_1\) for \(counter>j^\star \). For \(counter=j^\star \) \(\mathcal {A}_\textsf {FE}\) forwards the query to \(\mathcal {C}\) without any alteration. Regardless the case, \(\mathcal {C}\) returns a ciphertext ct, which \(\mathcal {A}_{FE}\) forwards to \(\mathcal {A}_{\textsf {PAFE}}\).

  • Functional secret key queries: When \(\mathcal {A}_{\textsf {PAFE}}\) issues a QSKeyGen query to \(\mathcal {A}_\textsf {FE}\), the latter forwards the query to \(\mathcal {C}\), who responds with sk\(_f\). \(\mathcal {A}_\textsf {FE}\) then checks if a QPKeyGen query has been issued for f. If not, it samples and computes pk\(_f \leftarrow \) Com.Commit(\(\textsf {sk}_f;r_f\) ), \(\mathcal {A}_\textsf {FE}\) forwards (sk\(_f\),pk\(_f\)) to \(\mathcal {A}_{\textsf {PAFE}}\).

  • Functional public key queries: When \(\mathcal {A}_{\textsf {PAFE}}\) issues a QPKeyGen(f) query to \(\mathcal {A}_\textsf {FE}\), the latter checks whether \(f(\textsf {x}_{0.j^\star })\ne f(\textsf {x}_{1.j^\star })\). If so, \(\mathcal {A}_{FE}\) samples , samples , and computes pk\(_f \leftarrow \) Com.Commit(\(\textsf {z}_f;r_f\) ). Otherwise, \(\mathcal {A}_{FE}\) forwards a QSKeyGen(f) query to \(\mathcal {C}\), who responds with sk\(_f\). \(\mathcal {A}_{FE}\) samples , and computes pk\(_f \leftarrow \) Com.Commit(\(\textsf {sk}_f;r_f\) ). In any case \(\mathcal {A}_\textsf {FE}\) returns pk\(_f\) to \(\mathcal {A}_{\textsf {PAFE}}\).

  • Decryption queries: When \(\mathcal {A}_{\textsf {PAFE}}\) issues a QDec(\(\textsf {ct},f\)) query to \(\mathcal {A}_\textsf {FE}\), the latter assigns y \(\leftarrow f(\textsf {x}_{j})\) and \(\pi _d\) \(\leftarrow \) NIWI\(_d\) .Prove(mpk,\(\top \),f,\(\bot \),\(\bot \),pk\(_f\),ct,y,c\(_d\),\(u_d\) ). \(\mathcal {A}_\textsf {FE}\) forwards (y,\(\pi _d\)) to \(\mathcal {A}_{\textsf {PAFE}}\).

  • Finalization: \(\mathcal {A}_{\textsf {PAFE}}\) outputs a bit \(b^\prime \) which \(\mathcal {A}\) forwards to \(\mathcal {C}\).

The advantage \(\mathcal {A}_\textsf {FE}\) has in winning the FE IND-security game utilizing \(\mathcal {A}_\textsf {PAFE}\) is \(\frac{\epsilon }{m}>\textsf{negl}{({\lambda })}\). This derives from the fact that \(\mathcal {A}_\textsf {FE}\) needs to “guess” correctly the ct\(^b_j\leftarrow \)Qenc(\(\cdot ,\cdot \)) query for which \(\mathcal {A}_\textsf {PAFE}\) will issue at least one “legitimate” QDec(\(\cdot \),ct\(_j^b\)) query; and does so by sampling \(j^\star \) at random.

Thus, \(\mathcal {H}_{UD,4}^0=\mathcal {H}_{UD,5.m+1}^b \approx \mathcal {H}_{UD,5.0}^b=\mathcal {H}_{UD,4}^1\) and more specifically:

\(Adv^\text {Distinguish}_{\mathcal {H}_{UD,4}^0-\mathcal {H}_{UD,4}^1}(\mathcal {A}_\textsf {PAFE})=Adv^\text {FE-IND security}(\mathcal {A}_\textsf {PAFE})\).

In this game we make the following change: When \(\mathcal {A}_\textsf {PAFE}\) issues a QPKeyGen(f) query, \(\mathcal {C}\) forwards pk\(_f\leftarrow \) PAFE.KeyGen(msk,mpk,f) to \(\mathcal {A}_\textsf {PAFE}\). From the hiding property of the underlying commitment scheme, similarly to \(\mathcal {H}_{UD,3}^0 \approx \mathcal {H}_{UD,4}^0\), we get that \(\mathcal {H}_{UD,4}^1 \approx \mathcal {H}_{UD,3}^1\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,4}^1-\mathcal {H}_{UD,3}^1}(\mathcal {A}_\textsf {PAFE})=Adv^\text {Com-Hidding}(\mathcal {A}_\textsf {PAFE})\).

It is exactly the same game as \(\mathcal {H}_{UD,3}^1\) except for the computation of the y. In this case, we change y to be y \(\leftarrow \) FE.Dec(mpk,f,sk\(_f\),ct), instead of \(\textsf {y}=f(\textsf {x})\). Similarly to the case \(\mathcal {H}_{UD,2}^0 \approx \mathcal {H}_{UD,3}^0\), we get that \(\mathcal {H}_{UD,3}^1 \approx \mathcal {H}_{UD,2}^1\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,3}^1-\mathcal {H}_{UD,2}^1}(\mathcal {A}_\textsf {PAFE})=0\).

It is exactly the same game as \(\mathcal {H}_{UD,2}^1\) except for the computation of \(\pi _d\). In \(\mathcal {H}_{UD,2}^0\) \(\pi _d^\prime \) \(\leftarrow \) NIWI\(_d\) .Prove(mpk,\(\bot \),f,\(\bot \),\(\bot \),pk\(_f\),ct,y,c\(_d\),\(u_d\) ) using the second condition of \(\textsf {R}_{UD,d}\), whereas in \(\mathcal {H}_{UD,1}^0\), using the first condition for relation \(\textsf {R}_{UD,d}\), \(\pi _d\) \(\leftarrow \) NIWI\(_d\) .Prove(mpk,msk,f,sk\(_f\),\(r_f\),pk\(_f\),ct,y,c\(_d\),\(u_d\) ). From the witness indistinguishability property of NIWI\(_d\), similarly to \(\mathcal {H}_{UD,1}^0 \approx \mathcal {H}_{UD,2}^0\) we get that \(\mathcal {H}_{UD,2}^1 \approx \mathcal {H}_{UD,1}^1\) and more specifically, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,2}^1-\mathcal {H}_{UD,1}^1}(\mathcal {A}_\textsf {PAFE})=Adv^{WI}_{NIWI}(\mathcal {A}_\textsf {PAFE})\).

It is the security game when \(b=1\). It is exactly the same game as \(\mathcal {H}_{UD,1}^1\) except for the computation of the c\(_d\). In \(\mathcal {H}_{UD,1}^1\) c\(^\prime _d\) \(\leftarrow \) Com.Commit(\(\top ;u_d\)), whereas in \(\mathcal {G}_{UD}^1\) c\(_d\) \(\leftarrow \) Com.Commit(msk,\(;u_d\)). From the hiding property of the employed commitment scheme no PPT adversary who sees a commitment can identify the committed value. Thus, \(\mathcal {H}_{UD,1}^1 \approx \mathcal {G}_{UD}^1\) and to be more specific, \(Adv^\text {Distinguish}_{\mathcal {H}_{UD,1}^1-\mathcal {G}_{UD}^1}(\mathcal {A}_\textsf {PAFE})=Adv^\text {Com-Hidding}(\mathcal {A}_\textsf {PAFE})\).

Therefore, the overall advantage \(\mathcal {A}_\textsf {PAFE}\) has in case (i): \(Adv^\text {Distinguish}_{\mathcal {G}_{UD}^0-\mathcal {G}_{UD}^1,(i)}(\mathcal {A}_\textsf {PAFE})\le 4\times Adv^\text {Com-Hidding}(\mathcal {A}_\textsf {PAFE}) + 2\times Adv^{WI}_{NIWI}(\mathcal {A}_\textsf {PAFE}) + Adv^\text {FE-IND security}(\mathcal {A}_\textsf {PAFE})\).

Case (ii): We assume \(\mathcal {A}_{\textsf {PAFE}}\) issues no QDec(\(\cdot ,\cdot \)) queries and has a non-negligible advantage \(\epsilon \) in winning the PAFE ecurity game. In this case we exploit the fact that \(\mathcal {A}_\textsf {PAFE}\) will not issue a QSKeyGen(f) query if there exists a pair of messages \((\textsf {x}_0,\textsf {x}_1)\) in a QEnc\((\textsf {x}_0,\textsf {x}_1)\rightarrow \textsf {ct}\) query, such that \(f(\textsf {x}_0)\ne f(\textsf {x}_1)\) and vice versa — since either way would trivially violate the winning conditions of the PAFE security game, rendering \(Adv^{sec-PAFE}(\mathcal {A}_\textsf {PAFE})=0\) \(\big (\)see case (\(^\star \))\(\big )\). We therefore can construct a “greedy” adversary \(\mathcal {A}_\textsf {FE}^\prime \) who utilizes \(\mathcal {A}_\textsf {PAFE}\) and wins the FE IND-security game with non-negligible advantage. \(\mathcal {A}_\textsf {FE}^\prime \) forwards all queries made by \(\mathcal {A}_\textsf {PAFE}\) to its challenger, except for QPKeyGen(\(\cdot \)) ones. When \(\mathcal {A}_{\textsf {PAFE}}\) issues a QPKeyGen(f) query to \(\mathcal {A}_\textsf {FE}^\prime \), the latter checks whether \(\exists \textsf {ct}\leftarrow \)QEnc(\(x_0,x_1)\) such that \(f(\textsf {x}_0)\ne f(\textsf {x}_1)\). If so, \(\mathcal {A}_\textsf {FE}^\prime \) samples , samples , and computes pk\(_f \leftarrow \) Com.Commit(\(\textsf {z}_f;r_f\) ). Otherwise, \(\mathcal {A}_\textsf {FE}^\prime \) forwards a QSKeyGen(f) query to \(\mathcal {C}\), who responds with sk\(_f\). \(\mathcal {A}_{FE}^\prime \) samples , and computes pk\(_f \leftarrow \) Com.Commit(\(\textsf {sk}_f;r_f\) ). In any case \(\mathcal {A}_\textsf {FE}^\prime \) returns pk\(_f\) to \(\mathcal {A}_{\textsf {PAFE}}\). Since the commitment scheme is computationally hiding \(\mathcal {A}_\textsf {FE}^\prime \) has also \(\epsilon >\textsf{negl}{({\lambda })}\) advantage in winning the FE IND-security game, violating our initial assumption.

(Auditability). We show that no PPT adversary \(\mathcal {A}_{\textsf {PA-UD}}\) can violate the PA-UD property of PAFE, assuming a computationally sound NIWI for relation \(\textsf {R}_{UD,d}\), NIWI\(_d\) and a perfectly binding commitment scheme Com. We examine two cases. First, there is the case where the adversary \(\mathcal {A}_{\textsf {PA-UD}}\) may output a tuple T that satisfies \(\textsf {R}_{UD,d}\). If so, it either satisfies the condition that ensures that PA-UD holds , or the “trapdoor” condition c\(_d\) \(\leftarrow \) Com(\(\top ;u_d\) ). In the PA-UD setting c\(_d\) is generated by the authority (assumed to be honest in this setting), meaning that no malicious decryptor can generate a convincing proof using condition (2) of \(R_{UD,d}\).

Otherwise, without loss of generality we distinguish between the following regarding the first condition: T either violates the commitment or the algorithmic condition. Since the commitment is perfectly binding, \(\forall \) pk\(_f\) \(\not \exists \)(sk\(_f^\star \),\(r_f^\star \)) \(\ne \) (sk\(_f\),\(r_f\)) such that pk\(_f\) \(\leftarrow \) Com(sk\(_f^\star \);\(r_f^\star \) ) \(\wedge \) pk\(_f\) \(\leftarrow \) Com(sk\(_f\);\(r_f\) ). Additionally, since mpk and ct, are provided by trusted entities and the uniquely correct sk\(_f\) is used in the FE.Dec algorithm, y is also explicitly correct (due to the correctness of the underlying FE scheme). Due to the soundness property of NIWI\(_d\) any proof \(\pi ^\star \) that passes verification is generated for accepting PA-UD statements using valid witnesses. Therefore, no PPT \(\mathcal {A}_{\textsf {PA-UD}}\) can break the PA-UD property with non-negligible advantage.

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Koutsos, V., Papadopoulos, D. (2023). Publicly Auditable Functional Encryption. In: Tibouchi, M., Wang, X. (eds) Applied Cryptography and Network Security. ACNS 2023. Lecture Notes in Computer Science, vol 13906. Springer, Cham. https://doi.org/10.1007/978-3-031-33491-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-33491-7_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-33490-0

  • Online ISBN: 978-3-031-33491-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics