Skip to main content

Round-Efficient Private Stable Matching from Additive Homomorphic Encryption

  • Conference paper
  • First Online:
Information Security

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

Abstract

In the present paper, we propose private stable matching protocols to solve the stable marriage problem with the round complexity \(O(n^2)\), where n is the problem size. In the multiparty setting, the round complexity of our protocol is better than all of the existing practical protocols. We also implement our protocol on a standard personal computer, smartphones, and tablet computers for experimental performance evaluation. Our protocols are constructed by using additive homomorphic encryption only, and this construction yields improved round complexity and implementation-friendliness. To the best of our knowledge, our experiment is the first implementation report of a private stable matching protocol that has a feasible running time.

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

Similar content being viewed by others

References

  1. Beaver, D., Micali, S., Rogaway, P.: The round complexity of secure protocols (extended abstract). In: Ortiz, H. (ed.) STOC, pp. 503–513. ACM (1990)

    Google Scholar 

  2. Damgård, I.B., Fitzi, M., Kiltz, E., Nielsen, J.B., Toft, T.: Unconditionally secure constant-rounds multi-party computation for equality, comparison, bits and exponentiation. In: Halevi, S., Rabin, T. (eds.) TCC 2006. LNCS, vol. 3876, pp. 285–304. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  3. Damgård, I., Jurik, M.: A generalisation, a simplification and some applications of Paillier’s probabilistic public-key system. In: Kim, K. (ed.) PKC 2001. LNCS, vol. 1992, pp. 119–136. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  4. ECRYPT II: Yearly report on algorithms and keysize (2011–2012), September 2012. http://www.ecrypt.eu.org/

  5. El Gamal, T.: A public key cryptosystem and a signature scheme based on discrete logarithms. In: Blakely, G.R., Chaum, D. (eds.) CRYPTO 1984. LNCS, vol. 196, pp. 10–18. Springer, Heidelberg (1985)

    Chapter  Google Scholar 

  6. Fouque, P.-A., Poupard, G., Stern, J.: Sharing decryption in the context of voting or lotteries. In: Frankel, Y. (ed.) FC 2000. LNCS, vol. 1962, pp. 90–104. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Franklin, M.K., Gondree, M., Mohassel, P.: Improved efficiency for private stable matching. In: Abe, M. (ed.) CT-RSA 2007. LNCS, vol. 4377, pp. 163–177. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Franklin, M.K., Gondree, M., Mohassel, P.: Multi-party indirect indexing and applications. In: Kurosawa, K. (ed.) ASIACRYPT 2007. LNCS, vol. 4833, pp. 283–297. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  9. Gale, D., Shapley, L.S.: College admissions and the stability of marriage. Am. Math. Mon. 69(1), 9–15 (1962)

    Article  MATH  MathSciNet  Google Scholar 

  10. Gennaro, R., Jarecki, S., Krawczyk, H., Rabin, T.: Secure distributed key generation for discrete-log based cryptosystems. J. Crypt. 20(1), 51–83 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  11. Goldwasser, S., Micali, S.: Probabilistic encryption. J. Comput. Syst. Sci. 28(2), 270–299 (1984)

    Article  MATH  MathSciNet  Google Scholar 

  12. Golle, P.: A private stable matching algorithm. In: Di Crescenzo, G., Rubin, A. (eds.) FC 2006. LNCS, vol. 4107, pp. 65–80. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  13. Golle, P., Juels, A.: Parallel mixing. In: Atluri, V., Pfitzmann, B., McDaniel, P.D. (eds.) ACM Conference on Computer and Communications Security, pp. 220–226. ACM (2004)

    Google Scholar 

  14. Google, Open Handset Alliance: Android developers. http://developer.android.com/

  15. Gusfield, D., Irving, R.W.: The Stable Marriage Problem: Structure and Algorithms. The Foundations of Computing. MIT Press, Cambridge (1989)

    MATH  Google Scholar 

  16. Lipmaa, H.: Verifiable homomorphic oblivious transfer and private equality test. In: Laih, C.-S. (ed.) ASIACRYPT 2003. LNCS, vol. 2894, pp. 416–433. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  17. Naor, M., Nissim, K.: Communication preserving protocols for secure function evaluation. In: Vitter, J.S., Spirakis, P.G., Yannakakis, M. (eds.) STOC, pp. 590–599. ACM (2001)

    Google Scholar 

  18. NIST: Special publication 800–57, recommendation for key management - part 1: General (revision 3), July 2012. http://csrc.nist.gov/publications/PubsSPs.html

  19. Oracle: Java.com. http://java.com/

  20. Paillier, P.: Public-key cryptosystems based on composite degree residuosity classes. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 223–238. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  21. Stern, J.P.: A new and efficient all-or-nothing disclosure of secrets protocol. In: Ohta, K., Pei, D. (eds.) ASIACRYPT 1998. LNCS, vol. 1514, pp. 357–371. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  22. Yao, A.C.C.: How to generate and exchange secrets (extended abstract). In: FOCS, pp. 162–167. IEEE Computer Society (1986)

    Google Scholar 

Download references

Acknowledgements

The work is supported by FIRST program and Grant-in-Aid 12913388. The authors would like to thank Jacob Schuldt, Nuttapong Attrapadung, and Naoto Yanai for the valuable discussion and comments. We also thank the members of Shin-Akarui-Angou-Benkyou-Kai and the anonymous reviewers of ISC 2013 for their valuable discussion and comments.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tadanori Teruya .

Editor information

Editors and Affiliations

Appendices

A Initialization of the Proposed Protocol

The initialization step is performed by the matching authorities after the input submission step. In order to reduce the complexities, the bids are initialized using the single free man technique, as introduced by Franklin et al. [7]. An explicit overview of the initialization step procedure for the proposed bid design is provided below.

The initialization step consists of (1) modification of input encrypted preferences, (2) generation of dummy encrypted preferences, and (3) initialization of the fifth element of bids. After the input submission step, if the numbers of men and women are not the same, the matching authorities then generate and insert random preferences into the set that has fewer participants. Next, the matching authorities modify the encrypted preferences and generate the encrypted preferences of \(n+1\) fake men and n fake women as follows:

(4)
(5)

where \(\mathord {\varvec{a}}_i\) and \(\mathord {\varvec{b}}_j\) are encrypted preferences of man \(A_i\) and woman \(B_j\), respectively. The ciphertexts of Parts 1 through 6 in Eqs. (4) and (5) are permutation vectors defined in Table 4, and all of the elements in the permutation vectors are encrypted. Then, all of the preferences are ordered as follows. The first n men and women are the true participants of the stable marriage problem. The remaining \(n+1\) men and n women are fake men and women. After the above modification, there are \(2n+1\) men’s encrypted preferences and 2n women’s encrypted preferences.

Table 4. Range of plaintext at Parts 1–6 in Eqs. (4) and (5).

Then, the matching authorities form \(2n+1\) vectors \(\mathord {\varvec{q}}_0,\mathord {\varvec{q}}_1,\ldots ,\mathord {\varvec{q}}_{2n}\) from 2n vectors \(\mathord {\varvec{b}}_0,\mathord {\varvec{b}}_1,\ldots ,\mathord {\varvec{b}}_{2n-1}\), in the same manner as Golle and Franklin et al. ’s protocol [7, 12].

Then, \(2n+1\) bids are arranged as \(W_i=\big [{{\mathrm{\mathrm {E}}}}(i),\mathord {\varvec{a}}_i,\mathord {\varvec{v}}_i,\mathord {\varvec{q}}_i,{{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_i)\big ]\). The arrangement of the bids is the same as in [12], except that the counter is given as the ciphertext vector.

Next, the matching authorities generate two sets \(\mathcal {F}_1\) and \(\mathcal {E}_1\), where \(\mathcal {F}_1\) denotes a set of free bids and is initialized as \(\mathcal {F}_1:=\mathinner {\lbrace \,{W_0}\,\rbrace }\), where \(W_0\) is a bid of \(A_{0}\). The fifth value \({{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_{0})\) of the free bid \(W_{0}\) is updated to the ciphertext vector, which represents \({{\mathrm{\mathrm {E}}}}(0)\). Here, \(\mathcal {E}_1\) denotes a set of engaged bids and includes 2n engaged bids. The engaged bids in \(\mathcal {E}_1\) are initialized as follows. True men \(A_{1},A_{2},\ldots ,A_{n-1}\) get engaged to fake women \(B_{n},B_{n+1},\ldots ,B_{2n-2}\), respectively, and fake men \(A_{n},A_{n+1},\ldots ,A_{2n-1}\) get engaged to true women \(B_{0},B_{1},\ldots ,B_{n-1}\), respectively. Moreover, fake man \(A_{2n}\) gets engaged to fake woman \(B_{2n-1}\). In other words, \(\mathcal {E}_1:=\Big \{\overline{W}_{i,n-1+i}~\big |~i=1,2,\ldots ,n-1\Big \}\cup \Big \{\overline{W}_{n+i,i}~\big |~i=0,1,\ldots ,n-1\Big \}\cup \Big \{\overline{W}_{2n,2n-1}\Big \}\).

Then, the matching authorities jointly apply the \({{\mathrm{\mathrm {MIX}}}}\) to \(\mathcal {F}_1\) and \(\mathcal {E}_1\) independently. Application of the \({{\mathrm{\mathrm {MIX}}}}\) to the bids in \(\mathcal {F}_1\) is performed as follows. First, a randomly generated secret permutation is applied to the set of bids and engaged bids. Next, for each bid, all ciphertexts included in the bids are re-randomized and \(W_i\leftarrow \big [{{\mathrm{\mathrm {E}}}}(i),\pi (\mathord {\varvec{a}}_i),\pi (\mathord {\varvec{v}}_i),\pi (\mathord {\varvec{q}}_i),{{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_i)\big ]\) is then computed, where \(\pi \) is a randomly generated secret permutation. For the engaged bids in \(\mathcal {E}_1\), the operation for the bid contained in each engaged bid is the same in above, then the remaining two ciphertexts are re-randomized.

B Correctness of the Proposed Protocol

The differences between our protocol and FGM1 [7] are in lines 4–5 and line 11. The remaining steps are equivalent to FGM1. We confirm the correctness of the proposed protocol by ensuring that these two changes do not change the protocol behavior.

In lines 4–5, the encryption of the counter \(\mathord {\varvec{\rho }}_i\) used in Golle’s protocol is readily obtained by \({{\mathrm{\mathrm {E}}}}(\rho _i)=\prod _{\ell =0}^{n-1}{{\mathrm{\mathrm {E}}}}(\rho _{i,\ell })^{\ell }\). Thus, the change of the representation of the counter does not affect the behavior of the protocol.

Next, we consider the treatment of the increment of the counter (at line 11). Since the preferences are set by Eqs. (4) and (5), the true men (resp. fake men) prefer the true women (resp. fake women) to the fake women (resp. true women). Thus, the true men (resp. fake men) never propose to the fake women (resp. true women). None of the fake men prefer \(B_{2n-1}\). Therefore, all of the fake men propose to \(B_{2n-1}\) as a last resort. No matter which fake man proposes to \(B_{2n-1}\), the resulting engagement is stable, except for the case in which \(A_{2n}\) proposes. Thus, man \(A_{2n}\) always becomes single after 2n pairs are made. At the same time, no fake women proposed to by \(A_{2n}\) will agree with the engagement because \(A_{2n}\) is ranked as the worst by all of the women. Thus, for any input preferences, proposals by \(A_{2n}\) are declined at any time. Note that n is the largest number of rejected proposals for the stable marriage problem of size n. In the proposed protocol, the counter \({{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_{2n})\) is incremented by 1-right rotation \({{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_{2n})\ggg {1}\) for each engagement. This operation corresponds to incrementing with modulo n. Since 1-right rotation is not an arithmetic operation and the ciphertext vector representing the counter is made to be sufficiently long, the operation \({{\mathrm{\mathrm {E}}}}(\mathord {\varvec{\rho }}_{2n})\ggg {1}\) does not cause overflow.

Therefore, the behavior of the proposed protocol is equivalent to that of Golle and Franklin et al. ’s protocol and outputs stable matching correctly after \(2n^2\) iterations of the main loop of Algorithm 2 (lines 2–15) [7, 12].

C Security of the Proposed Protocol

In the proposed protocol, the main building blocks are the \({{\mathrm{\mathrm {EQTEST}}}}\) and the \({{\mathrm{\mathrm {MIX}}}}\). These are based on the threshold additive homomorphic encryption. The other building blocks are constructed using the main building blocks, as explained in Sect. 2. The security and input privacy of the proposed stable matching protocol are guaranteed by the underlying threshold additive homomorphic encryption and the \({{\mathrm{\mathrm {MIX}}}}\), which are shown by the following theorem.

Theorem 3

Suppose that the threshold additive homomorphic encryption scheme is semantically secure, that the \({{\mathrm{\mathrm {MIX}}}}\) is private against any probabilistic polynomial-time semi-honest adversaries, and that the number of adversaries that collude with each other is less than the threshold, which is specified by the underlying threshold additive homomorphic encryption scheme.

The proposed protocol presented in Sect. 4.2 is private against any probabilistic polynomial-time semi-honest adversaries in the sense of Definition 1.

Proof

(Sketch). We prove the security of the proposed protocol by showing that the modifications to GFGM and FGM1 do not affect the proof of [12, Proposition 3]. Since the difference of our protocol and Golle and Franklin et al. ’s protocols is the 5th element of bid, we state the security proof of this part. Assume an adversary that can distinguish the 5th element of our bid. In such conditions, using this adversary can break the semantic security of the underlying additive homomorphic encryption. Hence, our protocol is private with the two primitives described in the sections above.

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Teruya, T., Sakuma, J. (2015). Round-Efficient Private Stable Matching from Additive Homomorphic Encryption. In: Desmedt, Y. (eds) Information Security. Lecture Notes in Computer Science(), vol 7807. Springer, Cham. https://doi.org/10.1007/978-3-319-27659-5_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-27659-5_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-27658-8

  • Online ISBN: 978-3-319-27659-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics