Comme indiqué dans le tableau 1, la première génération de STARKs avait une largeur de codage de 252 bits, la deuxième génération de 64 bits et la troisième génération de 32 bits. Malgré la réduction de la largeur de codage dans la troisième génération, il reste un espace significatif gaspillé. En revanche, les champs binaires permettent une manipulation directe des bits, permettant un codage compact et efficace avec un minimum de gaspillage. Cette efficacité est réalisée dans la quatrième génération de STARKs.
Tableau 1: Chemin de dérivation STARKsEn comparaison avec des champs finis tels que Goldilocks, BabyBear, et Mersenne31, qui ont récemment attiré l'attention, la recherche sur les champs binaires remonte aux années 1980. Aujourd'hui, les champs binaires sont largement utilisés en cryptographie, avec des exemples notables incluant:
Il existe deux défis pratiques lors de la construction d'un système de preuve basé sur des champs binaires : Premièrement, la taille du champ utilisée pour la représentation de la trace dans les STARKs doit être plus grande que le degré du polynôme. Deuxièmement, la taille du champ utilisée pour l'engagement de l'arbre de Merkle dans les STARKs doit être supérieure à la taille après l'extension d'encodage Reed-Solomon.
Binius est une solution innovante pour résoudre ces deux problèmes en représentant les mêmes données de deux manières différentes : premièrement, en utilisant des polynômes multivariés (plus précisément multilinéaires) au lieu de polynômes univariés, représentant l'ensemble de la trace de calcul à travers leurs évaluations sur des « hypercubes ». Deuxièmement, puisque chaque dimension de l'hypercube a une longueur de 2, il n'est pas possible d'effectuer des extensions standard de Reed-Solomon comme dans les STARKs, mais l'hypercube peut être traité comme un carré, et une extension de Reed-Solomon peut être effectuée sur la base de ce carré. Cette méthode garantit non seulement la sécurité, mais améliore également considérablement l'efficacité de codage et les performances de calcul.
Preuve Oracle Interactive Polynomiale d'Information-Théorique (PIOP) : En tant que cœur du système de preuve, le PIOP transforme les relations computationnelles de l'entrée en équations polynomiales vérifiables. Différents protocoles PIOP permettent au prouveur d'envoyer des polynômes de manière progressive par des interactions avec le vérificateur. Cela permet au vérificateur de confirmer la correction d'un calcul en interrogeant uniquement un petit nombre d'évaluations polynomiales. Divers protocoles PIOP, tels que PLONK PIOP, Spartan PIOP et HyperPlonk PIOP, gèrent différemment les expressions polynomiales, ce qui influence les performances et l'efficacité du système SNARK dans son ensemble.- Le schéma d'engagement de polynômes (PCS): Le PCS est un outil cryptographique utilisé pour prouver que les équations polynomiales générées par le PIOP sont valides. Il permet au prouveur de s'engager dans un polynôme et de vérifier ses évaluations sans révéler d'informations supplémentaires sur le polynôme. Les schémas PCS courants comprennent KZG, Bulletproofs, FRI (Fast Reed-Solomon IOPP) et Brakedown, chacun offrant des caractéristiques de performances distinctes, des garanties de sécurité et des scénarios applicables.En sélectionnant différents PIOP et schémas PCS, et en les combinant avec des champs finis ou des courbes elliptiques appropriés, il est possible de construire des systèmes de preuve avec des propriétés distinctes. Par exemple:
Halo2 : Combine PLONK PIOP avec Bulletproofs PCS et fonctionne sur la courbe Pasta. Halo2 est conçu en gardant à l'esprit la scalabilité et élimine la configuration de confiance précédemment utilisée dans le protocole ZCash.- Plonky2 : Combine PLONK PIOP avec FRI PCS et est basé sur le champ Goldilocks. Plonky2 est optimisé pour une récursivité efficace.Lors de la conception de ces systèmes, la compatibilité entre le PIOP, le PCS et le corps fini ou la courbe elliptique choisis est essentielle pour garantir la correction, les performances et la sécurité. Ces combinaisons influencent la taille de la preuve SNARK, l'efficacité de la vérification et déterminent si le système peut atteindre la transparence sans configuration de confiance, ainsi que prendre en charge des fonctionnalités avancées telles que les preuves récursives ou l'agrégation de preuves.
Binius combine HyperPlonk PIOP avec Brakedown PCS et opère dans un champ binaire. Plus précisément, Binius intègre cinq technologies clés pour atteindre à la fois l'efficacité et la sécurité:

Le terme "canonical" fait référence à la représentation unique et directe des éléments dans un champ binaire. Par exemple, dans le champ binaire le plus basique $\mathbb{F}2
,anyk−bitstringcanbedirectly mappedtoak−bitbinaryfieldelement.Ceci diffère des champs primitifs,qui n’offrent pas une telle représentation canonique dans un nombre donné de bits.Bien qu’un champ à 32 bits puisse s’adapter à l’intérieur de 32 bits,notez que chaquechaîne de 32 bits peut correspondre de manière unique à un élément de champ,tandis que les champs binaires fournissent ceci/unmappage.Inprimefields
\mathbb{F}_p$ , les méthodes de réduction courantes comprennent la réduction de Barrett , la réduction de Montgomery , ainsi que des méthodes de réduction spécialisées pour certains corps finis comme Mersenne-31 ou Goldilocks-64 . Dans les corps binaires $\mathbb{F}{2^k}$ , les méthodes de réduction courantes comprennent la réduction spéciale (comme utilisée dans AES), la réduction de Montgomery (comme utilisée dans POLYVAL), et la réduction récursive (comme utilisée dans les champs de Tower). Le document Exploration de l'espace de conception du champ premier par rapport aux implémentations matérielles du champ binaire ECCnote que les champs binaires ne nécessitent pas de propagation de retenue lors de l'addition ou de la multiplication, et l'élevation au carré dans les champs binaires est très efficace grâce à la règle de simplification
(𝑋+𝑌)2=𝑋2+𝑌2
.

Figure 1. Les tours du champ binaire
Comme illustré dans la Figure 1, une chaîne de 128 bits peut être interprétée de plusieurs façons dans le contexte d'un champ binaire. Elle peut être considérée comme un élément unique dans le champ binaire de 128 bits, ou elle peut être analysée comme deux éléments de champ de tour de 64 bits, quatre éléments de champ de tour de 32 bits, seize éléments de champ de tour de 8 bits, ou 128 éléments de gate.
𝐹2
. Cette flexibilité de représentation n'entraîne aucune surcharge computationnelle, car il s'agit simplement d'une conversion de type de la chaîne de bits. C'est une propriété très intéressante et utile, car des éléments de champ plus petits peuvent être emballés dans des éléments de champ plus grands sans coût computationnel supplémentaire. Le protocole Binius exploite cette propriété pour améliorer l'efficacité computationnelle. De plus, le document Sur l'inversion efficace dans les champs de tour de caractéristique deuxexplorer la complexité computationnelle de la multiplication, du carré et de l'inversion dans
n
champs binaires de tour de -bit (décomposables en
𝑚
-bit subfields).

gateCheck: Garantit que le témoin privé- 𝜔- et entrée publique - 𝑥- satisfaire la relation d'opération de circuit- 𝐶(𝑥,𝜔)=0- , vérifiant l'exécution correcte du circuit.- PermutationCheck: Vérifie que les résultats d'évaluation de deux polynômes multivariés- 𝑓- et- 𝑔- sur la forme de l'hypercube booléen forment une relation de permutation- 𝑓(𝑥)=𝑓(𝜋(𝑥))- , en veillant à une cohérence entre les variables polynomiales.- LookupCheck: Vérifie si l'évaluation d'un polynôme est dans une table de recherche donnée, c'est-à-dire,- 𝑓(𝐵𝜇)⊆𝑇(𝐵𝜇)- , en veillant à ce que certaines valeurs se situent dans une plage spécifiée.- MultisetCheck: Confirme si deux ensembles multivariés sont égaux, c'est-à-dire, ${(x*{1,i},x*{2,i})}{i \in H} = {(y{1,i},y*{2,i})}*{i \in H}$, en veillant à la cohérence entre différents ensembles.- ProductCheck: Veille à ce que l'évaluation d'un polynôme rationnel sur l'hypercube booléen soit égale à une valeur déclarée, c'est-à-dire,- ∏𝑥∈𝐻𝜇𝑓(𝑥)=𝑠- , confirmant la justesse du produit polynomial.- ZeroCheck: Vérifie si un polynôme multivarié s'évalue à zéro à n'importe quel point sur l'hypercube booléen, c.-à-d., - ∏𝑥∈𝐻𝜇𝑓(𝑥)=0- pour tous - 𝑥∈𝐵𝜇- , en veillant à une répartition correcte des zéros dans le polynôme.- SumCheck: Confirme si la somme des évaluations d'un polynôme multivarié est égale à la valeur déclarée, c'est-à-dire,- ∑x∈Hμf(x)=s- . En réduisant l'évaluation des polynômes multivariés à l'évaluation des polynômes univariés, elle réduit la complexité computationnelle du vérificateur. SumCheck permet également le regroupement, qui construit des combinaisons linéaires à l'aide de nombres aléatoires pour traiter en lots plusieurs instances.- BatchCheck: Une extension de SumCheck, elle vérifie la justesse de multiples évaluations de polynômes multivariés, augmentant l'efficacité du protocole.Alors que Binius et HyperPlonk partagent plusieurs similitudes dans leurs conceptions de protocole, Binius introduit les améliorations clés suivantes:
Optimisation de ProductCheck : Dans HyperPlonk, ProductCheck exige le dénominateur- 𝑈- pour être non nul sur l'ensemble de l'hypercube et que le produit corresponde à une valeur spécifique. Binius simplifie cette vérification en fixant la valeur du produit à 1, ce qui réduit la complexité globale du calcul.- Gestion des problèmes de division par zéro : HyperPlonk ne traite pas efficacement les problèmes de division par zéro, ce qui rend difficile de garantir que - 𝑈- reste non nul sur l'hypercube. Binius résout cela en traitant correctement les scénarios de division par zéro, permettant à ProductCheck de fonctionner même lorsque le dénominateur est zéro, permettant des extensions à des valeurs de produit arbitraires.- Vérification de permutation inter-colonne : HyperPlonk ne prend pas en charge les vérifications de permutation inter-colonne. Binius résout cette limitation en introduisant la prise en charge de la vérification de permutation inter-colonne, permettant au protocole de gérer des permutations polynomiales plus complexes à travers plusieurs colonnes.Ainsi, Binius améliore la flexibilité et l'efficacité du protocole en améliorant le mécanisme de vérification PIOP SumCheck existant, notamment en fournissant une fonctionnalité plus solide pour la vérification de polynômes multivariés plus complexes. Ces améliorations ne font pas seulement face aux limites de HyperPlonk, mais posent également les bases de systèmes futurs basés sur des champs binaires.
𝑎∈𝐹𝑚
sont contenus dans une table prédéfinie
𝑡∈𝐹𝑛
. Cet argument de recherche introduit le concept de « Lookup Singularity » et convient parfaitement aux schémas d'engagement polynomial multilinéaire. L'efficacité de Lasso est mise en évidence dans deux aspects majeurs :
Efficacité de la preuve : lors de la conduite - 𝑚- recherches dans une table de taille - n- , le prouveur n'a besoin de s'engager que pour- 𝑚+𝑛- petits éléments de terrain, avec la taille du terrain tirée de l'ensemble- 0,...,𝑚- . Dans les schémas cryptographiques qui reposent sur l'exponentiation, le coût du prouveur est- O(m+n)- opérations de groupe (par exemple, additions de points de courbe elliptique). Cette efficacité s'ajoute au coût de vérification de la correspondance entre un polynôme multilinéaire évalué sur un hypercube booléen et un élément de tableau.- Aucun engagement envers les grandes tables : Si la table - 𝑡- est structuré, Lasso ne nécessite pas d'engagement direct envers la table, ce qui permet de traiter des tables très volumineuses (par exemple, - 2128- ou plus). Le temps d'exécution du prouveur dépend uniquement des entrées spécifiques consultées dans la table. Pour tout paramètre entier - 𝑐>1- , le coût principal concerne la taille de la preuve, qui augmente à mesure que - 3⋅𝑐⋅𝑚+𝑐⋅𝑛1/𝑐- éléments de terrain engagés. Ces éléments sont également petits, tirés de l'ensemble - 0,…,max𝑚,𝑛1/𝑐,𝑞−1- , où - 𝑞- est la plus grande valeur du vecteur - a- .Le protocole Lasso se compose de trois composants principaux:
Abstraction polynomiale virtuelle de grandes tables : Le protocole Lasso combine des polynômes virtuels pour permettre des recherches et des opérations efficaces sur de grandes tables, garantissant une évolutivité sans dégradation des performances.- Petite recherche de table : Au cœur de Lasso se trouve la petite recherche de table, qui vérifie si un polynôme virtuel évalué sur un hypercube booléen est un sous-ensemble des évaluations d'un autre polynôme virtuel. Ce processus est semblable à une détection de mémoire hors ligne et se résume à une tâche de détection de multiconjoints.- Vérification multiconjoints : Le protocole intègre également un mécanisme virtuel pour effectuer des vérifications multiconjoints, garantissant que deux ensembles d'éléments correspondent ou remplissent des conditions prédéfinies.Le protocole Binius adapte Lasso aux opérations sur les champs binaires, en supposant que le champ actuel est un champ premier de grande caractéristique (beaucoup plus grand que la longueur de la colonne recherchée). Binius introduit une version multiplicative du protocole Lasso, obligeant le prouveur et le vérificateur à incrémenter l'opération de “compteur de mémoire” du protocole non pas simplement en ajoutant 1 mais en incrémentant à l'aide d'un générateur multiplicatif dans le champ binaire. Cependant, cette adaptation multiplicative introduit une complexité supplémentaire : contrairement à une incrémentation additive, le générateur multiplicatif n'incrémente pas dans tous les cas, ayant plutôt une seule orbite à 0, ce qui peut présenter un vecteur d'attaque. Pour atténuer cette attaque potentielle, le prouveur doit s'engager à un vecteur de compteur de lecture qui est non nul partout pour assurer la sécurité du protocole.
L'engagement polynomial de Binius utilise principalement l'engagement polynomial de petit champ avec des évaluations dans un champ étendu, une construction universelle de petit champ et un codage au niveau des blocs avec des techniques de code Reed-Solomon.
Engagement de polynômes à petit champ avec évaluation de champ étendu Dans le protocole Binius, les engagements de polynômes sont effectués sur un petit champ
𝐾
, avec des évaluations ayant lieu dans un champ étendu
L/K
. Cette technique permet de s’assurer qu’un polynôme multilinéaire
t(X0,...,Xl−1)
appartient au domaine
𝐾[𝑋0,…,𝑋ℓ−1]
, tandis que les points d'évaluation sont dans le champ plus large
𝐿
. Cette structure d'engagement permet des requêtes efficaces dans le domaine étendu, équilibrant la sécurité et l'efficacité computationnelle.
Construction universelle de petit champ Cette construction définit les paramètres clés tels que le champ
𝐾
, sa dimension
ℓ
, et le code de bloc linéaire associé
𝐶
, tout en veillant à ce que le champ étendu
𝐿
est suffisamment grand pour des évaluations sécurisées. En exploitant les propriétés du champ étendu, Binius parvient à des engagements robustes grâce à des codes linéaires en bloc, maintenant un équilibre entre l'efficacité computationnelle et la sécurité.
Encodage au niveau du bloc avec des codes de Reed-Solomon pour les polynômes définis sur de petits champs comme $\mathbb{F}2
Ce schéma permet d’engager efficacement des polynômes de petit champ en les codant ligne par ligne dans des champs plus grands (tels que :
\mathbb{F}{2^{16}}$ ), utilisant l'efficacité et les propriétés de séparation de distance maximale des codes Reed-Solomon. Après l'encodage, ces lignes sont engagées à l'aide d'un arbre de Merkle, ce qui simplifie la complexité opérationnelle des engagements polynomiaux en petit champ. Cette approche permet une manipulation efficace des polynômes dans de petits champs sans la charge computationnelle généralement associée à des champs plus importants.
L'idée principale du protocole GKR (Goldwasser-Kalai-Rothblum) est d'obtenir un accord entre le Prover (P) et le Vérificateur (V) sur un circuit arithmétique en couches sur un champ fini.
𝐹
Chaque nœud dans ce circuit a deux entrées pour calculer la fonction requise. Pour réduire la complexité de calcul du Vérificateur, le protocole utilise le protocole SumCheck, qui réduit progressivement les revendications sur les valeurs de porte de sortie du circuit aux valeurs de porte de couche inférieure, simplifiant finalement les revendications en déclarations sur les entrées. De cette façon, le Vérificateur n'a besoin que de vérifier la justesse des entrées du circuit.
La Algorithme de multiplication d'entiers basé sur GKRdans Binius transforme la vérification de deux entiers de 32 bits
𝐴
et
𝐵
satisfaire
𝐴⋅𝐵=?𝐶
en vérifiant si
(gA)B= ?gC
contient dans
Réf. F264∗
Cette transformation, combinée au protocole GKR, réduit considérablement les frais associés aux engagements polynomiaux. Comparé au précédent schéma basé sur la recherche Binius, l'approche de multiplication basée sur GKR ne nécessite qu'un seul engagement auxiliaire et réduit le coût des SumChecks, rendant l'algorithme plus efficace, en particulier dans les cas où les SumChecks sont plus économiques que des engagements supplémentaires. Cette méthode devient une solution prometteuse pour minimiser les coûts d'engagement polynomiaux dans les champs binaires à mesure que les optimisations de Binius progressent.
𝑖
, le Prover envoie
vi+1(X)
pour
𝑋=0,…,𝑑+1
, et le vérificateur vérifie si
𝑣𝑖=𝑣𝑖+1(0)+𝑣𝑖+1(1)
tient.
Optimisation : Le Prover peut éviter d'envoyer
vi+1(1)
, comme le Vérificateur peut le calculer comme
𝑣𝑖+1(1)=𝑣𝑖−𝑣𝑖+1(0)
.
Dans le tour initial, le Prover envoie
𝑣1(0)=𝑣1(1)=0
, ce qui élimine certains calculs d’évaluation, ce qui réduit à la fois les coûts de calcul et de transmission
𝑑2𝑛−1𝐶𝐹+(𝑑+1)2𝑛−1𝐶𝐺
.
Je
, le Prover doit envoyer
𝑣𝑖+1(𝑋)
, calculé comme
𝑣𝑖+1(𝑋)=∑𝑥∈𝐻𝑛−𝑖−1𝛿^𝑛(𝛼,(𝑟,𝑋,𝑥))𝐶(𝑟,𝑋,𝑥)
.
Optimisation : Au lieu de cela, le Prover peut envoyer
𝑣𝑖+1′(𝑋)=∑𝑥∈𝐻𝑛−𝑖−1𝛿^𝑛(𝛼𝑖+1,…,𝛼𝑛−1,𝑥)𝐶(𝑟,𝑋,𝑥),
où $v_i(X) = v_i'(X) \cdot \hat{\delta}{i+1}((\alpha_0, \dots, \alpha_i), (r, X))
.𝐴𝑠𝑡ℎ𝑒𝑉𝑒𝑟𝑖𝑓𝑖𝑒𝑟ℎ𝑎𝑠𝑎𝑐𝑐𝑒𝑠𝑠𝑡𝑜
\alpha
𝑎𝑛𝑑
r
,𝑡ℑ𝑡ℎ𝑒𝑑𝑒𝑔𝑟𝑒𝑒𝑜𝑓
v_i'(X)
islowertainmentof
v_i(X)
,en réduisant les points d’évaluation requis.Le contrôle inter−rond peut alors être simplifié
(1 - \alphai)v{i+1}’(0) + \alpha_i v{i+1}’(1) = v_i’(X),
𝑡ℎ𝑒𝑟𝑒𝑏𝑦𝑙𝑜𝑤𝑒𝑟𝑖𝑛𝑔𝑑𝑎𝑡𝑎𝑡𝑟𝑎𝑛𝑠𝑚𝑖𝑠𝑠𝑖𝑜𝑛𝑛𝑒𝑒𝑑𝑠𝑎𝑛𝑑𝑒𝑛ℎ𝑎𝑛𝑐𝑖𝑛𝑔𝑒𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑐𝑦.𝑊𝑖𝑡ℎ𝑡ℎ𝑒𝑠𝑒𝑖𝑚𝑝𝑟𝑜𝑣𝑒𝑚𝑒𝑛𝑡𝑠,𝑡ℎ𝑒𝑜𝑣𝑒𝑟𝑎𝑙𝑙𝑐𝑜𝑠𝑡𝑖𝑠𝑎𝑝𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑡𝑒𝑙𝑙𝑦
2^{n-1}(d - 1)C_F + 2^{n-1}dC_G.
Pour
d = 3$ , ces optimisations permettent une réduction des coûts d'un facteur de 5/3.
𝐶(𝑥0,…,𝑥𝑛−1)
est nul sur
𝐻𝑛
et peut être exprimé comme
𝐶(𝑥0,…,𝑥𝑛−1)=∑𝑖=0𝑛−1𝑥𝑖(𝑥𝑖−1)𝑄𝑖(𝑥0,…,𝑥𝑛−1)
. Où
𝑄𝑖
est calculé par division polynomiale ordonnée, en commençant par
𝑅𝑛=𝐶
. Division séquentielle par
𝑥𝑖(𝑥𝑖−1)
calcule
𝑄𝑖
et
𝑅𝑖
, avec
𝑅0
représentant l'extension multilinéaire de
𝐶
sur
𝐻𝑛
, supposé être zéro.
Analyse des degrés de
QI
. Pour
𝑗>𝑖
,
𝑄𝑗
reste au même niveau dans
𝑥𝑖
comme
𝐶
. Pour
𝑗=𝑖
, le degré est réduit de 2, et pour
𝑗- L'impact des tours de basculement et des facteurs d'amélioration L'optimisation du protocole de vérification de somme de petit champ dépend de la sélection du tour de basculement optimal𝑡
, qui marque le moment où le protocole revient de la version optimisée à l'algorithme naïf. Les expériences indiquent que le facteur d'amélioration atteint son maximum au point de basculement optimal, puis suit une tendance parabolique. Lorsque ce point est dépassé, l'efficacité diminue car le rapport entre les multiplications du champ de base et du champ d'extension est plus élevé dans les champs plus petits, ce qui nécessite un retour opportun à l'algorithme naïf.
Pour certaines applications, comme le Cubic Sumcheck (
𝑑=3
), le protocole Sumcheck à petit champ offre une amélioration d'un ordre de grandeur par rapport à l'approche naïve. Par exemple, dans le champ de base
𝐺𝐹[2]2. Impact de la taille du champ de base sur les performances Des champs de base plus petits (par exemple,
, L'algorithme 4 surpasse l'algorithme naïf de près de 30 fois.
GF[2]
) améliorer considérablement l'efficacité de l'algorithme optimisé en raison de la plus grande disparité entre les coûts des multiplications dans le champ d'extension et le champ de base. Cela conduit à un facteur d'amélioration plus important pour l'algorithme optimisé.
, L'algorithme 4 atteint des facteurs d'amélioration maximale de 6 pour l'algorithme 3 et de 30 pour l'algorithme 4, ce qui indique que l'algorithme 4 est cinq fois plus efficace que l'algorithme 3. L'algorithme de Karatsuba améliore l'efficacité d'exécution et optimise le point de basculement pour les deux algorithmes, avec des points optimaux à
t=5
pour l'algorithme 3 et
𝑡=8
pour l'algorithme 4.
la mémoire, tandis que l'algorithme 3 a besoin de
𝑂(2𝑑⋅𝑡)
mémoire. Pour
𝑡=8
, l’algorithme 4 n’utilise que 0,26 Mo de mémoire, contre 67 Mo pour l’algorithme 3. Cela rend l’algorithme 4 particulièrement adapté aux environnements à mémoire limitée, tels que la preuve côté client avec des ressources limitées.
𝑂(𝑁)
. Cette mise à l'échelle de la racine carrée limite sa compétitivité par rapport aux systèmes offrant des preuves plus succinctes. En revanche, des tailles de preuves polylogarithmiques, comme celles obtenues par des systèmes avancés tels que Plonky3 grâce à des techniques telles que FRI, sont essentielles pour garantir des vérificateurs vraiment « succincts ». L'optimisation FRI-Binius vise à réduire la taille de la preuve de Binius et à améliorer ses performances globales par rapport à des systèmes plus efficaces.
Le papierPreuves polylogarithmiques pour des multilinéaires sur des tours binaires, appelé FRI-Binius, introduit un nouveau mécanisme de pliage FRI (preuve de proximité interactive Reed-Solomon rapide) basé sur le champ binaire avec quatre innovations clés:
Le protocole FRI-Binius optimise les schémas d'engagement polynomiaux multilinéaires (PCS) sur le champ binaire en transformant le polynôme multilinéaire initial, défini sur le champ binaire
𝐹2
, en un polynôme multilinéaire sur un champ plus grand
𝐾
.
En appliquant cette méthode, Binius est capable de réduire la taille de sa preuve d'un ordre de grandeur, la rapprochant des performances des systèmes cryptographiques de pointe, tout en restant compatible avec les champs binaires. La méthode de pliage FRI, optimisée pour les champs binaires, combinée à des emballages algébriques et des optimisations SumCheck, aide Binius à générer des preuves plus petites sans compromettre l'efficacité de la vérification.
Cette transformation marque une étape importante vers l'amélioration de la taille de la preuve dans Binius, en veillant à ce qu'elle devienne plus compétitive avec d'autres systèmes de pointe, en particulier ceux axés sur des tailles de preuve polylogarithmiques.
Tableau 2 : Comparaison de la taille de preuve entre Binius et FRI-Binius
Table 3: Comparaison entre Plonky3 FRI et FRI-Binius## 4. ConclusionToute la proposition de valeur de Binius réside dans sa capacité à utiliser la plus petite taille de champ de puissance de deux pour les témoins, en sélectionnant la taille de champ selon les besoins. Binius est un schéma de co-conception pour « le matériel, les logiciels et les protocoles Sumcheck accélérés par FPGA », permettant des preuves rapides avec une très faible utilisation de la mémoire.
Les systèmes de preuve tels que Halo2 et Plonky3 impliquent quatre étapes clés intensives en calcul : la génération des données de témoin, l'engagement envers les données de témoin, l'exécution d'un argument de disparition et la génération de la preuve d'ouverture.
Par exemple, avec la fonction de hachage Keccak dans Plonky3 et la fonction de hachage Grøstl dans Binius, la distribution computationnelle pour ces quatre étapes clés est illustrée à la Figure 3.

Figure 3. Coût de validation plus petit
Cette comparaison montre que Binius a essentiellement éliminé le goulot d'étranglement de l'engagement du prouveur. Le nouveau goulot d'étranglement est le protocole Sumcheck, où des problèmes tels que de nombreuses évaluations de polynômes et des multiplications de champs peuvent être efficacement résolus avec du matériel spécialisé.
Le schéma FRI-Binius, une variante de FRI, offre une option très attrayante en supprimant les frais d'intégration de la couche de preuve sur le terrain sans entraîner une augmentation significative des coûts dans la couche de preuve agrégée.
Actuellement, l'équipe Irreducible développe sa couche récursive et aa annoncé un partenariat avec l'équipe Polygon pour construire un zkVM basé sur Binius; le Jolt zkVM passe de Lasso à Binius pour améliorer ses performances récursives; et l' L'équipe Ingonyama met en œuvre une version FPGA de Binius.





