Binius STARKs: تحسين مجال الثنائي وتحليل المبادئ

تحليل مبادئ Binius STARKs وأفكار تحسينها

1 المقدمة

على عكس SNARKs المعتمدة على منحنيات إهليلجية، يمكن اعتبار STARKs كـ SNARKs المعتمدة على التجزئة. أحد الأسباب الرئيسية لعدم كفاءة STARKs الحالية هو أن معظم القيم الرقمية في البرامج الفعلية صغيرة، مثل الفهارس في حلقات for، والقيم البوليانية، والعدادات، وما إلى ذلك. ومع ذلك، لضمان أمان البرهان المعتمد على شجرة ميركل، عند استخدام ترميز ريد-سولومون لتوسيع البيانات، فإن العديد من القيم الزائدة ستشغل المجال بأكمله، حتى لو كانت القيمة الأصلية صغيرة جداً. لحل هذه المشكلة، أصبح تقليل حجم المجال استراتيجية رئيسية.

كما هو موضح في الجدول 1، عرض الترميز لجيل STARKs الأول هو 252 بت، وعرض الترميز لجيل STARKs الثاني هو 64 بت، وعرض الترميز لجيل STARKs الثالث هو 32 بت، ولكن لا يزال هناك الكثير من المساحة الضائعة في عرض الترميز 32 بت. بالمقارنة، يسمح المجال الثنائي بالعمل مباشرة على البتات، مما يجعل الترميز مضغوطًا وفعالًا دون أي مساحة ضائعة، أي الجيل الرابع من STARKs.

الجدول 1: مسار تطور STARKs

| الأجيال | عرض الترميز | نظام التمثيل | |------|----------|----------| | الجيل الأول | 252 بت | STARK | | الجيل الثاني | 64 بت | Plonky2 | | الجيل الثالث | 32 بت | مينا | | الجيل الرابع | 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 التعمق في توسيع مجال أكبر لضمان الأمان المطلوب.

