4.12 Practical Product Proof from Lattice Commitments

Polynomial Ring Elements Don’t Split Into Many Factors.

One contribution of [ALS20], building on [LS18], is the observation that polynomial ring elements cannot split into many factors for a short invertible challenge set. More specifically, consider the particular setting of a power-of-two ring from theorem 4.10.1 and theorem 4.10.6.

Lemma 4.12.1 (Power-of-two Subgroup Order [LS18]).

Let 4≤k≤n be both power of two, and a≡1+kmod2⁢k, then 𝗈𝗋𝖽n⁢(a)=n/k, namely the cyclic subgroup ⟨a⟩⊂ℤn∗ generated by a has order n/k.

Proof.

The k=n case is trivial, as a≡1+nmod2⁢n. Henceforth assume k<n.

Since a≡1+kmod2⁢k, we write a=1+a1⁢k where a1 is odd. As a result,

a2=1+2⁢k⁢a1+k2⁢a12=1+(2⁢k)⁢a1⁢(1+k⁢a1/2)=1+(2⁢k)⁢a2,

Since k≥4 is a power of two, 1+k⁢a1/2 is odd, and hence so is a2. By a2≡1+2⁢kmod4⁢k, we have

an/k≡1+nmod2⁢n,

and moreover, an/(2⁢k)≡1+n/2modn. Therefore, ⟨a⟩⊂ℤn∗ has order n/k. ∎

Then theorem 4.10.1 can be updated as follows.

Corollary 4.12.2.

Let m=2⁢d and z=2⁢ℓ both be powers of two, with 4≤z≤m. If q is prime with q≡1+zmod2⁢z, then for distinct primitive zth roots of unity rj,

Φm⁢(X)=Xd+1≡∏j∈[1,ℓ](Xd/ℓ−rj)modq

and each factor Xd/ℓ−rj is irreducible over ℤq.

We also update theorem 4.10.6 as follows.

Corollary 4.12.3.

Following corollary 4.12.2, any 𝐲∈Rm,q satisfying

0<‖𝐲‖∞<ℓ−1/2⋅q1/ℓ=1s1⁢(z)⁢q1/φ⁢(z)

is invertible in Rm,q.

Proof.

By [ACX21b, LPR13], s1⁢(z)≤τ⁢(z)=ℓ, with equality here. The rest follows from φ⁢(z)=ℓ. ∎

For pairwise difference of distinct challenges being invertible (to reduce binding to the openings to SIS hardness), we need q1/ℓ⋅ℓ−1/2>2, and eventually q>(2⁢ℓ)ℓ. The following table shows that the polynomial ring cannot split into many irreducible factors without making the modulus too large for computational efficiency.

Number of factors ℓ Required modulus q
4 q>28
8 q>220
16 q>248
32 q>2112
64 q>2256
Table 4.12.1: Required modulus size for different numbers of irreducible factors.

This gives rise to the question behind [ALS20]: what if the challenge set is not globally invertible, but the probability that a pairwise difference is noninvertible is low, such as 𝗉𝗈𝗅𝗒⁢(q−1)? The goal is a good challenge set even when the ring splits into a large number of irreducible factors.

Prime Splittings and Automorphisms.

To describe the splitting in corollary 4.12.2 better, we point out that Rq has a group of automorphisms 𝖠𝗎𝗍⁢(Rq) that is isomorphic to ℤ2⁢d∗. We write 𝖠𝗎𝗍⁢(Rq) for the cyclotomic automorphism subgroup consisting of the maps f⁢(X)↦f⁢(Xi) for i∈ℤ2⁢d∗. This group is isomorphic to ℤ2⁢d∗:

i→σi:ℤ2⁢d∗→𝖠𝗎𝗍⁢(Rq),

where

f⁢(X) =∑j∈[0,d−1]aj⁢Xj, (4.13)
σi⁢(f⁢(X)) =∑j∈[0,d−1]aj⁢σi⁢(Xj)=∑j∈[0,d−1]aj⁢Xi⁢j=f⁢(Xi).

The group 𝖠𝗎𝗍⁢(Rq) acts transitively on prime ideals (Xd/ℓ−ξ) in Rq, and every σi factors through field isomorphisms

ℤq⁢[X]/(Xd/ℓ−ξ)≅Rq/(Xd/ℓ−ξ)→ℤq⁢[X]/(Xd/ℓ−ξi−1)≅Rq/(σi⁢(Xd/ℓ−ξ)).

Concretely, by automorphism, we have

σi⁢(⟨Xd/ℓ−ξ⟩)=⟨Xi⁢d/ℓ−ξ⟩=⟨Xd/ℓ−ξi−1⟩

in Rq, then for 𝐟∈Rq,

σi⁢(𝐟mod(Xd/ℓ−ξ))=σi⁢(𝐟)mod(Xd/ℓ−ξi−1).

The multiplicative subgroup ⟨2⁢ℓ+1⟩⊆ℤ2⁢d∗ has order d/ℓ by corollary 4.12.2, and any i∈⟨2⁢ℓ+1⟩ stabilizes the prime ideal (Xd/ℓ−ξ), namely

σi⁢(Xd/ℓ−ξ)=Xd/ℓ−ξ,

as ξ is a primitive 2⁢ℓth root of unity, then i∈⟨2⁢ℓ+1⟩⊂ℤ2⁢d∗ has ξi−1=ξ. The quotient group ℤ2⁢d∗/⟨2⁢ℓ+1⟩≅ℤ2⁢ℓ∗ has order ℓ, and since elements in ⟨2⁢ℓ+1⟩ stabilize the prime ideal, we can index the ℓ prime ideals by

(Xd+1)=∏i∈ℤ2⁢d∗/⟨2⁢ℓ+1⟩(Xd/ℓ−ξi). (4.14)

Moreover, for k∣ℓ with k<ℓ, ⟨2⁢ℓ/k+1⟩⊂ℤ2⁢d∗ has order k⁢d/ℓ, and thus ⟨2⁢ℓ/k+1⟩/⟨2⁢ℓ+1⟩ has order k. Then

(Xk⁢d/ℓ−ξk)=∏i∈⟨2⁢ℓ/k+1⟩/⟨2⁢ℓ+1⟩(Xd/ℓ−ξi), (4.15)

and therefore

(Xd+1)=∏i∈ℤ2⁢d∗/⟨2⁢ℓ/k+1⟩(Xk⁢d/ℓ−ξi⁢k)=∏i∈ℤ2⁢d∗/⟨2⁢ℓ/k+1⟩∏j∈⟨2⁢ℓ/k+1⟩/⟨2⁢ℓ+1⟩(Xd/ℓ−ξi⁢j).

Another way of showing it is, let σ=σ2⁢ℓ/k+1, since {(2⁢ℓ/k+1)imod2⁢d}i∈[0,k−1] gives ⟨2⁢ℓ/k+1⟩/⟨2⁢ℓ+1⟩, then

(Xk⁢d/ℓ−ξk)=∏i∈[0,k−1]σi⁢(Xd/ℓ−ξ). (4.16)

By ℤ2⁢d∗/⟨2⁢ℓ/k+1⟩≅ℤ2⁢ℓ/k∗, then

(Xd+1)=∏i∈ℤ2⁢ℓ/k∗∏j∈[0,k−1]σj⁢(Xd/ℓ−ξi),

where the prime ideals are indexed by ℤ2⁢ℓ/k∗×[0,k−1].

Distribution in the NTT Coefficients.

Consider the distribution for the coefficients in Rq=ℤq⁢[X]/(Xd+1), where each coefficient is over {−1,0,1}, 0 has probability p, and ±1 has probability (1−p)/2 each. Such distribution 𝒞 is the distribution for the challenge set.

Lemma 4.12.4 (Distributional Invariance across NTT Factors [ALS20]).

Let 𝐱←𝒞 where the coefficients are i.i.d. Then 𝐱mod(Xd/ℓ−ξi) is identically distributed as 𝐱mod(Xd/ℓ−ξj) for all i,j∈ℤ2⁢ℓ∗.

Proof.

First, for any automorphism σ∈𝖠𝗎𝗍⁢(Rq), if 𝐱←𝒞, then 𝐱 is identically distributed as σ⁢(𝐱), as the coefficients of σ⁢(𝐱) are also i.i.d. over {−1,0,1} with the same distribution as 𝒞.

Suppose (Xd/ℓ−ξi) is a prime ideal in ℤq⁢[X]/(Xd+1), then as previously discussed,

Rq/(Xd/ℓ−ξi)≅Rq/(Xd/ℓ−ξj)

as ξ has an order 2⁢ℓ, and each NTT component is isomorphic to each other under an automorphism in 𝖠𝗎𝗍⁢(Rq), then

σ⁢(𝐱mod(Xd/ℓ−ξi))=σ⁢(𝐱)mod(Xd/ℓ−ξj)

if σ∈𝖠𝗎𝗍⁢(Rq) induces the isomorphism. Thus, the prime-ideal case for distributional invariance across NTT factors is concluded.

If (Xd/ℓ−ξi) is not irreducible, then neither is (Xd/ℓ−ξj), and both split into the same number of irreducible factors. By the existence of an automorphism inducing an isomorphism from one irreducible factor to the other, we conclude the proof. ∎

Let α=d/ℓ. We reorder the coefficients of 𝐜←𝒞 as follows:

𝐜=c0+cα⁢Xα+⋯+cd−α⁢Xd−αc1⁢X+cα+1⁢Xα+1+⋯+cd−α+1⁢Xd−α+1⋯cα−1⁢Xα−1+c2⁢α−1⁢X2⁢α−1+⋯+cd−1⁢Xd−1.

Hence, the d/ℓ coefficients of 𝐜mod(Xα−ξ) are i.i.d., which can be shown as

𝐜≡[1X⋯Xα−1]⁢[c0+cα⁢ξ+⋯+cd−α⁢ξℓ−1c1+cα+1⁢ξ+⋯+cd−α+1⁢ξℓ−1⋯cα−1+c2⁢α−1⁢ξ+⋯+cd−1⁢ξℓ−1]mod(Xα−ξ), (4.17)

where each row, namely each coefficient of 𝐜mod(Xα−ξ), is represented by the random variable

Y=∑i∈[0,ℓ−1]ξi⁢Xi,

and the Xi are i.i.d. according to the {−1,0,1} distribution. We now present the lemma for the distribution of Y.

Lemma 4.12.5 (Projected Challenge Anti-Concentration [ALS20]).

For all x∈ℤq,

Pr⁡[Y=x]≤1q+1q⁢∑j∈ℤq∗∏k∈[0,ℓ−1]|p+(1−p)⁢cos⁡(2⁢π⁢j⁢ξk/q)|.
Proof.

Let P:ℤq→[0,1] be the probability mass function. It is a convolution of the following distributions:

μk⁢(0)=p,μk⁢(ξk)=μk⁢(−ξk)=(1−p)/2

for k∈[0,ℓ−1], as Y=∑i∈[0,ℓ−1]ξi⁢Xi. Hence, by Fourier analysis,

μ^k⁢(j)=∑γ∈ℤqμk⁢(γ)⁢exp⁡(−2⁢π⁢i⁢j⁢γ/q)=p+(1−p)⁢cos⁡(2⁢π⁢j⁢ξk/q).

By convolution,

P^⁢(j)=∏k∈[0,ℓ−1]μ^k⁢(j)=∏k∈[0,ℓ−1](p+(1−p)⁢cos⁡(2⁢π⁢j⁢ξk/q)).

By inverse Fourier transform,

P⁢(x) =1q⁢∑j∈ℤqP^⁢(j)⁢exp⁡(2⁢π⁢i⁢j⁢x/q)=1q+1q⁢∑j∈ℤq∗P^⁢(j)⁢exp⁡(2⁢π⁢i⁢j⁢x/q)
≤1q+1q⁢∑j∈ℤq∗|P^⁢(j)|=1q+1q⁢∑j∈ℤq∗∏k∈[0,ℓ−1]|p+(1−p)⁢cos⁡(2⁢π⁢j⁢ξk/q)|.

∎

By taking advantage of symmetry, we can reduce the number of terms needed to compute the probability upper bound by a factor of 2⁢ℓ.

Lemma 4.12.6.

For all x∈ℤq,

Pr⁡[Y=x]≤1q+2⁢ℓq⁢∑j∈ℤq∗/⟨ξ⟩∏k∈[0,ℓ−1]|p+(1−p)⁢cos⁡(2⁢π⁢j⁢ξk/q)|. (4.18)
Proof.

Since ⟨ξ⟩⊂ℤq∗ has order 2⁢ℓ, then {1,ξ,…,ξℓ−1}=⟨ξ⟩/±1. Supposing g∈ℤq∗ has order q−1 that generates ℤq∗, and ξ=g(q−1)/(2⁢ℓ), then the cosets of ⟨ξ⟩ can be represented by ℤq∗/⟨ξ⟩={1,…,g(q−1)/(2⁢ℓ)−1}. Hence, multiplying any ξm to {j,j⁢ξ,…,j⁢ξℓ−1} permutes these elements up to sign. Since cosine is even, then P^⁢(j)=P^⁢(j⁢ξm). ∎

Each row can be represented in Horner’s polynomial evaluation form

x0+ξ⁢(x1+ξ⁢(x2+…+ξ⁢(xℓ−2+ξ⁢xℓ−1))),

which can be transformed into a Markov chain: Z0=0, Zi+1=ξ⁢Zi+Xi where Xi follows the {−1,0,1} distribution.

Module-SIS and Module-LWE.

We recall the assumptions underlying the binding and hiding properties of the commitment scheme in [ALS20].

Definition 4.12.7 (𝖬𝖲𝖨𝖲n,m,B).

Let n,m≥1 and 0<B<q. An efficient 𝒜 has advantage ε in solving 𝖬𝖲𝖨𝖲n,m,B if

Pr⁡[0<‖𝐱‾‖2≤B∧𝐀⁢𝐱‾=𝟎‾|𝐀←rRqn×m,𝐱‾←𝒜⁢(𝐀)]≥ε,

where 𝐱‾∈Rqm, the equation is over Rq, and the norm is the coefficient ℓ2-norm of the whole vector, using centered representatives.

Fix a coefficient distribution χ over ℤ. As before, χk⁢d denotes independent sampling of all coefficients in Rk.

Definition 4.12.8 (𝖬𝖫𝖶𝖤n,m,χ).

Let n,m≥1. A PPT algorithm 𝒜 has advantage ε in solving 𝖬𝖫𝖶𝖤n,m,χ if

|Pr⁡[𝒜⁢(𝐀,𝐀⁢𝐬‾+𝐞‾)=1|𝐀←rRqm×n,𝐬‾←χn⁢d,𝐞‾←χm⁢d]−Pr⁡[𝒜⁢(𝐀,𝐮‾)=1|𝐀←rRqm×n,𝐮‾←rRqm]|≥ε.

All samples within each experiment are independent, and the arithmetic is over Rq.

Following [ALS20], we omit m and write 𝖬𝖲𝖨𝖲n,B and 𝖬𝖫𝖶𝖤n,χ. The BDLOP commitment matrix follows, where μ and λ denote the module ranks for MSIS and MLWE, respectively.

For L committed ring elements, put N=μ+λ+L. The block structure used in [BLS19] generalizes to

𝐁=[𝐈μ𝐔𝟎L×μ𝐈L]⁢[𝐈μ𝟎μ×L𝐕𝟎L×μ𝐈L𝐖]=[𝐈μ𝐔𝐕+𝐔𝐖𝟎L×μ𝐈L𝐖]∈Rq(μ+L)×N, (4.19)

where 𝐔←rRqμ×L, 𝐕←rRqμ×λ, and 𝐖←rRqL×λ. The instance in [BLS19] has μ=λ=1 and L=4, and for the instance in [ALS20], the binding and hiding relies on 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β and 𝖬𝖫𝖶𝖤λ,χ.

In [ALS20], the public matrix is sampled uniformly with the same dimensions by 𝐁←rRq(μ+L)×N (for readability). For the hiding property, supposing the first μ+L columns form an invertible 𝐂∈Rq(μ+L)×(μ+L), such that

𝐁=[𝐂𝐃]=𝐂⁢[𝐈μ+L𝐂−1⁢𝐃]=𝐂𝐄,

then multiplying 𝐄 with 𝐫‾←χN⁢d yields a MLWE sample 𝐠‾, and 𝐠‾ multiplying with invertible 𝐂 makes the result computationally indistinguishable to a uniform sample, so as to mask the message 𝐦‾. The formal argument is the knapsack-MLWE duality, see [EZS+19, Appendix C]. The binding is still reduced to 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β in the same reduction.

Another way of seeing is

𝐁′=𝐑⁢[𝐈μ𝐔𝟎L×μ𝐈L]⁢[𝐈μ𝟎μ×L𝐕𝟎L×μ𝐈L𝐖]=𝐑⁢[𝐈μ𝐔𝐕+𝐔𝐖𝟎L×μ𝐈L𝐖],

where 𝐑 is uniform over invertible Rq(μ+L)×(μ+L), then hiding and binding are still reduced to 𝖬𝖫𝖶𝖤λ,χ and 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β.

To commit to 𝐦‾=(𝐦1,…,𝐦L)𝖳∈RqL, sample 𝐫‾←χN⁢d and output

[𝐭‾0𝐭1⋮𝐭L]=𝐁⁢𝐫‾+[𝟎‾𝐦1⋮𝐦L],𝐭‾0=𝐁0⁢𝐫‾,𝐭i=⟨𝐛‾i,𝐫‾⟩+𝐦i.

Challenge Set without Difference Invertibility.

An immediate application of the result on the NTT slot coefficient distribution is a distribution over 𝒞 under which the coefficients are sampled i.i.d. over {0,1}. 232323 A bit flawed construction, elaborate later. Hence, a difference of independently sampled distinct elements is non-invertible with probability at most ℓ⁢pd/ℓ by union bound.

It is helpful to start from the BDLOP construction, as [ALS20] improves on [BDL+18b] with a challenge set without the property of globally invertible pairwise differences. Regarding the commitment

[𝐭‾0𝐭1]=[𝐁0𝐛‾1𝖳]⁢𝐫‾+[𝟎‾𝐦],

in the proof of opening, the prover commits to a short masking vector 𝐲‾ from a discrete Gaussian distribution, sends 𝐰‾=𝐁0⁢𝐲‾, the verifier challenges with 𝐜←𝒞, the prover replies with 𝐳‾=𝐲‾+𝐜⋅𝐫‾, and rejection sampling is used to make 𝐳‾ statistically close to a discrete Gaussian sample centered at 𝟎. The verifier checks ‖𝐳‾‖2≤β and 𝐁0⁢𝐳‾=𝐰‾+𝐜⋅𝐭‾0.

If 𝒞 has this property, the best [BDL+18b] can extract from the proof of opening is the relaxed opening eq. 4.6.

  • •

    On one hand, one cannot guarantee that 𝐟−1⋅𝐫‾ is short after cancelling out 𝐟 from 𝐫‾, which can be arbitrarily long.

  • •

    On the other hand, the binding property should prevent a single commitment from admitting relaxed openings to distinct messages; otherwise, the opening proof would be meaningless.

    The binding reduction to the SIS is achieved by the pairwise difference being invertible, see eq. 4.10.

Hence, the best [BDL+18b] can do is the relaxed opening, and uniquely interpolating 𝐫‾∗ and 𝐲‾∗ out of a pair of forked accepting transcripts. But the scheme cannot guarantee the shortness of 𝐫‾∗ and 𝐲‾∗.

In [ALS20], the challenge set is not pairwise difference invertible, so an extractor can obtain a “relaxed opening” from a pair of forked accepting transcripts, but binding is not immediately reducible to SIS, and we cannot uniquely interpolate the prover’s replies 𝐳‾ and 𝐳‾′ to obtain 𝐲‾∗ and 𝐫‾∗, from only a pair of forked accepting transcripts

𝐳‾=𝐲‾∗+𝐜⋅𝐫‾∗,𝐳‾′=𝐲‾∗+𝐜′⋅𝐫‾∗. (4.20)

But we can restore the interpolation for 𝐲‾∗ and 𝐫‾∗, by piecing together local interpolations over each prime ideal splitting Rq. More specifically, though Δ⁢𝐜=𝐜−𝐜′ is not invertible, not all of the CRT slots are zeroed out. Suppose that

Rq=ℤq⁢[X]/(Xd+1)≅ℤq⁢[X]/(φ1)×⋯×ℤq⁢[X]/(φℓ),

where φ1,…,φℓ are irreducible polynomial factors, and supposing Δ⁢𝐜≢0modφi, then interpolation over the ith CRT slot gives

𝐳‾i≡𝐲‾i∗+𝐜i⋅𝐫‾i∗modφi,𝐳‾i′≡𝐲‾i∗+𝐜i′⋅𝐫‾i∗modφi,

and by piecing together the interpolated 𝐫‾i∗ and 𝐲‾i∗ over each CRT slot i∈[1,ℓ], we have a pair (𝐫‾∗,𝐲‾∗).

Moreover, we will show in the following, for this pair of global interpolations (𝐲‾∗,𝐫‾∗) pieced out CRT slot-wise, on every accepting transcript prefixed by 𝐰‾, the prover must reply in the degree-1 affine form in eq. 4.20.

Lemma 4.12.9.

If we have, for i∈[1,ℓ], a pair of accepting transcripts (𝐰‾,𝐜i,𝐳‾i) and (𝐰‾,𝐜i′,𝐳‾i′) for the same commitment, with Δ⁢𝐜i:=𝐜i−𝐜i′≢0modφi, then every accepting transcript for that commitment with the same 𝐰‾ must have that 𝐳‾=𝐲‾∗+𝐜⋅𝐫‾∗ where (𝐲‾∗,𝐫‾∗) are fixed independently of 𝐜, or otherwise we have a 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β solution for 𝐁0, where κ is a bound for the ℓ1-norm of the challenges. Moreover, 𝐁0⁢𝐲‾∗=𝐰‾ and 𝐁0⁢𝐫‾∗=𝐭‾0.

Proof.

Let 𝐲‾∗′ be such that 𝐳‾=𝐲‾∗′+𝐜⋅𝐫‾∗. Then fix an arbitrary i∈[1,ℓ],

𝐁0⁢(𝐳‾i−𝐳‾i′)=Δ⁢𝐜i⋅𝐭‾0,𝐁0⁢(𝐳‾−𝐳‾i)=(𝐜−𝐜i)⁢𝐭‾0.

Cross-multiplying (𝐜−𝐜i) and Δ⁢𝐜i, then subtracting them, should yield either a 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β solution for 𝐁0, where the norm bound follows from

‖Δ⁢𝐜i‖1⋅‖𝐳‾−𝐳‾i‖2+‖𝐜−𝐜i‖1⋅‖𝐳‾i−𝐳‾i′‖2≤(2⁢κ)⋅(2⁢β)+(2⁢κ)⋅(2⁢β)=8⁢κ⁢β,

or it yields

(𝐜−𝐜i)⋅(𝐳‾i−𝐳‾i′)=Δ⁢𝐜i⋅(𝐳‾−𝐳‾i).

Since Δ⁢𝐜i≢0modφi, then

(𝐜−𝐜i)⋅Δ⁢𝐜i⋅𝐫‾∗≡Δ⁢𝐜i⋅(𝐲‾∗′−𝐲‾∗+(𝐜−𝐜i)⋅𝐫‾∗)modφi,

namely Δ⁢𝐜i⋅(𝐲‾∗′−𝐲‾∗)≡0modφi. Hence, 𝐲‾∗′≡𝐲‾∗modφi. If it holds for all i∈[1,ℓ], then 𝐲‾∗′=𝐲‾∗.

The statement for 𝐁0⁢𝐲‾∗=𝐰‾ and 𝐁0⁢𝐫‾∗=𝐭‾0 is immediate by CRT slot-wise local interpolation. ∎

Lemma 4.12.9 is helpful, as it explains that the prover has to reply in the degree-1 form w.r.t. the challenge, and it gives rise to the following augmentation of the relaxed opening, allowing for binding reduction to SIS even if we don’t rely on the pairwise difference invertibility property.

Definition 4.12.10 (Weak Opening).

A weak opening for the commitment 𝐭‾𝖳=[𝐭‾0𝖳∣𝐭1] consists of (Δ⁢𝐜i)i∈[1,ℓ]∈Rqℓ, 𝐫‾∗∈RqN and 𝐦∗∈Rq such that for each Δ⁢𝐜i∈Rq, Δ⁢𝐜i≢0mod(φi), ‖Δ⁢𝐜i‖1≤2⁢κ, ‖Δ⁢𝐜i⋅𝐫‾∗‖2≤2⁢β, and

𝐁0⁢𝐫‾∗=𝐭‾0,⟨𝐛‾1,𝐫‾∗⟩+𝐦∗=𝐭1.

The key point is to supply ℓ pairwise differences of challenges, such that each CRT slot is nonzero, and eventually this allows for binding reduction to SIS, which shows as follows.

Lemma 4.12.11.

The commitment scheme is binding w.r.t. the weak openings if 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β is hard, namely, valid weak openings

({Δ⁢𝐜i},𝐫‾∗,𝐦∗),({Δ⁢𝐜i′},𝐫‾∗′,𝐦∗′)

with 𝐦∗≠𝐦∗′ give an 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β solution for 𝐁0.

Proof.

If 𝐦∗≠𝐦∗′, then 𝐫‾∗≠𝐫‾∗′, and there must be at least one i∈[1,ℓ] such that 𝐫‾∗−𝐫‾∗′≢0‾mod(φi). Then

Δ⁢𝐜i⋅(Δ⁢𝐜i′⋅𝐫‾∗)−Δ⁢𝐜i′⋅(Δ⁢𝐜i⋅𝐫‾∗′)=Δ⁢𝐜i⋅Δ⁢𝐜i′⋅(𝐫‾∗−𝐫‾∗′)≢0‾modφi, (4.21)

which gives a 𝖬𝖲𝖨𝖲μ,8⁢κ⁢β solution for 𝐁0. The 8⁢κ⁢β derives from ‖Δ⁢𝐜i‖1≤2⁢κ and ‖Δ⁢𝐜i⋅𝐫‾∗‖2≤2⁢β in definition 4.12.10. ∎

Looking back, we can reverse engineer the motivation from [BDL+18b] as follows. Starting from a challenge set that is not globally pairwise difference invertible, then to obtain an augmentation of the relaxed opening, we should collect ℓ pairs of forked accepting transcripts starting from 𝐰‾ the commitment to the masking vector, such that each CRT slot is once nonzero, and we piece out a global interpolation over Rq by local interpolations over Rq/(φi). What is different from [BDL+18b] in [ALS20] is that we need to interpolate many times, while in [BDL+18b] one interpolation is sufficient, as 𝒞 in [BDL+18b] is globally pairwise difference invertible. To ensure that the linearity of the prover reply 𝐳 against the short challenge set elements is still preserved, the lemma 4.12.9 shows that the affine form is respected for all accepting transcripts beginning with 𝐰‾ for the commitment. A good trick in lemma 4.12.9 is, on a reply that does not have the affine form, move all the eccentric parts down to the degree 0 constant 𝐲‾∗′, breaking SIS.

With lemma 4.12.9, the form of definition 4.12.10 makes sense, as lemma 4.12.9 rules out the non-linearity in each “relaxed opening” in the weak opening, so 𝐲‾∗ is always cancelled out. Finally, the lemma 4.12.11 concludes that the weak opening binds against the commitment by SIS hardness.

All of this effort is necessary because 𝒞 is not pairwise difference invertible, so extraction cannot be done by one pair of forked accepting transcripts, but rather interpolations over multiple pairs. The weak opening enables binding reduction to SIS by providing Δ⁢𝐜i whose ith CRT slot is non-zero, and lemma 4.12.9 rules out all other forms of extracted openings by showing the uniqueness of the line.

The analysis in [ALS20] has some interesting reasoning for a larger challenge set: Suppose the challenge set 𝒞 is globally pairwise difference invertible, and Rq is full splitting. Fix a CRT slot, there are q distinct values on that CRT slot, and for the challenge set 𝒞, by the pigeonhole principle, there are at most q challenges in 𝒞, or otherwise there exists collision on the CRT slot, then the pairwise difference is not always invertible. Hence, the soundness is at best 1/q. Even when Rq splits into a few low-degree factors, we cannot quantify the exact size of such globally pairwise difference invertible 𝒞.

Now I should explain why footnote 23 does not work out of the box. Indeed, if 𝐜,𝐜′←r{0,1}d, then the coefficients of 𝐜−𝐜′ are i.i.d. with P⁢(±1)=1/4 and P⁢(0)=1/2. Yet it does not mean the anti-concentration bound p in eq. 4.18 can be immediately applied here, whose coefficient 0 probability is 1/2, such that the knowledge soundness is pd/ℓ. Looking closely, let X,X′ be the random variables for the jth coefficient in the ith CRT slot of 𝐜,𝐜′, then

∑x∈ℤqPr[X=x∧X′=x]=∑x∈ℤqPr[X=x]2=Pr[X=X′]=p.

The last equality holds from eq. 4.18, where the inequality is equality when x=0 for the distribution of X−X′. Hence

maxx∈ℤqPr[X=x]2≤∑x∈ℤqPr[X=x]2=p,

and hence the knowledge soundness induced by the challenge set over {0,1}d is no longer pd/ℓ but rather pd/(2⁢ℓ), as the maximum point probability of a coefficient in the ith CRT slot of 𝐜 is at most the square root of the anti-concentration bound formed for the {−1,0,1} symmetric distribution.

BDLOP with Ring Automorphism.

Now we construct a BDLOP in the ring automorphism settings. By changing the challenge set distribution, say [LS18], to the distribution defined previously over {−1,0,1}d, where distribution for each coefficient is i.i.d., P⁢(±1)=1/4 and P⁢(0)=1/2, then let p be the maximum probability in eq. 4.18, then the knowledge soundness should be pd/ℓ. More specifically, if the prover convinces the verifier with probability ε>pd/ℓ, we obtain the first accepting transcript on challenge 𝐜 in expected 1/ε time, then for another challenge 𝐜′,

ε=Pr⁡[𝒫⁢ succeeds] =Pr⁡[𝒫⁢ succeeds∣𝐜′≢𝐜mod(φi)]⋅Pr⁡[𝐜′≢𝐜mod(φi)]
+Pr⁡[𝒫⁢ succeeds∣𝐜′≡𝐜mod(φi)]⋅Pr⁡[𝐜′≡𝐜mod(φi)]
≤Pr⁡[𝒫⁢ succeeds∣𝐜′≢𝐜mod(φi)]+Pr⁡[𝐜′≡𝐜mod(φi)],

the convincing probability on 𝐜′≢𝐜modφi is at least ε−pd/ℓ, and the extractor runs in expected polynomial time if ε−pd/ℓ is 𝗉𝗈𝗅𝗒−1⁢(λ).

If pd/ℓ is not negligible, we can run k copies of the protocol in parallel, and reduce the soundness down to pk⁢d/ℓ. To achieve this in a 3-move Sigma protocol, they challenge with 𝐜 and its automorphisms. I suppose the observation stems from: for a 𝐜 sampled over {−1,0,1}d, a coefficient in a coarse ideal Xk⁢d/ℓ−ξj⁢k takes on a value with probability at most p by eq. 4.18 242424 Here the p is not defined for Xd/ℓ−ξj but for Xk⁢d/ℓ−ξk⁢j. . Recall that σ=σ2⁢ℓ/k+1 stabilizes the ideal (Xk⁢d/ℓ−ξj⁢k), such that

(Xk⁢d/ℓ−ξj⁢k)=∏i∈[0,k−1]σi⁢(Xd/ℓ−ξj)=∏i∈⟨2⁢ℓ/k+1⟩/⟨2⁢ℓ+1⟩(Xd/ℓ−ξi⁢j) (4.22)

by eqs. 4.15 and 4.16, such that if 𝐜−𝐜′≢0mod(Xk⁢d/ℓ−ξj⁢k), then any of σi⁢(𝐜−𝐜′)≢0mod(Xk⁢d/ℓ−ξj⁢k), and any of the CRT slot under the coarse CRT factor is at least once non-zero in the k automorphisms.

The construction is then immediate. Sample k random masking elements and commit to them, then the verifier replies with the challenge 𝐜, and the prover replies with 𝐳‾i=𝐲‾i+σi⁢(𝐜)⋅𝐫‾ under rejection sampling. If the prover runs in unit time and convinces the verifier with probability ε>pk⁢d/ℓ, then the extraction takes

1ε+ℓk⋅1ε−pk⁢d/ℓ

expected time, as sampling

  • •

    The first accepting transcript with challenge 𝐜 takes expected 1/ε time.

  • •

    An accepting transcript with challenge 𝐜j with 𝐜−𝐜j≢0mod(Xk⁢d/ℓ−ξj⁢k) takes expected (ε−pk⁢d/ℓ)−1 time.

Strawman Product Proof.

We begin with a rudimentary product proof using random masking elements. For

[𝐭‾0𝐭1𝐭2𝐭3]=𝐁⁢𝐫‾+[𝟎‾𝐦1𝐦2𝐦3], (4.23)

the relation to be proved is 𝐦1⋅𝐦2=𝐦3. The strawman solution in [ALS20] is by

[𝐭‾0′𝐭1′𝐭2′𝐭3′𝐭4′𝐭5′]=𝐁′⁢𝐫‾′+[𝟎‾𝐚1𝐚2𝐚3𝐚1⁢𝐦2+𝐚2⁢𝐦1−𝐚3𝐚1⁢𝐚2], (4.24)

that is committing to random masking polynomials 𝐚i and garbage terms. The invariant is the masked relation

(𝐚1+𝐱𝐦1)⁢(𝐚2+𝐱𝐦2)−𝐱⁢(𝐚3+𝐱𝐦3)=𝐚1⁢𝐚2+𝐱⁢(𝐦1⁢𝐚2+𝐦2⁢𝐚1−𝐚3)+𝐱2⁢(𝐦1⁢𝐦2−𝐦3) (4.25)

after a challenge 𝐱 from the verifier. More specifically, for the masked openings

𝐟i=𝐚i+𝐱𝐦i,

we can prove that 𝐭i′+𝐱𝐭i commits to 𝐟i. The verifier can then check eq. 4.25 by seeing if 𝐭5′+𝐱𝐭4′ commits to 𝐟1⁢𝐟2−𝐱𝐟3

𝐟1⁢𝐟2−𝐱𝐟3=𝐚1⁢𝐚2+𝐱⁢(𝐦1⁢𝐚2+𝐦2⁢𝐚1−𝐚3)+𝐱2⁢(𝐦1⁢𝐦2−𝐦3),

such that the quadratic relation is checked linearly over committed elements, and the desired product relation is the vanishing of its degree-2 coefficient. Essentially, the masking technique is used in [BLS19, YAZ+19], where a product proof appears inside a shortness proof.

We now put things together conceptually as follows. Suppose the prover knows an opening (𝐦1,𝐦2,𝐦3,𝐫‾) for the commitment in eq. 4.23:

  • •

    The prover commits to the masked terms and garbage terms in eq. 4.24.

  • •

    The verifier replies with a uniformly random challenge 𝐱.

  • •

    The prover replies with masked openings 𝐟i=𝐚i+𝐱𝐦i.

    Moreover, it commits to the masking randomness 𝐲‾ and 𝐲‾′ by

    𝐰‾=𝐁0⁢𝐲‾,𝐰‾′=𝐁0′⁢𝐲‾′,

    and sends over 𝐯i=𝐱⋅⟨𝐛‾i,𝐲‾⟩+⟨𝐛‾i′,𝐲‾′⟩, and 𝐮=𝐱⋅⟨𝐛‾4′,𝐲‾′⟩+⟨𝐛‾5′,𝐲‾′⟩ 252525 Recall the proving linear relation over elements in BDLOP abstracted in note for [ALS20]. .

  • •

    The verifier replies with a short challenge 𝐜.

  • •

    The prover runs rejection sampling, and replies

    𝐳‾=𝐲‾+𝐜⋅𝐫‾,𝐳‾′=𝐲‾′+𝐜⋅𝐫‾′.
  • •

    The verifier checks 𝐳‾ and 𝐳‾′ are short,

    𝐁0⁢𝐳‾ =𝐰‾+𝐜⋅𝐭‾0,
    𝐁0′⁢𝐳‾′ =𝐰‾′+𝐜⋅𝐭‾0′,
    𝐯i+𝐜⁢(𝐭i′+𝐱𝐭i) =𝐱⋅⟨𝐛‾i,𝐳‾⟩+⟨𝐛‾i′,𝐳‾′⟩+𝐜𝐟i,

    and checks the quadratic masked relation eq. 4.25 by ensuring 𝜸=𝐱𝐭4′+𝐭5′−(𝐟1⁢𝐟2−𝐱𝐟3) commits to 0 by

    𝐮+𝐜⁢𝜸=𝐱⋅⟨𝐛‾4′,𝐳‾′⟩+⟨𝐛‾5′,𝐳‾′⟩.

Regardless of the proof size, there is a catch regarding the knowledge soundness: 𝐱 should be pairwise difference invertible, which falls back the prior discussion of the challenge set construction 262626 Suppose the polynomial ring splits completely. The knowledge soundness will be at best 1/q by the pigeonhole principle. , and reusing the same masks for different 𝐱 breaks zero knowledge.

Computationally Indistinguishable Masked Opening.

An observation to the prior product proof from masked opening is, the values 𝐟i=𝐚i+𝐱𝐦i provide unconditional statistical hiding. We have

𝐟i′=⟨𝐛‾i,𝐳‾⟩−𝐜𝐭i=⟨𝐛‾i,𝐲‾⟩−𝐜𝐦i,

such that ⟨𝐛‾i,𝐲‾⟩ is the computationally indistinguishable mask, and the masked relation in eq. 4.25 converts to

𝐟1′⁢𝐟2′+𝐜𝐟3′=⟨𝐛‾1,𝐲‾⟩⁢⟨𝐛‾2,𝐲‾⟩+𝐜⁢(⟨𝐛‾3,𝐲‾⟩−⟨𝐛‾1,𝐲‾⟩⁢𝐦2−⟨𝐛‾2,𝐲‾⟩⁢𝐦1)+𝐜2⁢(𝐦1⁢𝐦2−𝐦3). (4.26)

With one garbage term ⟨𝐛‾3,𝐲‾⟩−⟨𝐛‾1,𝐲‾⟩⁢𝐦2−⟨𝐛‾2,𝐲‾⟩⁢𝐦1 to commit to (and sending out claim ⟨𝐛‾1,𝐲‾⟩⁢⟨𝐛‾2,𝐲‾⟩+⟨𝐛‾4,𝐲‾⟩), the new construction can be more efficient. Hence, the masked openings are inherent in the Σ-protocol.

The protocol so far works as follows:

  • •

    The prover commits to the masking randomness 𝐰‾=𝐁0⁢𝐲‾, the message and the garbage term

    [𝐭‾0𝐭1𝐭2𝐭3𝐭4]=𝐁⁢𝐫‾+[𝟎‾𝐦1𝐦2𝐦3⟨𝐛‾3,𝐲‾⟩−⟨𝐛‾1,𝐲‾⟩⁢𝐦2−⟨𝐛‾2,𝐲‾⟩⁢𝐦1],

    and derives the claim 𝐯=⟨𝐛‾1,𝐲‾⟩⁢⟨𝐛‾2,𝐲‾⟩+⟨𝐛‾4,𝐲‾⟩.

  • •

    The verifier challenges with 𝐜.

  • •

    The prover runs rejection sampling and replies with 𝐳‾←𝐲‾+𝐜⁢𝐫‾.

  • •

    The verifier checks that 𝐳‾ is short and that

    𝐰‾+𝐜⁢𝐭‾0 =𝐁0⁢𝐳‾,
    𝐟1⁢𝐟2+𝐜𝐟3+𝐟4 =𝐯,

    where 𝐟i=⟨𝐛‾i,𝐳‾⟩−𝐜𝐭i is the new computationally indistinguishable masked opening.

Soundness Amplification from Automorphism Repetition, Recap.

After the strawman construction of the product proof, we pointed out the knowledge soundness issue from uniformly random 𝐱, and the same issue remains in the computationally indistinguishable masked opening, which is challenged by 𝐜.

The prior structured parallel repetition using automorphisms becomes handy, and it is a good time to recap here. Before the “automorphism repetition”, the malicious prover can cheat by, say, if 𝐫‾ is correct except at the ith CRT slot, then there must exist 𝜹‾ and Δ‾=𝐁0⁢𝜹‾ satisfying

𝜹‾≢𝟎‾mod(Xd/ℓ−ξi),𝜹‾≡𝟎‾mod(Xd/ℓ−ξj)

for j≠i, and Δ‾ is non-zero only at the ith CRT slot, such that 𝐁0⁢𝐫‾0=𝐭‾0 for 𝐫‾=𝐫‾0+𝜹‾, and hence 𝐁0⁢𝐫‾=𝐭‾0+Δ‾.

Supposing the prover guessed the challenge’s ith CRT lane is 𝐬∈ℤq⁢[X]/(Xd/ℓ−ξi), let 𝐜s be the lifted Rq element of 𝐬 such that it is only non-zero at the ith CRT lane, and the forging follows:

  • •

    The prover samples 𝐲‾ the masking randomness, and sends out 𝐰‾←𝐁0⁢𝐲‾+𝐜s⁢Δ‾.

  • •

    The verifier challenges with an element 𝐜 such that 𝐜≡𝐜smod(Xd/ℓ−ξi).

  • •

    The prover runs rejection sampling and replies with 𝐳‾←𝐲‾+𝐜⁢𝐫‾.

  • •

    The forged proof still goes through by

    𝐰‾+𝐜⁢𝐭‾0=𝐁0⁢𝐲‾+𝐜s⁢Δ‾+𝐜⁢(𝐁0⁢𝐫‾−Δ‾)=𝐁0⁢(𝐲‾+𝐜⁢𝐫‾)+Δ‾⁢(𝐜s−𝐜)=𝐁0⁢𝐳‾.

The trick is to compensate by the right amount of Δ‾ if the prover guesses the relevant part of 𝐜 correctly, as 𝐭‾0 has a deficit of Δ‾ relative to 𝐁0⁢𝐫‾.

Moving to the “automorphism repetition”, for a CRT slot determined by (Xd/ℓ−ξj), instead of being tested by a single challenge 𝐜mod(Xd/ℓ−ξj), it is tested by k challenges deriving from

𝐜mod(Xk⁢d/ℓ−ξk⁢j)≅(𝐜mod(Xd/ℓ−ξj),σ⁢(𝐜)mod(Xd/ℓ−ξj),…,σk−1⁢(𝐜)mod(Xd/ℓ−ξj)). (4.27)

Suppose any one of the small CRT slots under (Xk⁢d/ℓ−ξk⁢j) 272727See eq. 4.22. is incorrect in 𝐫‾, the malicious prover needs to guess 𝐜mod(Xk⁢d/ℓ−ξk⁢j), and forge across the k repetitions at the corresponding slots with the same algorithm. The guessing probability is at most the knowledge-soundness bound pk⁢d/ℓ.

Automorphism Repetition in Product Proof.

We can view the proof of 𝐦1⁢𝐦2=𝐦3 as proving

𝐦1⁢𝐦2≡𝐦3mod(Xd/ℓ−ξj)

for each j∈ℤ2⁢d∗/⟨2⁢ℓ+1⟩, simultaneously for ℓ CRT slots. With the same motivation, the vanilla product proof testing eq. 4.26 only suffices for non-negligible soundness, as a CRT slot of the message is tested with a single CRT slot of the challenge, instead of being tested k times by eq. 4.27.

To build up the intuition, consider the vanilla product proof for eq. 4.26, and suppose 𝐦1⁢𝐦2−𝐦3 is nonzero only at the jth CRT slot. For simplicity, we write 𝐚i=⟨𝐛‾i,𝐲‾⟩, and the malicious prover guesses by adding an element 𝐬 to the claim 𝐯, such that 𝐬 is only nonzero at the jth CRT slot, then

𝐟1⁢𝐟2+𝐜𝐟3+𝐟4−𝐯=(𝐚1⁢𝐚2+𝐚4−𝐯)+𝐜⁢(𝐚3−𝐚1⁢𝐦2−𝐚2⁢𝐦1−𝐦4)+𝐜2⁢(𝐦1⁢𝐦2−𝐦3)≡𝟎mod(Xd/ℓ−ξj) (4.28)

has at most 2 roots for the jth CRT slot, and thus the guessing probability is at most 2⁢pd/ℓ by a union bound.

Now the genuine question is how to implement “automorphism repetition” for the product proof using eq. 4.26. Consider a product proof utilizing the “automorphism parallelism” that uses the challenge 𝐜 and its automorphisms but separates the claims and commitments to the garbage terms as follows:

  • •

    The prover commits to the masking randomness 𝐰‾i=𝐁0⁢𝐲‾i for i∈[0,k−1], the message commitment

    [𝐭‾0𝐭1𝐭2𝐭3]=𝐁⁢𝐫‾+[𝟎‾𝐦1𝐦2𝐦3],

    and the garbage terms and the claims for i∈[0,k−1] by

    𝐭4,i =⟨𝐛‾4,𝐫‾⟩+⟨𝐛‾3,𝐲‾i⟩−⟨𝐛‾1,𝐲‾i⟩⁢𝐦2−⟨𝐛‾2,𝐲‾i⟩⁢𝐦1,
    𝐯i =⟨𝐛‾4,𝐲‾i⟩+⟨𝐛‾1,𝐲‾i⟩⁢⟨𝐛‾2,𝐲‾i⟩.
  • •

    The verifier challenges with 𝐜.

  • •

    The prover runs rejection sampling and replies with 𝐳‾i←𝐲‾i+σi⁢(𝐜)⋅𝐫‾.

  • •

    The verifier checks that 𝐳‾i is short and that

    𝐰‾i+σi⁢(𝐜)⋅𝐭‾0 =𝐁0⁢𝐳‾i,
    𝐟1,i⁢𝐟2,i+σi⁢(𝐜)⋅𝐟3,i+𝐟4,i =𝐯i,

    where, for a∈[1,3],

    𝐟a,j=⟨𝐛‾a,𝐳‾j⟩−σj⁢(𝐜)⋅𝐭a,𝐟4,j=⟨𝐛‾4,𝐳‾j⟩−σj⁢(𝐜)⋅𝐭4,j.

Again, let 𝐦1⁢𝐦2−𝐦3 be nonzero only at one of the fine CRT slots under (Xk⁢d/ℓ−ξk⁢j). By eq. 4.28, for one forgery of the claim 𝐯, the quadratic constraint admits at most 2 roots modulo the fine CRT slot, then by eq. 4.27, forging the claims 𝐯0,…,𝐯k−1 for the nonzero CRT slot gives at most 2k roots modulo (Xk⁢d/ℓ−ξk⁢j), namely, in each repetition, a forgery on the CRT slot admits 2 roots for σi⁢(𝐜)mod(Xd/ℓ−ξj). Hence, at most 2k values of 𝐜mod(Xk⁢d/ℓ−ξk⁢j) can make the k CRT slots across k repetitions vanish simultaneously.

Note that in the degree-2 setting, the malicious prover can take advantage of the higher degree: it does not have to guess the exact 𝐜mod(Xk⁢d/ℓ−ξk⁢j), but instead can guess among 2k values. The resulting guessing probability is at most 2k⁢pk⁢d/ℓ.

Automorphism and Communication Complexity.

The repetition over automorphisms provides a concrete benefit. In fact, for the prior construction utilizing the automorphism repetition, where {𝐭4,i}i∈[0,k−1] commits to the garbage terms, and {𝐯i}i∈[0,k−1] are the claims, using a set of independent challenges still suffices, and the independence makes it easier to reason about the soundness.

This is surely better than the strawman construction regarding the concrete proof size, yet the structural nature of the automorphism is absent. Recalling the automorphism in eq. 4.13, consider an inverse σi−1 such that

σi−1⁢(σi⁢(𝐟1)⋅σi⁢(𝐟2))=σi−1⁢(σi⁢(𝐟1⋅𝐟2))=𝐟1⋅𝐟2,

then for eq. 4.28 and eq. 4.26, we can “inverse rotate” from

𝐟1,i⁢𝐟2,i+σi⁢(𝐜)⋅𝐟3,i=𝐚1,i⁢𝐚2,i+σi⁢(𝐜)⁢(𝐚3,i−𝐚1,i⁢𝐦2−𝐚2,i⁢𝐦1)+σi⁢(𝐜)2⁢(𝐦1⁢𝐦2−𝐦3)

to

σ−i⁢(𝐟1,i⁢𝐟2,i)+𝐜⋅σ−i⁢(𝐟3,i)=σ−i⁢(𝐚1,i⁢𝐚2,i)+𝐜⁢σ−i⁢(𝐚3,i−𝐚1,i⁢𝐦2−𝐚2,i⁢𝐦1)+𝐜2⁢σ−i⁢(𝐦1⁢𝐦2−𝐦3),

such that for i∈[0,k−1], the 𝐜 automorphisms are aligned back to the original 𝐜. This structure allows us to combine k claims and garbage commitments into one through a random linear combination.

Let 𝜶0,…,𝜶k−1 be sampled uniformly over Rq. Then the garbage-term commitment and the claim are

𝐭4=⟨𝐛‾4,𝐫‾⟩+∑i∈[0,k−1]𝜶i⁢σ−i⁢(𝐚3,i−𝐚1,i⁢𝐦2−𝐚2,i⁢𝐦1),𝐯=⟨𝐛‾4,𝐲‾0⟩+∑i∈[0,k−1]𝜶i⁢σ−i⁢(𝐚1,i⁢𝐚2,i), (4.29)

for the combined statement

∑i∈[0,k−1]𝜶i⋅σ−i⁢(𝐦1⁢𝐦2−𝐦3)=𝟎. (4.30)

The final protocol follows:

  • •

    The prover commits to the masking randomness 𝐰‾i=𝐁0⁢𝐲‾i for i∈[0,k−1], the message commitment

    [𝐭‾0𝐭1𝐭2𝐭3]=𝐁⁢𝐫‾+[𝟎‾𝐦1𝐦2𝐦3].
  • •

    The verifier replies with the uniform randomness 𝜶0,…,𝜶k−1.

  • •

    The prover derives 𝐭4 and 𝐯 in eq. 4.29 and replies.

  • •

    The verifier challenges with 𝐜.

  • •

    The prover runs rejection sampling and replies with 𝐳‾i←𝐲‾i+σi⁢(𝐜)⋅𝐫‾.

  • •

    The verifier checks that 𝐳‾i is short, that 𝐰‾i+σi⁢(𝐜)⋅𝐭‾0=𝐁0⁢𝐳‾i, and

    𝐟4,0+∑i∈[0,k−1]𝜶i⁢σ−i⁢(𝐟1,i⁢𝐟2,i+σi⁢(𝐜)⋅𝐟3,i)=𝐟4,0+∑i∈[0,k−1]𝜶i⁢σ−i⁢(𝐟1,i⁢𝐟2,i)+𝐜⁢∑i∈[0,k−1]𝜶i⁢σ−i⁢(𝐟3,i)=𝐯,

    where 𝐟i,j=⟨𝐛‾i,𝐳‾j⟩−σj⁢(𝐜)⋅𝐭i.

Now supposing a CRT slot is nonzero for 𝐦1⁢𝐦2−𝐦3, then the automorphisms

σ−i⁢(𝐦1⁢𝐦2−𝐦3)modσ−i⁢(Xd/ℓ−ξj)

are all nonzero. For the combined statement eq. 4.30, we analyze the number of CRT slots under

∑i∈[0,k−1]𝜶i⋅σ−i⁢(𝐦1⁢𝐦2−𝐦3)mod(Xk⁢d/ℓ−ξk⁢j)

are nonzero, and analyze the guessing probability of a malicious prover.

  • •

    If the k CRT slots are all nonzero, then it follows exactly from my version of the product proof without utilizing automorphism well, namely the guessing probability is at most 2k⁢pk⁢d/ℓ, as 𝐜mod(Xk⁢d/ℓ−ξk⁢j) takes on at most 2k values.

  • •

    If i of the k CRT slots are zero, then on a set of i slots being zeroed out by the randomness, 𝐜mod(Xk⁢d/ℓ−ξk⁢j) takes on at most qi⁢d/ℓ⁢2k−i values.

Hence, the guessing probability is at most

∑i∈[0,k](ki)⁢(1qd/ℓ)i⁢(1−1qd/ℓ)k−i⁢2k−i⁢qi⁢d/ℓ⁢pk⁢d/ℓ≤3k⁢pk⁢d/ℓ. (4.31)

Moreover, to batch multiple product relations, it suffices to have

∑j∑i∈[0,k−1]𝜶i,j⋅σ−i⁢(𝐦1,j⁢𝐦2,j−𝐦3,j)=𝟎,

namely, to take a random linear combination with {{𝜶i,j}i∈[0,k−1]}j over Rq.

The observation is, if there exists nonzero 𝐦1,j⁢𝐦2,j−𝐦3,j, under the chosen coarse slot containing nonzero error, for each of the k CRT slots, random linear combination over independent 𝜶i,jmodφ vanishes with probability at most q−d/ℓ by Schwartz-Zippel, and the randomness of each slot is independent, so the soundness in eq. 4.31 does not change.