Анализ принципов Binius STARKs и размышления об их оптимизации
1. Введение
В отличие от SNARKs на основе эллиптических кривых, STARKs можно рассматривать как SNARKs на основе хэширования. Основная причина низкой эффективности STARKs в настоящее время заключается в том, что большинство чисел в реальных программах достаточно маленькие, например, индексы в циклах for, булевы значения, счетчики и т. д. Тем не менее, для обеспечения безопасности доказательства на основе дерева Меркла, при использовании кодирования Рида-Соломона для расширения данных, множество дополнительных избыточных значений занимает всю область, даже если исходные значения сами по себе очень маленькие. Для решения этой проблемы снижение размера области стало ключевой стратегией.
Первые поколения STARKs имеют ширину кодирования 252 бита, вторые поколения STARKs имеют ширину кодирования 64 бита, третьи поколения STARKs имеют ширину кодирования 32 бита, но кодирование шириной 32 бита по-прежнему имеет большое количество неиспользуемого пространства. В сравнении с этим, бинарное поле позволяет выполнять операции напрямую с битами, кодирование компактно и эффективно, без произвольного неиспользуемого пространства, то есть четвертые поколения STARKs.
По сравнению с ограниченными полями, обнаруженными в последние годы, такими как Goldilocks, BabyBear и Mersenne31, исследования двоичных полей восходят к 80-м годам прошлого века. В настоящее время двоичные поля широко применяются в криптографии,典型例子包括:
Стандарт шифрования AES( на основе поля F28;
Galois сообщение аутентификации ) GMAC (, основанное на поле F2128;
QR код, использующий кодирование Рида-Соломона на основе F28;
Исходный протокол FRI и zk-STARK, а также хеш-функция Grøstl, которая вышла в финал SHA-3, основанная на поле F28, является очень подходящим рекурсивным хеш-алгоритмом.
При использовании более малых полей операции расширения поля становятся все более важными для обеспечения безопасности. А двоичное поле, используемое Binius, полностью зависит от расширения поля для обеспечения своей безопасности и практической применимости. Большинство многочленов, задействованных в вычислениях Prover, не требуют перехода в расширенное поле, а могут работать в базовом поле, что обеспечивает высокую эффективность в малом поле. Тем не менее, случайные проверки точек и вычисления FRI все еще требуют углубления в более крупное расширенное поле для обеспечения необходимой безопасности.
При построении доказательной системы на основе бинарного поля существуют 2 практические проблемы: при вычислении представления следа в STARKs размер используемого поля должен быть больше степени полинома; при обязательстве Merkle tree в STARKs необходимо выполнить кодирование Рида-Соломона, размер используемого поля должен быть больше размера, расширенного кодирования.
Binius предложил инновационное решение, которое отдельно рассматривает эти две проблемы и реализует их двумя разными способами для представления одних и тех же данных: во-первых, с использованием многомерного ), а именно многолинейного ( многочлена вместо однолинейного многочлена, который представляет всю вычислительную траекторию через его значения на "гиперкубах" ); во-вторых, поскольку длина каждого измерения гиперкуба равна 2, стандартное расширение Рида-Соломона, как в случае с STARKs, невозможно, но гиперкуб можно рассматривать как квадрат (, на основе которого выполняется расширение Рида-Соломона. Этот метод значительно повышает эффективность кодирования и вычислительную производительность, обеспечивая при этом безопасность.
2. Анализ принципов
В настоящее время большинство систем SNARKs обычно состоит из следующих двух частей:
Информационно-теоретическое полиномиальное интерактивное оракульное доказательство )Information-Theoretic Polynomial Interactive Oracle Proof, PIOP(: PIOP как основа системы доказательства преобразует входные вычислительные отношения в проверяемые полиномиальные уравнения. Разные протоколы PIOP, взаимодействуя с верификатором, позволяют доказателю поэтапно отправлять полиномы, так что верификатор может проверить правильность вычислений, запросив лишь небольшое количество оценок полиномов. Существующие протоколы PIOP включают: PLONK PIOP, Spartan PIOP и HyperPlonk PIOP, каждый из которых по-разному обрабатывает полиномиальные выражения, что, в свою очередь, влияет на производительность и эффективность всей системы SNARK.
Полиномиальная схема обязательств )Polynomial Commitment Scheme, PCS(: Полиномиальная схема обязательств используется для доказательства, является ли равенство полинома, сгенерированного PIOP, истинным. PCS - это криптографический инструмент, который позволяет доказателю обязаться к определенному полиному и позже проверить результаты оценки этого полинома, при этом скрывая другую информацию о полиноме. Распространенные схемы полиномиальных обязательств включают KZG, Bulletproofs, FRI)Fast Reed-Solomon IOPP( и Brakedown и т.д. Разные PCS имеют разные характеристики, безопасность и области применения.
В зависимости от конкретных требований выбирайте различные PIOP и PCS, а также сочетайте их с подходящими конечными полями или эллиптическими кривыми, можно создать доказательные системы с различными свойствами. Например:
• Halo2: сочетание PLONK PIOP и Bulletproofs PCS, основанное на кривой Pasta. При проектировании Halo2 акцент делался на масштабируемость и устранение доверенной настройки из протокола ZCash.
• Plonky2: использует сочетание PLONK PIOP и FRI PCS, основанное на области Goldilocks. Plonky2 предназначен для достижения эффективной рекурсии. При проектировании этих систем выбранные PIOP и PCS должны соответствовать используемому конечному полю или эллиптической кривой, чтобы обеспечить правильность, производительность и безопасность системы. Выбор этих комбинаций влияет не только на размер доказательства SNARK и эффективность проверки, но и определяет, сможет ли система достичь прозрачности без доверенной настройки, а также поддерживать такие расширенные функции, как рекурсивные доказательства или агрегированные доказательства.
Binius: HyperPlonk PIOP + Brakedown PCS + двоичные поля. Конкретно, Binius включает пять ключевых технологий для достижения своей эффективности и безопасности. Во-первых, основанная на башенных двоичных полях )towers of binary fields( арифметическая структура составляет основу его вычислений, позволяя выполнять упрощенные операции в двоичных полях. Во-вторых, в своем интерактивном Oracle доказательном протоколе )PIOP(, Binius адаптировал HyperPlonk проверку произведений и перестановок, обеспечивая безопасную и эффективную проверку согласованности между переменными и их перестановками. В-третьих, протокол вводит новое многочленное смещение доказательства, оптимизируя эффективность проверки многочленных отношений на малых полях. В-четвертых, Binius использует усовершенствованную Lasso поиск доказательства, обеспечивая гибкость и высокую безопасность механизма поиска. Наконец, протокол использует схему полиномиальных обязательств на малых полях )Small-Field PCS(, что позволяет ему реализовать эффективную систему доказательств в двоичных полях и сократить затраты, обычно связанные с большими полями.
) 2.1 Конечное поле: арифметика на основе башен двоичных полей
Тау-двойное поле является ключом к реализации быстрого проверяемого вычисления, что в основном связано с двумя аспектами: эффективным вычислением и эффективной арифметикой. Двойное поле по своей сути поддерживает высокоэффективные арифметические операции, что делает его идеальным выбором для криптографических приложений с высокими требованиями к производительности. Кроме того, структура двойного поля поддерживает упрощенный процесс арифметики, то есть операции, выполняемые в двойном поле, могут быть представлены в компактной и легко проверяемой алгебраической форме. Эти особенности, в сочетании с возможностью полностью использовать его иерархические характеристики через тау-структуру, делают двойное поле особенно подходящим для масштабируемых систем доказательства, таких как Binius.
В данном контексте "канонический" означает уникальное и прямое представление элементов в двоичном поле. Например, в самом простом двоичном поле F2 любые k-битные строки могут быть непосредственно сопоставлены с элементами k-битного двоичного поля. Это отличается от полей с простым числом, которые не могут предоставить такое нормативное представление в заданном количестве бит. Хотя 32-битное простое поле может быть содержимо в 32 битах, не каждая 32-битная строка может уникально соответствовать элементу поля, в то время как двоичное поле обеспечивает такое удобство взаимного соответствия. В простом поле Fp распространенные методы редукции включают редукцию Барретта, редукцию Монтгомери, а также специальные методы редукции для конкретных конечных полей, таких как Mersenne-31 или Goldilocks-64. В двоичном поле F2k распространенные методы редукции включают специальные редукции (, такие как использование в AES ), редукции Монтгомери ###, такие как использование в POLYVAL ( и рекурсивные редукции ), такие как Tower (. В статье "Изучение проектного пространства аппаратных реализаций ECC на простых полях и двоичных полях" отмечается, что в двоичном поле операции сложения и умножения не требуют переноса, а операция возведения в квадрат в двоичном поле очень эффективна, поскольку она подчиняется упрощенному правилу )X + Y (2 = X2 + Y 2.
![Bitlayer Research: Анализ принципов Binius STARKs и размышления об их оптимизации])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
Как показано на рисунке 1, строка длиной 128 бит: эта строка может быть интерпретирована различными способами в контексте двоичной области. Она может рассматриваться как уникальный элемент в 128-битной двоичной области, или быть разобрана на два элемента 64-битной башенной области, четыре элемента 32-битной башенной области, 16 элементов 8-битной башенной области или 128 элементов F2. Эта гибкость представления не требует дополнительных вычислительных затрат, это просто преобразование типа битовой строки )typecast(, что является очень интересным и полезным свойством. В то же время, элементы малой области могут быть упакованы в более крупные элементы области без дополнительных вычислительных затрат. Протокол Binius использует эту особенность для повышения вычислительной эффективности. Кроме того, статья «On Efficient Inversion in Tower Fields of Characteristic Two» рассматривает вычислительную сложность операций умножения, возведения в квадрат и нахождения обратного в n-битной башенной двоичной области, которая ) может быть разложена на m-битную подобласть (.
) 2.2 PIOP: адаптированная версия HyperPlonk Product и PermutationCheck------применимо к бинарному полю
Дизайн PIOP в протоколе Binius заимствовал HyperPlonk и использует ряд основных проверочных механизмов для верификации корректности многочленов и множеств нескольких переменных. Эти основные проверки включают:
GateCheck: Проверка, удовлетворяют ли конфиденциальные свидетельства ω и открытый ввод x вычислительным отношениям C(x,ω)=0, чтобы гарантировать правильную работу цепи.
PermutationCheck: Проверка того, являются ли результаты вычисления двух многомерных многочленов f и g на булевом гиперкубе перестановочными отношениями f###x( = f)π(x)(, чтобы обеспечить согласованность перестановок между переменными многочлена.
LookupCheck: проверка того, находится ли значение многочлена в заданной таблице поиска, то есть f(Bμ) ⊆ T)Bμ(, гарантируя, что некоторые значения находятся в заданном диапазоне.
MultisetCheck: Проверка равенства двух многомерных множеств, т.е. {)x1,i,x2,(}i∈H={)y1,i,y2,(}i∈H, обеспечивая согласованность между несколькими множествами.
ProductCheck: Проверка равенства значения рационального многочлена на булевом гиперкубе с некоторым заявленным значением ∏x∈Hμ f)x( = s, для обеспечения корректности произведения многочлена.
ZeroCheck: Проверка, является ли произвольная точка многочлена с несколькими переменными на булевом гиперкубе нулем ∏x∈Hμ f)x( = 0, ∀x ∈ Bμ, для обеспечения распределения нулевых точек многочлена.
SumCheck: Проверка того, равна ли сумма значений многомерного многочлена заявленному значению ∑x∈Hμ f)x( = s. Путем преобразования задачи оценки многомерного многочлена в задачу оценки одномерного многочлена снижается вычислительная сложность для проверяющей стороны. Кроме того, SumCheck также позволяет пакетную обработку, вводя случайные числа и создавая линейные комбинации для реализации пакетной обработки нескольких экземпляров проверки суммы.
BatchCheck: основанный на SumCheck, проверяет правильность оценок нескольких многомерных многочленов для повышения эффективности протокола.
Несмотря на то, что у Binius и HyperPlonk есть много схожего в проектировании протокола, Binius внес улучшения в следующих трех аспектах:
Оптимизация ProductCheck: в HyperPlonk ProductCheck требует, чтобы знаменатель U был всюду ненулевым на гиперкубе, и произведение должно быть равно определенному значению; Binius упрощает этот процесс проверки, специализируя это значение на 1, тем самым снижая вычислительную сложность.
Обработка проблемы деления на ноль: HyperPlonk не смог должным образом обработать ситуацию деления на ноль, что привело к невозможности утверждать, что U не равно нулю на гиперкубе; Binius правильно обработал эту проблему, даже когда знаменатель равен нулю, ProductCheck Binius продолжает работать, позволяя обобщение на любое произведение.
Кросс-колонка PermutationCheck:HyperPlonk не поддерживает эту функцию; Binius поддерживает PermutationCheck между несколькими колонками, что позволяет Binius обрабатывать более сложные случаи перестановки многочленов.
Таким образом, Binius через
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Binius STARKs: Эффективная система нулевых знаний в двоичной области
Анализ принципов Binius STARKs и размышления об их оптимизации
1. Введение
В отличие от SNARKs на основе эллиптических кривых, STARKs можно рассматривать как SNARKs на основе хэширования. Основная причина низкой эффективности STARKs в настоящее время заключается в том, что большинство чисел в реальных программах достаточно маленькие, например, индексы в циклах for, булевы значения, счетчики и т. д. Тем не менее, для обеспечения безопасности доказательства на основе дерева Меркла, при использовании кодирования Рида-Соломона для расширения данных, множество дополнительных избыточных значений занимает всю область, даже если исходные значения сами по себе очень маленькие. Для решения этой проблемы снижение размера области стало ключевой стратегией.
Первые поколения STARKs имеют ширину кодирования 252 бита, вторые поколения STARKs имеют ширину кодирования 64 бита, третьи поколения STARKs имеют ширину кодирования 32 бита, но кодирование шириной 32 бита по-прежнему имеет большое количество неиспользуемого пространства. В сравнении с этим, бинарное поле позволяет выполнять операции напрямую с битами, кодирование компактно и эффективно, без произвольного неиспользуемого пространства, то есть четвертые поколения STARKs.
По сравнению с ограниченными полями, обнаруженными в последние годы, такими как Goldilocks, BabyBear и Mersenne31, исследования двоичных полей восходят к 80-м годам прошлого века. В настоящее время двоичные поля широко применяются в криптографии,典型例子包括:
Стандарт шифрования AES( на основе поля F28;
Galois сообщение аутентификации ) GMAC (, основанное на поле F2128;
QR код, использующий кодирование Рида-Соломона на основе F28;
Исходный протокол FRI и zk-STARK, а также хеш-функция Grøstl, которая вышла в финал SHA-3, основанная на поле F28, является очень подходящим рекурсивным хеш-алгоритмом.
При использовании более малых полей операции расширения поля становятся все более важными для обеспечения безопасности. А двоичное поле, используемое Binius, полностью зависит от расширения поля для обеспечения своей безопасности и практической применимости. Большинство многочленов, задействованных в вычислениях Prover, не требуют перехода в расширенное поле, а могут работать в базовом поле, что обеспечивает высокую эффективность в малом поле. Тем не менее, случайные проверки точек и вычисления FRI все еще требуют углубления в более крупное расширенное поле для обеспечения необходимой безопасности.
При построении доказательной системы на основе бинарного поля существуют 2 практические проблемы: при вычислении представления следа в STARKs размер используемого поля должен быть больше степени полинома; при обязательстве Merkle tree в STARKs необходимо выполнить кодирование Рида-Соломона, размер используемого поля должен быть больше размера, расширенного кодирования.
Binius предложил инновационное решение, которое отдельно рассматривает эти две проблемы и реализует их двумя разными способами для представления одних и тех же данных: во-первых, с использованием многомерного ), а именно многолинейного ( многочлена вместо однолинейного многочлена, который представляет всю вычислительную траекторию через его значения на "гиперкубах" ); во-вторых, поскольку длина каждого измерения гиперкуба равна 2, стандартное расширение Рида-Соломона, как в случае с STARKs, невозможно, но гиперкуб можно рассматривать как квадрат (, на основе которого выполняется расширение Рида-Соломона. Этот метод значительно повышает эффективность кодирования и вычислительную производительность, обеспечивая при этом безопасность.
2. Анализ принципов
В настоящее время большинство систем SNARKs обычно состоит из следующих двух частей:
Информационно-теоретическое полиномиальное интерактивное оракульное доказательство )Information-Theoretic Polynomial Interactive Oracle Proof, PIOP(: PIOP как основа системы доказательства преобразует входные вычислительные отношения в проверяемые полиномиальные уравнения. Разные протоколы PIOP, взаимодействуя с верификатором, позволяют доказателю поэтапно отправлять полиномы, так что верификатор может проверить правильность вычислений, запросив лишь небольшое количество оценок полиномов. Существующие протоколы PIOP включают: PLONK PIOP, Spartan PIOP и HyperPlonk PIOP, каждый из которых по-разному обрабатывает полиномиальные выражения, что, в свою очередь, влияет на производительность и эффективность всей системы SNARK.
Полиномиальная схема обязательств )Polynomial Commitment Scheme, PCS(: Полиномиальная схема обязательств используется для доказательства, является ли равенство полинома, сгенерированного PIOP, истинным. PCS - это криптографический инструмент, который позволяет доказателю обязаться к определенному полиному и позже проверить результаты оценки этого полинома, при этом скрывая другую информацию о полиноме. Распространенные схемы полиномиальных обязательств включают KZG, Bulletproofs, FRI)Fast Reed-Solomon IOPP( и Brakedown и т.д. Разные PCS имеют разные характеристики, безопасность и области применения.
В зависимости от конкретных требований выбирайте различные PIOP и PCS, а также сочетайте их с подходящими конечными полями или эллиптическими кривыми, можно создать доказательные системы с различными свойствами. Например:
• Halo2: сочетание PLONK PIOP и Bulletproofs PCS, основанное на кривой Pasta. При проектировании Halo2 акцент делался на масштабируемость и устранение доверенной настройки из протокола ZCash.
• Plonky2: использует сочетание PLONK PIOP и FRI PCS, основанное на области Goldilocks. Plonky2 предназначен для достижения эффективной рекурсии. При проектировании этих систем выбранные PIOP и PCS должны соответствовать используемому конечному полю или эллиптической кривой, чтобы обеспечить правильность, производительность и безопасность системы. Выбор этих комбинаций влияет не только на размер доказательства SNARK и эффективность проверки, но и определяет, сможет ли система достичь прозрачности без доверенной настройки, а также поддерживать такие расширенные функции, как рекурсивные доказательства или агрегированные доказательства.
Binius: HyperPlonk PIOP + Brakedown PCS + двоичные поля. Конкретно, Binius включает пять ключевых технологий для достижения своей эффективности и безопасности. Во-первых, основанная на башенных двоичных полях )towers of binary fields( арифметическая структура составляет основу его вычислений, позволяя выполнять упрощенные операции в двоичных полях. Во-вторых, в своем интерактивном Oracle доказательном протоколе )PIOP(, Binius адаптировал HyperPlonk проверку произведений и перестановок, обеспечивая безопасную и эффективную проверку согласованности между переменными и их перестановками. В-третьих, протокол вводит новое многочленное смещение доказательства, оптимизируя эффективность проверки многочленных отношений на малых полях. В-четвертых, Binius использует усовершенствованную Lasso поиск доказательства, обеспечивая гибкость и высокую безопасность механизма поиска. Наконец, протокол использует схему полиномиальных обязательств на малых полях )Small-Field PCS(, что позволяет ему реализовать эффективную систему доказательств в двоичных полях и сократить затраты, обычно связанные с большими полями.
) 2.1 Конечное поле: арифметика на основе башен двоичных полей
Тау-двойное поле является ключом к реализации быстрого проверяемого вычисления, что в основном связано с двумя аспектами: эффективным вычислением и эффективной арифметикой. Двойное поле по своей сути поддерживает высокоэффективные арифметические операции, что делает его идеальным выбором для криптографических приложений с высокими требованиями к производительности. Кроме того, структура двойного поля поддерживает упрощенный процесс арифметики, то есть операции, выполняемые в двойном поле, могут быть представлены в компактной и легко проверяемой алгебраической форме. Эти особенности, в сочетании с возможностью полностью использовать его иерархические характеристики через тау-структуру, делают двойное поле особенно подходящим для масштабируемых систем доказательства, таких как Binius.
В данном контексте "канонический" означает уникальное и прямое представление элементов в двоичном поле. Например, в самом простом двоичном поле F2 любые k-битные строки могут быть непосредственно сопоставлены с элементами k-битного двоичного поля. Это отличается от полей с простым числом, которые не могут предоставить такое нормативное представление в заданном количестве бит. Хотя 32-битное простое поле может быть содержимо в 32 битах, не каждая 32-битная строка может уникально соответствовать элементу поля, в то время как двоичное поле обеспечивает такое удобство взаимного соответствия. В простом поле Fp распространенные методы редукции включают редукцию Барретта, редукцию Монтгомери, а также специальные методы редукции для конкретных конечных полей, таких как Mersenne-31 или Goldilocks-64. В двоичном поле F2k распространенные методы редукции включают специальные редукции (, такие как использование в AES ), редукции Монтгомери ###, такие как использование в POLYVAL ( и рекурсивные редукции ), такие как Tower (. В статье "Изучение проектного пространства аппаратных реализаций ECC на простых полях и двоичных полях" отмечается, что в двоичном поле операции сложения и умножения не требуют переноса, а операция возведения в квадрат в двоичном поле очень эффективна, поскольку она подчиняется упрощенному правилу )X + Y (2 = X2 + Y 2.
![Bitlayer Research: Анализ принципов Binius STARKs и размышления об их оптимизации])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
Как показано на рисунке 1, строка длиной 128 бит: эта строка может быть интерпретирована различными способами в контексте двоичной области. Она может рассматриваться как уникальный элемент в 128-битной двоичной области, или быть разобрана на два элемента 64-битной башенной области, четыре элемента 32-битной башенной области, 16 элементов 8-битной башенной области или 128 элементов F2. Эта гибкость представления не требует дополнительных вычислительных затрат, это просто преобразование типа битовой строки )typecast(, что является очень интересным и полезным свойством. В то же время, элементы малой области могут быть упакованы в более крупные элементы области без дополнительных вычислительных затрат. Протокол Binius использует эту особенность для повышения вычислительной эффективности. Кроме того, статья «On Efficient Inversion in Tower Fields of Characteristic Two» рассматривает вычислительную сложность операций умножения, возведения в квадрат и нахождения обратного в n-битной башенной двоичной области, которая ) может быть разложена на m-битную подобласть (.
) 2.2 PIOP: адаптированная версия HyperPlonk Product и PermutationCheck------применимо к бинарному полю
Дизайн PIOP в протоколе Binius заимствовал HyperPlonk и использует ряд основных проверочных механизмов для верификации корректности многочленов и множеств нескольких переменных. Эти основные проверки включают:
GateCheck: Проверка, удовлетворяют ли конфиденциальные свидетельства ω и открытый ввод x вычислительным отношениям C(x,ω)=0, чтобы гарантировать правильную работу цепи.
PermutationCheck: Проверка того, являются ли результаты вычисления двух многомерных многочленов f и g на булевом гиперкубе перестановочными отношениями f###x( = f)π(x)(, чтобы обеспечить согласованность перестановок между переменными многочлена.
LookupCheck: проверка того, находится ли значение многочлена в заданной таблице поиска, то есть f(Bμ) ⊆ T)Bμ(, гарантируя, что некоторые значения находятся в заданном диапазоне.
MultisetCheck: Проверка равенства двух многомерных множеств, т.е. {)x1,i,x2,(}i∈H={)y1,i,y2,(}i∈H, обеспечивая согласованность между несколькими множествами.
ProductCheck: Проверка равенства значения рационального многочлена на булевом гиперкубе с некоторым заявленным значением ∏x∈Hμ f)x( = s, для обеспечения корректности произведения многочлена.
ZeroCheck: Проверка, является ли произвольная точка многочлена с несколькими переменными на булевом гиперкубе нулем ∏x∈Hμ f)x( = 0, ∀x ∈ Bμ, для обеспечения распределения нулевых точек многочлена.
SumCheck: Проверка того, равна ли сумма значений многомерного многочлена заявленному значению ∑x∈Hμ f)x( = s. Путем преобразования задачи оценки многомерного многочлена в задачу оценки одномерного многочлена снижается вычислительная сложность для проверяющей стороны. Кроме того, SumCheck также позволяет пакетную обработку, вводя случайные числа и создавая линейные комбинации для реализации пакетной обработки нескольких экземпляров проверки суммы.
BatchCheck: основанный на SumCheck, проверяет правильность оценок нескольких многомерных многочленов для повышения эффективности протокола.
Несмотря на то, что у Binius и HyperPlonk есть много схожего в проектировании протокола, Binius внес улучшения в следующих трех аспектах:
Оптимизация ProductCheck: в HyperPlonk ProductCheck требует, чтобы знаменатель U был всюду ненулевым на гиперкубе, и произведение должно быть равно определенному значению; Binius упрощает этот процесс проверки, специализируя это значение на 1, тем самым снижая вычислительную сложность.
Обработка проблемы деления на ноль: HyperPlonk не смог должным образом обработать ситуацию деления на ноль, что привело к невозможности утверждать, что U не равно нулю на гиперкубе; Binius правильно обработал эту проблему, даже когда знаменатель равен нулю, ProductCheck Binius продолжает работать, позволяя обобщение на любое произведение.
Кросс-колонка PermutationCheck:HyperPlonk не поддерживает эту функцию; Binius поддерживает PermutationCheck между несколькими колонками, что позволяет Binius обрабатывать более сложные случаи перестановки многочленов.
Таким образом, Binius через