Аналіз принципів Binius STARKs та роздуми про їх оптимізацію
1 Вступ
На відміну від SNARK, основаних на еліптичних кривих, STARK можна вважати SNARK, основаними на хешах. Один з основних причин низької ефективності STARK: більшість чисел у реальних програмах є досить малими, такими як індекси в циклах for, булеві значення, лічильники тощо. Однак, щоб забезпечити безпеку доказів, заснованих на дереві Меркла, під час розширення даних за допомогою кодування Ріда-Соломона, багато додаткових зайвих значень займають весь простір, навіть якщо початкове значення саме по собі є дуже малим. Щоб вирішити цю проблему, зменшення розміру простору стало ключовою стратегією.
Перший покоління STARKs має ширину кодування 252 біт, друге покоління — 64 біти, третє покоління — 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, повинен бути більшим за ступінь полінома; під час зобов'язань Меркле-дерева в STARKs необхідно виконати кодування Ріда-Соломона, розмір області, що використовується, повинен бути більшим за розмір після кодування.
Binius запропонував інноваційне рішення, яке окремо вирішує ці дві проблеми, та реалізує це шляхом представлення однакових даних двома різними способами: по-перше, використовуючи багатозмінний (, а саме багатолінійний )многочлен замість однозмінного многочлена, представляючи всю обчислювальну траєкторію через його значення на "гіперкубах" (hypercubes); по-друге, оскільки довжина кожного виміру гіперкуба дорівнює 2, стандартне розширення Ріда-Соломона, як у STARKs, не може бути виконано, але гіперкуб можна розглядати як квадрат (square), на основі якого проводиться розширення Ріда-Соломона. Цей метод значно підвищує ефективність кодування та обчислювальні можливості, забезпечуючи при цьому безпеку.
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) становить основу його обчислень, що дозволяє спростити обчислення у двійкових полях. По-друге, Binius адаптував перевірку продуктів та перестановок HyperPlonk у своєму інтерактивному протоколі Oracle доказів (PIOP), що забезпечує безпечну та ефективну перевірку узгодженості між змінними та їх перестановками. По-третє, протокол вводить новий багаторазовий доказ зсуву, оптимізуючи ефективність перевірки багатолінійних відносин на малих полях. По-четверте, Binius використовує удосконалену версію доказу пошуку Lasso, що забезпечує гнучкість та високу безпеку механізму пошуку. Нарешті, протокол використовує схему зобов'язань малополіномів (Small-Field PCS), що дозволяє реалізувати ефективну систему доказів у двійкових полях і зменшує витрати, які зазвичай пов'язані з великими полями.
2.1 Обмежене поле: арифметика на основі веж бінарних полів
Тау-двійкове поле є ключем до реалізації швидких перевіряємих обчислень, що обумовлено двома основними аспектами: ефективними обчисленнями та ефективною арифметикою. Двійкове поле за своєю суттю підтримує високо ефективні арифметичні операції, що робить його ідеальним вибором для криптографічних застосувань, чутливих до вимог щодо продуктивності. Крім того, структура двійкового поля підтримує спрощений процес арифметики, тобто операції, що виконуються в двійковому полі, можуть бути представлені в компактній та легко перевіряємій алгебраїчній формі. Ці характеристики, разом із здатністю повною мірою використати його ієрархічні особливості через тау-структуру, роблять двійкове поле особливо придатним для таких масштабованих систем доказів, як Binius.
Термін "canonical" відноситься до унікального та прямого способу представлення елементів у бінарному полі. Наприклад, у найпростішому бінарному полі F2 будь-який k-бітний рядок може бути безпосередньо відображений на k-бітний елемент бінарного поля. Це відрізняється від простих полів, які не можуть надати таке нормативне представлення в заданій кількості бітів. Хоча 32-бітне просте поле може містити 32 біти, не кожен 32-бітний рядок може унікально відповідати одному елементу поля, в той час як бінарне поле має цю зручність однозначного відображення. У простому полі Fp поширені методи редукції включають редукцію Барретта, редукцію Монтгомері та спеціальні методи редукції для певних скінченних полів, таких як Мерсенна-31 або Goldilocks-64. У бінарному полі F2k зазвичай використовуються методи редукції, такі як спеціальна редукція (, як у AES, редукція Монтгомері ), як у POLYVAL, та рекурсивна редукція (, як у Tower ). У статті "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" зазначається, що в бінарному полі при виконанні додавання та множення не потрібно вводити перенесення, і обчислення квадратів у бінарному полі є дуже ефективним, оскільки воно дотримується спрощеного правила (X + Y )2 = X2 + Y 2.
Як показано на малюнку 1, 128-бітний рядок: цей рядок можна інтерпретувати різними способами в контексті бінарної області. Його можна розглядати як унікальний елемент у 128-бітній бінарній області або інтерпретувати як два 64-бітних елемента вежі, чотири 32-бітних елемента вежі, 16 восьмибітних елементів вежі або 128 елементів області F2. Гнучкість такого подання не вимагає жодних обчислювальних витрат, це просто перетворення типу рядка (typecast), що є дуже цікавою та корисною властивістю. Водночас, маленькі елементи області можуть бути упаковані в більші елементи області без додаткових обчислювальних витрат. Протокол Binius використовує цю особливість для підвищення обчислювальної ефективності. Крім того, у статті «On Efficient Inversion in Tower Fields of Characteristic Two» розглядається обчислювальна складність множення, піднесення до квадрату та обернення в n-бітній вежі бінарної області, що розкладається на m-бітні підобласті (.
![Bitlayer Research: Аналіз принципів Binius STARKs та його оптимізаційні міркування])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
) 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 підвищив гнучкість і ефективність протоколу шляхом вдосконалення існуючого механізму PIOPSumCheck, особливо під час обробки більш складних багато змінних багаточленних перевірок, забезпечуючи більш потужну функціональну підтримку. Ці вдосконалення не лише вирішують обмеження HyperPlonk, але й закладають основу для майбутніх систем доказів на основі бінарних полів.
! [Дослідження Bitlayer: Аналіз принципів Бініуса Старка та оптимізаційне мислення])https://img-cdn.gateio.im/webp-social/moments-1fb9ecbf9b3b2beaec758f3ab686a012.webp(
) 2.3 PIOP: новий многолінійний зсув аргумент------доступний для булевого гіперкуба
У протоколі Binius конструкція та обробка віртуальних многочленів є однією з ключових технологій, що дозволяє ефективно генерувати та оперувати многочленами, які походять від вхідних дескрипторів або інших віртуальних многочленів.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
Аналіз принципів Binius STARKs: інновації в двійкових полях та оптимізація продуктивності
Аналіз принципів Binius STARKs та роздуми про їх оптимізацію
1 Вступ
На відміну від SNARK, основаних на еліптичних кривих, STARK можна вважати SNARK, основаними на хешах. Один з основних причин низької ефективності STARK: більшість чисел у реальних програмах є досить малими, такими як індекси в циклах for, булеві значення, лічильники тощо. Однак, щоб забезпечити безпеку доказів, заснованих на дереві Меркла, під час розширення даних за допомогою кодування Ріда-Соломона, багато додаткових зайвих значень займають весь простір, навіть якщо початкове значення саме по собі є дуже малим. Щоб вирішити цю проблему, зменшення розміру простору стало ключовою стратегією.
Перший покоління STARKs має ширину кодування 252 біт, друге покоління — 64 біти, третє покоління — 32 біти, але 32-бітна ширина кодування все ще має значну кількість витраченого простору. У порівнянні з цим, двійкове поле дозволяє безпосередньо виконувати операції над бітами, кодування є компактним і ефективним без будь-яких витрат простору, що можна вважати четвертим поколінням STARKs.
У порівнянні з новими дослідженнями, такими як Goldilocks, BabyBear, Mersenne31 та іншими скінченними полями, дослідження бінарних полів сягає 80-х років минулого століття. Наразі бінарні поля широко застосовуються в криптографії, типовими прикладами є:
Коли використовуються менші поля, операція розширення полів стає все важливішою для забезпечення безпеки. А бінарне поле, що використовується Binius, повністю покладається на операцію розширення для забезпечення своєї безпеки та фактичної придатності. Більшість поліномів, що залучені в обчислення Prover, не потребують переходу до розширеного поля, а лише працюють в основному полі, що дозволяє досягти високої ефективності в малих полях. Проте випадкові перевірки точок і обчислення FRI все ще потребують поглиблення до більшого розширеного поля, щоб забезпечити необхідну безпеку.
Під час побудови системи доказів на основі бінарної області існує 2 практичні проблеми: розмір області, що використовується для обчислення відстеження в STARKs, повинен бути більшим за ступінь полінома; під час зобов'язань Меркле-дерева в STARKs необхідно виконати кодування Ріда-Соломона, розмір області, що використовується, повинен бути більшим за розмір після кодування.
Binius запропонував інноваційне рішення, яке окремо вирішує ці дві проблеми, та реалізує це шляхом представлення однакових даних двома різними способами: по-перше, використовуючи багатозмінний (, а саме багатолінійний )многочлен замість однозмінного многочлена, представляючи всю обчислювальну траєкторію через його значення на "гіперкубах" (hypercubes); по-друге, оскільки довжина кожного виміру гіперкуба дорівнює 2, стандартне розширення Ріда-Соломона, як у STARKs, не може бути виконано, але гіперкуб можна розглядати як квадрат (square), на основі якого проводиться розширення Ріда-Соломона. Цей метод значно підвищує ефективність кодування та обчислювальні можливості, забезпечуючи при цьому безпеку.
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) становить основу його обчислень, що дозволяє спростити обчислення у двійкових полях. По-друге, Binius адаптував перевірку продуктів та перестановок HyperPlonk у своєму інтерактивному протоколі Oracle доказів (PIOP), що забезпечує безпечну та ефективну перевірку узгодженості між змінними та їх перестановками. По-третє, протокол вводить новий багаторазовий доказ зсуву, оптимізуючи ефективність перевірки багатолінійних відносин на малих полях. По-четверте, Binius використовує удосконалену версію доказу пошуку Lasso, що забезпечує гнучкість та високу безпеку механізму пошуку. Нарешті, протокол використовує схему зобов'язань малополіномів (Small-Field PCS), що дозволяє реалізувати ефективну систему доказів у двійкових полях і зменшує витрати, які зазвичай пов'язані з великими полями.
2.1 Обмежене поле: арифметика на основі веж бінарних полів
Тау-двійкове поле є ключем до реалізації швидких перевіряємих обчислень, що обумовлено двома основними аспектами: ефективними обчисленнями та ефективною арифметикою. Двійкове поле за своєю суттю підтримує високо ефективні арифметичні операції, що робить його ідеальним вибором для криптографічних застосувань, чутливих до вимог щодо продуктивності. Крім того, структура двійкового поля підтримує спрощений процес арифметики, тобто операції, що виконуються в двійковому полі, можуть бути представлені в компактній та легко перевіряємій алгебраїчній формі. Ці характеристики, разом із здатністю повною мірою використати його ієрархічні особливості через тау-структуру, роблять двійкове поле особливо придатним для таких масштабованих систем доказів, як Binius.
Термін "canonical" відноситься до унікального та прямого способу представлення елементів у бінарному полі. Наприклад, у найпростішому бінарному полі F2 будь-який k-бітний рядок може бути безпосередньо відображений на k-бітний елемент бінарного поля. Це відрізняється від простих полів, які не можуть надати таке нормативне представлення в заданій кількості бітів. Хоча 32-бітне просте поле може містити 32 біти, не кожен 32-бітний рядок може унікально відповідати одному елементу поля, в той час як бінарне поле має цю зручність однозначного відображення. У простому полі Fp поширені методи редукції включають редукцію Барретта, редукцію Монтгомері та спеціальні методи редукції для певних скінченних полів, таких як Мерсенна-31 або Goldilocks-64. У бінарному полі F2k зазвичай використовуються методи редукції, такі як спеціальна редукція (, як у AES, редукція Монтгомері ), як у POLYVAL, та рекурсивна редукція (, як у Tower ). У статті "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" зазначається, що в бінарному полі при виконанні додавання та множення не потрібно вводити перенесення, і обчислення квадратів у бінарному полі є дуже ефективним, оскільки воно дотримується спрощеного правила (X + Y )2 = X2 + Y 2.
Як показано на малюнку 1, 128-бітний рядок: цей рядок можна інтерпретувати різними способами в контексті бінарної області. Його можна розглядати як унікальний елемент у 128-бітній бінарній області або інтерпретувати як два 64-бітних елемента вежі, чотири 32-бітних елемента вежі, 16 восьмибітних елементів вежі або 128 елементів області F2. Гнучкість такого подання не вимагає жодних обчислювальних витрат, це просто перетворення типу рядка (typecast), що є дуже цікавою та корисною властивістю. Водночас, маленькі елементи області можуть бути упаковані в більші елементи області без додаткових обчислювальних витрат. Протокол Binius використовує цю особливість для підвищення обчислювальної ефективності. Крім того, у статті «On Efficient Inversion in Tower Fields of Characteristic Two» розглядається обчислювальна складність множення, піднесення до квадрату та обернення в n-бітній вежі бінарної області, що розкладається на m-бітні підобласті (.
![Bitlayer Research: Аналіз принципів Binius STARKs та його оптимізаційні міркування])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
) 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 підвищив гнучкість і ефективність протоколу шляхом вдосконалення існуючого механізму PIOPSumCheck, особливо під час обробки більш складних багато змінних багаточленних перевірок, забезпечуючи більш потужну функціональну підтримку. Ці вдосконалення не лише вирішують обмеження HyperPlonk, але й закладають основу для майбутніх систем доказів на основі бінарних полів.
! [Дослідження Bitlayer: Аналіз принципів Бініуса Старка та оптимізаційне мислення])https://img-cdn.gateio.im/webp-social/moments-1fb9ecbf9b3b2beaec758f3ab686a012.webp(
) 2.3 PIOP: новий многолінійний зсув аргумент------доступний для булевого гіперкуба
У протоколі Binius конструкція та обробка віртуальних многочленів є однією з ключових технологій, що дозволяє ефективно генерувати та оперувати многочленами, які походять від вхідних дескрипторів або інших віртуальних многочленів.