34 research outputs found
Privately Constraining and Programming PRFs, the LWE Way
*Constrained* pseudorandom functions allow for delegating
``constrained\u27\u27 secret keys that let one compute the function at
certain authorized inputs---as specified by a constraining
predicate---while keeping the function value at unauthorized inputs
pseudorandom. In the *constraint-hiding* variant, the
constrained key hides the predicate. On top of this,
*programmable* variants allow the delegator to explicitly set the
output values yielded by the delegated key for a particular set of
unauthorized inputs.
Recent years have seen rapid progress on applications and
constructions of these objects for progressively richer constraint
classes, resulting most recently in constraint-hiding constrained PRFs
for arbitrary polynomial-time constraints from Learning With
Errors~(LWE) [Brakerski, Tsabary, Vaikuntanathan, and Wee, TCC\u2717],
and privately programmable PRFs from indistinguishability obfuscation
(iO) [Boneh, Lewi, and Wu, PKC\u2717].
In this work we give a unified approach for constructing both of the
above kinds of PRFs from LWE with subexponential
approximation factors. Our constructions
follow straightforwardly from a new notion we call a
*shift-hiding shiftable function*, which allows for deriving a
key for the sum of the original function and any desired hidden
shift function. In particular, we obtain the first privately
programmable PRFs from non-iO assumptions
Hiding secrets in public random functions
Constructing advanced cryptographic applications often requires the ability of privately embedding messages or functions in the code of a program. As an example, consider the task of building a searchable encryption scheme, which allows the users to search over the encrypted data and learn nothing other than the search result. Such a task is achievable if it is possible to embed the secret key of an encryption scheme into the code of a program that performs the "decrypt-then-search" functionality, and guarantee that the code hides everything except its functionality.
This thesis studies two cryptographic primitives that facilitate the capability of hiding secrets in the program of random functions.
1. We first study the notion of a private constrained pseudorandom function (PCPRF). A PCPRF allows the PRF master secret key holder to derive a public constrained key that changes the functionality of the original key without revealing the constraint description. Such a notion closely captures the goal of privately embedding functions in the code of a random function.
Our main contribution is in constructing single-key secure PCPRFs for NC^1 circuit constraints based on the learning with errors assumption. Single-key secure PCPRFs were known to support a wide range of cryptographic applications, such as private-key deniable encryption and watermarking. In addition, we build reusable garbled circuits from PCPRFs.
2. We then study how to construct cryptographic hash functions that satisfy strong random oracle-like properties. In particular, we focus on the notion of correlation intractability, which requires that given the description of a function, it should be hard to find an input-output pair that satisfies any sparse relations.
Correlation intractability captures the security properties required for, e.g., the soundness of the Fiat-Shamir heuristic, where the Fiat-Shamir transformation is a practical method of building signature schemes from interactive proof protocols. However, correlation intractability was shown to be impossible to achieve for certain length parameters, and was widely considered to be unobtainable.
Our contribution is in building correlation intractable functions from various cryptographic assumptions. The security analyses of the constructions use the techniques of secretly embedding constraints in the code of random functions
Correlation-Intractable Hash Functions via Shift-Hiding
A hash function family is correlation intractable for a -input relation if, given a random function chosen from , it is hard to find such that is true. Among other applications, such hash functions are a crucial tool for instantiating the Fiat-Shamir heuristic in the plain model, including the only known NIZK for NP based on the learning with errors (LWE) problem (Peikert and Shiehian, CRYPTO 2019).
We give a conceptually simple and generic construction of single-input CI hash functions from shift-hiding shiftable functions (Peikert and Shiehian, PKC 2018) satisfying an additional one-wayness property. This results in a clean abstract framework for instantiating CI, and also shows that a previously existing function family (PKC 2018) was already CI under the LWE assumption.
In addition, our framework transparently generalizes to other settings, yielding new results:
- We show how to instantiate certain forms of multi-input CI under the LWE assumption. Prior constructions either relied on a very strong ``brute-force-is-best\u27\u27 type of hardness assumption (Holmgren and Lombardi, FOCS 2018) or were restricted to ``output-only\u27\u27 relations (Zhandry, CRYPTO 2016).
- We construct single-input CI hash functions from indistinguishability obfuscation (iO) and one-way permutations. Prior constructions relied essentially on variants of fully homomorphic encryption that are impossible to construct from such primitives. This result also generalizes to more expressive variants of multi-input CI under iO and additional standard assumptions
Constraint-hiding Constrained PRFs for NC1 from LWE
Constraint-hiding constrained PRFs (CHCPRFs), initially studied by Boneh, Lewi, and Wu [PKC 2017], are constrained PRFs where the constrained key hides the description of the constraint. Envisioned with powerful applications such as searchable encryption, private-detectable watermarking, and symmetric deniable encryption, the only known candidates of CHCPRFs are based on indistinguishability obfuscation or multilinear maps with strong security properties.
In this paper, we construct CHCPRFs for all NC1 circuits from the Learning with Errors assumption. The construction draws heavily from the graph-induced multilinear maps by Gentry, Gorbunov, and Halevi [TCC 2015], as well as the existing lattice-based PRFs. Our construction gives an instance of the GGH15 applications with a security reduction from LWE.
We also show how to build from CHCPRFs reusable garbled circuits (RGC), or equivalently private-key function-hiding functional encryptions with 1-key security. This provides a different approach to constructing RGC from that of Goldwasser et al. [STOC 2013]
Privately Constrained Testable Pseudorandom Functions
Privately Constrained Pseudorandom Functions allow a PRF key to be delegated to some
evaluator in a constrained manner, such that the key’s functionality is restricted with
respect to some secret predicate. Variants of Privately Constrained Pseudorandom Func-
tions have been applied to rich applications such as Broadcast Encryption, and Secret-key
Functional Encryption. Recently, this primitive has also been instantiated from standard
assumptions. We extend its functionality to a new tool we call Privately Constrained
Testable Pseudorandom functions.
For any predicate C, the holder of a secret key sk can produce a delegatable key constrained
on C denoted as sk[C]. Evaluations on inputs x produced using the constrained key differ
from unconstrained evaluations with respect to the result of C(x). Given an output y
evaluated using sk[C], the holder of the unconstrained key sk can verify whether the input
x used to produce y satisfied the predicate C. That is, given y, they learn whether C(x) = 1
without needing to evaluate the predicate themselves, and without requiring the original
input x.
We define two inequivalent security models for this new primitive, a stronger indistinguishability-
based definition, and a weaker simulation-based definition. Under the indistinguishability-
based definition, we show the new primitive implies Designated-Verifier Non-Interactive
Zero-Knowledge Arguments for NP in a black-box manner. Under the simulation-based
definition, we construct a provably secure instantiation of the primitive from lattice as-
sumptions. We leave the study of the gap between definitions, and discovering techniques
to reconcile it as future work
Constrained PRFs for Bit-fixing (and More) from OWFs with Adaptive Security and Constant Collusion Resistance
Constrained pseudorandom functions (CPRFs) allow learning constrained PRF keys that can evaluate the PRF on a subset of the input space, or based on some sort of predicate. First introduced by Boneh and Waters [AC\u2713], Kiayias et al. [CCS\u2713] and Boyle et al. [PKC\u2714], they have been shown to be a useful cryptographic primitive with many applications. The full security definition of CPRFs requires the adversary to learn multiple constrained keys in an arbitrary order, a requirement for many of these applications. Unfortunately, existing constructions of CPRFs satisfying this security notion are only known from exceptionally strong cryptographic assumptions, such as indistinguishability obfuscation (IO) and the existence of multilinear maps, even for very weak constraints. CPRFs from more standard assumptions only satisfy selective security for a single constrained key query.
In this work, we give the first construction of a CPRF that can adaptively issue a constant number of constrained keys for bit-fixing predicates (or more generally -conjunctive normal form predicates), only requiring the existence of one-way functions (OWFs). This is a much weaker assumption compared with all previous constructions. In addition, we prove that the new scheme satisfies 1-key privacy (otherwise known as constraint-hiding). This is the only construction for any non-trivial predicates to achieve adaptive security and collusion-resistance outside of the random oracle model or relying on strong cryptographic assumptions. Our technique represents a noted departure from existing CPRF constructions
A Bit-fixing PRF with O(1) Collusion-Resistance from LWE
Constrained pseudorandom functions (CPRFs) allow learning modified PRF keys that can evaluate the PRF on a subset of the input space, or based on some sort of predicate. First introduced by Boneh and Waters [Asiacrypt 2013], they have been shown to be a useful cryptographic primitive with many applications. The full security definition of CPRFs requires the adversary to learn multiple constrained keys, a requirement for all of these applications. Unfortunately, existing constructions of CPRFs satisfying this security notion are only known from exceptionally strong cryptographic assumptions, such as indistinguishability obfuscation and the existence of multilinear maps, even for very weak predicates. CPRFs from more standard assumptions only satisfy security when one key is learnt.
In this work, we give the first construction of a CPRF that can issue a constant number of constrained keys for bit-fixing predicates, from learning with errors (LWE). It also satisfies -key privacy (otherwise known as constraint-hiding).
Finally, our construction achieves fully adaptive security with polynomial security loss; the only construction to achieve such security under a standard assumption.
Our technique represents a noted departure existing for CPRF constructions. We hope that it may lead to future constructions that can expose a greater number of keys, or consider more expressive predicates (such as circuit-based constraints)
Note on Constructing Constrained PRFs from OWFs with Constant Collusion Resistance
Constrained pseudorandom functions (CPRFs) are a type of PRFs that allows one to derive a constrained key from the master key . While the master key allows one to evaluate on any input as a standard PRF, the constrained key only allows one to evaluate on inputs such that .
Since the introduction of CPRFs by Boneh and Waters (ASIACRYPT\u2713), Kiayias et al. (CCS\u2713), and Boyle et al. (PKC\u2714), there have been various constructions of CPRFs.
However, thus far, almost all constructions (from standard assumptions and non-trivial constraints) are only proven to be secure if at most one constrained key is known to the adversary, excluding the very recent work of Davidson and Nishimaki (EPRINT\u2718).
Considering the interesting applications of CPRFs such as ID-based non-interactive key exchange, we desire CPRFs that are collusion resistance with respect to the constrained keys.
In this work, we make progress in this direction and construct a CPRF for the bit-fixing predicates that are collusion resistance for a constant number of constrained keys.
Surprisingly, compared to the heavy machinery that was used by previous CPRF constructions, our construction only relies on the existence of one-way functions
Efficient Pre-processing PIR Without Public-Key Cryptography
Classically, Private Information Retrieval (PIR) was studied in a setting without any pre-processing. In this setting, it is well-known that 1) public-key cryptography is necessary to achieve
non-trivial (i.e., sublinear) communication efficiency in the single-server setting, and 2) the total server computation
per query must be linear in the size of the database, no matter in the single-server or multi-server setting. Recent works have shown that both of these barriers can be overcome if we are willing to introduce a pre-processing phase. In particular, a recent work called Piano showed that using only one-way functions, one can construct a single-server preprocessing PIR with bandwidth and computation per query,
assuming client storage. For the two-server setting, the state-of-the-art is defined by two incomparable results. First, Piano immediately implies a scheme in the two-server setting with the same performance bounds as stated above. Moreover, Beimel et al. showed a two-server scheme with bandwidth and computation per query, and one with cost both in bandwidth and computation -- both schemes provide information theoretic security.
In this paper, we show that assuming the existence of one-way functions, we can construct a two-server preprocessing PIR scheme with bandwidth and computation per query, while requiring only client storage. We also construct a new single-server preprocessing PIR scheme with online bandwidth and offline bandwidth and computation per query, also requiring client storage. Specifically, the online bandwidth is the bandwidth required for the client to obtain an answer, and the offline bandwidth can be viewed as background maintenance work amortized to each query. Our new constructions not only advance the theoretical understanding of preprocessing PIR, but are also concretely efficient because the only cryptography needed is pseudorandom functions
Piano: Extremely Simple, Single-Server PIR with Sublinear Server Computation
We construct a sublinear-time single-server pre-processing Private Information Retrieval
(PIR) scheme with optimal client storage and server computation (up to poly-logarithmic factors), only relying on the assumption of the existence of One Way Functions (OWF). Our scheme achieves amortized online server computation and client computation and
online communication per query, and requires client storage. Unlike prior single-server PIR schemes that rely on heavy cryptographic machinery such as Homomorphic Encryption, our scheme only utilizes lightweight cryptography such as PRFs, which is easily instantiated in practice. To our knowledge, this is the first practical implementation of a single-server sublinear-time PIR scheme.
Compared to existing linear time single-server solutions, our schemes are faster by and are comparable to the fastest two-server schemes. In particular, for a 100GB database of 1.6 billion entries, our experiments show that our scheme has less than 40ms online computation time on a single core