Hierarchical identity-based encryption

A hierarchical identity-based encryption (HIBE) scheme extends IBE by organizing identities into a tree: an entity at depth holds an identity vector where is the root domain and each subsequent component refines the identity. Any node can delegate a decryption key to any of its children without involvement of the root KGC. HIBE models real-world key delegation in organizations and DNS-style identity hierarchies.

Syntax

An HIBE scheme is a tuple of efficient algorithms with respect to maximum depth , alphabet , message space , and ciphertext space . Identity vectors are tuples :

  • is a randomized algorithm that outputs public parameters (including the depth bound ) and master secret key ,
  • is a (possibly randomized) algorithm that takes and an identity vector of any depth, outputting a secret key ,
  • is a (possibly randomized) algorithm that takes a key for and a child identity component , outputting a key for the extended identity ,
  • is a randomized algorithm that takes , an identity vector , and , outputting ,
  • is a deterministic algorithm that takes a secret key and ciphertext, outputting or .

Correctness requires that a ciphertext encrypted for can be decrypted by for any , and also by any key derived from via . Note: keys derived via are typically less efficient (larger) than those from ; in many constructions key size grows by group elements per delegation level.

Properties

Correctness

An HIBE scheme is -correct if for all , , and ,

over and the randomness of and ; and similarly for any key obtained by a sequence of calls from a root-extracted key.

IND-HIBE-CPA Security

The adaptive IND-HIBE-CPA game is similar to IBE but with a stronger admissibility constraint: since any key for a prefix () can be used to delegate down to , the adversary may not extract any ancestor (prefix) of the challenge identity, including itself.

\begin{algorithm}
\algname{Game}
\caption{$\Game^{\mathrm{hibe\text{-}cpa}}_{\HIBE,\calA}(\secpar)$}
\begin{algorithmic}
\State $(\pp, \msk) \gets \Setup(1^\secpar, d)$; $b \getsr \bits$
\State $\calO_{\mathrm{ext}}(\vec{\mathit{id}}) := \Extract(\msk, \vec{\mathit{id}})$
\State $(\vec{\mathit{id}}^*, m_0, m_1, \stA) \gets \calA^{\calO_{\mathrm{ext}}}(1^\secpar, \pp)$
\Comment{$\calA$ may not query $\calO_{\mathrm{ext}}(\vec{\mathit{id}})$ for $\vec{\mathit{id}}$ a prefix of $\vec{\mathit{id}}^*$}
\State $c^* \gets \Enc(\pp, \vec{\mathit{id}}^*, m_b)$
\State $b' \gets \calA^{\calO_{\mathrm{ext}}}(c^*, \stA)$
\Comment{$\calA$ may not query $\calO_{\mathrm{ext}}(\vec{\mathit{id}})$ for $\vec{\mathit{id}}$ a prefix of $\vec{\mathit{id}}^*$}
\Return $[b' = b]$
\end{algorithmic}
\end{algorithm}

An HIBE scheme is IND-HIBE-CPA-secure if for all efficient admissible ,

is negligible. The prefix constraint is necessary because is publicly computable from an ancestor key.

IND-sHIBE-CPA Security (Selective)

In the selective variant, the adversary commits to the challenge identity before runs. The selective–adaptive separation is known to be strict for HIBE: there is no black-box complexity-leveraging argument that avoids an exponential loss in the depth .

Variations

Anonymous HIBE

An anonymous HIBE additionally hides the recipient identity from the ciphertext, so an eavesdropper learns neither the payload nor the intended recipient.

Other results

  • HIBE strictly generalizes IBE: depth-1 hierarchies reduce to IBE (ignoring the algorithm)
  • HIBE is subsumed by KP-ABE: a tree access policy can encode hierarchical delegation, but KP-ABE does not natively expose a interface for producing fresh delegated keys
  • BBG05 achieves ciphertext size and key size — BBG05
  • The first adaptive HIBE in the standard model under simple assumptions uses dual system encryption — Wat09