Binius: Innovation and Optimization of STARKs Based on Binary Fields

Analysis of the Principles of Binius STARKs and Its Optimization Thoughts

1 Introduction

One of the main reasons for the inefficiency of STARKs is that most values in actual programs are relatively small. However, to ensure the security of proofs based on Merkle trees, many additional redundant values occupy the entire field when data is expanded using Reed-Solomon encoding, even though the original values themselves are very small. To address this issue, reducing the size of the field has become a key strategy.

The first generation of STARKs has a coding width of 252 bits, the second generation has a coding width of 64 bits, and the third generation has a coding width of 32 bits. However, the 32-bit coding width still has a lot of wasted space. In comparison, the binary field allows for direct bit manipulation, resulting in compact and efficient coding with no arbitrary wasted space, which is the fourth generation of STARKs.

Compared to finite fields discovered in recent years such as Goldilocks, BabyBear, and Mersenne31, the study of binary fields can be traced back to the 1980s. Currently, binary fields are widely used in cryptography, with typical examples including:

  • Advanced Encryption Standard ( AES ), based on F28 field;

  • Galois Message Authentication Code ( GMAC ), based on the F2128 field;

  • QR code, using Reed-Solomon encoding based on F28;

  • The original FRI and zk-STARK protocols, as well as the Grøstl hash function that entered the SHA-3 finals, which is based on the F28 field and is a hash algorithm very suitable for recursion.

When using smaller fields, the extension field operation becomes increasingly important for ensuring security. The binary field used by Binius relies entirely on the extension field to guarantee its security and practical usability. Most polynomials involved in Prover computations do not need to enter the extension field and can operate solely in the base field, achieving high efficiency in smaller fields. However, random point checks and FRI calculations still need to delve into larger extension fields to ensure the required security.

When constructing proof systems based on binary fields, there are two practical issues: in STARKs, the size of the field used for calculating trace representation should be greater than the degree of the polynomial; in STARKs, when committing to a Merkle tree, Reed-Solomon encoding needs to be done, and the size of the field should be greater than the size after encoding expansion.

Binius has proposed an innovative solution that addresses both issues separately and achieves this by representing the same data in two different ways: first, by using multivariable (specifically multilinear) polynomials instead of univariate polynomials, representing the entire computational trajectory through its values on "hypercubes"; secondly, since the length of each dimension of the hypercube is 2, standard Reed-Solomon extension cannot be performed like in STARKs, but the hypercube can be viewed as a square, and Reed-Solomon extension can be based on that square. This approach significantly enhances coding efficiency and computational performance while ensuring security.

2 Principle Analysis

Currently, the construction of most SNARKs systems typically consists of the following two parts:

  • Information-Theoretic Polynomial Interactive Oracle Proof (PIOP): PIOP, as the core of the proof system, transforms the computational relations into verifiable polynomial equations. Different PIOP protocols allow the prover to send polynomials incrementally through interaction with the verifier, enabling the verifier to validate whether the computation is correct by querying a small number of polynomial evaluation results. Existing PIOP protocols include: PLONK PIOP, Spartan PIOP, and HyperPlonk PIOP, each having different ways of handling polynomial expressions, thus affecting the overall performance and efficiency of the SNARK system.

  • Polynomial Commitment Scheme (PCS): The Polynomial Commitment Scheme is used to prove whether the polynomial equations generated by PIOP hold true. PCS is a cryptographic tool that allows the prover to commit to a certain polynomial and verify the evaluation results of that polynomial later, while hiding other information about the polynomial. Common polynomial commitment schemes include KZG, Bulletproofs, FRI (Fast Reed-Solomon IOPP), and Brakedown. Different PCS have varying performance, security, and applicable scenarios.

Based on specific requirements, select different PIOP and PCS, and combine them with suitable finite fields or elliptic curves to construct proof systems with different properties. For example:

• Halo2: A combination of PLONK PIOP and Bulletproofs PCS, based on the Pasta curve. Halo2 is designed with a focus on scalability and the removal of the trusted setup in the ZCash protocol.

• Plonky2: Combines PLONK PIOP and FRI PCS, based on the Goldilocks field. Plonky2 is designed for efficient recursion. When designing these systems, the chosen PIOP and PCS must match the finite field or elliptic curve used to ensure the system's correctness, performance, and security. The selection of these combinations not only affects the proof size and verification efficiency of the SNARK but also determines whether the system can achieve transparency without a trusted setup, and whether it can support extended features such as recursive proofs or aggregate proofs.

Binius: HyperPlonk PIOP + Brakedown PCS + binary fields. Specifically, Binius includes five key technologies to achieve its efficiency and security. First, the arithmetic based on towers of binary fields forms the foundation of its computation, enabling simplified operations within binary fields. Second, Binius adapts HyperPlonk product and permutation checks in its interactive Oracle proof protocol (PIOP), ensuring a secure and efficient consistency check between variables and their permutations. Third, the protocol introduces a new multilinear shift proof, optimizing the efficiency of verifying multilinear relationships over small fields. Fourth, Binius employs an improved Lasso lookup proof, providing flexibility and strong security for the lookup mechanism. Finally, the protocol utilizes a Small-Field polynomial commitment scheme (Small-Field PCS), allowing it to implement an efficient proof system over binary fields and reducing the overhead typically associated with large fields.

2.1 Finite Fields: Arithmetic based on towers of binary fields

Towered binary fields are key to achieving fast verifiable computation, primarily due to two aspects: efficient computation and efficient arithmetic. Binary fields inherently support highly efficient arithmetic operations, making them an ideal choice for performance-sensitive cryptographic applications. Additionally, the structure of binary fields supports a simplified arithmetic process, meaning that operations performed over binary fields can be expressed in a compact and easily verifiable algebraic form. These characteristics, combined with the ability to fully leverage their hierarchical properties through tower structures, make binary fields particularly suitable for scalable proof systems like Binius.

"Canonical" refers to the unique and direct representation of elements in a binary field. For example, in the simplest binary field F2, any k-bit string can be directly mapped to a k-bit binary field element. This is different from prime fields, which cannot provide such a canonical representation within a given bit length. Although a 32-bit prime field can fit within 32 bits, not every 32-bit string can uniquely correspond to a field element, while the binary field offers the convenience of this one-to-one mapping. In prime field Fp, common reduction methods include Barrett reduction, Montgomery reduction, and special reduction methods for specific finite fields such as Mersenne-31 or Goldilocks-64. In the binary field F2k, commonly used reduction methods include special reduction (as used in AES), Montgomery reduction (as used in POLYVAL), and recursive reduction (such as Tower). The paper "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" points out that the binary field does not require carries in addition and multiplication operations, and the squaring operation in the binary field is very efficient because it follows the simplification rule of (X + Y )2 = X2 + Y2.

As shown in Figure 1, a 128-bit string: this string can be interpreted in various ways in the context of binary fields. It can be viewed as a unique element in a 128-bit binary field, or parsed as two 64-bit tower field elements, four 32-bit tower field elements, 16 8-bit tower field elements, or 128 F2 field elements. This flexibility of representation does not require any computational overhead, merely a typecast of the bit string, which is a very interesting and useful property. At the same time, small field elements can be packed into larger field elements without additional computational overhead. The Binius protocol takes advantage of this feature to enhance computational efficiency. Furthermore, the paper "On Efficient Inversion in Tower Fields of Characteristic Two" discusses the computational complexity of multiplication, squaring, and inversion operations in n-bit tower binary fields (which can decompose into m-bit subfields).

Bitlayer Research: Analysis of Binius STARKs Principles and Optimization Thoughts

2.2 PIOP: Adapted HyperPlonk Product and Permutation Check ------ Applicable to binary fields

The PIOP design in the Binius protocol draws on HyperPlonk and employs a series of core verification mechanisms to validate the correctness of polynomials and multivariate sets. These core checks include:

  1. GateCheck: Validate that the confidential witness ω and the public input x satisfy the circuit operation relation C(x,ω)=0, to ensure the circuit operates correctly.

  2. PermutationCheck: Verify whether the evaluation results of two multivariate polynomials f and g on the Boolean hypercube form a permutation relation f(x) = f(π(x)), to ensure the consistency of the arrangement between polynomial variables.

  3. LookupCheck: Verify whether the evaluation of the polynomial is in the given lookup table, i.e., f(Bµ) ⊆ T(Bµ), ensuring that certain values are within the specified range.

  4. MultisetCheck: Check whether two multivariable sets are equal, i.e., {(x1,i,x2,)}i∈H = {(y1,i,y2,)}i∈H, ensuring consistency among multiple sets.

  5. ProductCheck: Check whether the evaluation of a rational polynomial on the Boolean hypercube is equal to a stated value ∏x∈Hµ f(x) = s, to ensure the correctness of the polynomial product.

  6. ZeroCheck: Verify whether a multivariate polynomial is zero at any point on the Boolean hypercube ∏x∈Hµ f(x) = 0, ∀x ∈ Bµ, to ensure the distribution of the polynomial's zeros.

  7. SumCheck: Checks whether the sum of a multivariate polynomial equals the declared value ∑x∈Hµ f(x) = s. By transforming the evaluation problem of multivariate polynomials into a univariate polynomial evaluation, it reduces the computational complexity for the verifier. Moreover, SumCheck also allows for batching, by introducing random numbers to construct linear combinations for the batch processing of multiple sum verification instances.

  8. BatchCheck: Based on SumCheck, it verifies the correctness of multiple multivariate polynomial evaluations to improve protocol efficiency.

Although Binius and HyperPlonk have many similarities in protocol design, Binius makes improvements in the following three areas:

  • ProductCheck Optimization: In HyperPlonk, ProductCheck requires that the denominator U is non-zero everywhere on the hypercube, and the product must equal a specific value; Binius simplifies this check process by specializing this value to 1, thereby reducing computational complexity.

  • Handling of Division by Zero Issues: HyperPlonk fails to adequately handle division by zero cases, leading to an inability to assert the non-zero problem of U on the hypercube; Binius correctly addresses this issue, allowing ProductCheck to continue processing even when the denominator is zero, enabling extension to any product value.

  • Cross-column Permutation Check: HyperPlonk does not have this feature; Binius supports Permutation Check across multiple columns, allowing Binius to handle more complex polynomial arrangement cases.

Therefore, Binius has improved the existing PIOPSumCheck mechanism, enhancing the flexibility and efficiency of the protocol, especially in providing stronger functional support when dealing with more complex multivariate polynomial verification. These improvements not only address the limitations in HyperPlonk but also lay the foundation for future proof systems based on binary fields.

Bitlayer Research: Analysis of Binius STARKs Principles and Optimization Thoughts

2.3 PIOP: New multilinear shift argument------applicable to boolean hypercube

In the Binius protocol, the construction and handling of virtual polynomials is one of the key technologies, which can effectively generate and manipulate polynomials derived from input handles or other virtual polynomials. Here are two key methods:

  • Packing: This method packs smaller elements at adjacent positions in the lexicographic order.
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 8
  • Repost
  • Share
Comment
0/400
FlashLoanKingvip
· 07-15 19:54
Three generations later, still feeling like it's a waste of space.
View OriginalReply0
GasWastervip
· 07-14 17:00
Is this optimization too hardcore? I feel completely confused like a goldfish.
View OriginalReply0
screenshot_gainsvip
· 07-14 05:52
Compact performance has finally been put on the agenda.
View OriginalReply0
StakeTillRetirevip
· 07-14 05:49
Binary domain enthusiast!
View OriginalReply0
OnchainSnipervip
· 07-14 05:41
Compact storage has also rolled up?
View OriginalReply0
mev_me_maybevip
· 07-14 05:36
Optimize the storage space constantly mentioned?
View OriginalReply0
failed_dev_successful_apevip
· 07-14 05:35
It's too south, who understands?
View OriginalReply0
MEVVictimAlliancevip
· 07-14 05:27
Which new project is this that is playing people for suckers?
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
English
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)