DEEP FRI协议

1. 引言

前序博客有:

  • A summary on the FRI low degree test前2页导读
  • RISC Zero的手撕STARK
  • Reed-Solomon Codes——RS纠错码
  • Reed-Solomon Codes及其与RISC Zero zkVM的关系

StarkWare团队Eli Ben-Sasson等人2019年论文DEEP-FRI: Sampling Outside the Box Improves Soundness。

Reed-Solomon code为基于某有限域的linear code,其定义为:
V : = R S [ F , D , d ] = { f : D → F : deg ⁡ ( f ) < d } V:=RS[\mathbb{F}, D,d]=\{f:D\rightarrow \mathbb{F}:\deg(f)V:=RS[F,D,d]={f:DF:deg(f)<d}

其中:

  • F \mathbb{F} F:为某有限域。
  • D ⊆ F D\subseteq \mathbb{F} DF:为对 f f f做evaluate的的Expanded Domain,以获得相应的Reed-Solomon code。
  • d < ∣ D ∣ d<|D| d<D:为 f f f多项式的degree bound。
  • ρ = d / ∣ D ∣ \rho=d/|D| ρ=d/∣D:为Reed-Solomon code的rate。

DEEP FRI协议,对应的难题为:

  • 对于 V = R S [ F , D , d ] V=RS[\mathbb{F}, D,d] V=RS[F,D,d]
  • 若有与 V V V δ ∗ \delta^* δ-far 的 g : D → F g:D\rightarrow \mathbb{F} g:DF 和 任意的 h : D → F h:D\rightarrow \mathbb{F} h:DF
  • 如何计算 δ a v g : = E α [ Δ ( g + α h , V ) ] \delta_{avg}:=E_{\alpha}[\Delta(g+\alpha h, V)] δavg:=Eα[Δ(g+αh,V)],以 将 δ a v g \delta_{avg} δavg用作FRI 的soundness bound?【 α ∈ F \alpha\in\mathbb{F} αF为随机采样点。】

其中:

  • Δ \Delta Δ用于表示relative Hamming distance。
  • E α E_{\alpha} Eα表示 g + α h g+\alpha h g+αhexpected distance。

2. FRI动机

已知对 f : D → F f:D\rightarrow \mathbb{F} f:DF的oracle access,FRI协议(以最小复杂度来)用于区分以下二者:

  • f f f在该Reed-Solomon code内。
  • f f f距离该Reed-Solomon code 至少 δ \delta δ-far。

FRI协议,采用了 Prover( P \mathbf{P} P)- Verifier( V \mathbf{V} V)配置,其中 P \mathbf{P} P试图让 V \mathbf{V} V信服, f f f is close to 该Reed-Solomon code。

FRI协议中还采用了一种特殊的模型:

  • IOPP(IOP of Proximity):为multi-round PCPP:【尽管其不切实际,但从数学角度来看很容易理解。】
    • 在每轮, P \mathbf{P} P提供对某函数的oracle access,然后 V \mathbf{V} V发送随机值。
    • 最后, V \mathbf{V} V可能会query这些oracles。
      DEEP FRI协议_第1张图片

本文重点关注FRI协议中的low degree testing。

对于 V = R S [ F , D , ρ ] V=RS[\mathbb{F},D,\rho] V=RS[F,D,ρ],其中 D D D为某FFT-friendly domain(size为 n = 2 k n=2^k n=2k的subgroup),相应的FRI协议满足如下属性:

  • Prover time ≤ 6 n \leq 6n 6n,proof length ≤ n \leq n n
  • Verifier time ≤ 21 log ⁡ n \leq 21\log n 21logn,query complexity ≤ log ⁡ n \leq \log n logn
  • Round complexity = log ⁡ n =\log n =logn
  • Soundness:对于足够小的 δ < δ 0 \delta<\delta_0 δ<δ0,对 δ \delta δ-far words拒绝的概率 = δ − o ( 1 ) =\delta-o(1) =δo(1)。【最难的部分。需考虑最坏情况下的soundness。】

问题来了,何为 δ 0 \delta_0 δ0 δ 0 \delta_0 δ0值越大越好。不同论文的 δ 0 \delta_0 δ0的取值各不相同:

  • [BBHR17]: δ 0 ≥ 1 − 3 ρ 4 \delta_0\geq \frac{1-3\rho}{4} δ0413ρ
  • [BKS18]: δ 0 ≥ 1 − ρ 4 \delta_0\geq 1-\sqrt[4]{\rho} δ014ρ
  • [BGKS20]: δ 0 ≥ 1 − ρ 3 \delta_0\geq 1-\sqrt[3]{\rho} δ013ρ ,tight for FRI。
  • 本论文DEEP-FRI: Sampling Outside the Box Improves Soundness: δ 0 = 1 − ρ 2 \delta_0=1-\sqrt[2]{\rho} δ0=12ρ 。若基于list decoding猜想,甚至有 δ 0 = 1 − ρ \delta_0=1-\rho δ0=1ρ,从而可匹配 δ 0 \delta_0 δ0的upper bound。

2.1 FRI目标

FRI协议通过使用a factor of 2 2 2来reduce the problem——即已知某多项式 f f f在size为 n n n的evaluation domain上的evaluation值,判断 f f f是否为low-degree多项式。具体的reduce流程为:

  • 1)Step 1:与FFT类似,Prover P \mathbf{P} P f f f切分为2个具有一半degree的多项式:
    f ( x ) = g ( x 2 ) + x ⋅ h ( x 2 ) f(x)=g(x^2)+x\cdot h(x^2) f(x)=g(x2)+xh(x2)
    • 具有locality属性:可根据 f ( x ) f(x) f(x) f ( − x ) f(-x) f(x)来计算 g ( x 2 ) g(x^2) g(x2) h ( x 2 ) h(x^2) h(x2)
    • D D D为 size为 F F F的multiplicative group,从而是FFT-friendly domain。
    • g , h g,h g,h定义在具有相同rate,但更小的domain D ′ = { x 2 : x ∈ D } D'=\{x^2: x\in D\} D={x2:xD}
  • 2)Step 2:使用Verifier V \mathbf{V} V提供的随机值将 g , h g,h g,h线性组合合并为: g ( x ) + α ⋅ h ( x ) g(x)+\alpha\cdot h(x) g(x)+αh(x)