عند بناء نظام إثبات يعتمد على مجال ثنائي، توجد مشكلتان عمليتان: في STARKs عند حساب تمثيل trace، يجب أن يكون حجم المجال أكبر من درجة كثيرة الحدود؛ في STARKs عند الالتزام بشجرة Merkle، يجب إجراء ترميز 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 ). تشير الورقة البحثية "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 عنصرًا من 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، حيث تم استخدام مجموعة من آليات الفحص الأساسية للتحقق من صحة المتعددات والمجموعات متعددة المتغيرات. تشمل هذه الفحوصات الأساسية:

  1. GateCheck: تحقق من أن الشهادة السرية ω والمدخلات العامة x تلبي علاقة العمليات الدائرية C###x,ω(=0، لضمان تشغيل الدائرة بشكل صحيح.

  2. PermutationCheck: التحقق مما إذا كانت نتائج تقييم كثيرات الحدود المتعددة المتغيرات f و g على مكعب بولياني هي علاقة تبديلية f)x( = f)π(x()، لضمان التناسق في ترتيب المتغيرات في كثيرات الحدود.

  3. LookupCheck: تحقق من أن قيمة كثيرات الحدود موجودة في جدول البحث المحدد، أي f)Bµ( ⊆ T)Bµ(، تأكد من أن بعض القيم ضمن النطاق المحدد.

  4. MultisetCheck: التحقق مما إذا كانت مجموعتان متعددتا المتغيرات متساويتين، أي {)x1,i,x2,(}i∈H={)y1,i,y2,(}i∈H، لضمان التوافق بين المجموعات المتعددة.

  5. ProductCheck: تحقق من أن قيمة متعددة الحدود العقلانية على مكعب بولي الشرط تساوي قيمة معينة ∏x∈Hµ f)x( = s، لضمان صحة حاصل ضرب متعددة الحدود.

  6. ZeroCheck: التحقق مما إذا كانت نقطة متعددة المتغيرات متعددة الحدود في مكعب بولي على أنها صفر ∏x∈Hµ f)x( = 0, ∀x ∈ Bµ، لضمان توزيع نقاط الصفر للحدود.

  7. SumCheck: التحقق من أن مجموع متعددات الحدود المتغيرة المتعددة يساوي القيمة المعلنة ∑x∈Hµ f)x( = s. من خلال تحويل مشكلة تقييم متعدد الحدود المتغيرة المتعددة إلى تقييم متعدد الحدود المتغيرة الواحدة، يتم تقليل تعقيد الحساب للطرف المصدق. بالإضافة إلى ذلك، يسمح SumCheck أيضًا بالمعالجة الدفعة، من خلال إدخال أرقام عشوائية، لبناء تركيبات خطية لتحقيق معالجة دفعة لعدة حالات تحقق من المجموع.

  8. BatchCheck: بناءً على SumCheck، يتحقق من صحة تقييمات متعددة من متعددات الحدود متعددة المتغيرات، لتحسين كفاءة البروتوكول.

على الرغم من أن Binius و HyperPlonk لديهما العديد من أوجه التشابه في تصميم البروتوكول، إلا أن Binius قد أجرى تحسينات في المجالات الثلاثة التالية:

  • تحسين ProductCheck: في HyperPlonk، يتطلب ProductCheck أن يكون المقام U غير صفري في كل مكان على الهيبركيوب، ويجب أن يكون المنتج مساوياً لقيمة معينة؛ قامت Binius بتبسيط هذه العملية عن طريق تخصيص هذه القيمة إلى 1، مما يقلل من تعقيد الحساب.

  • معالجة مشكلة القسمة على الصفر: لم يتمكن HyperPlonk من معالجة حالات القسمة على الصفر بشكل كافٍ، مما أدى إلى عدم القدرة على التأكيد على أن U غير صفري على الفرط مكعب؛ عالج Binius هذه المشكلة بشكل صحيح، حتى في حالة كون المقام صفراً، يمكن أن يستمر ProductCheck الخاص بـ Binius في المعالجة، مما يسمح بالتوسع إلى أي قيمة حاصل ضرب.

  • تحقق من التبديل عبر الأعمدة: HyperPlonk لا يدعم هذه الميزة; Binius يدعم تحقق التبديل بين أعمدة متعددة، مما يمكّن Binius من معالجة حالات ترتيب متعددة الحدود الأكثر تعقيدًا.

لذلك، قامت Binius من خلال تحسين آلية PIOPSumCheck الحالية بزيادة مرونة وكفاءة البروتوكول، خاصة عند التعامل مع التحقق من كثيرات الحدود متعددة المتغيرات الأكثر تعقيدًا، مما يوفر دعمًا أقوى للوظائف. لم تحل هذه التحسينات فقط القيود الموجودة في HyperPlonk، بل وضعت أيضًا الأساس لأنظمة الإثبات القائمة على المجالات الثنائية في المستقبل.

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 5
  • مشاركة
تعليق
0/400
ZkSnarkervip
· 07-29 13:22
حسناً تقنياً، فإن الستاركس ليست سوى وجبات خفيفة ولكن مع التجزئة، لول
شاهد النسخة الأصليةرد0
PebbleHandervip
· 07-26 15:33
بانغ بو تعيش، ويبدو أن هناك من يتحدث عن هذا الأمر الصلب.
شاهد النسخة الأصليةرد0
SmartContractPhobiavip
· 07-26 15:26
هذا مرة أخرى عمل تقني يزعجنا مبتدئ
شاهد النسخة الأصليةرد0
LootboxPhobiavip
· 07-26 15:23
إنه تقدم كبير، من ثلاث خانات إلى خانتين.
شاهد النسخة الأصليةرد0
notSatoshi1971vip
· 07-26 15:18
هل تريد حقًا تجاوز snark؟ هذه التحسينات متحفظة جدًا.
شاهد النسخة الأصليةرد0
  • تثبيت