Skip to main content
Log in

A conceptually simple and generic construction of plaintext checkable encryption in the standard model

  • Published:
Designs, Codes and Cryptography Aims and scope Submit manuscript

Abstract

Plaintext-checkable encryption (PCE) can support searches over ciphertext by directly using plaintext. The functionality of a search is modeled by a specific check algorithm that takes a pair of target plaintext and ciphertext as input and returns 1 if the correct decryption result of the ciphertext is identical to the target plaintext. A trivial solution is to use an existing scheme (e.g., deterministic RSA) to achieve this, but there is no security guarantee with this method. Previous rigorous works have either relied on some mathematical structures to build PCE that can proven in the standard model or can be generic, as in the random oracle model. Hence, in this work, we aim to construct PCE that can be proven in the standard model by using standard primitives in a modular way in two steps. The first step is to present a warm-up construction of PCE from hash garbling and hash functions whose security is only proven in the random oracle model. The second step is to provide a full-fledged construction based on the warm-up, with slight modifications for achieving security in the standard model. Finally, we show the feasibility of the proposed construction through experiments.

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. Semi-honesty means that the cloud server will follow the procedure of the system protocols and algorithms and does not have any malicious behavior, such as tampering.

  2. Here, we slightly modify the definition of HG proposed by [12] and change the original \(\textsf {HObf}(hk,C,st)\) to \(\textsf {HObf}(hk,C)\). This change does not affect the implementation or correctness of \(\textsf {HG}\), but facilitates the subsequent presentation.

  3. \(\textsf {Hyb}_\beta \) is \(\langle \textsf {Enc}'(m_\beta ), \widetilde{P}_{m_\beta } {\widetilde{y}}_{(m_\beta )} \rangle \)

References

  1. Barak B., Goldreich O., Impagliazzo R., Rudich S., Sahai A., Vadhan S., Yang K.: On the (im) possibility of obfuscating programs. In: Annual International Cryptology Conference, pp. 1–18. Springer, Berlin (2001).

  2. Blum M., Micali S.: How to generate cryptographically strong sequences of pseudorandom bits. SIAM J. Comput. 13(4), 850–864 (1984).

    Article  MathSciNet  Google Scholar 

  3. Canard S., Fuchsbauer G., Gouget A., Laguillaumie F.: Plaintext-checkable encryption. In: Cryptographers’ Track at the RSA Conference, pp. 332–348. Springer, Berlin (2012).

  4. Chen Y.-C.: Plaintext checkable encryption with check delegation revisited. Int. J. Ad Hoc Ubiquitous Comput. 34(2), 102–110 (2020).

    Article  CAS  Google Scholar 

  5. Das A., Adhikari A., Sakurai K.: Plaintext checkable encryption with designated checker. Adv. Math. Commun. 9(1), 37–53 (2015).

    Article  MathSciNet  Google Scholar 

  6. Döttling N., Garg S.: Identity-based encryption from the Diffie–Hellman assumption. In: Annual International Cryptology Conference, pp. 537–569. Springer, Cham (2017).

  7. Döttling N., Garg S., Hajiabadi M., Masny D.: New constructions of identity-based and key-dependent message secure encryption schemes. In: IACR International Workshop on Public Key Cryptography, pp. 3–31. Springer, Cham (2018).

  8. Dwork C., McSherry F., Nissim K., Smith A.: Calibrating noise to sensitivity in private data analysis. In: Theory of cryptography conference, pp. 265–284. Springer, Berlin (2006).

  9. ElGamal T.: A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 31(4), 469–472 (1985).

    Article  MathSciNet  Google Scholar 

  10. Garg S., Gentry C., Halevi S., Raykova M., Sahai A., Waters B.: Candidate indistinguishability obfuscation and functional encryption for all circuits. In: Proceedings of the 2013 IEEE 54th Annual Symposium on Foundations of Computer Science, pp. 40–49. IEEE Computer Society, Washington (2013).

  11. Garg S., Gentry C., Halevi S., Raykova M., Sahai A., Waters B.: Candidate indistinguishability obfuscation and functional encryption for all circuits. SIAM J. Comput. 45(3), 882–929 (2016).

    Article  MathSciNet  Google Scholar 

  12. Garg S., Hajiabadi M., Mahmoody M., Rahimi A.: Registration-based encryption: removing private-key generator from IBE. In: Theory of Cryptography Conference, pp. 689–718. Springer, Cham (2018).

  13. Hada S.: Zero-knowledge and code obfuscation. In: International Conference on the Theory and Application of Cryptology and Information Security, pp. 443–457. Springer, Berlin (2000).

  14. Lindell Y., Pinkas B.: A proof of security of Yao’s protocol for two-party computation. J. Cryptol. 22(2), 161–188 (2009).

    Article  MathSciNet  Google Scholar 

  15. Ma S., Huang Q.: Plaintext-checkable encryption with unlink-CCA security in the standard model. In: Information Security Practice and Experience: 15th International Conference, ISPEC 2019, Kuala Lumpur, Malaysia, 26–28 November 2019, Proceedings, vol. 15, pp. 3–19. Springer, Cham (2019).

  16. Ma S., Huang Q., Li X., Xiao M.: Plaintext-verifiably-checkable encryption. In: International Conference on Provable Security, pp. 149–166. Springer, Cham (2019).

  17. Ma S., Yi M., Susilo W.: A generic scheme of plaintext-checkable database encryption. Inf. Sci. 429, 88–101 (2018).

    Article  MathSciNet  Google Scholar 

  18. Tsiounis Y., Yung M.: On the security of Elgamal based encryption. In: International Workshop on Public Key Cryptography, pp. 117–134. Springer, Berlin (1998).

  19. Yao A.C.-C.: Protocols for secure computations. In: FOCS, vol. 82, pp. 160–164 (1982).

Download references

Acknowledgements

We highly appreciate the insightful and helpful comments of the reviewers on the presentation of this paper. This work was supported by National Science and Technology Council of Taiwan (Nos. 112-2218-E-A49-023, 112-2634-F-027-001-MBK, and 112-2221-E-027-069).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yu-Chi Chen.

Additional information

Communicated by K. Matsuura.

Publisher's Note

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

Appendix A: Missing proofs

Appendix A: Missing proofs

Proof of Lemma 3

Suppose \(\mathcal {A}\) is the adversary with non-negligible probability to distinguish \(\textsf {Hyb}_0\) and \(\textsf {Hyb}_{0,1}\), then we can create another algorithm \(\mathcal {B}\) which runs \(\mathcal {A}\) as a subroutine to break the weak security of HG.

Following the hybrid, \(\mathcal {A}\) receives a challenge as \((\textsf {Enc}' (pk',m_0),\widetilde{\textsf {P}},\widetilde{\textsf {y}})\). \(\widetilde{\textsf {y}}\) can be parsed as (tr) such that \(\widetilde{\textsf {y}_{m_0}} = t \oplus H(m_0||r)\). The pair of \((\widetilde{\textsf {P}},\widetilde{\textsf {y}_{m_0}})\) is \((\widetilde{P}_{m_0},\widetilde{y}_{m_0})\) or \((\widetilde{P}_{\textsf {Sim}},\widetilde{y}_{\textsf {Sim}})\) where \(\widetilde{P}_{\textsf {Sim}},\widetilde{y}_{\textsf {Sim}}\) is generated by \(\textsf {Sim}(hk,m_0, 1^{|P_{m_0}|}, \bot )\). Note that \(\bot \) by the previous argument for \(\textsf {HIT}\). Accordingly, \(\mathcal {A}\) can transform parts of the challenge into \(\mathcal {B}\)’s input. \(\mathcal {A}\) directly sets \(\widetilde{\textsf {P}},\widetilde{\textsf {y}_{m_0}}\) as the input of \(\mathcal {B}\), and waits for the output of \(\mathcal {B}\). Finally, \(\mathcal {A}\)’s output (one bit) is set to be identical to \(\mathcal {B}\)’s, and thus it implies that \(\Pr [\mathcal {A}(\textsf {Enc}' (pk',m_0),\widetilde{\textsf {P}},\widetilde{\textsf {y}})=1] = \Pr [\mathcal {B}(\widetilde{\textsf {P}},\widetilde{\textsf {y}_{m_0}})]=1\). Weak security of HG offers \(|\Pr [\mathcal {B}(\widetilde{P}_{m_0},\widetilde{y}_{m_0})=1] - \Pr [\mathcal {B}(\widetilde{P}_{\textsf {Sim}},\widetilde{y}_{\textsf {Sim}})=1]| \le \textsf {negl}(n)\), so we obtain

$$\begin{aligned}{} & {} |\Pr [\mathcal {A}(\textsf {Enc}' (pk',m_0),\widetilde{P}_{m_0},(\widetilde{y}_{m_0}\oplus H(m_0||r), r))=1]\\{} & {} - \Pr [\mathcal {A}(\textsf {Enc}' (pk',m_0),\widetilde{P}_{\textsf {Sim}},(\widetilde{y}_{\textsf {Sim}}\oplus H(m_0||r), r))=1]|\le \textsf {negl}(n) \end{aligned}$$

as well as \(\textsf {Hyb}_0\) and \(\textsf {Hyb}_{0,1}\) are computationally indistinguishable. The proof of this lemma is done. \(\square \)

Proof of Lemma 5

Before we prove the lemma, we quickly remark the proof intuition of the main theorem. Our final goal is from \(\textsf {Hyb}_0\) to \(\textsf {Hyb}_1\) to replace \(\textsf {Enc}(pk',m_0)\) with \(\textsf {Enc}(pk',m_1)\). However, it cannot be directly replaced, since \((\widetilde{\textsf {P}},\widetilde{\textsf {y}})\) in \(\textsf {Hyb}_0\) includes the information of \(m_0\). However, Lemma 3 is used to eliminate the underlying \(m_0\) for \((\widetilde{P}_{m_0},\widetilde{y}_{m_0})\) by the power of the random oracle.

