🎉 亲爱的广场小伙伴们,福利不停,精彩不断!目前广场上这些热门发帖赢奖活动火热进行中,发帖越多,奖励越多,快来 GET 你的专属好礼吧!🚀
🆘 #Gate 2025年中社区盛典# |广场十强内容达人评选
决战时刻到!距离【2025年中社区盛典】广场达人评选只剩 1 天,你喜爱的达人,就差你这一票冲进 C 位!在广场发帖、点赞、评论就能攒助力值,帮 Ta 上榜的同时,你自己还能抽大奖!iPhone 16 Pro Max、金牛雕塑、潮流套装、合约体验券 等你抱走!
详情 👉 https://www.gate.com/activities/community-vote
1️⃣ #晒出我的Alpha积分# |晒出 Alpha 积分&收益
Alpha 积分党集合!带话题晒出你的 Alpha 积分图、空投中奖图,即可瓜分 $200 Alpha 代币盲盒,积分最高直接抱走 $100!分享攒分秘籍 / 兑换经验,中奖率直线上升!
详情 👉 https://www.gate.com/post/status/12763074
2️⃣ #ETH百万矿王争霸赛# |ETH 链上挖矿晒收益
矿工集结!带话题晒出你的 Gate ETH 链上挖矿收益图,瓜分 $400 晒图奖池,收益榜第一独享 $200!谁才是真 ETH 矿王?开晒见分晓!
详情 👉 https://www.gate.com/pos
Binius STARKs原理解析:二进制域优化与高效多项式承诺
Binius STARKs原理解析及其优化思考
1 引言
STARKs效率低下的一个主要原因是实际程序中的大多数数值都较小,但为了确保基于Merkle树证明的安全性,使用Reed-Solomon编码对数据进行扩展时,许多额外的冗余值会占据整个域。为解决该问题,降低域的大小成为了关键策略。
第1代STARKs编码位宽为252bit,第2代为64bit,第3代为32bit,但32bit编码位宽仍然存在大量的浪费空间。相较而言,二进制域允许直接对位进行操作,编码紧凑高效而无任意浪费空间,即第4代STARKs。
当采用较小的域时,扩域操作对于确保安全性愈发重要。而Binius所使用的二进制域,需完全依赖扩域来保证其安全性和实际可用性。大多数Prover计算中涉及的多项式无需进入扩域,而只需在基域下操作,从而在小域中实现了高效率。然而,随机点检查和FRI计算仍需深入到更大的扩域中,以确保所需的安全性。
基于二进制域来构建证明系统时,存在2个实际问题:STARKs中计算trace表示时,所用域大小应大于多项式的阶;STARKs中Merkle tree承诺时,需做Reed-Solomon编码,所用域大小应大于编码扩展后的大小。
Binius提出了一种创新的解决方案,分别处理这两个问题,并通过两种不同的方式表示相同的数据来实现:首先,使用多变量(具体是多线性)多项式代替单变量多项式,通过其在"超立方体"(hypercubes)上的取值来表示整个计算轨迹;其次,由于超立方体每个维度的长度均为2,因此无法像STARKs那样进行标准的Reed-Solomon扩展,但可以将超立方体视为方形(square),基于该方形进行Reed-Solomon扩展。这种方法在确保安全性的同时,极大提升了编码效率与计算性能。
2 原理解析
当前大多数SNARKs系统的构建通常包含以下两部分:
Binius:HyperPlonk PIOP + Brakedown PCS + 二进制域。具体而言,Binius包括五项关键技术,以实现其高效性和安全性:
2.1 有限域:基于towers of binary fields的算术化
塔式二进制域是实现快速可验证计算的关键,主要归因于两个方面:高效计算和高效算术化。二进制域本质上支持高度高效的算术操作,使其成为对性能要求敏感的密码学应用的理想选择。此外,二进制域结构支持简化的算术化过程,即在二进制域上执行的运算可以以紧凑且易于验证的代数形式表示。
在素数域Fp中,常见的归约方法包括Barrett归约、Montgomery归约,以及针对Mersenne-31或Goldilocks-64等特定有限域的特殊归约方法。在二进制域F2k中,常用的归约方法包括特殊归约(如AES中使用)、Montgomery归约(如POLYVAL中使用)和递归归约(如Tower)。
二进制域在加法和乘法运算中均无需引入进位,且二进制域的平方运算非常高效,因为它遵循(X + Y )2 = X2 + Y 2 的简化规则。
2.2 PIOP:改编版HyperPlonk Product和PermutationCheck
Binius协议中的PIOP设计借鉴了HyperPlonk,采用了一系列核心检查机制,用于验证多项式和多变量集合的正确性。这些核心检查包括:
Binius与HyperPlonk相比做出了以下改进:
2.3 PIOP:新的 multilinear shift argument
在Binius协议中,虚拟多项式的构造和处理是关键技术之一,能够有效地生成和操作从输入句柄或其他虚拟多项式派生出的多项式。以下是两个关键方法:
2.4 PIOP:改编版Lasso lookup argument
Lasso协议允许证明方承诺一个向量a ∈ Fm,并证明其所有元素均存在于一个预先指定的表t ∈ Fn 中。Lasso协议由以下三个组件构成:
Binius协议将Lasso适应于二进制域的操作,引入了乘法版本的Lasso协议。
2.5 PCS:改编版Brakedown PCS
构建BiniusPCS的核心思想是packing。Binius论文中提供了2种基于二进制域的Brakedown多项式承诺方案:
Binius多项式承诺主要使用以下技术:
3 优化思考
为了进一步提升Binius协议的性能,本文提出了四个关键优化点:
3.1 GKR-based PIOP:基于GKR的二进制域乘法
基于GKR的整数乘法运算算法,通过将"检查2个32-bit整数A和B是否满足 A·B =? C",转换为"检查中(gA)B =? gC 是否成立",借助GKR协议大幅减少承诺开销。
3.2 ZeroCheck PIOP优化:Prover与Verifier计算开销权衡
论文《Some Improvements for the PIOP for ZeroCheck》在证明方(P)和验证方(V)之间调整工作量的分配,提出了多种优化方案,以权衡开销。主要优化包括:
3.3 Sumcheck PIOP优化:基于小域的Sumcheck协议
Ingonyama在2024年提出了针对基于小域的Sumcheck协议的改进方案,并开源了实现代码。主要优化包括:
3.4 PCS 优化:FRI-Binius降低Binius proof size
论文《Polylogarithmic Proofs for Multilinears over Binary Towers》,简称为FRI-Binius,实现了二进制域FRI折叠机制,带来4个方面的创新:
借助FRI-Binius,可将Binius证明大小减少一个数量级。
4 小结
Binius是"使用硬件、软件、与FPGA中加速的Sumcheck协议"的协同设计方案,可以以非常低的内存使用率来快速证明。Binius中已基本完全移除了Prover的commit承诺瓶颈,新的瓶颈在于Sumcheck协议,而Sumcheck协议中大量多项式evaluations和域乘法等问题,可借助专用硬件高效解决。
FRI-Binius方案,为FRI变体,可提供一个非常有吸引力的选择——从域证明层中消除嵌入开销,而不会导致聚合证明层的成本激增。当前,Irreducible团队正在开发其递归层,并宣布与Polygon团队合作构建Binius-based zkVM;JoltzkVM正从Lasso转向Binius,以改进其递归性能;Ingonyama团队正在实现FPGA版本的Binius。