Binius: STARKs原理及二进制域优化探索

Binius STARKs原理解析及其优化思考

1. 引言

STARKs效率低下的一个主要原因是实际程序中大多数数值较小,但为确保基于Merkle树证明的安全性,使用Reed-Solomon编码对数据进行扩展时,许多额外的冗余值会占据整个域。降低域的大小成为了关键策略。

第1代STARKs编码位宽为252bit,第2代为64bit,第3代为32bit,但32bit编码位宽仍存在大量浪费空间。相较而言,二进制域允许直接对位操作,编码紧凑高效无任意浪费,即第4代STARKs。

相比近几年研究的Goldilocks、BabyBear、Mersenne31等有限域,二进制域研究可追溯到上世纪80年代,已广泛应用于密码学,如AES(F28域)、GMAC(F2128域)、QR码(F28域Reed-Solomon编码)等。

Binius使用二进制域,需完全依赖扩域保证安全性和可用性。大多数Prover计算在基域下操作高效,随机点检查和FRI计算需深入扩域确保安全性。

Binius通过多变量多项式在"超立方体"上取值表示计算轨迹,将超立方体视为方形进行Reed-Solomon扩展,在确保安全性同时极大提升编码效率与计算性能。

Bitlayer Research:Binius STARKs原理解析及其优化思考

2. 原理解析

Binius:HyperPlonk PIOP + Brakedown PCS + 二进制域。

包括五项关键技术:

  1. 基于塔式二进制域的算术化构成计算基础

  2. 改编HyperPlonk乘积与置换检查,确保变量及置换一致性检查

  3. 新的多线性移位论证,优化小域上多线性关系验证效率

  4. 改进版Lasso查找论证,为查找机制提供灵活性和安全性

  5. 小域多项式承诺方案,实现二进制域上高效证明系统

2.1 有限域:基于towers of binary fields的算术化

塔式二进制域支持高效算术操作和简化算术化过程,特别适合Binius这样可扩展的证明系统。

128位字符串可视为128位二进制域中独特元素,或解析为两个64位塔域元素、四个32位塔域元素、16个8位塔域元素,或128个F2域元素。这种灵活性无需计算开销,只是对位字符串的类型转换。

Bitlayer Research:Binius STARKs原理解析及其优化思考

2.2 PIOP:改编版HyperPlonk Product和PermutationCheck

Binius PIOP借鉴HyperPlonk,采用核心检查机制验证多项式和多变量集合正确性,包括GateCheck、PermutationCheck、LookupCheck、MultisetCheck、ProductCheck、ZeroCheck、SumCheck、BatchCheck。

Binius在以下3方面做出改进:

  • ProductCheck优化:将值特化为1,简化检查过程降低计算复杂度

  • 除零问题处理:正确处理分母为零情况,允许推广到任意乘积值

  • 跨列PermutationCheck:支持多列间PermutationCheck,处理更复杂多项式排列情况

2.3 PIOP:新的multilinear shift argument

Binius中虚拟多项式构造和处理是关键技术:

  • Packing:将词典序相邻位置较小元素打包成更大元素优化操作

  • 移位运算符:重新排列块内元素,基于给定偏移量循环移位

Bitlayer Research:Binius STARKs原理解析及其优化思考

2.4 PIOP:改编版Lasso lookup argument

Lasso协议允许证明方承诺向量a ∈ Fm并证明所有元素存在于预先指定表t ∈ Fn中。

Binius将Lasso适应二进制域操作,引入乘法版本Lasso协议,要求证明方和验证方联合递增协议"内存计数"操作,通过二进制域乘法生成元递增。

2.5 PCS:改编版Brakedown PCS

构建BiniusPCS核心思想是packing。提供2种基于二进制域的Brakedown多项式承诺方案:

  1. 采用concatenated code实例化

  2. 采用block-level encoding技术,支持单独使用Reed-Solomon codes

第二种方案简化证明和验证流程,proof size略大但简化和实现优势值得。

Bitlayer Research:Binius STARKs原理解析及其优化思考

3. 优化思考

3.1 GKR-based PIOP:基于GKR的二进制域乘法

将"检查2个32-bit整数A和B是否满足A·B =? C"转换为"检查(gA)B =? gC是否成立",借助GKR协议大幅减少承诺开销。

基于GKR的乘法运算只需一个辅助承诺,通过减少Sumchecks开销使算法更高效,特别是Sumchecks操作比承诺生成更便宜的场景。

3.2 ZeroCheck PIOP优化:Prover与Verifier计算开销权衡

减少证明方数据传输:将部分工作转移给验证方,降低证明方发送数据量。

减少证明方评估点数量:修改多项式发送方式,减少评估点数量。

代数插值优化:通过多项式长除法构造有序分解,实现插值优化。

Bitlayer Research:Binius STARKs原理解析及其优化思考

3.3 Sumcheck PIOP优化:基于小域的Sumcheck协议

切换轮次的影响与改进因子:切换轮次t选择影响性能,最佳切换点改进因子达最大值。

基域大小对性能影响:较小基域(如GF[2])优化算法优势更显著。

Karatsuba算法优化收益:显著提升基于小域Sumcheck性能,算法4比算法3高效五倍。

内存效率提升:算法4内存需求O(d·t),算法3为O(2d·t),适用资源有限环境。

Bitlayer Research:Binius STARKs原理解析及其优化思考

3.4 PCS 优化:FRI-Binius降低Binius proof size

FRI-Binius实现二进制域FRI折叠机制,带来4方面创新:

  • 扁平化多项式
  • 子空间消失多项式
  • 代数基打包
  • 环交换SumCheck

借助FRI-Binius,可将Binius证明大小减少一个数量级,接近最先进系统。

Bitlayer Research:Binius STARKs原理解析及其优化思考

4. 小结

Binius已基本移除Prover commit承诺瓶颈,新瓶颈在于Sumcheck协议。FRI-Binius方案为FRI变体,可从域证明层消除嵌入开销。

Irreducible团队开发递归层,与Polygon合作构建Binius-based zkVM。JoltzkVM从Lasso转向Binius改进递归性能。Ingonyama实现FPGA版Binius。

Bitlayer Research:Binius STARKs原理解析及其优化思考

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 4
  • 分享
评论
0/400
faded_wojak.ethvip
· 20小时前
看都看不懂啊 这玩意太高端
回复0
数据酸菜鱼vip
· 07-09 07:26
啧啧 一眼基于位移运算 才是归宿
回复0
LiquidatedDreamsvip
· 07-09 07:23
有谁懂stark讲明白了啊
回复0
TokenToastervip
· 07-09 07:14
又来炫技术了 算法优化咋说也得先让小白听懂吧
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)