Fixed-first-coordinate DDH rerandomization and Multi-DDH #
Fixed-first-coordinate rerandomization preserves the real DDH law and sends any non-DDH triple
to the ideal pair law. Independent coordinate rerandomization gives the single-shared-secret
case of Multi-DDH (I), with the exact exceptional-point loss 1 / q.
This is shared distributional support, not an efficient lazy-sampling reduction. The tuple wrapper samples every coordinate of its finite index type. Extracted from the reviewed Naor–Reingold source in PR #1103, authored by worker-jetski-cf53d356 (Gemini), with its mathematics unchanged.
Main results #
Cslib.Crypto.PrimeOrderGroupFamily.ddhFixedURerandomizeLaw_real: real fixed-coordinate law.Cslib.Crypto.PrimeOrderGroupFamily.ddhFixedURerandomizeLaw_ideal: non-DDH fixed-coordinate law.Cslib.Crypto.PrimeOrderGroupFamily.advantage_multiDDH_le: Multi-DDH loss for one shared secret.
References #
- [BS23], Section 10.11, Exercises 10.8 and 10.11.
Fixed-$u$ DDH random self-reduction and Multi-DDH (I) (Exercises 10.8 & 10.11) #
Fixed-$u$ DDH rerandomization ([BS23], Section 10.11, Exercise 10.8, p. 425):
given (u, v, w) and exponents σ, τ : ZMod (F.order d), output
(v*, w*) = (σ • g + τ • v, σ • u + τ • w).
Instances For
Algebraic action of ddhFixedURerandomize on multiples of the generator:
v* = (σ + τ * β) • g and w* = (α * (σ + τ * β) + τ * (γ - α * β)) • g.
ddhFixedUWordRerandomize computes the encoded output of ddhFixedURerandomize.
ddhFixedUWordRerandomize is computable in polynomial time.
The distribution of (v*, w*) obtained by drawing σ, τ : ZMod (F.order d) independently and
uniformly in ddhFixedURerandomize ([BS23], Exercise 10.8, p. 425).
Instances For
The real DDH pair distribution (β • g, (α * β) • g) for a fixed first exponent α.
Instances For
The ideal pair distribution (β • g, γ • g) on F.Carrier d × F.Carrier d.
Instances For
Boneh–Shoup Exercise 10.8(a): if (u, v, w) = (α • g, β • g, (α * β) • g) is a DDH triple,
then ddhFixedURerandomizeLaw produces ddhFixedURealLaw d α for every α, β.
Boneh–Shoup Exercise 10.8(b): if (u, v, w) = (α • g, β • g, γ • g) is a non-DDH triple
(γ ≠ α * β), then ddhFixedURerandomizeLaw produces ddhFixedUIdealLaw d.
The Multi-DDH (I) real tuple family i ↦ (B i • g, (α * B i) • g) for a fixed α and an
index type ι ([BS23], Section 10.11, Exercise 10.11, p. 426).
Instances For
The Multi-DDH (I) ideal tuple family i ↦ (B₀ i • g, B₁ i • g) for an index type ι
([BS23], Section 10.11, Exercise 10.11, p. 426).
Instances For
Multi-DDH (I) rerandomization ([BS23], Exercise 10.11, p. 426): given a single
candidate DDH triple (u, v, w), draw independent (σ i, τ i) ← ZMod q × ZMod q for each i : ι
and output i ↦ ddhFixedURerandomize d u v w (σ i) (τ i).
Instances For
On any real DDH triple (α • g, β • g, (α * β) • g), multiDDHRerandomizeLaw produces
multiDDHRealTupleLaw d ι α ([BS23], Exercise 10.11).
On any non-DDH triple (α • g, β • g, γ • g) with γ ≠ α * β, multiDDHRerandomizeLaw
produces multiDDHIdealTupleLaw d ι ([BS23], Exercise 10.11).
Boneh–Shoup Exercise 10.11 ($n = 1$ Multi-DDH (I), p. 426): for a single shared secret α,
any finite index type ι (|ι| pairs), and any test
test : F.Carrier d → (ι → F.Carrier d × F.Carrier d) → PMF Bool, the advantage between
(α • g, multiDDHRealTupleLaw d ι α) and (α • g, multiDDHIdealTupleLaw d ι) is at most the DDH
advantage of the rerandomizing wrapper multiDDHRerandomizeLaw (which samples |ι| pairs) plus
(F.order d)⁻¹.