أحد الأسباب الرئيسية لانخفاض كفاءة STARKs هو أن معظم القيم في البرامج الفعلية صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والمعدادات، وغيرها. ومع ذلك، لضمان أمان الإثبات المستند إلى شجرة ميركل، يتم استخدام ترميز ريد-سولومون لتوسيع البيانات، مما يؤدي إلى أن العديد من القيم الزائدة ستشغل المجال بالكامل، حتى لو كانت القيم الأصلية نفسها صغيرة جداً. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
كما هو موضح في الجدول 1، فإن عرض ترميز الجيل الأول من STARKs هو 252 بت، وعرض ترميز الجيل الثاني من STARKs هو 64 بت، وعرض ترميز الجيل الثالث من STARKs هو 32 بت، ولكن عرض ترميز 32 بت لا يزال يحتوي على مساحة ضائعة كبيرة. بالمقارنة، يسمح المجال الثنائي بالقيام بعمليات مباشرة على البتات، مما يجعل الترميز مضغوطًا وفعالًا دون أي مساحة ضائعة، أي الجيل الرابع من STARKs.
الجدول 1: مسار تطوير STARKs
| الجبر | عرض الترميز | مثال |
|------|----------|------|
| الجيل الأول | 252 بت | Ethereum STARKs |
| الجيل الثاني | 64 بت | Plonky2 |
| الجيل الثالث | 32 بت | BabyBear |
| الجيل الرابع | 1bit | Binius |
بالمقارنة مع Goldilocks و BabyBear و Mersenne31 وغيرها من الاكتشافات الجديدة في السنوات الأخيرة في المجالات المحدودة، فإن أبحاث المجال الثنائي تعود إلى الثمانينيات من القرن الماضي. حالياً، تم تطبيق المجال الثنائي على نطاق واسع في علم التشفير، ومن الأمثلة النموذجية:
معيار التشفير المتقدم ( AES ) ، يعتمد على مجال F28
Galois رسالة مصادقة ( GMAC )، بناءً على مجال F2128
رمز QR، يستخدم ترميز Reed-Solomon القائم على F28
بروتوكول FRI الأصلي و zk-STARK، بالإضافة إلى دالة تجزئة Grøstl التي وصلت إلى المرحلة النهائية من SHA-3، والتي تعتمد على مجال F28، وهي خوارزمية تجزئة مناسبة للغاية للتكرار.
عند استخدام مجالات أصغر، تصبح عملية توسيع المجال أكثر أهمية لضمان الأمان. يعتمد المجال الثنائي الذي يستخدمه Binius بشكل كامل على توسيع المجال لضمان أمانه وفعاليته العملية. لا تحتاج معظم المتعددة الحدود المعنية في حسابات Prover إلى الدخول في توسيع المجال، بل يمكنها العمل فقط ضمن المجال الأساسي، مما يحقق كفاءة عالية ضمن المجال الصغير. ومع ذلك، لا يزال يتعين على فحص النقاط العشوائية وحساب FRI التعمق في مجال توسيع أكبر لضمان الأمان المطلوب.
عند بناء نظام إثبات قائم على مجال ثنائي، هناك مشكلتان عمليتان: عند حساب تمثيل trace في STARKs، يجب أن يكون حجم المجال المستخدم أكبر من درجة كثير الحدود؛ وعند الالتزام بشجرة Merkle في STARKs، يجب إجراء ترميز Reed-Solomon، ويجب أن يكون حجم المجال المستخدم أكبر من الحجم بعد التمديد.
قدمت Binius حلاً مبتكرًا يعالج هذين المشكلتين بشكل منفصل، ويحقق ذلك من خلال تمثيل نفس البيانات بطريقتين مختلفتين: أولاً، باستخدام متعدد المتغيرات (، وهو متعدد حدود متعدد الخطوط )، بدلاً من متعدد الحدود أحادي المتغير، من خلال قيمه على "الهيبركيوب" ( hypercubes ) لتمثيل المسار الحسابي بالكامل؛ ثانيًا، نظرًا لأن طول كل بُعد من أبعاد الهيبركيوب هو 2، فإنه لا يمكن توسيع Reed-Solomon القياسي كما هو الحال في STARKs، ولكن يمكن اعتبار الهيبركيوب كأنه مربع ( square )، ويتم توسيع Reed-Solomon بناءً على هذا المربع. توفر هذه الطريقة زيادة كبيرة في كفاءة الترميز وأداء الحساب، مع ضمان الأمان.
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 وكفاءة التحقق، بل تحدد أيضًا ما إذا كان النظام يمكن أن يحقق الشفافية دون الحاجة إلى إعداد موثوق، وما إذا كان يمكن دعم ميزات موسعة مثل الإثباتات التكرارية أو الإثباتات المجمعة.
بينياس: هايبر بلونك PIOP + بريكدون PCS + مجالات ثنائية. بشكل أكثر تحديدًا، تشمل بينياس خمس تقنيات رئيسية لتحقيق كفاءتها وأمانها. أولاً، تستند بنية الحساب إلى مجالات ثنائية (towers of binary fields) مما يشكل الأساس لحساباتها، مما يتيح تنفيذ عمليات مبسطة داخل المجالات الثنائية. ثانيًا، في بروتوكول إثبات Oracle التفاعلي الخاص بها (PIOP)، تم تعديل فحص الضرب والتبديل من هايبر بلونك لضمان فحص الاتساق الأمني والفعال بين المتغيرات وتبديلها. ثالثًا، يقدم البروتوكول إثباتًا جديدًا متعدد الخطوط لتحسين كفاءة التحقق من العلاقات متعددة الخطوط على مجالات صغيرة. رابعًا، تعتمد بينياس نسخة محسنة من إثبات البحث Lasso، مما يوفر مرونة وأمان قوي لآلية البحث. أخيرًا، يستخدم البروتوكول خطة التزام متعددة الحدود على مجالات صغيرة (Small-Field PCS)، مما يمكّنه من تنفيذ نظام إثبات فعال على المجالات الثنائية ويقلل من التكاليف المرتبطة عادةً بالمجالات الكبيرة.
2.1 المجالات المحدودة: الحساب القائم على أبراج الحقول الثنائية
مجال ثنائي البرج هو المفتاح لتحقيق حسابات سريعة يمكن التحقق منها، ويرجع ذلك أساسًا إلى جانبين: الحسابات الفعالة والتعميق الفعال. يدعم المجال الثنائي بطبيعته عمليات حسابية عالية الكفاءة، مما يجعله خيارًا مثاليًا للتطبيقات التشفيرية الحساسة لمتطلبات الأداء. بالإضافة إلى ذلك، تدعم بنية المجال الثنائي عملية تعميق مبسطة، مما يعني أن العمليات المنفذة على المجال الثنائي يمكن تمثيلها بشكل جبرية مضغوط وسهلة التحقق. هذه الخصائص، إلى جانب القدرة على الاستفادة الكاملة من ميزات هيكله الهرمي من خلال بنية البرج، تجعل المجال الثنائي مناسبًا بشكل خاص لأنظمة الإثبات القابلة للتوسع مثل Binius.
تشير "canonical" إلى التمثيل الفريد والمباشر للعناصر في مجال ثنائي. على سبيل المثال، في المجال الثنائي الأساسي F2، يمكن لأي سلسلة من k بت أن تُعكس مباشرة إلى عنصر في المجال الثنائي k بت. هذا يختلف عن المجال الأولي، حيث لا يمكن أن يوفر تمثيلاً معيارياً في عدد محدد من البتات. على الرغم من أن المجال الأولي المكون من 32 بت يمكن أن يحتوي على 32 بت، إلا أنه ليس كل سلسلة من 32 بت يمكن أن تتوافق بشكل فريد مع عنصر في المجال، بينما يوفر المجال الثنائي سهولة هذا التوافق الواحد لواحد. في مجال الأعداد الأولية Fp، تشمل طرق الاختزال الشائعة اختزال بارّيت، اختزال مونتغومري، وطرق اختزال خاصة لمجالات محدودة مثل Mersenne-31 أو Goldilocks-64. في المجال الثنائي F2k، تشمل طرق الاختزال الشائعة اختزال خاص ( كما هو مستخدم في AES )، اختزال مونتغومري ( كما هو مستخدم في POLYVAL ) واختزال تكراري ( كما هو مستخدم في Tower ). تشير الورقة "استكشاف مساحة تصميم تنفيذات الأجهزة ECC لمجال الأعداد الأولية مقابل المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى حمل في عمليات الجمع والضرب، وأن عملية تربيع المجال الثنائي فعالة جداً لأنها تتبع قاعدة التبسيط (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في مجال ثنائي 128 بت، أو يمكن تحليلها إلى عنصرين من عناصر مجال البرج 64 بت، أو أربعة عناصر من عناصر مجال البرج 32 بت، أو 16 عنصرًا من عناصر مجال البرج 8 بت، أو 128 عنصرًا من عناصر مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل هي مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة للاهتمام ومفيدة جدًا. في الوقت نفسه، يمكن حزم عناصر المجال الصغيرة في عناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. يستفيد بروتوكول Binius من هذه الميزة لتعزيز كفاءة الحساب. بالإضافة إلى ذلك، تستكشف الورقة "عن الانعكاس الفعال في مجالات البرج ذات الخصائص الثنائية" تعقيد الحسابات لعمليات الضرب والتربيع والعكس في مجال البرج الثنائي n بت ( القابل للتفكيك إلى مجال فرعي m بت ).
2.2 PIOP: النسخة المعدلة من منتج HyperPlonk و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 يمكنه مواصلة المعالجة، مما يسمح بالتوسع إلى أي قيمة مضاعفة.
التحقق من التباديل عبر الأعمدة: HyperPlonk لا يدعم هذه الميزة؛ بينما يدعم Binius إجراء التحقق من التباديل بين عدة أعمدة، مما يمكّن Binius من التعامل مع حالات ترتيب متعددة الحدود الأكثر تعقيدًا.
لذلك، من خلال تحسين آلية PIOPSumCheck الحالية، زادت Binius من مرونة وكفاءة البروتوكول، خاصة عند التعامل مع التحقق من متعددات الحدود المعقدة ذات المتغيرات المتعددة، مما قدم دعمًا أقوى للوظائف. لم تحل هذه التحسينات فقط قيود HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات القائمة على المجال الثنائي في المستقبل.
2.3 PIOP: حجة التحول متعدد الخطوط الجديدة------تنطبق على الهيبركيوب البولياني
في بروتوكول Binius، تعدد الافتراضي
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 6
أعجبني
6
3
مشاركة
تعليق
0/400
ETHReserveBank
· منذ 15 س
داخل السلسلة تكاليف انخفضت، من لا يحب ذلك؟
شاهد النسخة الأصليةرد0
ChainChef
· منذ 22 س
نحن نطبخ بعض المعلومات الجديدة هنا... يبدو أن binius مثل صلصة مخفضة بشكل مثالي مقارنة بتلك الوصفات المتضخمة 252 بت بصراحة
Binius: تحسينات ثورية في مجال STARKs الثنائي
تحليل مبادئ Binius STARKs وأفكار تحسينها
1 المقدمة
أحد الأسباب الرئيسية لانخفاض كفاءة STARKs هو أن معظم القيم في البرامج الفعلية صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والمعدادات، وغيرها. ومع ذلك، لضمان أمان الإثبات المستند إلى شجرة ميركل، يتم استخدام ترميز ريد-سولومون لتوسيع البيانات، مما يؤدي إلى أن العديد من القيم الزائدة ستشغل المجال بالكامل، حتى لو كانت القيم الأصلية نفسها صغيرة جداً. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
كما هو موضح في الجدول 1، فإن عرض ترميز الجيل الأول من STARKs هو 252 بت، وعرض ترميز الجيل الثاني من STARKs هو 64 بت، وعرض ترميز الجيل الثالث من STARKs هو 32 بت، ولكن عرض ترميز 32 بت لا يزال يحتوي على مساحة ضائعة كبيرة. بالمقارنة، يسمح المجال الثنائي بالقيام بعمليات مباشرة على البتات، مما يجعل الترميز مضغوطًا وفعالًا دون أي مساحة ضائعة، أي الجيل الرابع من STARKs.
الجدول 1: مسار تطوير STARKs
| الجبر | عرض الترميز | مثال | |------|----------|------| | الجيل الأول | 252 بت | Ethereum STARKs | | الجيل الثاني | 64 بت | Plonky2 | | الجيل الثالث | 32 بت | BabyBear | | الجيل الرابع | 1bit | Binius |
بالمقارنة مع Goldilocks و BabyBear و Mersenne31 وغيرها من الاكتشافات الجديدة في السنوات الأخيرة في المجالات المحدودة، فإن أبحاث المجال الثنائي تعود إلى الثمانينيات من القرن الماضي. حالياً، تم تطبيق المجال الثنائي على نطاق واسع في علم التشفير، ومن الأمثلة النموذجية:
عند استخدام مجالات أصغر، تصبح عملية توسيع المجال أكثر أهمية لضمان الأمان. يعتمد المجال الثنائي الذي يستخدمه Binius بشكل كامل على توسيع المجال لضمان أمانه وفعاليته العملية. لا تحتاج معظم المتعددة الحدود المعنية في حسابات Prover إلى الدخول في توسيع المجال، بل يمكنها العمل فقط ضمن المجال الأساسي، مما يحقق كفاءة عالية ضمن المجال الصغير. ومع ذلك، لا يزال يتعين على فحص النقاط العشوائية وحساب FRI التعمق في مجال توسيع أكبر لضمان الأمان المطلوب.
عند بناء نظام إثبات قائم على مجال ثنائي، هناك مشكلتان عمليتان: عند حساب تمثيل trace في STARKs، يجب أن يكون حجم المجال المستخدم أكبر من درجة كثير الحدود؛ وعند الالتزام بشجرة Merkle في STARKs، يجب إجراء ترميز Reed-Solomon، ويجب أن يكون حجم المجال المستخدم أكبر من الحجم بعد التمديد.
قدمت Binius حلاً مبتكرًا يعالج هذين المشكلتين بشكل منفصل، ويحقق ذلك من خلال تمثيل نفس البيانات بطريقتين مختلفتين: أولاً، باستخدام متعدد المتغيرات (، وهو متعدد حدود متعدد الخطوط )، بدلاً من متعدد الحدود أحادي المتغير، من خلال قيمه على "الهيبركيوب" ( hypercubes ) لتمثيل المسار الحسابي بالكامل؛ ثانيًا، نظرًا لأن طول كل بُعد من أبعاد الهيبركيوب هو 2، فإنه لا يمكن توسيع Reed-Solomon القياسي كما هو الحال في STARKs، ولكن يمكن اعتبار الهيبركيوب كأنه مربع ( square )، ويتم توسيع Reed-Solomon بناءً على هذا المربع. توفر هذه الطريقة زيادة كبيرة في كفاءة الترميز وأداء الحساب، مع ضمان الأمان.
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 وكفاءة التحقق، بل تحدد أيضًا ما إذا كان النظام يمكن أن يحقق الشفافية دون الحاجة إلى إعداد موثوق، وما إذا كان يمكن دعم ميزات موسعة مثل الإثباتات التكرارية أو الإثباتات المجمعة.
بينياس: هايبر بلونك PIOP + بريكدون PCS + مجالات ثنائية. بشكل أكثر تحديدًا، تشمل بينياس خمس تقنيات رئيسية لتحقيق كفاءتها وأمانها. أولاً، تستند بنية الحساب إلى مجالات ثنائية (towers of binary fields) مما يشكل الأساس لحساباتها، مما يتيح تنفيذ عمليات مبسطة داخل المجالات الثنائية. ثانيًا، في بروتوكول إثبات Oracle التفاعلي الخاص بها (PIOP)، تم تعديل فحص الضرب والتبديل من هايبر بلونك لضمان فحص الاتساق الأمني والفعال بين المتغيرات وتبديلها. ثالثًا، يقدم البروتوكول إثباتًا جديدًا متعدد الخطوط لتحسين كفاءة التحقق من العلاقات متعددة الخطوط على مجالات صغيرة. رابعًا، تعتمد بينياس نسخة محسنة من إثبات البحث Lasso، مما يوفر مرونة وأمان قوي لآلية البحث. أخيرًا، يستخدم البروتوكول خطة التزام متعددة الحدود على مجالات صغيرة (Small-Field PCS)، مما يمكّنه من تنفيذ نظام إثبات فعال على المجالات الثنائية ويقلل من التكاليف المرتبطة عادةً بالمجالات الكبيرة.
2.1 المجالات المحدودة: الحساب القائم على أبراج الحقول الثنائية
مجال ثنائي البرج هو المفتاح لتحقيق حسابات سريعة يمكن التحقق منها، ويرجع ذلك أساسًا إلى جانبين: الحسابات الفعالة والتعميق الفعال. يدعم المجال الثنائي بطبيعته عمليات حسابية عالية الكفاءة، مما يجعله خيارًا مثاليًا للتطبيقات التشفيرية الحساسة لمتطلبات الأداء. بالإضافة إلى ذلك، تدعم بنية المجال الثنائي عملية تعميق مبسطة، مما يعني أن العمليات المنفذة على المجال الثنائي يمكن تمثيلها بشكل جبرية مضغوط وسهلة التحقق. هذه الخصائص، إلى جانب القدرة على الاستفادة الكاملة من ميزات هيكله الهرمي من خلال بنية البرج، تجعل المجال الثنائي مناسبًا بشكل خاص لأنظمة الإثبات القابلة للتوسع مثل Binius.
تشير "canonical" إلى التمثيل الفريد والمباشر للعناصر في مجال ثنائي. على سبيل المثال، في المجال الثنائي الأساسي F2، يمكن لأي سلسلة من k بت أن تُعكس مباشرة إلى عنصر في المجال الثنائي k بت. هذا يختلف عن المجال الأولي، حيث لا يمكن أن يوفر تمثيلاً معيارياً في عدد محدد من البتات. على الرغم من أن المجال الأولي المكون من 32 بت يمكن أن يحتوي على 32 بت، إلا أنه ليس كل سلسلة من 32 بت يمكن أن تتوافق بشكل فريد مع عنصر في المجال، بينما يوفر المجال الثنائي سهولة هذا التوافق الواحد لواحد. في مجال الأعداد الأولية Fp، تشمل طرق الاختزال الشائعة اختزال بارّيت، اختزال مونتغومري، وطرق اختزال خاصة لمجالات محدودة مثل Mersenne-31 أو Goldilocks-64. في المجال الثنائي F2k، تشمل طرق الاختزال الشائعة اختزال خاص ( كما هو مستخدم في AES )، اختزال مونتغومري ( كما هو مستخدم في POLYVAL ) واختزال تكراري ( كما هو مستخدم في Tower ). تشير الورقة "استكشاف مساحة تصميم تنفيذات الأجهزة ECC لمجال الأعداد الأولية مقابل المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى حمل في عمليات الجمع والضرب، وأن عملية تربيع المجال الثنائي فعالة جداً لأنها تتبع قاعدة التبسيط (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في مجال ثنائي 128 بت، أو يمكن تحليلها إلى عنصرين من عناصر مجال البرج 64 بت، أو أربعة عناصر من عناصر مجال البرج 32 بت، أو 16 عنصرًا من عناصر مجال البرج 8 بت، أو 128 عنصرًا من عناصر مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل هي مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة للاهتمام ومفيدة جدًا. في الوقت نفسه، يمكن حزم عناصر المجال الصغيرة في عناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. يستفيد بروتوكول Binius من هذه الميزة لتعزيز كفاءة الحساب. بالإضافة إلى ذلك، تستكشف الورقة "عن الانعكاس الفعال في مجالات البرج ذات الخصائص الثنائية" تعقيد الحسابات لعمليات الضرب والتربيع والعكس في مجال البرج الثنائي n بت ( القابل للتفكيك إلى مجال فرعي m بت ).
! أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثل
2.2 PIOP: النسخة المعدلة من منتج HyperPlonk و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 يمكنه مواصلة المعالجة، مما يسمح بالتوسع إلى أي قيمة مضاعفة.
التحقق من التباديل عبر الأعمدة: HyperPlonk لا يدعم هذه الميزة؛ بينما يدعم Binius إجراء التحقق من التباديل بين عدة أعمدة، مما يمكّن Binius من التعامل مع حالات ترتيب متعددة الحدود الأكثر تعقيدًا.
لذلك، من خلال تحسين آلية PIOPSumCheck الحالية، زادت Binius من مرونة وكفاءة البروتوكول، خاصة عند التعامل مع التحقق من متعددات الحدود المعقدة ذات المتغيرات المتعددة، مما قدم دعمًا أقوى للوظائف. لم تحل هذه التحسينات فقط قيود HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات القائمة على المجال الثنائي في المستقبل.
2.3 PIOP: حجة التحول متعدد الخطوط الجديدة------تنطبق على الهيبركيوب البولياني
في بروتوكول Binius، تعدد الافتراضي