Analysis of Binius STARKs Principles: Innovative Applications and Efficiency Optimization in Binary Fields

Analysis of Binius STARKs Principles and Optimization Thoughts

1 Introduction

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

As shown in Table 1, the encoding bit width of the first generation of STARKs is 252 bits, the second generation is 64 bits, and the third generation is 32 bits, but the 32-bit encoding width still has a lot of wasted space. In contrast, the binary field allows for direct bit manipulation, making the encoding compact and efficient without any wasted space, which is the fourth generation of STARKs.

Table 1: STARKs Derivation Path

Bitlayer Research: Analysis of the Principles of Binius STARKs and Optimization Thoughts

Compared to recent discoveries in finite fields such as Goldilocks, BabyBear, and Mersenne31, research on 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, is a hash algorithm very suitable for recursion.

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

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

Binius proposed an innovative solution to address these two issues separately and achieve the same data representation in two different ways: first, using multivariable ( specifically a multilinear ) polynomial instead of a univariate polynomial, representing the entire computational trajectory through its values on "hypercubes" (; second, since each dimension of the hypercube has a length of 2, it cannot perform standard Reed-Solomon extension like STARKs, but the hypercube can be viewed as a square ), upon which Reed-Solomon extension can be based. This method greatly enhances coding efficiency and computational performance while ensuring security.

2 Principle Analysis

The construction of most current SNARKs systems typically includes the following two components:

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

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

According to specific requirements, choose different PIOP and PCS, and combine with suitable finite fields or elliptic curves to construct proof systems with different attributes. For example:

• Halo2: combines 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 correctness, performance, and security of the system. The choice of these combinations not only affects the proof size and verification efficiency of SNARKs, but also determines whether the system can achieve transparency without a trusted setup and whether it can support extended functionalities 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 the tower of binary fields (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 secure and efficient consistency checks 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 robust security for the lookup mechanism. Finally, the protocol utilizes a small field polynomial commitment scheme (Small-Field PCS), enabling it to achieve an efficient proof system over binary fields while reducing the overhead typically associated with large fields.

Bitlayer Research: Analysis of Binius STARKs Principles and Its Optimization Thoughts

( 2.1 Finite Fields: Arithmetic based on towers of binary fields

Tower binary fields are key to achieving fast verifiable computations, 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 represented in a compact and easily verifiable algebraic form. These features, combined with the ability to fully leverage their hierarchical characteristics through tower structures, make binary fields particularly suitable for scalable proof systems such as Binius.

The term "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 differs 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, whereas binary fields have the convenience of this one-to-one mapping. In the 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 ( as in Tower ). The paper "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" points out that binary fields do not require carries in addition and multiplication operations, and the squaring operation in binary fields is very efficient because it follows the simplified rule (X + Y )2 = X2 + Y2.

As shown in Figure 1, a 128-bit string: this string can be interpreted in several 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 eight-bit tower field elements, or 128 F2 field elements. This flexibility of representation does not require any computational overhead, just a typecast of the bit string (typecast), 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 improve computational efficiency. In addition, 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 ( decomposed into m-bit subfields ).

Figure 1: Tower-style Binary Domain

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 checking mechanisms to verify the correctness of polynomials and multivariate sets. These core checks include:

  1. GateCheck: Verify whether the confidential witness ω and public input x satisfy the circuit computation relation C)x, ω(=0, to ensure the correct operation of the circuit.

  2. PermutationCheck: Verify whether the evaluation results of two multivariable polynomials f and g on the Boolean hypercube are 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, that is, f(Bµ( ⊆ T)Bµ), ensuring that certain values are within a specified range.

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

  5. ProductCheck: Check whether the evaluation of the rational polynomial on the Boolean hypercube equals a declared 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: Detecting whether the sum of a multivariate polynomial is equal to the declared value ∑x∈Hµ f(x) = s. By transforming the evaluation problem of a multivariate polynomial into a univariate polynomial evaluation, it reduces the computational complexity for the verifier. Additionally, SumCheck allows for batching, constructing linear combinations to achieve batching for multiple sum verification instances by introducing randomness.

  8. BatchCheck: Based on SumCheck, verifies the correctness of multiple multivariable 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 the denominator U to be 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: HyperPlonk fails to adequately handle division by zero, leading to an inability to assert the non-zero issue of U on the hypercube; Binius correctly addresses this issue, allowing Binius's ProductCheck to continue processing even when the denominator is zero, enabling generalization to any product value.

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

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

( 2.3 PIOP: new multilinear shift argument------applicable to

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
  • 5
  • Repost
  • Share
Comment
0/400
BlockchainBardvip
· 13h ago
STARKs are becoming more space-efficient!
View OriginalReply0
StakeHouseDirectorvip
· 13h ago
Optimize, optimize, the space usage is still too large!
View OriginalReply0
MetaverseLandlordvip
· 13h ago
Just know to pile up technical parameters, making me dizzy.
View OriginalReply0
WhaleWatchervip
· 13h ago
Every day we call for improving efficiency, but this efficiency hasn't improved yet?
View OriginalReply0
AirdropBuffetvip
· 13h ago
Brother, the optimization is so fierce, but unfortunately it still can't keep up.
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)