Let go back to this proof. Suppose \(\mathcal {A}\) is the adversary with non-negligible probability to distinguish \(\textsf {Hyb}_{0,2}\) and \(\textsf {Hyb}_{1,2}\), then we can create another algorithm \(\mathcal {B}\) that runs \(\mathcal {A}\) as a subroutine to break the CPA security of public key encryption. Following \(\textsf {Hyb}_{\beta ,2}, \mathcal {A}\) receives a challenge as \((\textsf {Enc}' (pk',m_\beta ),\widetilde{\textsf {P}},\widetilde{\textsf {y}})\) where \(\widetilde{\textsf {P}},\widetilde{\textsf {y}} \leftarrow U_{|\widetilde{P}|+|\widetilde{y}|}\). Consequently, \(\mathcal {A}\) can transform parts of the challenge into \(\mathcal {B}\)’s input. \(\mathcal {A}\) directly sets \(\textsf {Enc}' (pk',m_\beta )\) as the input of \(\mathcal {B}\), and waits for the output of \(\mathcal {B}\). Similarly to the proof of the above lemma, it implies that \(\Pr [\mathcal {A}(\textsf {Enc}' (pk',m_\beta ),\widetilde{\textsf {P}},\widetilde{\textsf {y}})] = \Pr [\mathcal {B}(\textsf {Enc}' (pk',m_\beta ))]\). The CPA security says \(|\Pr [\mathcal {B}(\textsf {Enc}' (pk',m_0))=1] - \Pr [\mathcal {B}(\textsf {Enc}' (pk',m_1))=1]| \le \textsf {negl}(n)\). We finally obtain

$$\begin{aligned} | \Pr [\mathcal {A}(\textsf {Enc}' (pk',m_0),\widetilde{\textsf {P}},\widetilde{\textsf {y}})=1] - \Pr [\mathcal {A}(\textsf {Enc}' (pk',m_1),\widetilde{\textsf {P}},\widetilde{\textsf {y}})=1] | \le \textsf {negl}(n) \end{aligned}$$

as well as \(\textsf {Hyb}_{0,2}\) and \(\textsf {Hyb}_{1,2}\) are computationally indistinguishable. The proof of this lemma is done. \(\square \)

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chen, YC. A conceptually simple and generic construction of plaintext checkable encryption in the standard model. Des. Codes Cryptogr. (2024). https://doi.org/10.1007/s10623-024-01363-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10623-024-01363-4

Keywords

Mathematics Subject Classification

Navigation