回到之前提及的难题:

  • 对于 V = R S [ F , D , d ] V=RS[\mathbb{F}, D,d] V=RS[F,D,d]
  • 若有与 V V V δ ∗ \delta^* δ-far 的 g : D → F g:D\rightarrow \mathbb{F} g:DF 和 任意的 h : D → F h:D\rightarrow \mathbb{F} h:DF
  • 如何计算 δ a v g : = E α [ Δ ( g + α h , V ) ] \delta_{avg}:=E_{\alpha}[\Delta(g+\alpha h, V)] δavg:=Eα[Δ(g+αh,V)],以 将 δ a v g \delta_{avg} δavg用作FRI 的soundness bound?【 α ∈ F \alpha\in\mathbb{F} αF为随机采样点。】

可认为:

  • g , h g,h g,h中有一个是far的,则二者的线性组合也将是far的。

对average case distance限定边界:

  • x轴为 δ ∗ \delta^* δ:为worst case distance。
  • y轴为 δ a v g \delta_{avg} δavg:为average case distance。 δ a v g \delta_{avg} δavg为关于 δ ∗ \delta^* δ的函数,应让其尽可能高。
    DEEP FRI协议_第2张图片

其中, δ m a x \delta_{max} δmax为关于rate ρ \rho ρ的函数:
DEEP FRI协议_第3张图片

为何需关注 1 − ρ 3 1-\sqrt[3]{\rho} 13ρ 1 − ρ 1-\rho 1ρ之间的实际区别呢?

当前有多个实际证明系统使用FRI:

  • STARK
  • Aurora
  • Succinct Aurora等等

1 − ρ 3 1-\sqrt[3]{\rho} 13ρ (FRI) reduce为 1 − ρ 1-\rho 1ρ(conj. DEEP-FRI),可将LDT(low degree test)argument length 降低约3倍。

相关定义有:

  • 若某code的 每个半径为 δ \delta δ的球形内,包含最多 L L L个codewords,则称该code为 ( δ , L ) (\delta,L) (δ,L)-list-decodable。
    • Unique decoding: R S [ F , D , d ] RS[\mathbb{F}, D, d] RS[F,D,d] ( ( 1 − ρ ) / 2 , 1 ) ((1-\rho)/2,1) ((1ρ)/2,1)-list-decodable。
    • Johnson bound: R S [ F , D , d ] RS[\mathbb{F}, D, d] RS[F,D,d] ( ( 1 − ρ − ε ) / 2 , 1 / ( 2 ε ρ ) ) ((1-\sqrt{\rho}-\varepsilon)/2,1/(2\varepsilon\sqrt{\rho})) ((1ρ ε)/2,1/(2ερ ))-list-decodable。
    • Conjecture - list decodability of RS Codes up to Capacity: R S [ F , D , d ] RS[\mathbb{F}, D, d] RS[F,D,d] ( 1 − ρ − ε , ( ∣ D ∣ / ε ) C ρ ) (1-\rho-\varepsilon, (|D|/\varepsilon)^{C_{\rho}}) (1ρε,(D∣/ε)Cρ)-list-decodable。
      DEEP FRI协议_第4张图片

3. DEEP:Domain Extending for Eliminating Pretenders

  • f α = g + α h : D → F f_{\alpha}=g+\alpha h:D\rightarrow \mathbb{F} fα=g+αh:DF用作某多项式的commitment。
  • 若该code为 ( δ , L ) (\delta,L) (δ,L)-list-decodable,则其可能有 L L L个候选者。
  • 将这些候选者,称为pretenders。

DEEP FRI协议_第5张图片
DEEP的核心思想为:

  • D D D domain之外采样,可改进soundness。为此:
    • 要求Prover P \mathbf{P} P为任意的随机点 z ∈ F z\in \mathbb{F} zF提供 f α ( z ) f_{\alpha}(z) fα(z)

针对FRI中:

  • Verifier V \mathbf{V} V仅可在 D D D domain内query,但大概率 z ∉ D z\notin D z/D

的问题,DEEP的解决方案为:

  • 构建 f ~ α ( x ) : = f α ( x ) − v x − z \tilde{f}_{\alpha}(x):=\frac{f_{\alpha}(x)-v}{x-z} f~α(x):=xzfα(x)v
  • f ~ α ( x ) \tilde{f}_{\alpha}(x) f~α(x)为low degree,当且仅当:
    • f α f_{\alpha} fα为low degree,且, f α ( z ) = v f_{\alpha}(z)=v fα(z)=v
  • 该转换是 1 1 1-local的:Verifier V \mathbf{V} V 仅通过对 f α ( x ) f_{\alpha}(x) fα(x)做单次query,就可计算出 f ~ α ( x ) \tilde{f}_{\alpha}(x) f~α(x)。后续Verifier V \mathbf{V} V可根据 f ~ α ( x ) \tilde{f}_{\alpha}(x) f~α(x)的query值,自行计算出 f α ( x ) f_{\alpha}(x) fα(x),因:
    • f α ( x ) − v x − z = f ~ α ( x ) ⇒ f α ( x ) = v + ( x − z ) f ~ α ( x ) \frac{f_{\alpha}(x)-v}{x-z}=\tilde{f}_{\alpha}(x) \Rightarrow f_{\alpha}(x)=v+(x-z)\tilde{f}_{\alpha}(x) xzfα(x)v=f~α(x)fα(x)=v+(xz)f~α(x)

DEEP FRI协议 相关结论为:

  • 通过对 f ( x ) f(x) f(x)请求在某随机点的evaluation值,可降低候选者数量。
  • 即使Prover P \mathbf{P} P未对 f ( x ) f(x) f(x)进行commit,仅使用 f ( x ) − v x − z \frac{f(x)-v}{x-z} xzf(x)v就可检查 f ( x ) f(x) f(x)的值是否正确。
  • 在IOPP模型下,支持Prover P \mathbf{P} P响应 Verifier V \mathbf{V} V 的多次query。
  • 该DEEP技术可能可用于改进其它协议,如DEEP-ALI。

不过,见A summary on the FRI low degree test前2页导读,Eli Ben-Sasson等人2020年论文Proximity Gaps for Reed–Solomon Codes中展示了:

  • FRI实际优于DEEP-FRI。
  • 但DEEP-ALI性能 优于 ALI。

在这里插入图片描述
当前的State-of-the-art STARK协议为:

  • DEEP-ALI + FRI

参考资料

[1] 2020年11月Eli Ben-Sasson分享视频 Deep FRI protocols | Cybersecurity Seminars
[2] StarkWare团队Eli Ben-Sasson等人2019年论文DEEP-FRI: Sampling Outside the Box Improves Soundness

你可能感兴趣的:(零知识证明,零知识证明)