Halo2、Caulk+、Baloo、Cq Lookup argument细览

1. 引言

本文主要参考2023年2月以太坊基金会Mary Maller在第13届 BIU Winter School on Cryptography上的视频分享 A Close Look at a Lookup Argument - Mary Maller

以证明 0 ≤ x < 4 0\leq x <4 0x<4为例,相比于使用算术化电路中如何使用定制gates?中的定制约束,使用lookup约束会更简单——即只需要1个lookup约束就足以:
在这里插入图片描述
实际不只有一个witness x x x,而是有很多witnesses,可扩展多个range check:
在这里插入图片描述
或者借助selector多项式做部分lookup约束:
在这里插入图片描述

2. Halo2的lookup argument策略

详细见:

需证明:

  • a ( i ) ∈ { t ( 1 ) , t ( 2 ) , t ( 3 ) , t ( 4 ) } a(i)\in\{t(1),t(2),t(3),t(4)\} a(i){ t(1),t(2),t(3),t(4)} for i ∈ { 0 , 1 , 2 , 3 } i\in\{0,1,2,3\} i{ 0,1,2,3}

本文将展示:

  • 尝试用copy argument来证明而失败
  • 尝试用permutation argument来证明而失败
  • Halo2 lookup argument
  • Caulk+ lookup argument
  • Baloo lookup argument
  • Cq lookup argument

2.1 尝试用copy argument来证明而失败

在这里插入图片描述

2.2 尝试用permutation argument来证明而失败

在这里插入图片描述

2.3 Halo2的解决方案

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
但是,以上策略的lookup argument,需对 t ( X ) t(X) t(X)做运行一次permutation argument,相应Prover Time与 t ( X ) t(X) t(X)呈线性关系,对big table场景来说太慢了,为此:
在这里插入图片描述

2.4 Caulk+ lookup argument:fast for big tables

上面2.3节中指出,Halo2 lookup argument需对 t ( X ) t(X) t(X)做运行一次permutation argument,相应Prover Time与 t ( X ) t(X) t(X)呈线性关系。
当对于类似 { t 1 , ⋯   , t 2 27 } \{t_1,\cdots,t_{2^{27}}\} { t1,,t227}这样的large table来说,Halo2 lookup argument速度会很慢,为此,需要构建与 t ( x ) t(x) t(x) size 无关 的Temporary Table C——可能可借助预处理来实现。
在这里插入图片描述
Caulk+ 中采用的预处理策略为:【见以太坊基金会Dankrad Feist 和 Dmitry Khovratovich 2023年论文 Fast amortized KZG proofs
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.5 Baloo lookup argument:Prove lookup over hidden domain

在这里插入图片描述
Baloo lookup argument的核心思想为基于2019年Aurora论文中的Lincheck Argument思想:
∑ j ∈ I e i , j c ( j ) = a i \sum_{j\in I}e_{i,j}c(j)=a_i jIei,jc(j)=ai
Lincheck Argument可check a matrix equation。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.6 Cq lookup argument:Cached Quotients

在这里插入图片描述
在这里插入图片描述

3. Lookup Constraints in Plonkish:Function Tables

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 思考

  • 所有sublinear time lookup argument都使用pairings。
  • pairings不具备post-quantum安全性,且需要特殊的,非标准化的椭圆曲线。
  • 开放问题:能否不使用pairings,设计出一种实用的,具有(与table size)sublinear time的lookup argument方案?

参考资料

[1] 2023年2月以太坊基金会Mary Maller在第13届 BIU Winter School on Cryptography上的视频分享 A Close Look at a Lookup Argument - Mary Maller

lookup系列博客

猜你喜欢

转载自blog.csdn.net/mutourend/article/details/132603045