Abstract
We generalize the cryptographic notion of Order Revealing Encryption (ORE) to arbitrary functions and we present a construction that allows to determine the (partial) ordering of two vectors i.e., given \(E(\varvec{x})\) and \(E(\varvec{y})\) it is possible to learn whether \(\varvec{x}=\varvec{y}\), \(\varvec{x}>\varvec{y}\), \(\varvec{x}<\varvec{y}\) or whether \(\varvec{x}\) and \(\varvec{y}\) are incomparable. This is the first non-trivial example of a Revealing Encryption (RE) scheme with output larger than one bit, and which does not rely on cryptographic obfuscation or multilinear maps.
Work done while visiting Aarhus University.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
A MIFE scheme must not reveal any information (e.g., satisfy IND-CPA security) until a secret key for a function f is released, while in an RE scheme anyone can compute the authorized function on the encrypted data.
- 2.
To ease the notation we use bold subscripts to indicate the entries in the vector.
References
Agrawal, R., Kiernan, J., Srikant, R., Xu, Y.: Order-preserving encryption for numeric data. In: Proceedings of the ACM SIGMOD International Conference on Management of Data, Paris, France, 13–18 June 2004, pp. 563–574 (2004)
Bellare, M., Boldyreva, A., O’Neill, A.: Deterministic and efficiently searchable encryption. In: Advances in Cryptology – CRYPTO 2007, 27th Annual International Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2007, Proceedings, pp. 535–552 (2007)
Boldyreva, A., Chenette, N., Lee, Y., O’Neill, A.: Order-preserving symmetric encryption. In: Advances in Cryptology - EUROCRYPT 2009, 28th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cologne, Germany, 26–30 April 2009, Proceedings, pp. 224–241 (2009)
Boldyreva, A., Chenette, N., O’Neill, A.: Orderpreserving encryption revisited: improved security analysis and alternative solutions. In: Advances in Cryptology - CRYPTO 2011 - 31st Annual Cryptology Conference, Santa Barbara, CA, USA, 14–18 August 2011, Proceedings, pp. 578–595 (2011)
Boneh, D., Di Crescenzo, G., Ostrovsky, R., Persiano, G.: Public key encryption with keyword search. IACR Cryptology ePrint Archive, 2003:195 (2003)
Barak, B., Goldreich, O., Impagliazzo, R., Rudich, S., Sahai, A., Vadhan, S.P., Yang, K.: On the (Im)possibility of obfuscating programs. In: Advances in Cryptology - CRYPTO 2001, 21st Annual International Cryptology Conference, Santa Barbara, California, USA, 19–23 August 2001, Proceedings, pp. 1–18 (2001)
Bösch, C., Hartel, P.H., Jonker, W., Peter, W.: A survey of provably secure searchable encryption. ACM Comput. Surv. 47(2), 18:1–18:51 (2014)
Börzsönyi, S., Kossmann, D., Stocker, K.: The skyline operator. In: Proceedings of the 17th International Conference on Data Engineering, 2–6 April 2001, Heidelberg, Germany, pp. 421–430 (2001)
Brakerski, Z., Komargodski, I., Segev, G.: Multi-input functional encryption in the private-key setting: stronger security from weaker assumptions. In: Advances in Cryptology - EUROCRYPT 2016 - 35th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Vienna, Austria, 8–12 May 2016, Proceedings, Part II, pp. 852–880 (2016)
Boneh, D., Lewi, K., Raykova, M., Sahai, A., Zhandry, M., Zimmerman, J.: Semantically secure order-revealing encryption: multi-input functional encryption without obfuscation. In: Oswald, E., Fischlin, M. (eds.) EUROCRYPT 2015. LNCS, vol. 9057, pp. 563–594. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46803-6_19
Bellare, M., Ristenpart, T., Rogaway, P., Stegers, T.: Format-preserving encryption. In: Selected Areas in Cryptography, 16th Annual International Workshop, SAC 2009, Calgary, Alberta, Canada, 13–14 August 2009, Revised Selected Papers, pp. 295–312 (2009)
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
Bun, M., Zhandry, M.: Order-revealing encryption and the hardness of private learning. In: Kushilevitz, E., Malkin, T. (eds.) TCC 2016. LNCS, vol. 9562, pp. 176–206. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49096-9_8
Chatterjee, S., Das, M.P.L.: Property preserving symmetric encryption revisited. In: Iwata, T., Cheon, J.H. (eds.) ASIACRYPT 2015. LNCS, vol. 9453, pp. 658–682. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48800-3_27
Chaudhari, P., Das, M.: Privacy-preserving attribute based searchable encryption. Cryptology ePrint Archive, Report 2015/899 (2015). http://eprint.iacr.org/2015/899
Curtmola, R., Garay, J.A., Kamara, S., Ostrovsky, R.: Searchable symmetric encryption: improved definitions and efficient constructions. In: Proceedings of the 13th ACM Conference on Computer and Communications Security, CCS 2006, Alexandria, VA, USA, October 30– November 3 2006, pp. 79–88 (2006)
Cash, D., Liu, F.-H., O’Neill, A., Zhang, C.: Reducing the leakage in practical order-revealing encryption. Cryptology ePrint Archive, Report 2016/661 (2016). http://eprint.iacr.org/2016/661
Chenette, N., Lewi, K., Weis, S.A., Wu, D.J.: Practical order-revealing encryption with limited leakage. In: Peyrin, T. (ed.) FSE 2016. LNCS, vol. 9783, pp. 474–493. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-52993-5_24
Betül Durak, F., DuBuisson, T.M., Cash, D.: What else is revealed by order-revealing encryption? In: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016, pp. 1155–1166 (2016)
Damgård, I., Haagh, H., Orlandi, C.: Access control encryption: enforcing information flow with cryptography. In: Theory of Cryptography - 14th International Conference, TCC 2016-B, Beijing, China, October 31–November 3 2016, Proceedings, Part II, pp. 547–576 (2016)
Dwork, C., McSherry, F., Nissim, K., Smith, A.: Calibrating noise to sensitivity in private data analysis. In: Halevi, S., Rabin, T. (eds.) TCC 2006. LNCS, vol. 3876, pp. 265–284. Springer, Heidelberg (2006). https://doi.org/10.1007/11681878_14
Gentry, C.: Fully homomorphic encryption using ideal lattices. In: Proceedings of the 41st Annual ACM Symposium on Theory of Computing, STOC 2009, Bethesda, MD, USA, May 31–June 2 2009, pp. 169–178 (2009)
Goldwasser, S., Dov Gordon, S., Goyal, V., Jain, A., Katz, J., Liu, F.-H., Sahai, A., Shi, E., Zhou, H.-S.: Multiinput functional encryption. In: Advances in Cryptology - EUROCRYPT 2014 - 33rd Annual International Conference on the Theory and Applications of Cryptographic Techniques, Copenhagen, Denmark, 11–15 May 2014, Proceedings, pp. 578–602 (2014)
Garg, S., Gentry, C., Halevi, S., Raykova, M., Sahai, A., Waters, B.: Candidate indistinguishability obfuscation and functional encryption for all circuits. In: 54th Annual IEEE Symposium on Foundations of Computer Science, FOCS 2013, Berkeley, CA, USA, 26–29 October 2013, pp. 40–49 (2013)
Goh, E.-J.: Secure indexes. Cryptology ePrint Archive, Report 2003/216 (2003). http://eprint.iacr.org/2003/216
Goyal, V., Pandey, O., Sahai, A., Waters, B.: Attribute-based encryption for fine-grained access control of encrypted data. In: Proceedings of the 13th ACM Conference on Computer and Communications Security, CCS 2006, Alexandria, VA, USA, October 30–November 3 2006, pp. 89–98 (2006)
Grubbs, P., Sekniqi, K., Bindschaedler, V., Naveed, M., Ristenpart, T.: Leakage-abuse attacks against order-revealing encryption. In: 2017 IEEE Symposium on Security and Privacy, SP 2017, San Jose, CA, USA, 22–26 May 2017, pp. 655–672 (2017)
Golle, P., Staddon, J., Waters, B.: Secure conjunctive keyword search over encrypted data. In: Jakobsson, M., Yung, M., Zhou, J. (eds.) ACNS 2004. LNCS, vol. 3089, pp. 31–45. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24852-1_3
Gorbunov, S., Vaikuntanathan, V., Wee, H.: Attribute-based encryption for circuits. In: Symposium on Theory of Computing Conference, STOC 2013, Palo Alto, CA, USA, 1–4 June 2013, pp. 545–554 (2013)
Haagh, H., Ji, Y., Li, C., Orlandi, C., Song, Y.: Revealing encryption for partial ordering. Cryptology ePrint Archive, Report 2016/972 (2016). http://eprint.iacr.org/2016/972
Joye, M., Passelgue, A.: Function-revealing encryption. Cryptology ePrint Archive, Report 2016/622 (2016). http://eprint.iacr.org/2016/622
Kerschbaum, F.: Frequency-hiding order-preserving encryption. In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, Denver, CO, USA, 12–16 October 2015, pp. 656–667 (2015)
Koo, D., Hur, J., Yoon, H.: Secure and efficient data retrieval over encrypted data using attribute-based encryption in cloud storage. Comput. Elec. Eng. 39(1), 34–46 (2013)
Kasiviswanathan, S.P., Lee, H.K., Nissim, K., Raskhodnikova, S., Smith, A.D.: What can we learn privately? SIAM J. Comput. 40(3), 793–826 (2011)
Kerschbaum, F., Schröpfer, A.: Optimal average-complexity ideal-security order-preserving encryption. In: Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, Scottsdale, AZ, USA, 3–7 November 2014, pp. 275–286 (2014)
Katz, J., Sahai, A., Waters, B.: Predicate encryption supporting disjunctions, polynomial equations, and inner products. In: Smart, N. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 146–162. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78967-3_9
Lewi, K., Wu, D.J.: Order-revealing encryption: new constructions, applications, and lower bounds. In: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016, pp. 1167–1178 (2016)
Naveed, M., Kamara, S., Wright, C.V.: Inference attacks on property-preserving encrypted databases. In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, Denver, CO, USA, 12–16 October 2015, pp. 644–655 (2015)
Popa, R.A., Li, F.H., Zeldovich, N.: An ideal-security protocol for order-preserving encoding. In: 2013 IEEE Symposium on Security and Privacy, SP 2013, Berkeley, CA, USA, 19–22 May 2013, pp. 463–477 (2013)
Pandey, O., Rouselakis, Y.: Property preserving symmetric encryption. In: Pointcheval, D., Johansson, T. (eds.) EUROCRYPT 2012. LNCS, vol. 7237, pp. 375–391. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29011-4_23
Papadias, D., Tao, Y., Fu, G., Seeger, B.: An optimal and progressive algorithm for skyline queries. In: Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, San Diego, California, USA, 9–12 June 2003, pp. 467–478 (2003)
Roche, D.S., Apon, D., Choi, S.G., Yerukhimovich, A.: POPE: partial order preserving encoding. In: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016, pp. 1131–1142 (2016)
Rivest, R.L., Adleman, L., Dertouzos, M.L.: On data banks and privacy homomorphisms. Found. Sec. Somput. 4(11), 169–180 (1978)
Shamir, A.: Identity-based cryptosystems and signature schemes. In: Blakley, G.R., Chaum, D. (eds.) CRYPTO 1984. LNCS, vol. 196, pp. 47–53. Springer, Heidelberg (1985). https://doi.org/10.1007/3-540-39568-7_5
Song, D.X., Wagner, D., Perrig, A.: Practical techniques for searches on encrypted data. In: 2000 IEEE Symposium on Security and Privacy, Berkeley, California, USA, May 14–17, 2000, pp. 44–55 (2000)
Wang, C., Li, W., Li, Y., Xu, X.: A ciphertext-policy attribute-based encryption scheme supporting keyword search function. In: Wang, G., Ray, I., Feng, D., Rajarajan, M. (eds.) CSS 2013. LNCS, vol. 8300, pp. 377–386. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-03584-0_28
Weiss, M., Rozenberg, B., Barham, M.: Practical solutions for format-preserving encryption. CoRR, abs/1506.04113 (2015)
Xu, J., Fan, J., Ammar, M.H., Moon, S.B.: Prefix-preserving IP address anonymization: measurement-based security evaluation and a new cryptography-based scheme. In: 10th IEEE International Conference on Network Protocols (ICNP 2002), 12–15 November 2002, Paris, France, Proceedings, pp. 280–289 (2002)
Xiao, L., Yen, I.-L.: Security analysis and enhancement for prefix-preserving encryption schemes. IACR Cryptology ePrint Archive, 2012:191 (2012)
Zheng, Q., Xu, S., Ateniese, G.: VABKS: verifiable attribute-based keyword search over outsourced encrypted data. In: 2014 IEEE Conference on Computer Communications, INFOCOM 2014, Toronto, Canada, April 27–May 2 2014, pp. 522–530 (2014)
Acknowledgements
This research received funding from the Danish National Research Foundation and The National Science Foundation of China (grant 61361136003) for the Sino-Danish Center for the Theory of Interactive Computation (CTIC), the Danish Independent Research Council under Grant-ID DFF-6108-00169 (FoCC), and the European Union’s Horizon 2020 research and innovation programme under grant agreement No 731583 (SODA).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
Appendices
A Efficiency of PORE
In this section we analyze the efficiency of our PORE construction.
1.1 A.1 Theoretical Efficiency
Let \(\kappa \) be the security parameter, d the number of dimensions and n the bit length of each entry. Then we can compute the storage and computational complexity of our scheme.
Storage Complexity. The bit length of a ciphertext in our PORE scheme is exactly:
Computational Overhead. Performing an encryption requires
calls to a PRF (with unbounded domain). Note that running the evaluation algorithm requires no invocation of the PRF (only d binary searches into vectors of n bits each and a single addition modulo 3).
1.2 A.2 Implementation Choices
In this section we describe the result of our experimental validation of the efficiency of our PORE scheme.
Plaintext Space. We have implemented our scheme for a range of parameters d and n. We report here the results for all combinations (d, n) with \(d\in \{2,\ldots ,8\}\) and \(n=2^i\) for \(i \in \{1,\ldots ,13\}\) s.t. the ciphertext size is less than 20 MB.
PRF Choice. We implement the PRF \(F: {\{0,1\}^\kappa }\times \{0,1\}^* \rightarrow {\{0,1\}^\kappa }\) using AES-CBC mode, with key size \(\kappa =128\) bits. This is a particularly convenient choice thanks to the AES native instruction in modern CPUs.
Note that in the theoretical analysis we stated that the complexity of the encryption is \(O(n^d)\) when measured as the number of calls to a PRF with unbounded domain. However in practice, when instantiating F with AES in CBC mode the running time (in terms of number of calls to AES) grows linearly with the number of blocks needed for the plaintext, namely \(\lceil dn/128 \rceil \). Therefore, a naïve implementation would be significantly slower than promised. We notice, however, that thanks to the special structure of the inputs of our PRF it is possible to get rid of this extra factor. In particular, we note that in our matrix of ciphertexts we evaluate the PRF on inputs of the form
where each value \({\mathsf {prefix}}(x_{\varvec{k}},i_k)\) is given as input to n different PRFs. Therefore we modify the way we evaluate the PRF by first precomputing
and then implement
so that the inputs to \(F^0_K\) is of fixed length 128. Therefore (even adding the \(O(n^2d)\) extra AES invocations on “long” n-bit values used to precompute the u’s), the total number of calls to AES and hence the running time is \(O(n^d)\) as initially promised.
Note, the XOR operation over d strings takes O(d) time. However, the points which are in the same position in the first k dimensions shares the value \(u_{1,i_1}\oplus \cdots \oplus u_{k,i_{k}}\). By making these values reusable, we can reduce the amortized complexity to \(\sum _{i=1}^d\frac{1}{n^{i-1}}=O(1)\).
1.3 A.3 Experimental Setup
The reported encryption timings (Table 1) are the average taken over 100 executions of the encryption algorithm. For the evaluation timings (Table 2), we randomly pick 500 pairs from the 100 ciphertexts and take the average of the 500 executions of the evaluation algorithm. To measure the size of the ciphertexts (Table 3), we keep track of the size of the required space each time the encryption algorithm applies the memory.
Hardware. The experiments were executed on a machine with the following characteristics:
-
OS: Linux TitanX1 3.19.0-15-generic #15-Ubuntu SMP
-
CPU: Intel(R) Xeon(R) CPU E5-2675 v3 1.80 GHz
-
Memory: 128 GB
-
GCC: gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13) (Compile option -O2)
1.4 A.4 Results
Encryption Complexity. Table 1 shows how long it takes to encrypt a single plaintext for different values of d and n. As expected, we observe that the encryption time grows as the dimension d and bit lengths n increases.
Evaluation Complexity. Note that the theoretically complexity of the evaluation algorithm is O(d). However, the actual running time of the evaluation algorithm from Table 2 indicates that the algorithm is so fast that for most choices of parameters it is hard to appreciate the theoretical complexity.
When the combined size of all 100 ciphertext from the experiments does not exceed 6MB (i.e. each ciphertext does not exceed 60 kB), then all ciphertexts fits inside the L2 cache of the CPU. By observing the variation of the evaluation timings in Table 2 and the ciphertext size in Table 3, we can conclude that there is a tendency that when the ciphertexts fits inside the L2 cache, then the variation stays below 0.07 \(\upmu \)s (this observation is indicated in the tables by splitting the columns in two).
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Haagh, H., Ji, Y., Li, C., Orlandi, C., Song, Y. (2017). Revealing Encryption for Partial Ordering. In: O'Neill, M. (eds) Cryptography and Coding. IMACC 2017. Lecture Notes in Computer Science(), vol 10655. Springer, Cham. https://doi.org/10.1007/978-3-319-71045-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-319-71045-7_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-71044-0
Online ISBN: 978-3-319-71045-7
eBook Packages: Computer ScienceComputer Science (R0)