Skip to main content

Privacy-Preserving Authentication for Tree-Structured Data with Designated Verification in Outsourced Environments

  • Conference paper
  • First Online:
Provable and Practical Security (ProvSec 2020)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 12505))

Included in the following conference series:

  • 523 Accesses

Abstract

Nowadays, the use of database outsourcing is on the rise. Since the service provider may not be fully trusted, a crucial requirement in outsourced data sharing is therefore to ensure that users can verify the integrity and authenticity of their query results. In outsourced healthcare data sharing, because the data contains sensitive information, an equally significant issue is to guarantee that the sharing process does not lead to any information leakages. Though some privacy-preserving authentication solutions have been presented to address these issues, unfortunately, none of them consider the risk of privacy leakage during the dissemination of authenticated healthcare data. That is, the queried data may be leaked by the user since any third party getting hold of a signed data would be convinced of its validity. In other words, for privacy concerns, we need a secure mechanism to ensure that only a specific receiver can check the integrity and authenticity of shared outsourced data.

To address the these concerns, in our work, we propose a privacy-preserving authentication scheme with designated verification for tree-structured data (i.e., XML-based healthcare records). We provide the formal definition and related security properties of our scheme. We further put forward our concrete construction and prove its security under the standard cryptographic assumption in the random oracle model. The comparison analysis of theory and practice shows that our scheme provides stronger privacy protection than existing schemes while having the shortest key length and signature size. Therefore, our construction is efficient and practical for outsourced environments.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. Boneh, D., Gentry, C., Lynn, B., Shacham, H.: Aggregate and verifiably encrypted signatures from bilinear maps. In: Biham, E. (ed.) EUROCRYPT 2003. LNCS, vol. 2656, pp. 416–432. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-39200-9_26

    Chapter  Google Scholar 

  2. Brzuska, C., et al.: Redactable signatures for tree-structured data: definitions and constructions. In: Zhou, J., Yung, M. (eds.) ACNS 2010. LNCS, vol. 6123, pp. 87–104. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13708-2_6

    Chapter  Google Scholar 

  3. Chatterjee, S., Hankerson, D., Knapp, E., Menezes, A.: Comparing two pairing-based aggregate signature schemes. Des. Codes Crypt. 55(2–3), 141–167 (2010)

    Article  MathSciNet  Google Scholar 

  4. Chatterjee, S., Menezes, A.: On cryptographic protocols employing asymmetric pairings - the role of \(\Psi \) revisited. Discret. Appl. Math. 159(13), 1311–1322 (2011)

    Article  MathSciNet  Google Scholar 

  5. Derler, D., Krenn, S., Slamanig, D.: Signer-anonymous designated-verifier redactable signatures for cloud-based data sharing. In: Foresti, S., Persiano, G. (eds.) CANS 2016. LNCS, vol. 10052, pp. 211–227. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-48965-0_13

    Chapter  Google Scholar 

  6. Ferrara, A.L., Green, M., Hohenberger, S., Pedersen, M.Ø.: Practical short signature batch verification. In: Fischlin, M. (ed.) CT-RSA 2009. LNCS, vol. 5473, pp. 309–324. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00862-7_21

    Chapter  Google Scholar 

  7. Goodrich, M.T., Tamassia, R., Triandopoulos, N.: Efficient authenticated data structures for graph connectivity and geometric search problems. Algorithmica 60(3), 505–552 (2011)

    Article  MathSciNet  Google Scholar 

  8. Groß, T.: Efficient certification and zero-knowledge proofs of knowledge on infrastructure topology graphs. In: CCSW 2014, pp. 69–80. ACM (2014)

    Google Scholar 

  9. Hachicha, M., Darmont, J.: A survey of XML tree patterns. IEEE Trans. Knowl. Data Eng. 25(1), 29–46 (2013)

    Article  Google Scholar 

  10. Johnson, R., Molnar, D., Song, D., Wagner, D.: Homomorphic signature schemes. In: Preneel, B. (ed.) CT-RSA 2002. LNCS, vol. 2271, pp. 244–262. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45760-7_17

    Chapter  Google Scholar 

  11. Kundu, A., Atallah, M.J., Bertino, E.: Efficient leakage-free authentication of trees, graphs and forests. IACR Cryptology ePrint Archive 2012, 36 (2012)

    Google Scholar 

  12. Kundu, A., Atallah, M.J., Bertino, E.: Leakage-free redactable signatures. In: CODASPY 2012, pp. 307–316. ACM (2012)

    Google Scholar 

  13. Kundu, A., Bertino, E.: Structural signatures for tree data structures. Proc. VLDB Endow. 1(1), 138–150 (2008)

    Article  Google Scholar 

  14. Kundu, A., Bertino, E.: How to authenticate graphs without leaking. In: EDBT 2010, pp. 609–620. ACM (2010)

    Google Scholar 

  15. Kundu, A., Bertino, E.: Privacy-preserving authentication of trees and graphs. Int. J. Inf. Secur. 12(6), 467–494 (2013). https://doi.org/10.1007/s10207-013-0198-5

    Article  Google Scholar 

  16. Liu, J., Ma, J., Zhou, W., Xiang, Y., Huang, X.: Dissemination of authenticated tree-structured data with privacy protection and fine-grained control in outsourced databases. In: Lopez, J., Zhou, J., Soriano, M. (eds.) ESORICS 2018. LNCS, vol. 11099, pp. 167–186. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-98989-1_9

    Chapter  Google Scholar 

  17. de Meer, H., Pöhls, H.C., Posegga, J., Samelin, K.: Redactable signature schemes for trees with signer-controlled non-leaf-redactions. In: Obaidat, M.S., Filipe, J. (eds.) ICETE 2012. CCIS, vol. 455, pp. 155–171. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44791-8_10

    Chapter  Google Scholar 

  18. Merkle, R.C.: A certified digital signature. In: Brassard, G. (ed.) CRYPTO 1989. LNCS, vol. 435, pp. 218–238. Springer, New York (1990). https://doi.org/10.1007/0-387-34805-0_21

    Chapter  Google Scholar 

  19. Mihara, A., Tanaka, K.: Universal designated-verifier signature with aggregation. In: ICITA 2005, pp. 514–519. IEEE (2005)

    Google Scholar 

  20. Mykletun, E., Narasimha, M., Tsudik, G.: Signature bouquets: immutability for aggregated/condensed signatures. In: Samarati, P., Ryan, P., Gollmann, D., Molva, R. (eds.) ESORICS 2004. LNCS, vol. 3193, pp. 160–176. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30108-0_10

    Chapter  Google Scholar 

  21. Samelin, K., Pöhls, H.C., Bilzhause, A., Posegga, J., de Meer, H.: On structural signatures for tree data structures. In: Bao, F., Samarati, P., Zhou, J. (eds.) ACNS 2012. LNCS, vol. 7341, pp. 171–187. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31284-7_11

    Chapter  MATH  Google Scholar 

  22. Samelin, K., Pöhls, H.C., Bilzhause, A., Posegga, J., de Meer, H.: Redactable signatures for independent removal of structure and content. In: Ryan, M.D., Smyth, B., Wang, G. (eds.) ISPEC 2012. LNCS, vol. 7232, pp. 17–33. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29101-2_2

    Chapter  MATH  Google Scholar 

  23. Steinfeld, R., Bull, L., Wang, H., Pieprzyk, J.: Universal designated-verifier signatures. In: Laih, C.-S. (ed.) ASIACRYPT 2003. LNCS, vol. 2894, pp. 523–542. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-40061-5_33

    Chapter  Google Scholar 

  24. Uzunkol, O., Kiraz, M.S.: Still wrong use of pairings in cryptography. Appl. Math. Comput. 333, 467–479 (2018)

    Article  MathSciNet  Google Scholar 

  25. Wang, J., Chen, X., Huang, X., You, I., Xiang, Y.: Verifiable auditing for outsourced database in cloud computing. IEEE Trans. Comput. 64(11), 3293–3303 (2015)

    Article  MathSciNet  Google Scholar 

  26. Zhu, F., Wu, W., Zhang, Y., Chen, X.: Privacy-preserving authentication for general directed graphs in industrial IoT. Inf. Sci. 502, 218–228 (2019)

    Article  MathSciNet  Google Scholar 

  27. Zhu, F., Zhang, Y., Lin, C., Wu, W., Meng, R.: A universal designated multi-verifier transitive signature scheme. In: Chen, X., Lin, D., Yung, M. (eds.) Inscrypt 2017. LNCS, vol. 10726, pp. 180–195. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-75160-3_12

    Chapter  Google Scholar 

Download references

Acknowledgment

We have no conflicts of interest to this work. We would like to thank the anonymous reviewers for their valuable comments.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Fei Zhu or Xinyi Huang .

Editor information

Editors and Affiliations

Appendix A

Appendix A

Proof of Theorem 1. The proof is similar to  [16, 19]. Given \(w\in \mathbb {G}_1\) and \(g_2, u, v \in \mathbb {G}_2\), where \(u={g_2}^{a}, v={g_2}^{b}\) and \(w={g_1}^{c}\) for some unknown \(a,b,c \in \mathbb {Z}_q\), we will reveal how the adversary \(\mathcal {B}\) can utilize the forger \(\mathcal {A}\) to obtain the value \(\hat{e}(g_1,g_2)^{abc}\).

  • Setup Phase: \(\mathcal {B}\) randomly chooses \(r_1, r_2 {\mathop {\longleftarrow }\limits ^{\$}} \mathbb {Z}_q\), and sets \(y_s =u \cdot {g_2}^{r_1} \in \mathbb {G}_2 \) and \(y_v =v \cdot {g_2}^{r_2} \in \mathbb {G}_2 \) as the signer’s public key and the DV’s public key respectively. \(\mathcal {B}\) returns \((g_2, y_s , y_v)\) to \(\mathcal {A}\).

  • Hash Queries: In this process, \(\mathcal {A}\) has access to a hash oracle \(H(\cdot )\) at any time. Note that \(\mathcal {B}\) will act the oracle in our proof. To respond to \(\mathcal {A}\)’s queries, \(\mathcal {B}\) maintains a list of tuples L(m, h, d, c) (initially, \(L(\cdot ,\cdot ,\cdot ,\cdot )=\phi \)) as explained below. Each time when \(\mathcal {A}\) queries the hash oracle \(H(\cdot )\) at a point \(m\in \{0,1\}^*\), \(\mathcal {B}\) responds as the following:

    1. 1.

      If m already exists in the L-list in some tuple \((m_i,h_i,d_i,c_i)\) then \(\mathcal {B}\) looks up on the list and responds with \(H(m_i) = h_i \in \mathbb {G}_1\).

    2. 2.

      Otherwise, \(\mathcal {B}\) randomly flips a coin \(c_i \in \{0,1\}\), so that \(\text {Pr}[c=0]=1/(n q_S+n) \).

    3. 3.

      \(\mathcal {B}\) randomly chooses \(d_i {\mathop {\longleftarrow }\limits ^{\$}} \mathbb {Z}_q\). If \( c_i =0\) holds, he computes \(h_i \leftarrow w_i \cdot \psi (g_2)^{d_i} \in \mathbb {G}_1\); otherwise, he computes \(h_i \leftarrow \psi (g_2)^{d_i} \in \mathbb {G}_1\).

    4. 4.

      \(\mathcal {B}\) adds the item \((m_i,h_i,d_i,c_i)\) into the L-list and answering \(\mathcal {A}\)’s query as \(H(m_i)=h_i\).

    Note that each time from the perspective of \(\mathcal {A}\), \(h_i\) is uniform in \(\mathbb {G}_2\) and hence its distribution is identical to the real construction.

  • Signature Queries: Assume that a tree \(T=(V,E )\) be a signing query requested by \(\mathcal {A}\) under the signer’s public key \(y_s\). To respond to the query, \(\mathcal {B}\) does as follows:

    1. 1.

      Similar to our Sign, \(\mathcal {B}\) carries out a traversal on T and generates secure names \(\theta _{{u_i}}\) and \(\theta _{p_{u_i}} \) for each node \({u_i} \in V\) and its parent respectively.

    2. 2.

      \(\mathcal {B}\) operates as Hash Queries to obtain a \(h_i \in \mathbb {G}_1\) such that \(H(m_i)=h_i\). Here we assume that \((m_i,h_i,d_i,c_i)\) be the item in L-list corresponding to each node \({u_i}\). If \(c_i=0 \) holds, \(\mathcal {B}\) returns \(\bot \) to indicate failure and terminates.

    3. 3.

      If \(c_i=1 \) for all \({u_i} \in V\) holds and hence \(h_i \leftarrow \psi (g_2)^{d_i} \in \mathbb {G}_1\), \(\mathcal {B}\) defines \(\sigma _{i}= \psi (u)^{d_i} \cdot \psi (g_2)^{r_1 d_i} \in \mathbb {G}_1\). Observe that \(\sigma _{i}={h_i}^{a+r_1} \) and hence that \(\sigma _{i}\) is a valid signature on \(m_i\) under the public key \(y_s= {g_2}^{a+r_1} \).

    4. 4.

      \(\mathcal {B}\) computes \(\sigma _T'= \prod _{i=1}^n \sigma _{i}\) and returns \(\sigma _{T}\leftarrow ( \sigma _{T}', \varTheta _{T})\) to \(\mathcal {A}\), where \(\varTheta _{T} \leftarrow \{( \theta _{{u_i}} , \theta _{p_{u_i}} )| {u_i} \in V \} \).

  • Output Phase: Eventually, \(\mathcal {A}\) halts. \(\mathcal {A}\) either outputs \(\bot \) to indicate failure or forges a valid DV signature \({\sigma _{T_{\delta }}^{ds'}}^*\) for a tree \(T_{\delta }^*=(V_{\delta }^*,E_{\delta }^* )\) such that no node \(u_i \in V_{\delta }^*\) (\(1\le i\le k\)) has been queried during the process of Signature Queries. Note that if there is no item \((m_i,h_i,d_i,c_i)\) in the L-list containing nodes in \(V_{\delta }^*\), then \(\mathcal {B}\) can easily operate as the Hash Queries to obtain these corresponding items by himself. Again, we stress that \({\sigma _{T_{\delta }}^{ds'}}^*\) must be a valid signature; otherwise, \(\mathcal {B}\) returns \(\bot \) to indicate failure and terminates. \(\mathcal {B}\) will not abort when \(c_1 =0\) and \(c_i=1\) \((2\le i\le k)\). If \(c_1=0\), we have \(h_1 =w \cdot {\psi (g_2)}^{d_1} \). For \(2\le i\le k\), since \(c_i=1\), we have \(h_i = {\psi (g_2)}^{d_i}\). Note that the signature \({\sigma _{T_{\delta }}^{ds'}}^* \) must be successful verified by the DeVerify. That is, the equation \({\sigma _{T_{\delta }}^{ds'}}^* \)= \( \hat{e}({y_s}^{x_v}, \prod _{i=1}^k h_{i})\) holds. \(\mathcal {B}\), therefore, computes

    $$\begin{aligned}\begin{aligned} {\sigma _{T_{\delta }}^{ds'}}^*&= \hat{e}({y_s}^{x_v}, h_1) \cdot \hat{e}({y_s}^{x_v}, \prod _{i=2}^k h_{i}) = \hat{e}({y_s}^{x_v}, w \cdot {\psi (g_2)}^{d_1} ) \cdot \hat{e}({y_s}^{x_v}, \prod _{i=2}^k {\psi (g_2)}^{d_i}) \\&= \hat{e}({y_s}^{x_v}, w \cdot {g_1}^{d_1} ) \cdot \hat{e}({y_s}^{x_v}, \prod _{i=2}^k {g_1}^{d_i}). \end{aligned}\end{aligned}$$

    \(\mathcal {B}\) now constructs a value \(\varDelta = \{ \hat{e}({y_s}^{x_v}, \prod _{i=2}^k {g_1}^{d_i}) \cdot \hat{e}(w, u^{r_2}\cdot v^{r_1}\cdot {g_2}^{r_1 r_2}) \cdot \hat{e}(u^{d_1}, \psi (y_v)) \cdot \hat{e}(v\cdot {g_2}^{ r_2}, {\psi (g_2)}^{d_1 r_1}) \}^{-1}\) and computes the required value \(\hat{e}(g_1,g_2)^{abc}\) as \({\sigma _{T_{\delta }}^{ds'}}^* \cdot \varDelta \). This can be easily verified because:

    $$\begin{aligned}\begin{aligned} {\sigma _{T_{\delta }}^{ds'}}^* \cdot \varDelta =&\hat{e}({y_s}^{x_v}, w \cdot {g_1}^{d_1} ) \cdot \hat{e}({y_s}^{x_v}, \prod _{i=2}^k {g_1}^{d_i}) \cdot \varDelta \\ =&\hat{e}({y_s}^{x_v}, w \cdot {g_1}^{d_1} ) \cdot \{ \hat{e}(w, u^{r_2}\cdot v^{r_1}\cdot {g_2}^{r_1 r_2}) \cdot \hat{e}(u^{d_1}, \\&\psi (y_v)) \cdot \hat{e}(v\cdot {g_2}^{ r_2}, {\psi (g_2)}^{d_1 r_1}) \}^{-1} \\ =&\hat{e}(g_1,g_2)^{abc}. \end{aligned}\end{aligned}$$

This completes the description of \(\mathcal {B}\). The running time needed for \(\mathcal {B}\) consists of three parts, i.e., the running time needed for \(\mathcal {A}\), \(\mathcal {B}\)’s responds to Hash Queries and Signature Queries, and the time for computing the final \(\mathsf{BDH}\) solution.

We now analyze \(\mathcal {B}\)’s probability in solving the given instance of \(\mathsf{BDH}\) problem in \((\mathbb {G}_1, \mathbb {G}_2)\) with the success probability \(\mathsf{Adv}^{BDH }_{\mathcal {B}}(1^ \lambda )\). \(\mathcal {B}\) will succeed if the following three events occur: (1) \(\mathcal {B}\) does not abort in the Signature Queries phase (remark as \(Ev _1\)), (2) \(\mathcal {A}\) successfully forges a valid DV signature \({\sigma _{T_{\delta }}^{ds'}}^*\) for tree \(T_{\delta }^*=(V_{\delta }^*,E_{\delta }^* )\) (remark as \(Ev _2\)), and (3) Event \(Ev _2\) occurs, and \(c_1=0\) and \(c_i=1\) \((2\le i\le k)\), where \(c_i\) is the c-component of the item containing \(m_i\) in the L-list (remark as \(Ev _1\)). Consequently, the success probability for \(\mathcal {B}\) is \(\mathsf{Adv}^{BDH }_{\mathcal {B}}(1^ \lambda )\)= \(Pr [Ev _1 \wedge Ev _3]\). It further can be decomposed as \(Pr [Ev _1 \wedge Ev _3]=Pr [Ev _1]\cdot Pr [Ev _2 |Ev _1] \cdot Pr [Ev _3| Ev _1 \wedge Ev _2] \).

W.l.o.g., we assume that \(\mathcal {A}\) queries the hash oracle \(H(\cdot )\) and the signature of each message only once. Because the c-component of the item in the L-list is independent of \(\mathcal {A}\)’s view; when \(\mathcal {A}\) makes \(q_S\) signature queries, the probability of \(Ev _1\) occurs is \(Pr [Ev _1]\) \(\ge 1-1/(n q_S+n)^{n q_S}\). Recall that in \(\mathcal {A}\)’s view, all the settings in our simulation are identical to the real construction. Since \(\mathcal {B}\) did not abort in the simulation, all his responses to \(\mathcal {A}\)’s queries are valid. That is, the probability of \(\mathcal {A}\)’s forgery output in our RO model is at least \(\mathsf{Adv}^{uf-cma}_{\mathcal {A},\mathsf{DV}-\mathsf{PPAT}}(1^ \lambda )\)= \(\xi \). Therefore, we have \( Pr [Ev _2 |Ev _1] \ge \xi \). Note that \(c_i\) \((1\le i\le k)\) are all independent of each other. If the event \(Ev _1\) and \(Ev _2\) happen, and \(\mathcal {A}\) generates his forgery in the case that \(c_1=0\) and \(c_i=1\) \((2\le i\le k)\), then the probability \(Pr [Ev _3| Ev _1 \wedge Ev _2] \) \(\ge (1-1/(n q_S+n))^{n -1}\cdot 1/(n q_S+n)\). Clearly, we have

$$\begin{aligned}\begin{aligned} \mathsf{Adv}^{BDH }_{\mathcal {B}}(1^ \lambda ) =&Pr [Ev _1 \wedge Ev _3] = Pr [Ev _1]\cdot Pr [Ev _2 |Ev _1] \cdot Pr [Ev _3| Ev _1 \wedge Ev _2] \\ \ge&(1-1/(n q_S+n)^{n q_S}) \cdot \xi \cdot (1-1/(n q_S+n))^{n -1}\cdot \\&1/(n q_S+n) \ge 1/e(n q_S+n) \cdot \xi \\ =&1/e(n q_S+n) \cdot \mathsf{Adv}^{uf-cma}_{\mathcal {A},\mathsf{DV}-\mathsf{PPAT}}(1^ \lambda ), \end{aligned}\end{aligned}$$

as required, and hence completes the proof.   \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Zhu, F. et al. (2020). Privacy-Preserving Authentication for Tree-Structured Data with Designated Verification in Outsourced Environments. In: Nguyen, K., Wu, W., Lam, K.Y., Wang, H. (eds) Provable and Practical Security. ProvSec 2020. Lecture Notes in Computer Science(), vol 12505. Springer, Cham. https://doi.org/10.1007/978-3-030-62576-4_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-62576-4_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-62575-7

  • Online ISBN: 978-3-030-62576-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics