Skip to main content

Slow Motion Zero Knowledge Identifying with Colliding Commitments

  • Conference paper
  • First Online:
Information Security and Cryptology (Inscrypt 2015)

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

Included in the following conference series:

Abstract

Discrete-logarithm authentication protocols are known to present two interesting features: The first is that the prover’s commitment, \(x=g^r\), claims most of the prover’s computational effort. The second is that x does not depend on the challenge and can hence be computed in advance. Provers exploit this feature by pre-loading (or pre-computing) ready to use commitment pairs \(r_i,x_i\). The \(r_i\) can be derived from a common seed but storing each \(x_i\) still requires 160 to 256 bits when implementing DSA or Schnorr.

This paper proposes a new concept called slow motion zero-knowledge (SM-ZK). SM-ZK allows the prover to slash commitment size (by a factor of 4 to 6) by combining classical zero-knowledge and a timing channel. We pay the conceptual price of requiring the ability to measure time but, in exchange, obtain communication-efficient protocols.

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

Notes

  1. 1.

    Note that special honest-verifier zero-knowledge implies honest-verifier zero-knowledge.

  2. 2.

    Or for \(\mathcal P\) by a trusted authority.

  3. 3.

    If y was received before \(\varDelta _\mathrm{max}\).

  4. 4.

    The probability of success at step 3 is essentially 1 / B, and the expected number of executions of the loop is B, so that the simulation of N rounds runs in O(NB): the machine runs in expected polynomial time.

References

  1. Abadi, M., Burrows, M., Manasse, M.S., Wobber, T.: Moderately hard, memory-bound functions. ACM Trans. Internet Technol. 5(2), 299–327 (2005)

    Article  Google Scholar 

  2. Bellare, M., Rogaway, P.: Random oracles are practical: a paradigm for designing efficient protocols. In: Denning, D.E., Pyle, R., Ganesan, R., Sandhu, R.S., Ashby, V. (eds.) CCS 1993, Proceedings of the 1st ACM Conference on Computer and Communications Security, Fairfax, Virginia, USA, 3–5 November, 1993, pp. 62–73. ACM (1993)

    Google Scholar 

  3. Bernstein, R.L.: Multiplication by integer constants. Softw. Pract. Exper. 16(7), 641–652 (1986)

    Article  Google Scholar 

  4. Boneh, D., Naor, M.: Timed commitments. In: Bellare, M. (ed.) CRYPTO 2000. LNCS, vol. 1880, p. 236. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  5. Ciobotaru, O.: On the (Non-)Equivalence of UC security notions. In: Takagi, T., Wang, G., Qin, Z., Jiang, S., Yu, Y. (eds.) ProvSec 2012. LNCS, vol. 7496, pp. 104–124. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  6. Damgård, I.: On \(\Sigma \) Protocols (2010). http://www.cs.au.dk/~ivan/Sigma.pdf

  7. Dwork, C., Goldberg, A.V., Naor, M.: On memory-bound functions for fighting spam. In: Boneh, D. (ed.) CRYPTO 2003. LNCS, vol. 2729, pp. 426–444. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  8. Dwork, C., Naor, M.: Pricing via processing or combatting junk mail. In: Brickell, E.F. (ed.) CRYPTO 1992. LNCS, vol. 740, pp. 139–147. Springer, Heidelberg (1993)

    Google Scholar 

  9. Dwork, C., Naor, M., Wee, H.M.: Pebbling and proofs of work. In: Shoup, V. (ed.) CRYPTO 2005. LNCS, vol. 3621, pp. 37–54. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  10. Feige, U., Fiat, A., Shamir, A.: Zero-knowledge proofs of identity. J. Cryptology 1(2), 77–94 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  11. Girault, M.: An identity-based identification scheme based on discrete logarithms modulo a composite number. In: Damgård, I.B. (ed.) EUROCRYPT 1990. LNCS, vol. 473, pp. 481–486. Springer, Heidelberg (1991)

    Chapter  Google Scholar 

  12. Girault, M., Poupard, G., Stern, J.: On the fly authentication and signature schemes based on groups of unknown order. J. Cryptology 19(4), 463–487 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  13. Girault, M., Stern, J.: On the length of cryptographic hash-values used in identification schemes. In: Desmedt, Y.G. (ed.) CRYPTO 1994. LNCS, vol. 839, pp. 202–215. Springer, Heidelberg (1994)

    Google Scholar 

  14. Goldreich, O., Micali, S., Wigderson, A.: Proofs that yield nothing but their validity for all languages in NP have zero-knowledge proof systems. J. ACM 38(3), 691–729 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  15. Goldwasser, S., Micali, S., Rackoff, C.: The knowledge complexity of interactive proof-systems (extended abstract). In: Sedgewick, R. (ed.) Proceedings of the 17th Annual ACM Symposium on Theory of Computing, 6–8 May, 1985, Providence, Rhode Island, USA, pp. 291–304. ACM (1985)

    Google Scholar 

  16. Hazay, C., Lindell, Y.: Efficient secure two-party protocols: techniques and constructions. Springer Science and Business Media, Heidelberg (2010)

    Book  MATH  Google Scholar 

  17. Mahmoody, M., Moran, T., Vadhan, S.: Time-lock puzzles in the random oracle model. In: Rogaway, P. (ed.) CRYPTO 2011. LNCS, vol. 6841, pp. 39–50. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  18. Micali, S., Pass, R.: Local zero knowledge. In: Kleinberg, J.M. (ed.) Proceedings of the 38th Annual ACM Symposium on Theory of Computing, Seattle, WA, USA, 21–23 May, 2006, pp. 306–315. ACM (2006)

    Google Scholar 

  19. M’Raïhi, D., Naccache, D.: Couponing scheme reduces computational power requirements for dss signatures. In: Proceedings of CardTech/SecurTech, pp. 99–104 (1994)

    Google Scholar 

  20. Poupard, G., Stern, J.: Security analysis of a practical “On the Fly” authentication and signature generation. In: Nyberg, K. (ed.) EUROCRYPT 1998. LNCS, vol. 1403, pp. 422–436. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  21. Rivest, R., Shamir, A., Wagner, D.: Time-lock puzzles and timed-release crypto, technical report, MIT/LCS/TR-684 (1996)

    Google Scholar 

  22. de Rooij, P.: On schnorr’s preprocessing for digital signature schemes. J. Cryptology 10(1), 1–16 (1997)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rémi Géraud .

Editor information

Editors and Affiliations

Appendices

A Proof of Lemma 2

Proof

The zero-knowledge property of the standard GPS protocol is proven by constructing a polynomial-time simulation of the communication between a prover and a verifier [12, Theorem 2]. We adapt this proof to the context of the proposed protocol. The function \(\delta \) is defined by \(\delta (\mathsf {true}) = 1\) and \(\delta (\mathsf {false}) = 0\), and \(\wedge \) denotes the logical operator “and”. For clarity, the function \(f_{\tau , \ell }\) is henceforth written f.

The scenario is that of a prover \(\mathcal P\) and a dishonest verifier \(\mathcal A\) who can use an adaptive strategy to bias the choice of the challenges to try to obtain information about s. In this case the challenges are no longer chosen at random, and this must be taken into account in the security proof. Assume the protocol is run N times and focus on the i-th round.

\(\mathcal A\) has already obtained a certain amount of information \(\eta \) from past interactions with \(\mathcal P\). \(\mathcal P\) sends a pre-computed commitment \(x_i\). Then \(\mathcal A\) chooses a commitment using all information available to her, and a random tape \(\omega \): \(c_i\left( x_i, \eta , \omega \right) \).

The following is an algorithm (using its own random tape \(\omega _M\)) that simulates this round:

  1. Step 1.

    Choose \(\overline{c_i} \xleftarrow {\$}[0, B-1]\) and \(\overline{y_i} \xleftarrow {\$}[(B-1)(S-1), A-1]\) using \(\omega _M\).

  2. Step 2.

    Compute \(\overline{x_i} = f_{\tau ,\ell }\left( g^{\overline{y_i}}v^{\overline{c_i}}\right) \).

  3. Step 3.

    If \(c_i\left( \overline{x_i}, \eta , \omega \right) = \overline{c_i}\) then return to step 1 and try again with another pair \((\overline{c_i}, \overline{y_i})\), else return \((\overline{x_i}, \overline{c_i}, \overline{y_i})\).Footnote 4

The rest of the proof shows that, provided \(\varPhi = (B-1)(S-1)\) is much smaller than A, this simulation algorithm outputs triples that are indistinguishable from real ones, for any fixed random tape \(\omega \).

Formally, we want to prove that

$$\begin{aligned} \varSigma _1 = \sum _{\alpha , \beta , \gamma } \left| {\text {*}}{Pr}_{\omega _P}\left[ (x, c, y) = (\alpha , \beta , \gamma )\right] - {\text {*}}{Pr}_{\omega _M} \left[ (\overline{x}, \overline{c}, \overline{y}) = (\alpha , \beta , \gamma )\right] \right| \end{aligned}$$

is negligible, i.e., that the two distributions cannot be distinguished by accessing a polynomial number of triples (even using an infinite computational power). Let \((\alpha , \beta , \gamma )\) be a fixed triple, and assuming a honest prover, we have the following probability:

$$\begin{aligned} p&= {\text {*}}{Pr}_{\omega _P} \left[ (x,c,y) = (\alpha ,\beta ,\gamma )\right] \\&= {\text {*}}{Pr}_{0 \le r < A} \left[ \alpha = f(g^r) \wedge \beta = c(\alpha ,\eta ,\omega ) \wedge \gamma = r + \beta s \right] \\&= \sum _{r= 0}^{A-1} \frac{1}{A} \delta \left( \alpha =f(g^\gamma v^\beta ) \wedge \beta = c(\alpha , \eta ,\omega ) \wedge r = \gamma - \beta s \right) \\&= \frac{1}{A}\delta \left( \alpha =f(g^\gamma v^\beta ) \wedge \beta = c(\alpha , \eta , \omega ) \wedge \gamma - \beta s \in \left[ 0, A-1\right] \right) \\&= \frac{1}{A}\delta \left( \alpha =f(g^\gamma v^\beta )\right) \delta \left( \beta = c(\alpha , \eta , \omega )\right) \delta \left( \gamma - \beta s \in \left[ 0, A-1\right] \right) . \end{aligned}$$

where \(f = f_{\tau ,\ell }\).

We now consider the probability \(\overline{p} = \mathrm {Pr}_{\omega _M}\left[ (\overline{x},\overline{c},\overline{y}) = (\alpha ,\beta ,\gamma )\right] \) to obtain the triple \((\alpha ,\beta ,\gamma )\) during the simulation described above. This is a conditional probability given by

$$\begin{aligned} \overline{p} = \mathop {\mathrm{Pr}}\limits _{\begin{array}{c} \overline{y}\in [\varPhi ,A-1] \\ \overline{c}\in [0,B-1] \end{array}} \left[ \alpha = f\left( g^{\overline{y}}v^{\overline{c}}\right) \wedge \beta = \overline{c}\wedge \gamma = \overline{y} \;\big |\; \overline{c} = c\left( f\left( g^{\overline{y}}v^{\overline{c}}\right) , \eta , \omega \right) \right] \end{aligned}$$

Using the definition of conditional probabilities, this equals

$$\begin{aligned} \overline{p} =\frac{\mathop {\mathrm{Pr}}\limits _{\begin{array}{c} \overline{y}\in [\varPhi ,A-1] \\ \overline{c}\in [0,B-1] \end{array}} \left[ \alpha = f\left( g^{\overline{y}}v^{\overline{c}}\right) \wedge \beta = \overline{c}\wedge \gamma = \overline{y} \right] }{\mathop {\mathrm{Pr}}\limits _{\begin{array}{c} \overline{y}\in [\varPhi ,A-1] \\ \overline{c}\in [0,B-1] \end{array}} \left[ \overline{c} = c\left( f\left( g^{\overline{y}}v^{\overline{c}}\right) , \eta , \omega \right) \right] } \end{aligned}$$

Let us introduce

$$\begin{aligned} Q = \sum _{\begin{array}{c} \overline{y}\in [\varPhi ,A-1] \\ \overline{c}\in [0,B-1] \end{array}} \delta \left( \overline{c} = c\left( f\left( g^{\overline{y}}v^{\overline{c}}\right) , \eta , \omega \right) \right) \end{aligned}$$

then the denominator in \(\overline{p}\) is simply \(Q/B(A-\varPhi )\). Therefore:

$$\begin{aligned} \overline{p}&= \sum _{\overline{c} \in [0, B-1]} \frac{1}{B} {\text {*}}{Pr}_{\overline{y}\in [\varPhi ,A-1]} \left[ \alpha = f\left( g^{\overline{y}}v^{\overline{c}}\right) \wedge \gamma = \overline{y} \wedge \beta = \overline{c} = c(\alpha , \eta , \omega ) \right] \frac{B(A - \varPhi )}{Q} \\&= {\text {*}}{Pr}_{\overline{y}\in [\varPhi ,A-1]} \left[ \alpha = f\left( g^{\gamma }v^{\beta }\right) \wedge \gamma = \overline{y} \wedge \beta = c(\alpha , \eta , \omega ) \right] \frac{A-\varPhi }{Q} \\&= \sum _{\overline{y} \in [\varPhi ,A-1]}\frac{1}{A - \varPhi }\delta \left( \alpha = f\left( g^{\gamma }v^{\beta }\right) \wedge \gamma = \overline{y} \wedge \beta = c(\alpha , \eta , \omega ) \right) \frac{A-\varPhi }{Q} \\&= \frac{1}{Q}\delta \left( \alpha = f\left( g^{\gamma }v^{\beta }\right) \right) \delta \left( \beta = c(\alpha , \eta , \omega )\right) \delta \left( \gamma \in [\varPhi , A-1]\right) \end{aligned}$$

We will now use the following combinatorial lemma:

Lemma 4

If \(h : \mathcal G \rightarrow [0, B-1]\) and \(v \in \{g^{-s}, s \in [0, S-1]\}\) then the total number M of solutions \((c,y) \in [0, B-1]\times [\varPhi , A-1]\) to the equation \(c = h(g^y v^{c})\) satisfies \(A - 2\varPhi \le M\le A\).

Proof

(Proof of Lemma 4 ) [12, Appendix A]. Specialising Lemma 4 to the function that computes \(c(f(g^{\overline{y}}v^{\overline{c}}), \eta , \omega )\) from \((\overline{c}, \overline{y})\) gives \(A-2\varPhi \le Q \le A\). This enables us to bound \(\varSigma _1\):

$$\begin{aligned} \varSigma _1&= \sum _{\alpha , \beta , \gamma } \left| {\text {*}}{Pr}_{\omega _P}\left[ (x, c, y) = (\alpha , \beta , \gamma )\right] - {\text {*}}{Pr}_{\omega _M} \left[ (\overline{x}, \overline{c}, \overline{y}) = (\alpha , \beta , \gamma )\right] \right| \\&= \sum _{\alpha , \beta , \gamma \in [\varPhi , A-1]} \left| {\text {*}}{Pr}_{\omega _P}\left[ (x, c, y) = (\alpha , \beta , \gamma )\right] - {\text {*}}{Pr}_{\omega _M} \left[ (\overline{x}, \overline{c}, \overline{y}) = (\alpha , \beta , \gamma )\right] \right| \\&\qquad + \sum _{\alpha , \beta , \gamma \notin [\varPhi , A-1]} {\text {*}}{Pr}_{\omega _P}\left[ (x, c, y) = (\alpha , \beta , \gamma )\right] \\&= \sum _{\begin{array}{c} \gamma \in [\varPhi ,A-1]\\ \beta \in [0,B-1]\\ \alpha = f(g^\gamma v^\beta ) \end{array}} \left| \frac{1}{A}\delta \left( \beta = c(\alpha ,\eta , \omega )\right) - \frac{1}{Q}\delta (\beta = c(\alpha , \eta , \omega )) \right| \\&\qquad + \, \left( 1 - \sum _{\alpha , \beta , \gamma \in [\varPhi , A-1]} {\text {*}}{Pr}_{\omega _P}\left[ (x, c, y) = (\alpha , \beta , \gamma )\right] \right) \\&= \left| \frac{1}{A} - \frac{1}{Q} \right| Q + 1 - \sum _{\begin{array}{c} \gamma \in [\varPhi ,A-1]\\ \beta \in [0,B-1]\\ \alpha = f(g^\gamma v^\beta ) \end{array}} \frac{1}{A}\delta \left( \beta = c(\alpha , \eta , \omega )\right) \\&= \frac{|Q-A|}{A} + 1 - \frac{Q}{A} \end{aligned}$$

Therefore \(\varSigma _1 \le 2 |Q-A|/A \le 4\varPhi /A < 4SB/A\), which proves that the real and simulated distributions are statistically indistinguishable if SB / A is negligible.     \(\square \)

B GPS Commitment Pre-computation

Figure 4 described one possible way in which pre-computed commitments are generated and used for GPS. In this figure, we delegate the computation to a trusted authority. That role can be played by \(\mathcal P\) alone, but we leverage the authority to alleviate \(\mathcal P\)’s computational burden.

To efficiently generate a sequence of commitments, the authority uses a shared secret seed J and a cryptographic hash function H. Here J is chosen by \(\mathcal P\) but it could be chosen by the authority instead.

Fig. 4.
figure 4

Commitment pre-processing as applied to GPS. The first stage describes the preliminary interaction with a trusted authority, where pre-computed commitments are generated and stored. The second stage describes the interaction with a verifier. For the sake of clarity the range-tests on c and y were omitted. The trusted authority can be easily replaced by \(\mathcal P\) himself.

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Ferradi, H., Géraud, R., Naccache, D. (2016). Slow Motion Zero Knowledge Identifying with Colliding Commitments. In: Lin, D., Wang, X., Yung, M. (eds) Information Security and Cryptology. Inscrypt 2015. Lecture Notes in Computer Science(), vol 9589. Springer, Cham. https://doi.org/10.1007/978-3-319-38898-4_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-38898-4_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-38897-7

  • Online ISBN: 978-3-319-38898-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics