171 research outputs found

    On Constructing One-Way Permutations from Indistinguishability Obfuscation

    Get PDF
    We prove that there is no black-box construction of a one-way permutation family from a one-way function and an indistinguishability obfuscator for the class of all oracle-aided circuits, where the construction is domain invariant (i.e., where each permutation may have its own domain, but these domains are independent of the underlying building blocks). Following the framework of Asharov and Segev (FOCS \u2715), by considering indistinguishability obfuscation for oracle-aided circuits we capture the common techniques that have been used so far in constructions based on indistinguishability obfuscation. These include, in particular, non-black-box techniques such as the punctured programming approach of Sahai and Waters (STOC \u2714) and its variants, as well as sub-exponential security assumptions. For example, we fully capture the construction of a trapdoor permutation family from a one-way function and an indistinguishability obfuscator due to Bitansky, Paneth and Wichs (TCC \u2716). Their construction is not domain invariant and our result shows that this, somewhat undesirable property, is unavoidable using the common techniques. In fact, we observe that constructions which are not domain invariant circumvent all known negative results for constructing one-way permutations based on one-way functions, starting with Rudich\u27s seminal work (PhD thesis \u2788). We revisit this classic and fundamental problem, and resolve this somewhat surprising gap by ruling out all such black-box constructions -- even those that are not domain invariant

    Gradecast in Synchrony and Reliable Broadcast in Asynchrony with Optimal Resilience, Efficiency, and Unconditional Security

    Get PDF
    We revisit Gradecast (Feldman and Micali, STOC\u2788) in Synchrony and Reliable Broadcast (Bracha, Information and Computation\u2787) in Asynchrony. For both tasks ,we provide new protocols that have three desirable properties: (1) \emph{optimal resilience}, tolerating t<n/3t<n/3 malicious parties; (2) are \emph{communication-efficient}, where honest parties send just O(nL)O(n L) bits for a sender with a message of L=Ω(nlogn)L = \Omega(n \log n) bits; (3) and are \emph{unconditionally secure}, without needing to rely on any computational or setup assumptions (while having a statistical error probability). To the best of our knowledge, no previous work obtains all three properties simultaneously

    A Full Proof of the BGW Protocol for Perfectly-Secure Multiparty Computation

    Get PDF
    In the setting of secure multiparty computation, a set of nn parties with private inputs wish to jointly compute some functionality of their inputs. One of the most fundamental results of secure computation was presented by Ben-Or, Goldwasser and Wigderson (BGW) in 1988. They demonstrated that any nn-party functionality can be computed with \emph{perfect security}, in the private channels model. When the adversary is semi-honest this holds as long as t<n/2t<n/2 parties are corrupted, and when the adversary is malicious this holds as long as t<n/3t<n/3 parties are corrupted. Unfortunately, a full proof of these results was never published. In this paper, we remedy this situation and provide a full proof of security of the BGW protocol. This includes a full description of the protocol for the malicious setting, including the construction of a new subprotocol for the perfect multiplication protocol that seems necessary for the case of n/4t<n/3n/4\leq t<n/3

    Tight Tradeoffs in Searchable Symmetric Encryption

    Get PDF
    A searchable symmetric encryption (SSE) scheme enables a client to store data on an untrusted server while supporting keyword searches in a secure manner. Recent experiments have indicated that the practical relevance of such schemes heavily relies on the tradeoff between their space overhead, locality (the number of non-contiguous memory locations that the server accesses with each query), and read efficiency (the ratio between the number of bits the server reads with each query and the actual size of the answer). These experiments motivated Cash and Tessaro (EUROCRYPT \u2714) and Asharov et al. (STOC \u2716) to construct SSE schemes offering various such tradeoffs, and to prove lower bounds for natural SSE frameworks. Unfortunately, the best-possible tradeoff has not been identified, and there are substantial gaps between the existing schemes and lower bounds, indicating that a better understanding of SSE is needed. We establish tight bounds on the tradeoff between the space overhead, locality and read efficiency of SSE schemes within two general frameworks that capture the memory access pattern underlying all existing schemes. First, we introduce the ``pad-and-split\u27\u27 framework, refining that of Cash and Tessaro while still capturing the same existing schemes. Within our framework we significantly strengthen their lower bound, proving that any scheme with locality LL must use space Ω(NlogN/logL)\Omega ( N \log N / \log L ) for databases of size NN. This is a tight lower bound, matching the tradeoff provided by the scheme of Demertzis and Papamanthou (SIGMOD \u2717) which is captured by our pad-and-split framework. Then, within the ``statistical-independence\u27\u27 framework of Asharov et al. we show that their lower bound is essentially tight: We construct a scheme whose tradeoff matches their lower bound within an additive O(logloglogN)O(\log \log \log N) factor in its read efficiency, once again improving upon the existing schemes. Our scheme offers optimal space and locality, and nearly-optimal read efficiency that depends on the frequency of the queried keywords: For a keyword that is associated with n=N1ϵ(n)n = N^{1 - \epsilon(n)} document identifiers, the read efficiency is ω(1)ϵ(n)1+O(logloglogN)\omega(1) \cdot \epsilon(n)^{-1}+ O(\log\log\log N) when retrieving its identifiers (where the ω(1)\omega(1) term may be arbitrarily small, and ω(1)ϵ(n)1\omega(1) \cdot \epsilon(n)^{-1} is the lower bound proved by Asharov et al.). In particular, for any keyword that is associated with at most N11/o(logloglogN)N^{1 - 1/o(\log \log \log N)} document identifiers (i.e., for any keyword that is not exceptionally common), we provide read efficiency O(logloglogN)O(\log \log \log N) when retrieving its identifiers

    Efficient Perfectly Secure Computation with Optimal Resilience

    Get PDF
    Secure computation enables nn mutually distrustful parties to compute a function over their private inputs jointly. In 1988 Ben-Or, Goldwasser, and Wigderson (BGW) demonstrated that any function can be computed with perfect security in the presence of a malicious adversary corrupting at most t<n/3t< n/3 parties. After more than 30 years, protocols with perfect malicious security, with round complexity proportional to the circuit\u27s depth, still require sharing a total of O(n2)O(n^2) values per multiplication. In contrast, only O(n)O(n) values need to be shared per multiplication to achieve semi-honest security. Indeed sharing Ω(n)\Omega(n) values for a single multiplication seems to be the natural barrier for polynomial secret sharing-based multiplication. In this paper, we close this gap by constructing a new secure computation protocol with perfect, optimal resilience and malicious security that incurs sharing of only O(n)O(n) values per multiplication, thus, matching the semi-honest setting for protocols with round complexity that is proportional to the circuit depth. Our protocol requires a constant number of rounds per multiplication. Like BGW, it has an overall round complexity that is proportional only to the multiplicative depth of the circuit. Our improvement is obtained by a novel construction for {\em weak VSS for polynomials of degree-2t2t}, which incurs the same communication and round complexities as the state-of-the-art constructions for {\em VSS for polynomials of degree-tt}. Our second contribution is a method for reducing the communication complexity for any depth-1 sub-circuit to be proportional only to the size of the input and output (rather than the size of the circuit). This implies protocols with \emph{sublinear communication complexity} (in the size of the circuit) for perfectly secure computation for important functions like matrix multiplication

    FutORAMa: A Concretely Efficient Hierarchical Oblivious RAM

    Get PDF
    Oblivious RAM (ORAM) is a general-purpose technique for hiding memory access patterns. This is a fundamental task underlying many secure computation applications. While known ORAM schemes provide optimal asymptotic complexity, despite extensive efforts, their concrete costs remain prohibitively expensive for many interesting applications. The current state-of-the-art practical ORAM schemes are suitable only for somewhat small memories (Square-Root ORAM or Path ORAM). This work presents a novel concretely efficient ORAM construction based on recent breakthroughs in asymptotic complexity of ORAM schemes (PanORAMa and OptORAMa). We bring these constructions to the realm of practically useful schemes by relaxing the restriction on constant local memory size. Our design provides a factor of at least 66 to 88 improvement over an implementation of the original Path ORAM for a set of reasonable memory sizes (e.g., 1GB, 1TB) and with the same local memory size. To our knowledge, this is the first practical implementation of an ORAM based on the full hierarchical ORAM framework. Prior to our work, the belief was that hierarchical ORAM-based constructions were inherently too expensive in practice. We implement our design and provide extensive evaluation and experimental results

    Secure Two-Party Computation with Fairness -- A Necessary Design Principle

    Get PDF
    Protocols for secure two-party computation enable a pair of mutually distrustful parties to carry out a joint computation of their private inputs without revealing anything but the output. One important security property that has been considered is that of fairness which guarantees that if one party learns the output then so does the other. In the case of two-party computation, fairness is not always possible, and in particular two parties cannot fairly toss a coin (Cleve, 1986). Despite this, it is actually possible to securely compute many two-party functions with fairness (Gordon et al., 2008 and follow-up work). However, all two-party protocols known that achieve fairness have the unique property that the effective input of the corrupted party is determined at an arbitrary point in the protocol. This is in stark contrast to almost all other known protocols that have an explicit fixed round at which the inputs are committed. In this paper, we ask whether or not the property of not having an input committal round is inherent for achieving fairness for two parties. In order to do so, we revisit the definition of security of Micali and Rogaway (Technical report, 1992), that explicitly requires the existence of such a committal round. We adapt the definition of Canetti in the two-party setting to incorporate the spirit of a committal round, and show that under such a definition, it is impossible to achieve fairness for any non-constant two-party function. This result deepens our understanding as to the type of protocol construction that is needed for achieving fairness. In addition, our result discovers a fundamental difference between the definition of security of Micali and Rogaway and that of Canetti (Journal of Cryptology, 2000) which has become the standard today. Specifically, many functions can be securely computed with fairness under the definition of Canetti but no non-constant function can be securely computed with fairness under the definition of Micali and Rogaway

    Insured MPC: Efficient Secure Computation with Financial Penalties

    Get PDF
    Fairness in Secure Multiparty Computation (MPC) is known to be impossible to achieve in the presence of a dishonest majority. Previous works have proposed combining MPC protocols with Cryptocurrencies in order to financially punish aborting adversaries, providing an incentive for parties to honestly follow the protocol. This approach also yields privacy-preserving Smart Contracts, where private inputs can be processed with MPC in order to determine the distribution of funds given to the contract. The focus of existing work is on proving that this approach is possible and unfortunately they present monolithic and mostly inefficient constructions. In this work, we put forth the first modular construction of ``Insured MPC\u27\u27, where either the output of the private computation (which describes how to distribute funds) is fairly delivered or a proof that a set of parties has misbehaved is produced, allowing for financial punishments. Moreover, both the output and the proof of cheating are publicly verifiable, allowing third parties to independently validate an execution. We present a highly efficient compiler that uses any MPC protocol with certain properties together with a standard (non-private) Smart Contract and a publicly verifiable homomorphic commitment scheme to implement Insured MPC. As an intermediate step, we propose the first construction of a publicly verifiable homomorphic commitment scheme achieving composability guarantees and concrete efficiency. Our results are proven in the Global Universal Composability framework using a Global Random Oracle as the setup assumption. From a theoretical perspective, our general results provide the first characterization of sufficient properties that MPC protocols must achieve in order to be efficiently combined with Cryptocurrencies, as well as insights into publicly verifiable protocols. On the other hand, our constructions have highly efficient concrete instantiations, allowing for fast implementations

    Perfectly Secure Asynchronous Agreement on a Core Set in Constant Expected Time

    Get PDF
    A major challenge of any asynchronous MPC protocol is the need to reach agreement on the set of private inputs to be used as input for the MPC functionality. Ben-Or, Canetti and Goldreich [STOC 93] call this problem Agreement on a Core Set (ACS) and solve it by running nn parallel instances of asynchronous binary Byzantine agreements. To the best of our knowledge, all results in the perfect and statistical security setting used this same paradigm for solving ACS. This leads to a fundamental barrier of expected Ω(logn)\Omega(\log n) rounds for any asynchronous MPC protocol (even for constant depth circuits). We provide a new solution for Agreement on a Core Set that runs in expected O(1)O(1) rounds, is perfectly secure, and resilient to t<n4t<\frac{n}{4} corruptions. Our solution is based on a new notion of Asynchronously Validated Asynchronous Byzantine Agreement (AVABA) and new information theoretic analogs to techniques used in the authenticated model. We show a similar result with statistical security for t<n3t<\frac{n}{3}

    Detect, Pack and Batch: Perfectly-Secure MPC with Linear Communication and Constant Expected Time

    Get PDF
    We prove that perfectly-secure optimally-resilient secure Multi-Party Computation (MPC) for a circuit with CC gates and depth DD can be obtained in O((Cn+n4+Dn2)logn)O((Cn+n^4 + Dn^2)\log n) communication complexity and O(D)O(D) expected time. For DnD \ll n and Cn3C\geq n^3, this is the first perfectly-secure optimal-resilient MPC protocol with linear communication complexity per gate and constant expected time complexity per layer. Compared to state-of-the-art MPC protocols in the player elimination framework [Beerliova and Hirt TCC\u2708, and Goyal, Liu, and Song CRYPTO\u2719], for C>n3C>n^3 and DnD \ll n, our results significantly improve the run time from Ω(n+D)\Omega(n+D) to expected O(D)O(D) while keeping communication complexity at O(Cnlogn)O(Cn\log n). Compared to state-of-the-art MPC protocols that obtain an expected O(D)O(D) time complexity [Abraham, Asharov, and Yanai TCC\u2721], for C>n3C>n^3, our results significantly improve the communication complexity from O(Cn4logn)O(Cn^4\log n) to O(Cnlogn)O(Cn\log n) while keeping the expected run time at O(D)O(D). One salient part of our technical contribution is centered around a new primitive we call detectable secret sharing . It is perfectly-hiding, weakly-binding, and has the property that either reconstruction succeeds or O(n)O(n) parties are (privately) detected. On the one hand, we show that detectable secret sharing is sufficiently powerful to generate multiplication triplets needed for MPC. On the other hand, we show how to share pp secrets via detectable secret sharing with communication complexity of just O(n4logn+plogn)O(n^4\log n+p \log n). When sharing pn4p\geq n^4 secrets, the communication cost is amortized to just O(1)O(1) field elements per secret. Our second technical contribution is a new Verifiable Secret Sharing protocol that can share pp secrets at just O(n4logn+pnlogn)O(n^4\log n+pn\log n) word complexity. When sharing pn3p\geq n^3 secrets, the communication cost is amortized to just O(n)O(n) filed elements per secret. The best prior required Ω(n3)\Omega(n^3) communication per secret
    corecore