Hybrid argument (cryptography)

In cryptography, the hybrid argument is a proof technique used to show that two distributions are computationally indistinguishable.

History

Hybrid arguments had their origin in a papers by Andrew Yao in 1982 and Shafi Goldwasser and Silvio Micali in 1983.[1]

Formal description

Formally, to show two distributions D1 and D2 are computationally indistinguishable, we can define a sequence of hybrid distributions D1 := H0, H1, ..., Ht =: D2 where t is polynomial in the security parameter n. Define the advantage of any probabilistic efficient (polynomial-bounded time) algorithm A as

A d v H i , H i + 1 d i s t ( A ) := | Pr [ x $ H i : A ( x ) = 1 ] Pr [ x $ H i + 1 : A ( x ) = 1 ] | , {\displaystyle {\mathsf {Adv}}_{H_{i},H_{i+1}}^{\mathsf {dist}}(\mathbf {A} ):=\left|\Pr[x{\stackrel {\$}{\gets }}H_{i}:\mathbf {A} (x)=1]-\Pr[x{\stackrel {\$}{\gets }}H_{i+1}:\mathbf {A} (x)=1]\right|,}

where the dollar symbol ($) denotes that we sample an element from the distribution at random.

By triangle inequality, it is clear that for any probabilistic polynomial time algorithm A,

A d v D 1 , D 2 d i s t ( A ) i = 0 t 1 A d v H i , H i + 1 d i s t ( A ) . {\displaystyle {\mathsf {Adv}}_{D_{1},D_{2}}^{\mathsf {dist}}(\mathbf {A} )\leq \sum _{i=0}^{t-1}{\mathsf {Adv}}_{H_{i},H_{i+1}}^{\mathsf {dist}}(\mathbf {A} ).}

Thus there must exist some k s.t. 0 ≤ k < t(n) and

A d v H k , H k + 1 d i s t ( A ) A d v D 1 , D 2 d i s t ( A ) / t ( n ) . {\displaystyle {\mathsf {Adv}}_{H_{k},H_{k+1}}^{\mathsf {dist}}(\mathbf {A} )\geq {\mathsf {Adv}}_{D_{1},D_{2}}^{\mathsf {dist}}(\mathbf {A} )/t(n).}

Since t is polynomial-bounded, for any such algorithm A, if we can show that it has a negligible advantage function between distributions Hi and Hi+1 for every i, that is,

ϵ ( n ) A d v H k , H k + 1 d i s t ( A ) A d v D 1 , D 2 d i s t ( A ) / t ( n ) , {\displaystyle \epsilon (n)\geq {\mathsf {Adv}}_{H_{k},H_{k+1}}^{\mathsf {dist}}(\mathbf {A} )\geq {\mathsf {Adv}}_{D_{1},D_{2}}^{\mathsf {dist}}(\mathbf {A} )/t(n),}

then it immediately follows that its advantage to distinguish the distributions D1 = H0 and D2 = Ht must also be negligible. This fact gives rise to the hybrid argument: it suffices to find such a sequence of hybrid distributions and show each pair of them is computationally indistinguishable.[2]

Applications

The hybrid argument is extensively used in cryptography. Some simple proofs using hybrid arguments are:

  • If one cannot efficiently predict the next bit of the output of some number generator, then this generator is a pseudorandom number generator (PRG).[3]
  • We can securely expand a PRG with 1-bit output into a PRG with n-bit output.[4]

See also

  • Interactive proof system
  • Universal composability

Notes

  1. ^ Bellare, Mihir, and Phillip Rogaway. "Code-based game-playing proofs and the security of triple encryption." Cryptology ePrint Archive (2004)
  2. ^ Lemma 3 in Dodis's notes.
  3. ^ Theorem 1 in Dodis's notes.
  4. ^ Lemma 80.5, Corollary 81.7 in Pass's notes.

References

  • Dodis, Yevgeniy. "Introduction to Cryptography Lecture 5 notes" (PDF). Archived from the original (PDF) on 2014-12-25.
  • Pass, Rafael. "A Course in Cryptography" (PDF).
  • Fischlin, Marc; Mittelbach, Arno. "An Overview of the Hybrid Argument" (PDF).