أحد الأسباب الرئيسية لضعف كفاءة STARKs هو: أن معظم القيم العددية في البرامج الفعلية تكون صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والمعدادات، وما إلى ذلك. ومع ذلك، لضمان أمان الإثبات المستند إلى شجرة Merkle، يتم استخدام تشفير Reed-Solomon لتوسيع البيانات، حيث تحتل العديد من القيم الزائدة الإضافية المجال بأكمله، حتى لو كانت القيمة الأصلية صغيرة جداً. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
عرض عرض الترميز من الجيل الأول من 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، يجب أن تكون حجم المجال المستخدم أكبر من درجة متعددة الحدود؛ وفي STARKs عند الالتزام بشجرة Merkle، يجب إجراء ترميز Reed-Solomon، ويجب أن يكون حجم المجال المستخدم أكبر من الحجم بعد التمديد الترميزي.
قدمت Binius حلاً مبتكراً يعالج هذين المشكلتين بطريقة منفصلة ويمثل نفس البيانات بطريقتين مختلفتين: أولاً، باستخدام متعددة المتغيرات ( وتحديداً متعددة الحدود متعددة الخطوط ) بدلاً من متعددة الحدود أحادية المتغير، من خلال قيمها على "المكعبات الفائقة" ( hypercubes ) لتمثيل المسار الحسابي الكامل؛ ثانياً، نظراً لأن طول كل بُعد من المكعب الفائق هو 2، فإنه لا يمكن إجراء توسيع Reed-Solomon القياسي كما في STARKs، ولكن يمكن اعتبار المكعب الفائق مربعا ( square )، واستناداً إلى هذا المربع يمكن تنفيذ توسيع Reed-Solomon. هذه الطريقة تضمن الأمان بينما تعزز بشكل كبير كفاءة الترميز وأداء الحساب.
2 تحليل المبدأ
عادةً ما تحتوي معظم أنظمة SNARKs الحالية على جزءين رئيسيين:
نظرية المعلومات إثبات تفاعلي متعدد الحدود oracle ( 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 Implementations للمجال الأولي مقابل المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى إدخال حمل في عمليات الجمع والضرب، كما أن عملية تربيع المجال الثنائي فعالة جدًا لأنها تتبع القاعدة المبسطة (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة بطول 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في المجال الثنائي بطول 128 بت، أو يمكن تحليلها إلى عنصرين في مجال الطول 64 بت، أو أربعة عناصر في مجال الطول 32 بت، أو 16 عنصرًا في مجال الطول 8 بت، أو 128 عنصرًا في مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة جدًا ومفيدة. في نفس الوقت، يمكن تعبئة عناصر المجال الصغيرة كعناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. يستفيد بروتوكول Binius من هذه الميزة لتحسين كفاءة الحساب. بالإضافة إلى ذلك، تناقش الورقة "في الانقلاب الفعال في مجالات البرج ذات الخصائص الثنائية" تعقيد الحساب لعمليات الضرب والتربيع والانقلاب في مجال ثنائي بطول 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 قد أجرى تحسينات في الجوانب الثلاثة التالية:
تحسين ProductCheck: في HyperPlonk، يتطلب ProductCheck أن يكون المقام U غير صفري في كل مكان على المكعب الفائق، ويجب أن يكون الجداء مساوياً لقيمة معينة؛ قام Binius بتبسيط هذه العملية من خلال تخصيص هذه القيمة إلى 1، مما يقلل من تعقيد الحساب.
معالجة مشكلة القسمة على الصفر: لم تتمكن HyperPlonk من معالجة حالات القسمة على الصفر بشكل كافٍ، مما أدى إلى عدم القدرة على التأكيد على أن U غير صفرية على الهيكل فوق المكعب الفائق؛ وقد عالجت Binius هذه المشكلة بشكل صحيح، حيث يمكن لـ ProductCheck في Binius الاستمرار في المعالجة حتى في حالة كون المقام صفرًا، مما يسمح بالتوسع إلى أي قيمة حاصل ضرب.
فحص التبديل عبر الأعمدة: 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، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 11
أعجبني
11
5
إعادة النشر
مشاركة
تعليق
0/400
ProxyCollector
· 07-20 15:45
الجيل الثالث 32 بت يكفي من الهدر ~
شاهد النسخة الأصليةرد0
ZeroRushCaptain
· 07-20 15:41
هذه البيانات تقلصت أسرع مما قطعت الخسارة وهربت.
شاهد النسخة الأصليةرد0
BlindBoxVictim
· 07-20 15:38
هذه عرض الترميز بطيء جداً، أليس كذلك؟
شاهد النسخة الأصليةرد0
AirdropCollector
· 07-20 15:25
استمر في الحصول على هذه الفرص المجانية
شاهد النسخة الأصليةرد0
LiquidationWatcher
· 07-20 15:22
يبدو كأنه شعور غريب من 2022... لا تدع تلك الأجزاء تخدعك كما فعل الرافعة
تحليل بروتوكول Binius: الابتكارات والتحسينات في مجال STARKs الثنائي
تحليل مبادئ Binius STARKs وأفكار تحسينها
1 المقدمة
أحد الأسباب الرئيسية لضعف كفاءة STARKs هو: أن معظم القيم العددية في البرامج الفعلية تكون صغيرة، مثل الفهارس في حلقات for، والقيم المنطقية، والمعدادات، وما إلى ذلك. ومع ذلك، لضمان أمان الإثبات المستند إلى شجرة Merkle، يتم استخدام تشفير Reed-Solomon لتوسيع البيانات، حيث تحتل العديد من القيم الزائدة الإضافية المجال بأكمله، حتى لو كانت القيمة الأصلية صغيرة جداً. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.
عرض عرض الترميز من الجيل الأول من 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، يجب أن تكون حجم المجال المستخدم أكبر من درجة متعددة الحدود؛ وفي STARKs عند الالتزام بشجرة Merkle، يجب إجراء ترميز Reed-Solomon، ويجب أن يكون حجم المجال المستخدم أكبر من الحجم بعد التمديد الترميزي.
قدمت Binius حلاً مبتكراً يعالج هذين المشكلتين بطريقة منفصلة ويمثل نفس البيانات بطريقتين مختلفتين: أولاً، باستخدام متعددة المتغيرات ( وتحديداً متعددة الحدود متعددة الخطوط ) بدلاً من متعددة الحدود أحادية المتغير، من خلال قيمها على "المكعبات الفائقة" ( hypercubes ) لتمثيل المسار الحسابي الكامل؛ ثانياً، نظراً لأن طول كل بُعد من المكعب الفائق هو 2، فإنه لا يمكن إجراء توسيع Reed-Solomon القياسي كما في STARKs، ولكن يمكن اعتبار المكعب الفائق مربعا ( square )، واستناداً إلى هذا المربع يمكن تنفيذ توسيع Reed-Solomon. هذه الطريقة تضمن الأمان بينما تعزز بشكل كبير كفاءة الترميز وأداء الحساب.
2 تحليل المبدأ
عادةً ما تحتوي معظم أنظمة SNARKs الحالية على جزءين رئيسيين:
نظرية المعلومات إثبات تفاعلي متعدد الحدود oracle ( 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 Implementations للمجال الأولي مقابل المجال الثنائي" إلى أن المجال الثنائي لا يحتاج إلى إدخال حمل في عمليات الجمع والضرب، كما أن عملية تربيع المجال الثنائي فعالة جدًا لأنها تتبع القاعدة المبسطة (X + Y )2 = X2 + Y 2.
كما هو موضح في الشكل 1، سلسلة بطول 128 بت: يمكن تفسير هذه السلسلة بطرق متعددة في سياق المجال الثنائي. يمكن اعتبارها عنصرًا فريدًا في المجال الثنائي بطول 128 بت، أو يمكن تحليلها إلى عنصرين في مجال الطول 64 بت، أو أربعة عناصر في مجال الطول 32 بت، أو 16 عنصرًا في مجال الطول 8 بت، أو 128 عنصرًا في مجال F2. هذه المرونة في التمثيل لا تتطلب أي تكلفة حسابية، بل مجرد تحويل نوع لسلسلة البتات (typecast)، وهي خاصية مثيرة جدًا ومفيدة. في نفس الوقت، يمكن تعبئة عناصر المجال الصغيرة كعناصر مجال أكبر دون الحاجة إلى تكلفة حسابية إضافية. يستفيد بروتوكول Binius من هذه الميزة لتحسين كفاءة الحساب. بالإضافة إلى ذلك، تناقش الورقة "في الانقلاب الفعال في مجالات البرج ذات الخصائص الثنائية" تعقيد الحساب لعمليات الضرب والتربيع والانقلاب في مجال ثنائي بطول 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 قد أجرى تحسينات في الجوانب الثلاثة التالية:
تحسين ProductCheck: في HyperPlonk، يتطلب ProductCheck أن يكون المقام U غير صفري في كل مكان على المكعب الفائق، ويجب أن يكون الجداء مساوياً لقيمة معينة؛ قام Binius بتبسيط هذه العملية من خلال تخصيص هذه القيمة إلى 1، مما يقلل من تعقيد الحساب.
معالجة مشكلة القسمة على الصفر: لم تتمكن HyperPlonk من معالجة حالات القسمة على الصفر بشكل كافٍ، مما أدى إلى عدم القدرة على التأكيد على أن U غير صفرية على الهيكل فوق المكعب الفائق؛ وقد عالجت Binius هذه المشكلة بشكل صحيح، حيث يمكن لـ ProductCheck في Binius الاستمرار في المعالجة حتى في حالة كون المقام صفرًا، مما يسمح بالتوسع إلى أي قيمة حاصل ضرب.
فحص التبديل عبر الأعمدة: HyperPlonk لا يدعم هذه الميزة; يدعم Binius فحص التبديل بين عدة أعمدة، مما يمكن Binius من التعامل مع حالات ترتيب متعددة الحدود الأكثر تعقيدًا.
لذلك، قامت Binius من خلال تحسين آلية PIOPSumCheck الحالية بزيادة مرونة وكفاءة البروتوكول، خاصة عند معالجة التحقق من المتعددات المتغيرة المعقدة، حيث قدمت دعمًا وظيفيًا أقوى. لم تحل هذه التحسينات فقط قيود HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات المستندة إلى المجال الثنائي في المستقبل.
! [أبحاث Bitlayer: تحليل مبدأ Binius STARKs والتفكير الأمثلي])https://img-cdn.gateio.im/webp-social/moments-1fb9ecbf9b3b2beaec758f3ab686a012.webp(
) 2.3 PIOP: حجج التحويل المتعدد الخطوط الجديدة------تنطبق على المكعبات الثنائية
في بروتوكول Binius ، يعد بناء ومعالجة الحدود الافتراضية واحدة من التقنيات الرئيسية ، حيث يمكنها بشكل فعال توليد ومعالجة الحدود المشتقة من مقبض الإدخال أو الحدود الافتراضية الأخرى. فيما يلي طريقتان رئيسيتان: