Fuzzy identity-based encryption
Fuzzy identity-based encryption (Fuzzy IBE) is an extension of IBE in which identities are represented as sets of descriptive attributes drawn from a universe . A key for attribute set can decrypt a ciphertext encrypted under attribute set if and only if the two sets overlap by at least attributes: . This threshold-based partial matching makes Fuzzy IBE suitable for biometric identities, where noise prevents exact matching. Sahai and Waters (2005) introduced Fuzzy IBE as the conceptual precursor to attribute-based encryption.
Syntax
A Fuzzy IBE scheme is a tuple of efficient algorithms with respect to attribute universe , threshold , message space , and ciphertext space :
- is a randomized algorithm that outputs public parameters and master secret key ,
- is a (possibly randomized) algorithm that takes and an attribute set , outputting a secret key ,
- is a randomized algorithm that takes , an attribute set used as the encryption identity, and , outputting ,
- is a deterministic algorithm that takes and , outputting or .
Decryption succeeds if and only if .
Properties
Correctness
A Fuzzy IBE scheme is -correct if for all , attribute sets with , and ,
over and randomness of and .
IND-FIBE-CPA Security
The adversary queries the key generation oracle for attribute sets of its choice. Admissibility requires that no queried set has , since such a key would decrypt the challenge ciphertext.
\begin{algorithm}
\algname{Game}
\caption{$\Game^{\mathrm{fibe\text{-}cpa}}_{\mathsf{FIBE},\calA}(\secpar)$}
\begin{algorithmic}
\State $(\pp, \msk) \gets \Setup(1^\secpar, \calU, t)$; $b \getsr \bits$
\State $\calO_{\mathrm{key}}(\omega) := \KeyGen(\msk, \omega)$
\State $(\omega^*, m_0, m_1, \stA) \gets \calA^{\calO_{\mathrm{key}}}(1^\secpar, \pp)$
\Comment{$\calA$ may not have queried $\calO_{\mathrm{key}}(\omega)$ for $|\omega \cap \omega^*| \ge t$}
\State $c^* \gets \Enc(\pp, \omega^*, m_b)$
\State $b' \gets \calA^{\calO_{\mathrm{key}}}(c^*, \stA)$
\Comment{$\calA$ may not query $\calO_{\mathrm{key}}(\omega)$ for $|\omega \cap \omega^*| \ge t$}
\Return $[b' = b]$
\end{algorithmic}
\end{algorithm}
A Fuzzy IBE scheme is IND-FIBE-CPA-secure if for all efficient admissible ,
is negligible.
IND-sFIBE-CPA Security (Selective)
In the selective variant, the adversary commits to before runs.
Variations
Small-universe vs. large-universe
In small-universe Fuzzy IBE, the attribute universe is fixed and encoded into at time. In large-universe variants, attributes can be arbitrary strings drawn lazily, typically at the cost of larger parameters.