أحد الأسباب الرئيسية لانخفاض كفاءة STARKs هو: أن معظم الأرقام في البرامج الفعلية صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والعدادات، وما إلى ذلك. ومع ذلك، لضمان أمان الإثباتات المستندة إلى شجرة ميركل، عند توسيع البيانات باستخدام ترميز ريد-سولومون، ستشغل العديد من القيم الزائدة الإضافية المجال بالكامل، حتى لو كانت القيم الأصلية صغيرة جدًا. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
تمتلك أكواد STARKs من الجيل الأول عرض بت يبلغ 252 بت، بينما يبلغ عرض بت أكواد STARKs من الجيل الثاني 64 بت، وأكواد STARKs من الجيل الثالث 32 بت، إلا أن عرض بت 32 بت لا يزال يحتوي على مساحة كبيرة من الهدر. بالمقارنة، يسمح المجال الثنائي بالعمل مباشرة على البتات، مما يجعل الترميز مضغوطًا وفعالًا دون أي مساحة هدر، أي الجيل الرابع من STARKs.
بالمقارنة مع Goldilocks و BabyBear و Mersenne31 وغيرها من الاكتشافات الحديثة في السنوات الأخيرة في الحقول المحدودة، يمكن تتبع أبحاث الحقول الثنائية إلى الثمانينيات من القرن الماضي. حاليًا، تم تطبيق الحقول الثنائية على نطاق واسع في علم التشفير، ومن الأمثلة النموذجية ما يلي:
معيار التشفير المتقدم ( AES )، يعتمد على مجال F28;
Galois رمز التحقق ( GMAC ) ، بناءً على مجال F2128;
رمز الاستجابة السريعة، يستخدم تشفير ريد-سولومون المعتمد على F28;
بروتوكولات FRI الأصلية و zk-STARK، بالإضافة إلى دالة التجزئة Grøstl التي وصلت إلى نهائيات SHA-3، والتي تستند إلى مجال F28، هي خوارزمية تجزئة مناسبة جدًا للتكرار.
عند استخدام مجالات أصغر، تصبح عمليات توسيع المجال أكثر أهمية لضمان الأمان. تعتمد المجالات الثنائية المستخدمة من قبل Binius تمامًا على توسيع المجال لضمان أمانها وقابليتها للاستخدام الفعلي. لا تحتاج معظم المتعددات التي تتضمنها حسابات Prover إلى الدخول في توسيع المجال، بل يمكنها العمل فقط في المجال الأساسي، مما يحقق كفاءة عالية في المجالات الصغيرة. ومع ذلك، لا يزال يتعين على فحص النقاط العشوائية وحساب FRI الدخول في توسيع مجال أكبر لضمان الأمان المطلوب.
عند بناء نظام إثبات يعتمد على مجال ثنائي، هناك مشكلتان عمليتان: في STARKs، يجب أن يكون حجم المجال المستخدم لحساب تمثيل trace أكبر من درجة كثير الحدود؛ وعند الالتزام بشجرة 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 وكفاءة التحقق، بل تحدد أيضًا ما إذا كان النظام يمكن أن يحقق الشفافية دون الحاجة إلى إعداد موثوق، وما إذا كان يمكن أن يدعم وظائف موسعة مثل إثباتات التكرار أو إثباتات التجميع.
بينيوس: HyperPlonk PIOP + Brakedown PCS + المجال الثنائي. على وجه التحديد ، يتضمن Binius خمس تقنيات رئيسية لتحقيق كفاءته وسلامته. أولا, يشكل الحساب المستند إلى (towers المجال الثنائي للبرج من fields) الثنائي أساس حسابه, التي يمكن أن تحقق عمليات مبسطة في المجال الثنائي. ثانيا ، في بروتوكول إثبات Oracle التفاعلي (PIOP) ، يقوم Binius بتكييف منتج HyperPlonk وفحص التقليب لضمان فحص الاتساق الآمن والفعال بين المتغيرات وتبديلها. ثالثا ، يقدم البروتوكول وسيطة إزاحة جديدة متعددة الخطوط لتحسين كفاءة التحقق من العلاقة متعددة الخطوط في مجال صغير. رابعا ، يتبنى Binius نسخة محسنة من وسيطة البحث Lasso ، والتي توفر المرونة والأمان القوي لآلية البحث. أخيرا ، يستخدم البروتوكول مخطط الالتزام متعدد الحدود للمجال الصغير ( PCS) الحقول الصغيرة ، والذي يمكنه من تنفيذ نظام إثبات فعال على المجالات الثنائية وتقليل النفقات العامة المرتبطة عادة بالمجالات الكبيرة.
2.1 الحقول المحدودة: حساب مبني على أبراج الحقول الثنائية
تُعتبر مجالات الثنائية البرجية مفتاحًا لتحقيق حسابات سريعة يمكن التحقق منها، ويرجع ذلك أساسًا إلى جانبين: الحساب الفعال والتقنيات الرياضية الفعالة. تدعم مجالات الثنائية بشكل أساسي عمليات حسابية عالية الكفاءة، مما يجعلها خيارًا مثاليًا للتطبيقات التشفيرية الحساسة لمتطلبات الأداء. بالإضافة إلى ذلك، تدعم بنية مجالات الثنائية عملية رياضية مبسطة، حيث يمكن تمثيل العمليات التي تُنفذ على مجالات الثنائية بشكل جبرٍ مضغوط وسهل التحقق منه. هذه الميزات، إلى جانب القدرة على الاستفادة الكاملة من خصائصها الهرمية من خلال الهيكل البرجي، تجعل مجالات الثنائية مناسبة بشكل خاص لأنظمة الإثبات القابلة للتوسع مثل Binius.
"canonical" تشير إلى الطريقة الفريدة والمباشرة لتمثيل العناصر في المجال الثنائي. على سبيل المثال، في أبسط مجال ثنائي F2، يمكن لأي سلسلة من k بت أن تُطابق مباشرة عنصر مجال ثنائي k بت. هذا يختلف عن المجال الأولي، حيث لا يمكن للمجال الأولي توفير هذا التمثيل القياسي ضمن عدد محدد من البتات. على الرغم من أن المجال الأولي 32 بت يمكن أن يحتوي ضمن 32 بت، إلا أن ليس كل سلسلة 32 بت يمكن أن تتطابق بشكل فريد مع عنصر مجال، بينما يوفر المجال الثنائي هذه الميزة من التطابق الواحد لواحد. في المجال الأولي Fp، تشمل طرق الاختزال الشائعة اختزال بارريت، واختزال مونتغومري، بالإضافة إلى طرق اختزال خاصة لمجالات محدودة مثل Mersenne-31 أو Goldilocks-64. في المجال الثنائي F2k، تشمل طرق الاختزال الشائعة اختزال خاص ( كما هو مستخدم في AES )، واختزال مونتغومري ( كما هو مستخدم في POLYVAL )، واختزال تكراري ( كما هو مستخدم في Tower ). تشير الورقة "استكشاف تصميم مساحة الحقول الأولية مقابل تنفيذات ECC-Hardware في المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى إدخال حمل في العمليات الجمع والضرب، وأن عملية التربيع في المجال الثنائي فعالة جداً لأنها تتبع القاعدة المبسطة (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة بطول 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في مجال ثنائي بطول 128 بت، أو يمكن تحليلها إلى عنصرين في مجال بطول 64 بت، أو أربعة عناصر في مجال بطول 32 بت، أو ستة عشر عنصرًا في مجال بطول 8 بت، أو 128 عنصرًا في مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة للاهتمام ومفيدة للغاية. في الوقت نفسه، يمكن تعبئة العناصر الصغيرة في عناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. بروتوكول بينيوس يستفيد من هذه الميزة لتحسين الكفاءة الحسابية. بالإضافة إلى ذلك، تستكشف الورقة البحثية "On Efficient Inversion in Tower Fields of Characteristic Two" تعقيد الحساب لعمليات الضرب والتربيع والعكس في مجالات ثنائية بطول n المكونة من m مواقع فرعية (.
! [أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثل])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
) 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 قد أحرز تحسينات في 3 مجالات التالية:
تحسين ProductCheck: في HyperPlonk، يتطلب ProductCheck أن يكون المقام U غير صفري في جميع أنحاء مكعب الأبعاد، ويجب أن يكون الناتج مساوياً لقيمة محددة؛ قامت Binius بتبسيط هذه العملية من خلال تخصيص تلك القيمة إلى 1، مما يقلل من تعقيد الحساب.
معالجة مشكلة القسمة على الصفر: HyperPlonk لم تتمكن من معالجة حالة القسمة على الصفر بشكل كافٍ، مما أدى إلى عدم القدرة على التأكيد على أن U غير صفرية على الهيبر كيوبي; Binius عالج هذه المشكلة بشكل صحيح، حتى في حالة كون المقام صفرًا، يمكن لـ Binius's ProductCheck الاستمرار في المعالجة، مما يسمح بالتوسع إلى أي قيمة حاصل ضرب.
تحقق من تبديل الأعمدة: HyperPlonk لا يدعم هذه الميزة; تدعم Binius إجراء تحقق من التبديل بين عدة أعمدة، مما يمكّن Binius من معالجة حالات ترتيب متعددة الحدود الأكثر تعقيداً.
لذلك، قامت Binius بتحسين آلية PIOPSumCheck الحالية، مما زاد من مرونة وكفاءة البروتوكول، خاصة عند معالجة التحقق من المتعددات المتغيرة المعقدة، مما يوفر دعمًا وظيفيًا أقوى. لم تحل هذه التحسينات فقط القيود الموجودة في HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات المستندة إلى الحقول الثنائية في المستقبل.
! [أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثلي])https://img-cdn.gateio.im/webp-social/moments-1fb9ecbf9b3b2beaec758f3ab686a012.webp(
) 2.3 PIOP: حجة التحول المتعدد الخطوط الجديدة ------ مناسبة للهيبر كيب البولياني
في بروتوكول Binius، فإن بناء ومعالجة المتعددات الافتراضية هي واحدة من التقنيات الرئيسية، حيث يمكنها بفعالية توليد والتعامل مع المتعددات المشتقة من مقبض الإدخال أو متعددات افتراضية أخرى. فيما يلي طريقتان رئيسيتان:
Packing:تتم هذه الطريقة من خلال
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 7
أعجبني
7
7
مشاركة
تعليق
0/400
OnChain_Detective
· منذ 14 س
بصراحة، يبدو أن نمط التحسين هذا مشكوك فيه للغاية... نحتاج إلى فحص أقرب لتلك الادعاءات المتعلقة بالنطاق الثنائي
شاهد النسخة الأصليةرد0
0xTherapist
· منذ 18 س
ما الذي يهم في 32 بت، أليس مجرد إهدار للمساحة؟
شاهد النسخة الأصليةرد0
CryptoCrazyGF
· منذ 21 س
ما فائدة كل هذا البحث إذا لم يكن داخل السلسلة أسرع؟
شاهد النسخة الأصليةرد0
MemeCurator
· منذ 21 س
إذا لم تفهم ذلك، فسوف تفهمه!
شاهد النسخة الأصليةرد0
LiquidityWhisperer
· منذ 21 س
التخلص من الفائض الثنائي يبدو ممتعاً
شاهد النسخة الأصليةرد0
AirdropHunter007
· منذ 21 س
استاركس يمكن أن يخسر الوزن أيضاً رائع!
شاهد النسخة الأصليةرد0
TopEscapeArtist
· منذ 21 س
أوه، هل هذا هو الإيقاع الذي يريد اختراق مستويات القاع من الناحية التقنية؟ التجربة التاريخية تخبرني أنها كلها فخاخ~
تحليل بروتوكول Binius: تنفيذ STARKs الفعال على مجال ثنائي
تحليل مبادئ Binius STARKs وأفكار تحسينها
1 المقدمة
أحد الأسباب الرئيسية لانخفاض كفاءة STARKs هو: أن معظم الأرقام في البرامج الفعلية صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والعدادات، وما إلى ذلك. ومع ذلك، لضمان أمان الإثباتات المستندة إلى شجرة ميركل، عند توسيع البيانات باستخدام ترميز ريد-سولومون، ستشغل العديد من القيم الزائدة الإضافية المجال بالكامل، حتى لو كانت القيم الأصلية صغيرة جدًا. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
تمتلك أكواد STARKs من الجيل الأول عرض بت يبلغ 252 بت، بينما يبلغ عرض بت أكواد STARKs من الجيل الثاني 64 بت، وأكواد STARKs من الجيل الثالث 32 بت، إلا أن عرض بت 32 بت لا يزال يحتوي على مساحة كبيرة من الهدر. بالمقارنة، يسمح المجال الثنائي بالعمل مباشرة على البتات، مما يجعل الترميز مضغوطًا وفعالًا دون أي مساحة هدر، أي الجيل الرابع من STARKs.
بالمقارنة مع Goldilocks و BabyBear و Mersenne31 وغيرها من الاكتشافات الحديثة في السنوات الأخيرة في الحقول المحدودة، يمكن تتبع أبحاث الحقول الثنائية إلى الثمانينيات من القرن الماضي. حاليًا، تم تطبيق الحقول الثنائية على نطاق واسع في علم التشفير، ومن الأمثلة النموذجية ما يلي:
معيار التشفير المتقدم ( AES )، يعتمد على مجال F28;
Galois رمز التحقق ( GMAC ) ، بناءً على مجال F2128;
رمز الاستجابة السريعة، يستخدم تشفير ريد-سولومون المعتمد على F28;
بروتوكولات FRI الأصلية و zk-STARK، بالإضافة إلى دالة التجزئة Grøstl التي وصلت إلى نهائيات SHA-3، والتي تستند إلى مجال F28، هي خوارزمية تجزئة مناسبة جدًا للتكرار.
عند استخدام مجالات أصغر، تصبح عمليات توسيع المجال أكثر أهمية لضمان الأمان. تعتمد المجالات الثنائية المستخدمة من قبل Binius تمامًا على توسيع المجال لضمان أمانها وقابليتها للاستخدام الفعلي. لا تحتاج معظم المتعددات التي تتضمنها حسابات Prover إلى الدخول في توسيع المجال، بل يمكنها العمل فقط في المجال الأساسي، مما يحقق كفاءة عالية في المجالات الصغيرة. ومع ذلك، لا يزال يتعين على فحص النقاط العشوائية وحساب FRI الدخول في توسيع مجال أكبر لضمان الأمان المطلوب.
عند بناء نظام إثبات يعتمد على مجال ثنائي، هناك مشكلتان عمليتان: في STARKs، يجب أن يكون حجم المجال المستخدم لحساب تمثيل trace أكبر من درجة كثير الحدود؛ وعند الالتزام بشجرة 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 وكفاءة التحقق، بل تحدد أيضًا ما إذا كان النظام يمكن أن يحقق الشفافية دون الحاجة إلى إعداد موثوق، وما إذا كان يمكن أن يدعم وظائف موسعة مثل إثباتات التكرار أو إثباتات التجميع.
بينيوس: HyperPlonk PIOP + Brakedown PCS + المجال الثنائي. على وجه التحديد ، يتضمن Binius خمس تقنيات رئيسية لتحقيق كفاءته وسلامته. أولا, يشكل الحساب المستند إلى (towers المجال الثنائي للبرج من fields) الثنائي أساس حسابه, التي يمكن أن تحقق عمليات مبسطة في المجال الثنائي. ثانيا ، في بروتوكول إثبات Oracle التفاعلي (PIOP) ، يقوم Binius بتكييف منتج HyperPlonk وفحص التقليب لضمان فحص الاتساق الآمن والفعال بين المتغيرات وتبديلها. ثالثا ، يقدم البروتوكول وسيطة إزاحة جديدة متعددة الخطوط لتحسين كفاءة التحقق من العلاقة متعددة الخطوط في مجال صغير. رابعا ، يتبنى Binius نسخة محسنة من وسيطة البحث Lasso ، والتي توفر المرونة والأمان القوي لآلية البحث. أخيرا ، يستخدم البروتوكول مخطط الالتزام متعدد الحدود للمجال الصغير ( PCS) الحقول الصغيرة ، والذي يمكنه من تنفيذ نظام إثبات فعال على المجالات الثنائية وتقليل النفقات العامة المرتبطة عادة بالمجالات الكبيرة.
2.1 الحقول المحدودة: حساب مبني على أبراج الحقول الثنائية
تُعتبر مجالات الثنائية البرجية مفتاحًا لتحقيق حسابات سريعة يمكن التحقق منها، ويرجع ذلك أساسًا إلى جانبين: الحساب الفعال والتقنيات الرياضية الفعالة. تدعم مجالات الثنائية بشكل أساسي عمليات حسابية عالية الكفاءة، مما يجعلها خيارًا مثاليًا للتطبيقات التشفيرية الحساسة لمتطلبات الأداء. بالإضافة إلى ذلك، تدعم بنية مجالات الثنائية عملية رياضية مبسطة، حيث يمكن تمثيل العمليات التي تُنفذ على مجالات الثنائية بشكل جبرٍ مضغوط وسهل التحقق منه. هذه الميزات، إلى جانب القدرة على الاستفادة الكاملة من خصائصها الهرمية من خلال الهيكل البرجي، تجعل مجالات الثنائية مناسبة بشكل خاص لأنظمة الإثبات القابلة للتوسع مثل Binius.
"canonical" تشير إلى الطريقة الفريدة والمباشرة لتمثيل العناصر في المجال الثنائي. على سبيل المثال، في أبسط مجال ثنائي F2، يمكن لأي سلسلة من k بت أن تُطابق مباشرة عنصر مجال ثنائي k بت. هذا يختلف عن المجال الأولي، حيث لا يمكن للمجال الأولي توفير هذا التمثيل القياسي ضمن عدد محدد من البتات. على الرغم من أن المجال الأولي 32 بت يمكن أن يحتوي ضمن 32 بت، إلا أن ليس كل سلسلة 32 بت يمكن أن تتطابق بشكل فريد مع عنصر مجال، بينما يوفر المجال الثنائي هذه الميزة من التطابق الواحد لواحد. في المجال الأولي Fp، تشمل طرق الاختزال الشائعة اختزال بارريت، واختزال مونتغومري، بالإضافة إلى طرق اختزال خاصة لمجالات محدودة مثل Mersenne-31 أو Goldilocks-64. في المجال الثنائي F2k، تشمل طرق الاختزال الشائعة اختزال خاص ( كما هو مستخدم في AES )، واختزال مونتغومري ( كما هو مستخدم في POLYVAL )، واختزال تكراري ( كما هو مستخدم في Tower ). تشير الورقة "استكشاف تصميم مساحة الحقول الأولية مقابل تنفيذات ECC-Hardware في المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى إدخال حمل في العمليات الجمع والضرب، وأن عملية التربيع في المجال الثنائي فعالة جداً لأنها تتبع القاعدة المبسطة (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة بطول 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في مجال ثنائي بطول 128 بت، أو يمكن تحليلها إلى عنصرين في مجال بطول 64 بت، أو أربعة عناصر في مجال بطول 32 بت، أو ستة عشر عنصرًا في مجال بطول 8 بت، أو 128 عنصرًا في مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة للاهتمام ومفيدة للغاية. في الوقت نفسه، يمكن تعبئة العناصر الصغيرة في عناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. بروتوكول بينيوس يستفيد من هذه الميزة لتحسين الكفاءة الحسابية. بالإضافة إلى ذلك، تستكشف الورقة البحثية "On Efficient Inversion in Tower Fields of Characteristic Two" تعقيد الحساب لعمليات الضرب والتربيع والعكس في مجالات ثنائية بطول n المكونة من m مواقع فرعية (.
! [أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثل])https://img-cdn.gateio.im/webp-social/moments-5775a629f494c4e01e2b74d864fa4100.webp(
) 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 قد أحرز تحسينات في 3 مجالات التالية:
تحسين ProductCheck: في HyperPlonk، يتطلب ProductCheck أن يكون المقام U غير صفري في جميع أنحاء مكعب الأبعاد، ويجب أن يكون الناتج مساوياً لقيمة محددة؛ قامت Binius بتبسيط هذه العملية من خلال تخصيص تلك القيمة إلى 1، مما يقلل من تعقيد الحساب.
معالجة مشكلة القسمة على الصفر: HyperPlonk لم تتمكن من معالجة حالة القسمة على الصفر بشكل كافٍ، مما أدى إلى عدم القدرة على التأكيد على أن U غير صفرية على الهيبر كيوبي; Binius عالج هذه المشكلة بشكل صحيح، حتى في حالة كون المقام صفرًا، يمكن لـ Binius's ProductCheck الاستمرار في المعالجة، مما يسمح بالتوسع إلى أي قيمة حاصل ضرب.
تحقق من تبديل الأعمدة: HyperPlonk لا يدعم هذه الميزة; تدعم Binius إجراء تحقق من التبديل بين عدة أعمدة، مما يمكّن Binius من معالجة حالات ترتيب متعددة الحدود الأكثر تعقيداً.
لذلك، قامت Binius بتحسين آلية PIOPSumCheck الحالية، مما زاد من مرونة وكفاءة البروتوكول، خاصة عند معالجة التحقق من المتعددات المتغيرة المعقدة، مما يوفر دعمًا وظيفيًا أقوى. لم تحل هذه التحسينات فقط القيود الموجودة في HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات المستندة إلى الحقول الثنائية في المستقبل.
! [أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثلي])https://img-cdn.gateio.im/webp-social/moments-1fb9ecbf9b3b2beaec758f3ab686a012.webp(
) 2.3 PIOP: حجة التحول المتعدد الخطوط الجديدة ------ مناسبة للهيبر كيب البولياني
في بروتوكول Binius، فإن بناء ومعالجة المتعددات الافتراضية هي واحدة من التقنيات الرئيسية، حيث يمكنها بفعالية توليد والتعامل مع المتعددات المشتقة من مقبض الإدخال أو متعددات افتراضية أخرى. فيما يلي طريقتان رئيسيتان: