ما هو zk-VM؟

متوسط6/3/2024, 1:43:55 PM
ZK هو الجسر إلى اعتماد التشفير على نطاق واسع. سواء في Web2 أو Web3 ، فإن أي شيء يتضمن إثباتات المعرفة الصفرية (ZKP) سيخلق قيمة هائلة. كتب فريق Lita مقالات علمية أساسية ، وقدم أساسيات ZK و zkVM ، وقدم نظرة عامة عالية المستوى على العملية داخل zkVM ، وأخيرا اقترح مجموعة من المعايير لتقييم zkVM.

إعادة توجيه العنوان الأصلي "نموذج المعرفة الصفرية: الجزء 1 - ما هو zk-VM؟"

1. براهين المعرفة الصفرية: كتاب تمهيدي

ما هي براهين المعرفة الصفرية (ZKPs)؟

إذا لم تكن لديك معرفة مسبقة ببراهين المعرفة الصفرية (ZKP) ، فإن هذا الفيديو من Wired يشرح المفهوم في خمسة مستويات صعوبة بطريقة تفاعلية مع أمثلة وعروض توضيحية سهلة الفهم. يوصي.

بعبارات أبسط ، تمكن ZKPs أحد الأطراف (prover) من إثبات لطرف آخر (المدقق) أنهم يعرفون شيئا دون الكشف عن ماهية هذا الشيء أو أي معلومات إضافية. وبشكل أكثر تحديدا ، تثبت ZKPs معرفة جزء من البيانات ، أو معرفة نتيجة الحساب ، دون الكشف عن البيانات أو المدخلات. تتضمن عملية إنشاء دليل على المعرفة الصفرية سلسلة من النماذج الرياضية لتحويل نتائج الحساب إلى جزء من المعلومات التي لا معنى لها والتي تثبت التنفيذ الناجح للكود ، والتي يمكن التحقق منها لاحقا.

في بعض الحالات ، يتطلب الأمر عملا أقل للتحقق من الدليل ، الذي يتم إنشاؤه بعد جولات متعددة من التحويلات الجبرية والتشفير ، مما يتطلبه الأمر لتشغيل الحساب. هذا المزيج الفريد من الأمان وقابلية التوسع هو ما يجعل تشفير المعرفة الصفرية أداة قوية.

zkSNARKs: المعرفة الصفرية حجة موجزة غير تفاعلية للمعرفة

  • يعتمد على عملية إعداد أولية (موثوقة أو غير موثوقة) لإنشاء معلمات للتحقق
  • يتطلب تفاعلا واحدا على الأقل بين البروفسور والمدقق
  • أحجام الإثبات صغيرة ويسهل التحقق منها
  • يتم استخدام البراهين المستندة إلى NARK بواسطة عمليات التجميع مثل zkSync و Scroll و Linea

zkSTARKs: المعرفة الصفرية حجة شفافة قابلة للتطوير للمعرفة

  • لا يلزم إعداد موثوق به
  • تقديم شفافية عالية باستخدام العشوائية التي يمكن التحقق منها بشكل عام لإنشاء أنظمة يمكن التحقق منها غير موثوق بها ، أي إنشاء معلمات عشوائية يمكن إثباتها للإثبات والتحقق
  • قابلة للتطوير بدرجة كبيرة حيث يمكنها إنشاء البراهين والتحقق منها بسرعة (ليس دائما) ، حتى عندما يكون حجم الشاهد الأساسي (البيانات) كبيرا
  • لا يتطلب أي تفاعل بين البروفير والمدقق
  • يأتي على حساب أن STARKs تولد براهين أكبر ، والتي قد يكون التحقق منها أصعب من SNARKs
  • يصعب التحقق من البراهين من بعض براهين zkSNARK ولكن ليس من الصعب التحقق من بعضها البعض الآخر
  • يتم استخدام STARKs بواسطة Starknet ، بالإضافة إلى zkVMs مثل Lita و Risc Zero و Succinct Labs

(ملاحظة: يستخدم جسر Succinct SNARKs ولكن SP1 هو بروتوكول قائم على STARK)

تجدر الإشارة إلى أن جميع STARKs هي SNARKs ، ولكن ليست كل SNARKs هي STARKs.

لفهم عام أفضل ل SNARKs و STARKs ، نوصي بقراءة هذه السلسلة @krzhang / privacy-in-cryptocurrencies-zero-knowledge-and-zk-snarks-1-2-68ce1838fd9c"> المقالات التي كتبها يان تشانغ ويي صن من أكسيوم ، وهذه المجموعة من المقالات في جيثب فينتالي تان.

2. ما هو zkVM؟

الجهاز الظاهري (VM) هو برنامج يقوم بتشغيل البرامج. في السياق ، zkVM هو جهاز كمبيوتر افتراضي يتم تنفيذه كنظام لتوليد براهين المعرفة الصفرية ، أو دائرة عالمية ، أو أداة ، لتوليد ZKPs لأي برنامج أو حساب.

تزيل zkVMs الحاجة إلى تعلم الرياضيات المعقدة والتشفير لتصميم وترميز ZK ، وتمكن أي مطور من تنفيذ البرامج المكتوبة بلغاتهم المفضلة وإنشاء ZKPs ، مما يجعل من الأسهل بكثير التكامل والتفاعل مع المعرفة الصفرية. بشكل عام ، تتضمن معظم الإشارات إلى zkVMs ضمنيا سلاسل أدوات المترجم وأنظمة الإثبات الملحقة بالجهاز الظاهري الذي ينفذ البرامج ، وليس فقط الجهاز الظاهري نفسه. أدناه ، نلخص المكونات الرئيسية ل zkVM ووظائفها:

المكونات الرئيسية ل zkVM

يخضع تصميم وتنفيذ كل مكون لاختيار الإثبات (SNARKs أو STARKs) وبنية مجموعة التعليمات (ISA) الخاصة ب zkVM. تقليديا ، يحدد ISA ما تستطيع وحدة المعالجة المركزية القيام به (أنواع البيانات والسجلات والذاكرة وما إلى ذلك) وتسلسل الإجراءات التي تقوم بها وحدة المعالجة المركزية عند تنفيذ برنامج. في السياق ، يحدد ISA رمز الجهاز القابل للتفسير والقابل للتنفيذ بواسطة الجهاز الظاهري. يمكن أن يؤدي اختيار ISA إلى اختلافات جذرية في إمكانية الوصول إلى zkVM وسهولة استخدامه ، بالإضافة إلى سرعة وكفاءة عمليات إنشاء الإثبات ، ويدعم بناء أي zkVM.

فيما يلي بعض الأمثلة على zkVMs ومكوناتها للرجوع إليها.


zkVMs ومكوناتها

في الوقت الحالي ، سنركز على التفاعلات بين كل مكون على مستوى عال لتوفير إطار عمل لفهم العمليات الجبرية والتشفير بالإضافة إلى مقايضات تصميم zkVM في مقال لاحق.

3. تدفق عملية zkVM المستخرجة

الرسم البياني التالي عبارة عن مخطط انسيابي عملية مجردة ومعممة ل zkVM ، مقسمة ومصنفة بين التنسيق (المدخلات / المخرجات) للبرنامج أثناء تحركه عبر مكونات zkVM. سوف ندرس كل عملية بعمق في المقالات اللاحقة.


التدفق العام ل zkVM

يكون تدفق عملية zkVM بشكل عام كما يلي:

  • مرحلة المترجم
  1. يقوم المترجم أولا بتجميع البرامج المكتوبة باللغات التقليدية (C ، C ++ ، Rust ، Solidity) في رمز الجهاز. يتم تحديد تنسيق رمز الجهاز من خلال اختيار ISA.
  • مرحلة VM
  1. يقوم الجهاز الظاهري بتنفيذ التعليمات البرمجية للجهاز وإنشاء تتبع تنفيذ ، وهو سلسلة من خطوات البرنامج الأساسي. يتم تحديد تنسيق هذا مسبقا من خلال اختيار الحساب بالإضافة إلى مجموعة القيود متعددة الحدود. تتضمن مخططات الحساب الشائعة R1CS كما في Groth16 ، وحساب PLONKish كما في halo2 ، و AIR كما في plonky2 و plonky3.
  • مرحلة بروفير
  1. يتلقى البروفير التتبع ويمثله كمجموعة من كثيرات الحدود المرتبطة بمجموعة من القيود ، ويترجم الحساب بشكل أساسي إلى جبر عن طريق رسم الحقائق رياضيا.

  2. يلتزم البروفير بهذه كثيرات الحدود باستخدام مخطط الالتزام متعدد الحدود (PCS). مخطط الالتزام هو بروتوكول يسمح للبروفير بإنشاء بصمة لبعض البيانات X ، والتي تسمى الالتزام ب X ، وإثبات الحقائق لاحقا حول X دون الكشف عن X ، باستخدام الالتزام ب X. PCS هي بصمة الإصبع. نسخة موجزة "معالجة مسبقا" من القيود المفروضة على الحساب. يسمح هذا للبروفير بإثبات الحقائق حول الحساب ، والتي يتم التعبير عنها الآن في معادلة متعددة الحدود ، باستخدام القيم العشوائية التي اقترحها المدقق في الخطوات التالية.

  3. يقوم البروفير بتشغيل دليل أوراكل تفاعلي متعدد الحدود (PIOP) لإظهار أن كثيرات الحدود الملتزم بها تمثل تتبع تنفيذ يفي بالقيود المحددة. PIOP هو بروتوكول إثبات تفاعلي يتكون من سلسلة من الجولات التي يرسل فيها البروفير التزامات إلى كثيرات الحدود ، ويستجيب المدقق بقيم حقل عشوائية ، ويقدم المدقق تقييمات لكثير الحدود عند هذه القيم العشوائية ، على غرار "حل" معادلة كثير الحدود باستخدام قيم عشوائية لإقناع المدقق بشكل محتمل.

  4. تطبيق الاستدلال فيات شامير ؛ يقوم البروفير بتشغيل PIOP في وضع غير تفاعلي ، حيث يقتصر سلوك المدقق على إرسال نقاط تحدي عشوائية زائفة. في التشفير ، يحول دليل Fiat-Shamir دليلا تفاعليا للمعرفة إلى توقيع رقمي للتحقق منه. هذه الخطوة تشفر الدليل وتجعله صفر معرفة.

  5. يجب على المدقق إقناع المدقق بأن تقييمات كثيرة الحدود المطالب بها صحيحة ، فيما يتعلق بالالتزامات متعددة الحدود التي أرسلها إلى المدقق. للقيام بذلك ، ينتج البروفير دليلا على "التقييم" أو "الفتح" ، والذي يتم توفيره بواسطة مخطط الالتزام متعدد الحدود (بصمة الإصبع).

  • مرحلة المدقق
  1. يتحقق المدقق من الدليل باتباع بروتوكول التحقق الخاص بنظام الإثبات ، إما باستخدام القيود أو الالتزام. يقبل المدقق النتيجة أو يرفضها وفقا لصحة الإثبات.

باختصار ، يثبت دليل zkVM ، لبرنامج معين ، نتيجة معينة ، وشروط أولية معينة ، أن هناك بعض المدخلات التي تجعل البرنامج ينتج النتيجة المحددة عند تنفيذها من الشروط الأولية المحددة. يمكننا دمج هذه العبارة مع تدفق العملية للوصول إلى الوصف التالي ل zkVM.

يثبت دليل zkVM ، لبرنامج VM معين وإخراج معين ، أن هناك بعض المدخلات التي تجعل البرنامج المعين ينتج الإخراج المحدد عند تنفيذه على الجهاز الظاهري.

4. تقييم zkVMs

ما هي المعايير التي يجب أن نقيم بها zkVMs؟ بمعنى آخر ، متى يجب أن نقول أن zkVM أفضل من الآخر؟ بصدق ، تعتمد الإجابة على حالة الاستخدام.

تشير أبحاث السوق التي أجرتها Lita إلى أنه بالنسبة لمعظم حالات الاستخدام التجاري ، فإن أهم الخصائص ، خارج السرعة والكفاءة والإيجاز ، هي إما السرعة أو كفاءة الوقت الأساسي ، اعتمادا على التطبيق. بعض التطبيقات حساسة للسعر وتريد تحسين استهلاك الطاقة المنخفض والاستخدام المنخفض لرأس المال في إثبات ؛ بالنسبة لهؤلاء ، ربما تكون كفاءة الوقت الأساسي هي أهم مقياس يجب تحسينه. التطبيقات الأخرى ، لا سيما التطبيقات المتعلقة بالتمويل أو التداول ، حساسة لزمن الوصول وتريد تحسين السرعة.

تركز معظم مقارنات الأداء المعلنة حصريا على السرعة ، وهو أمر مهم ولكنه ليس قياسا شاملا للأداء. هناك أيضا بعض الخصائص المهمة التي تقيس موثوقية zkVM ؛ معظمها لا يرقى إلى معايير جاهزة للإنتاج ، حتى بالنسبة للشركات القائمة الرائدة في السوق.

نقترح بموجب هذا أنه يجب تقييم zkVMs وفقا للمعايير التالية ، مقسمة إلى مجموعتين فرعيتين:


المعايير الرئيسية لتقييم zk-VMs

خط الأساس: يقيس موثوقية zkVMs

  • صحه
  • أمن
  • افتراضات الثقة

الأداء: يقيس قدرات zkVM

  • كفاءة
  • سرعة
  • الإيجاز

4.1 خط الأساس: افتراضات الصحة والأمن والثقة

عند تقييم zkVMs للتطبيقات الحرجة للمهام ، يجب اعتبار الصحة والأمان كخط أساس. يجب أن يكون هناك سبب كاف للثقة في صحتها ، والأمن المزعوم القوي بما فيه الكفاية. أيضا ، يجب أن تكون افتراضات الثقة ضعيفة بما يكفي للتطبيق.

بدون هذه الخصائص ، من المحتمل أن يكون zkVM أسوأ من عديم الفائدة للتطبيق ، حيث قد يفشل في الأداء كما هو محدد ويعرض المستخدمين للقرصنة والاستغلال.

ط. الصواب

  • يجب على الجهاز الظاهري تنفيذ الحساب على النحو المنشود
  • يجب أن يفي نظام الإثبات بخصائصه الأمنية المطالب بها

يتكون الصواب من ثلاث خصائص:

  • السلامة: نظام الإثبات صادق وبالتالي كل ما يثبته صحيح. يرفض المدقق أدلة على البيانات الكاذبة ؛ يقبل فقط نتيجة الحساب إذا كانت المدخلات تنتج هذه النتيجة بالفعل.
  • الاكتمال: نظام الإثبات كامل ويمكنه إثبات جميع البيانات الصحيحة. إذا ادعى البروفير أنه يمكنه إثبات نتيجة الحساب ، فيجب أن يكون قادرا على تقديم دليل يقبله المدقق.
  • المعرفة الصفرية: امتلاك دليل لا يكشف عن مدخلات الحساب أكثر من معرفة النتيجة نفسها

يمكن أن يكون لديك اكتمال دون سلامة. إذا أثبت نظام الإثبات كل شيء بما في ذلك الزيف ، فمن الواضح أنه كامل ولكنه ليس سليما. على العكس ، يمكن أن يكون لديك سلامة دون اكتمال. إذا أثبت نظام الإثبات وجود برنامج ولكنه لا يستطيع إثبات الحسابات ، فمن الواضح أنه سليم (بعد كل شيء ، لا يثبت أبدا أي زيف) ، ولكنه غير كامل.

ب. الأمن

  • يتعلق بتحمل السلامة والاكتمال والمعرفة الصفرية

في الممارسة العملية ، جميع خصائص الصحة الثلاثة لها تفاوتات غير صفرية. هذا يعني أن جميع البراهين هي احتمالات إحصائية للصحة ، وليست يقينا مطلقا. يشير التسامح إلى أقصى احتمال مقبول لفشل خاصية واحدة. التفاوتات الصفرية هي بالطبع مثالية ، لكن zkVMs لا تحقق تفاوتات صفرية على كل هذه الخصائص في الممارسة العملية. يبدو أن السلامة والاكتمال المثاليين لا يتوافقان مع الإيجاز ، ولا توجد طرق معروفة لتحقيق المعرفة الصفرية الكاملة. هناك طريقة شائعة لقياس الأمان في أجزاء الأمان ، حيث يشار إلى التسامح 1 / (2 ^ n) باسم n بت من الأمان. المزيد من أجزاء الأمان أفضل.

إذا كان zkVM صحيحا تماما ، فهذا لا يعني بالضرورة أنه موثوق. تعني الصحة فقط أن zkVM يفي بخصائص الأمان الخاصة به حتى التفاوتات المزعومة. هذا لا يعني أن التفاوتات المزعومة منخفضة بما يكفي لتكون جاهزة للسوق. أيضا ، إذا كان zkVM آمنا بدرجة كافية ، فهذا لا يعني أنه صحيح ؛ يشير الأمان إلى التفاوتات المزعومة ، وليس التفاوتات التي يتم تحقيقها بالفعل. فقط عندما يكون zkVM صحيحا تماما وآمنا بدرجة كافية ، يمكن القول أن zkVM موثوق به حتى التفاوتات المزعومة.

iii. افتراضات الثقة

  • افتراضات حول صدق البروفير والمدقق للوصول إلى استنتاج أن zkVM يعمل بشكل موثوق

عندما يكون لدى zkVMs افتراضات ثقة ، فإن هذا عادة ما يأخذ شكل عملية إعداد موثوقة. يتم تشغيل عملية الإعداد لنظام إثبات ZK مرة واحدة ، قبل إنشاء الدليل الأول باستخدام نظام الإثبات ، من أجل إنشاء بعض المعلومات تسمى "بيانات الإعداد". في عملية الإعداد الموثوق بها ، يقوم فرد واحد أو أكثر بإنشاء بعض العشوائية التي يتم دمجها في بيانات الإعداد ، ويجب افتراض أن واحدا على الأقل من هؤلاء الأفراد حذف العشوائية التي قاموا بدمجها في بيانات الإعداد.

هناك نوعان من نماذج افتراض الثقة الشائعة في الممارسة العملية.

ينص افتراض ثقة الأغلبية الصادقة على أنه من بين مجموعة من الأفراد N ، أظهر أكثر من N / 2 من هؤلاء الأفراد نزاهة في بعض التفاعلات (التفاعلات) المعينة مع النظام ، والذي يشيع استخدامه بواسطة blockchains

ينص افتراض الثقة "1 من N" على أنه من بين مجموعة من الأفراد N ، أظهر واحد على الأقل من هؤلاء الأفراد نزاهة في بعض التفاعلات (التفاعلات) المعينة مع النظام ، والذي يشيع استخدامه بواسطة الأدوات والتطبيقات القائمة على MPC.

من المتفق عليه عموما أن كل شيء آخر متساو ، فإن zkVMs التي لا تحتوي على افتراضات ثقة أكثر أمانا من zkVMs التي تتطلب افتراضات الثقة.

4.2 معضلة zkVM الثلاثية: موازنة السرعة والكفاءة والإيجاز في zkVMs


معضلة zkVM الثلاثية: السرعة والكفاءة والإيجاز

السرعة والكفاءة والإيجاز كلها خصائص مقياس منزلق. كل هذه العوامل تساهم في تكلفة المستخدم النهائي ل zkVM. تعتمد كيفية ترجيحها في التقييم على التطبيق. في كثير من الأحيان ، لا يكون الحل الأسرع هو الأكثر كفاءة أو الأكثر إيجازا. الحل الأكثر إيجازا ليس هو الأسرع أو الأكثر كفاءة. وهكذا دواليك. دعونا أولا نحدد كل خاصية قبل شرح علاقتها

ط. السرعة

  • ما مدى سرعة قيام البروفير بتوليد البراهين
  • تقاس بزمن ساعة الحائط ، وهو الوقت المنقضي من بداية الحساب إلى نهايته

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

ب. الكفاءة

  • الموارد التي يستهلكها الموفر ، مع تفضيل أقل
  • يمكن تقريبها من خلال وقت المستخدم ، وهو مقدار وقت الكمبيوتر الذي يقضيه رمز البرنامج

يستهلك البروفير نوعين من الموارد: الزمان الأساسي والمكان. لذلك يمكن تقسيم الكفاءة إلى كفاءة الوقت الأساسي وكفاءة المكان.

كفاءة الوقت الأساسي: متوسط مقدار الوقت الذي يعمل فيه البروفير عبر جميع النوى مضروبا في عدد النوى التي تقوم بتشغيل prover. بالنسبة إلى محترف أحادي النواة ، فإن استهلاك الوقت الأساسي والسرعة هما نفس الشيء. بالنسبة لبروفير متعدد النواة يعمل في وضع متعدد النواة على نظام متعدد النواة ، فإن استهلاك الوقت الأساسي والسرعة ليسا نفس الشيء. إذا كان البرنامج يستخدم بشكل كامل 5 نوى أو خيوط لمدة 5 ثوان ، فسيكون ذلك 25 ثانية من وقت المستخدم و 5 ثوان من وقت ساعة الحائط.

كفاءة المساحة: تشير إلى سعة التخزين المستخدمة ، مثل ذاكرة الوصول العشوائي

وقت المستخدم مثير للاهتمام كوكيل للطاقة المستهلكة عن طريق تشغيل الحساب. في الحالة التي يتم فيها استخدام جميع النوى بالكامل طوال الوقت تقريبا ، يجب أن يظل استهلاك الطاقة لوحدة المعالجة المركزية ثابتا نسبيا. في هذه الحالة ، يجب أن يكون الوقت الذي يقضيه المستخدم من خلال تنفيذ التعليمات البرمجية المرتبطة بوحدة المعالجة المركزية ، في الغالب في وضع المستخدم ، متناسبا خطيا تقريبا مع عدد واط / ساعة (أي الطاقة) التي يستهلكها تنفيذ التعليمات البرمجية هذه.

يجب أن يكون الاقتصاد في استهلاك الطاقة ، أو استخدام موارد الحوسبة ، مثيرا للاهتمام من وجهة نظر أي عمليات إثبات لها نطاق كاف بحيث تكون فاتورة الطاقة الخاصة بها (أو فاتورة الحوسبة السحابية) لإثبات تكلفة تشغيلية كبيرة. لهذه الأسباب ، يعد وقت المستخدم مقياسا مثيرا للاهتمام. تسمح تكاليف الإثبات المنخفضة لمقدمي الخدمات بتمرير أسعار إثبات أقل للعملاء الحساسين للتكاليف.

يرتبط كلا النوعين من الكفاءة باستهلاك الطاقة لعملية الإثبات ومقدار رأس المال المستخدم في عملية الإثبات ، والذي يتعلق بالتكلفة المالية للإثبات. لتفعيل تعريف الكفاءة للقياس ، يجب وضع التعريف بالنسبة إلى واحد أو أكثر من برامج الاختبار ، وواحد أو أكثر من مدخلات الاختبار لكل من هذه البرامج ، ونظام اختبار واحد أو أكثر.

iii. الإيجاز

  • حجم البراهين التي تم إنشاؤها وتعقيد التحقق منها

الإيجاز هو مركب من ثلاثة مقاييس متميزة ، مع تقسيم تعقيد التحقق من الإثبات:

  • حجم الإثبات: الحجم المادي للبراهين ، يقاس عادة بالكيلوبايت
  • وقت التحقق من الإثباتات: المدة المطلوبة للتحقق من البراهين.
  • مساحة التحقق من الإثبات: استخدام الذاكرة أثناء التحقق من الإثبات

عادة ما يكون التحقق عملية أساسية واحدة ، وبالتالي فإن السرعة وكفاءة الوقت الأساسي متكافئة بشكل عام في هذا السياق. كما هو الحال مع السرعة والكفاءة ، يتطلب تفعيل تعريف الإيجاز تحديد مجموعات من برامج الاختبار ومدخلات الاختبار وأنظمة الاختبار.

مع تحديد كل خاصية أداء ، نوضح الآن التأثيرات الخافتة لتحسين خاصية واحدة على الآخرين.

  • السرعة: يؤدي إنشاء الإثبات السريع إلى أحجام إثبات أكبر ، لكن التحقق من الإثبات بطيء. يتم استهلاك المزيد من الموارد لإنشاء البراهين ، مما يقلل من الكفاءة
  • الإيجاز: يحتاج Prover إلى مزيد من الوقت لضغط البراهين. لكن التحقق من الإثبات سريع. كلما كان الدليل أكثر إيجازا ، زادت نفقات الحساب
  • الكفاءة: يقلل تقليل استخدام الموارد من سرعة إنشاء الإثبات وإيجاز الإثبات

بشكل عام ، يعني التحسين لجودة واحدة عدم التحسين لجودة أخرى ، وبالتالي هناك حاجة إلى تحليل متعدد الأبعاد لاختيار الحل الأمثل على أساس كل حالة على حدة.

قد تكون إحدى الطرق الجيدة لترجيح هذه الخصائص في التقييم هي تحديد المستويات المقبولة لكل خاصية ثم تحديد الخصائص الأكثر أهمية. يجب تحسين الخصائص الأكثر أهمية ، مع مراعاة الحفاظ على مستويات جيدة بما يكفي في جميع الخصائص الأخرى.

فيما يلي نلخص كل عقار واعتباراته الرئيسية:


خصائص تقييم zkVMs

5. ماذا بعد؟

مع الجدول أعلاه ، نختتم بموجب هذا المقالة الأولى من سلسلتنا. في المقالات التالية ، سنبني على المخطط الانسيابي الموضح أعلاه لشرح العمليات الحسابية والتشفير الشائعة في zkVMs.

إذا وجدت هذا مفيدا ، فتفضل بزيارة موقعنا على الإنترنت و gitbook لمعرفة المزيد حول ما نقوم ببنائه في Lita.

أيضا ، تابعنا على X و Discord للبقاء على اطلاع دائم حتى لا تفوتك بقية السلسلة

اخلاء المسؤوليه:

  1. أعيد طبع هذه المقالة من [lita]. إلى الأمام العنوان الأصلي "نموذج المعرفة الصفرية: الجزء 1 - ما هو zk-VM؟". جميع حقوق الطبع والنشر تنتمي إلى المؤلف الأصلي [فريق ليتا]. إذا كانت هناك اعتراضات على إعادة الطباعة هذه ، فيرجى الاتصال بفريق Gate Learn ، وسوف يتعاملون معها على الفور.
  2. إخلاء المسؤولية: الآراء ووجهات النظر الواردة في هذه المقالة هي آراء المؤلف فقط ولا تشكل أي نصيحة استثمارية.
  3. تتم ترجمة المقالة إلى لغات أخرى من قبل فريق Gate Learn. ما لم يذكر ، يحظر نسخ المقالات المترجمة أو توزيعها أو سرقتها.

ما هو zk-VM؟

متوسط6/3/2024, 1:43:55 PM
ZK هو الجسر إلى اعتماد التشفير على نطاق واسع. سواء في Web2 أو Web3 ، فإن أي شيء يتضمن إثباتات المعرفة الصفرية (ZKP) سيخلق قيمة هائلة. كتب فريق Lita مقالات علمية أساسية ، وقدم أساسيات ZK و zkVM ، وقدم نظرة عامة عالية المستوى على العملية داخل zkVM ، وأخيرا اقترح مجموعة من المعايير لتقييم zkVM.

إعادة توجيه العنوان الأصلي "نموذج المعرفة الصفرية: الجزء 1 - ما هو zk-VM؟"

1. براهين المعرفة الصفرية: كتاب تمهيدي

ما هي براهين المعرفة الصفرية (ZKPs)؟

إذا لم تكن لديك معرفة مسبقة ببراهين المعرفة الصفرية (ZKP) ، فإن هذا الفيديو من Wired يشرح المفهوم في خمسة مستويات صعوبة بطريقة تفاعلية مع أمثلة وعروض توضيحية سهلة الفهم. يوصي.

بعبارات أبسط ، تمكن ZKPs أحد الأطراف (prover) من إثبات لطرف آخر (المدقق) أنهم يعرفون شيئا دون الكشف عن ماهية هذا الشيء أو أي معلومات إضافية. وبشكل أكثر تحديدا ، تثبت ZKPs معرفة جزء من البيانات ، أو معرفة نتيجة الحساب ، دون الكشف عن البيانات أو المدخلات. تتضمن عملية إنشاء دليل على المعرفة الصفرية سلسلة من النماذج الرياضية لتحويل نتائج الحساب إلى جزء من المعلومات التي لا معنى لها والتي تثبت التنفيذ الناجح للكود ، والتي يمكن التحقق منها لاحقا.

في بعض الحالات ، يتطلب الأمر عملا أقل للتحقق من الدليل ، الذي يتم إنشاؤه بعد جولات متعددة من التحويلات الجبرية والتشفير ، مما يتطلبه الأمر لتشغيل الحساب. هذا المزيج الفريد من الأمان وقابلية التوسع هو ما يجعل تشفير المعرفة الصفرية أداة قوية.

zkSNARKs: المعرفة الصفرية حجة موجزة غير تفاعلية للمعرفة

  • يعتمد على عملية إعداد أولية (موثوقة أو غير موثوقة) لإنشاء معلمات للتحقق
  • يتطلب تفاعلا واحدا على الأقل بين البروفسور والمدقق
  • أحجام الإثبات صغيرة ويسهل التحقق منها
  • يتم استخدام البراهين المستندة إلى NARK بواسطة عمليات التجميع مثل zkSync و Scroll و Linea

zkSTARKs: المعرفة الصفرية حجة شفافة قابلة للتطوير للمعرفة

  • لا يلزم إعداد موثوق به
  • تقديم شفافية عالية باستخدام العشوائية التي يمكن التحقق منها بشكل عام لإنشاء أنظمة يمكن التحقق منها غير موثوق بها ، أي إنشاء معلمات عشوائية يمكن إثباتها للإثبات والتحقق
  • قابلة للتطوير بدرجة كبيرة حيث يمكنها إنشاء البراهين والتحقق منها بسرعة (ليس دائما) ، حتى عندما يكون حجم الشاهد الأساسي (البيانات) كبيرا
  • لا يتطلب أي تفاعل بين البروفير والمدقق
  • يأتي على حساب أن STARKs تولد براهين أكبر ، والتي قد يكون التحقق منها أصعب من SNARKs
  • يصعب التحقق من البراهين من بعض براهين zkSNARK ولكن ليس من الصعب التحقق من بعضها البعض الآخر
  • يتم استخدام STARKs بواسطة Starknet ، بالإضافة إلى zkVMs مثل Lita و Risc Zero و Succinct Labs

(ملاحظة: يستخدم جسر Succinct SNARKs ولكن SP1 هو بروتوكول قائم على STARK)

تجدر الإشارة إلى أن جميع STARKs هي SNARKs ، ولكن ليست كل SNARKs هي STARKs.

لفهم عام أفضل ل SNARKs و STARKs ، نوصي بقراءة هذه السلسلة @krzhang / privacy-in-cryptocurrencies-zero-knowledge-and-zk-snarks-1-2-68ce1838fd9c"> المقالات التي كتبها يان تشانغ ويي صن من أكسيوم ، وهذه المجموعة من المقالات في جيثب فينتالي تان.

2. ما هو zkVM؟

الجهاز الظاهري (VM) هو برنامج يقوم بتشغيل البرامج. في السياق ، zkVM هو جهاز كمبيوتر افتراضي يتم تنفيذه كنظام لتوليد براهين المعرفة الصفرية ، أو دائرة عالمية ، أو أداة ، لتوليد ZKPs لأي برنامج أو حساب.

تزيل zkVMs الحاجة إلى تعلم الرياضيات المعقدة والتشفير لتصميم وترميز ZK ، وتمكن أي مطور من تنفيذ البرامج المكتوبة بلغاتهم المفضلة وإنشاء ZKPs ، مما يجعل من الأسهل بكثير التكامل والتفاعل مع المعرفة الصفرية. بشكل عام ، تتضمن معظم الإشارات إلى zkVMs ضمنيا سلاسل أدوات المترجم وأنظمة الإثبات الملحقة بالجهاز الظاهري الذي ينفذ البرامج ، وليس فقط الجهاز الظاهري نفسه. أدناه ، نلخص المكونات الرئيسية ل zkVM ووظائفها:

المكونات الرئيسية ل zkVM

يخضع تصميم وتنفيذ كل مكون لاختيار الإثبات (SNARKs أو STARKs) وبنية مجموعة التعليمات (ISA) الخاصة ب zkVM. تقليديا ، يحدد ISA ما تستطيع وحدة المعالجة المركزية القيام به (أنواع البيانات والسجلات والذاكرة وما إلى ذلك) وتسلسل الإجراءات التي تقوم بها وحدة المعالجة المركزية عند تنفيذ برنامج. في السياق ، يحدد ISA رمز الجهاز القابل للتفسير والقابل للتنفيذ بواسطة الجهاز الظاهري. يمكن أن يؤدي اختيار ISA إلى اختلافات جذرية في إمكانية الوصول إلى zkVM وسهولة استخدامه ، بالإضافة إلى سرعة وكفاءة عمليات إنشاء الإثبات ، ويدعم بناء أي zkVM.

فيما يلي بعض الأمثلة على zkVMs ومكوناتها للرجوع إليها.


zkVMs ومكوناتها

في الوقت الحالي ، سنركز على التفاعلات بين كل مكون على مستوى عال لتوفير إطار عمل لفهم العمليات الجبرية والتشفير بالإضافة إلى مقايضات تصميم zkVM في مقال لاحق.

3. تدفق عملية zkVM المستخرجة

الرسم البياني التالي عبارة عن مخطط انسيابي عملية مجردة ومعممة ل zkVM ، مقسمة ومصنفة بين التنسيق (المدخلات / المخرجات) للبرنامج أثناء تحركه عبر مكونات zkVM. سوف ندرس كل عملية بعمق في المقالات اللاحقة.


التدفق العام ل zkVM

يكون تدفق عملية zkVM بشكل عام كما يلي:

  • مرحلة المترجم
  1. يقوم المترجم أولا بتجميع البرامج المكتوبة باللغات التقليدية (C ، C ++ ، Rust ، Solidity) في رمز الجهاز. يتم تحديد تنسيق رمز الجهاز من خلال اختيار ISA.
  • مرحلة VM
  1. يقوم الجهاز الظاهري بتنفيذ التعليمات البرمجية للجهاز وإنشاء تتبع تنفيذ ، وهو سلسلة من خطوات البرنامج الأساسي. يتم تحديد تنسيق هذا مسبقا من خلال اختيار الحساب بالإضافة إلى مجموعة القيود متعددة الحدود. تتضمن مخططات الحساب الشائعة R1CS كما في Groth16 ، وحساب PLONKish كما في halo2 ، و AIR كما في plonky2 و plonky3.
  • مرحلة بروفير
  1. يتلقى البروفير التتبع ويمثله كمجموعة من كثيرات الحدود المرتبطة بمجموعة من القيود ، ويترجم الحساب بشكل أساسي إلى جبر عن طريق رسم الحقائق رياضيا.

  2. يلتزم البروفير بهذه كثيرات الحدود باستخدام مخطط الالتزام متعدد الحدود (PCS). مخطط الالتزام هو بروتوكول يسمح للبروفير بإنشاء بصمة لبعض البيانات X ، والتي تسمى الالتزام ب X ، وإثبات الحقائق لاحقا حول X دون الكشف عن X ، باستخدام الالتزام ب X. PCS هي بصمة الإصبع. نسخة موجزة "معالجة مسبقا" من القيود المفروضة على الحساب. يسمح هذا للبروفير بإثبات الحقائق حول الحساب ، والتي يتم التعبير عنها الآن في معادلة متعددة الحدود ، باستخدام القيم العشوائية التي اقترحها المدقق في الخطوات التالية.

  3. يقوم البروفير بتشغيل دليل أوراكل تفاعلي متعدد الحدود (PIOP) لإظهار أن كثيرات الحدود الملتزم بها تمثل تتبع تنفيذ يفي بالقيود المحددة. PIOP هو بروتوكول إثبات تفاعلي يتكون من سلسلة من الجولات التي يرسل فيها البروفير التزامات إلى كثيرات الحدود ، ويستجيب المدقق بقيم حقل عشوائية ، ويقدم المدقق تقييمات لكثير الحدود عند هذه القيم العشوائية ، على غرار "حل" معادلة كثير الحدود باستخدام قيم عشوائية لإقناع المدقق بشكل محتمل.

  4. تطبيق الاستدلال فيات شامير ؛ يقوم البروفير بتشغيل PIOP في وضع غير تفاعلي ، حيث يقتصر سلوك المدقق على إرسال نقاط تحدي عشوائية زائفة. في التشفير ، يحول دليل Fiat-Shamir دليلا تفاعليا للمعرفة إلى توقيع رقمي للتحقق منه. هذه الخطوة تشفر الدليل وتجعله صفر معرفة.

  5. يجب على المدقق إقناع المدقق بأن تقييمات كثيرة الحدود المطالب بها صحيحة ، فيما يتعلق بالالتزامات متعددة الحدود التي أرسلها إلى المدقق. للقيام بذلك ، ينتج البروفير دليلا على "التقييم" أو "الفتح" ، والذي يتم توفيره بواسطة مخطط الالتزام متعدد الحدود (بصمة الإصبع).

  • مرحلة المدقق
  1. يتحقق المدقق من الدليل باتباع بروتوكول التحقق الخاص بنظام الإثبات ، إما باستخدام القيود أو الالتزام. يقبل المدقق النتيجة أو يرفضها وفقا لصحة الإثبات.

باختصار ، يثبت دليل zkVM ، لبرنامج معين ، نتيجة معينة ، وشروط أولية معينة ، أن هناك بعض المدخلات التي تجعل البرنامج ينتج النتيجة المحددة عند تنفيذها من الشروط الأولية المحددة. يمكننا دمج هذه العبارة مع تدفق العملية للوصول إلى الوصف التالي ل zkVM.

يثبت دليل zkVM ، لبرنامج VM معين وإخراج معين ، أن هناك بعض المدخلات التي تجعل البرنامج المعين ينتج الإخراج المحدد عند تنفيذه على الجهاز الظاهري.

4. تقييم zkVMs

ما هي المعايير التي يجب أن نقيم بها zkVMs؟ بمعنى آخر ، متى يجب أن نقول أن zkVM أفضل من الآخر؟ بصدق ، تعتمد الإجابة على حالة الاستخدام.

تشير أبحاث السوق التي أجرتها Lita إلى أنه بالنسبة لمعظم حالات الاستخدام التجاري ، فإن أهم الخصائص ، خارج السرعة والكفاءة والإيجاز ، هي إما السرعة أو كفاءة الوقت الأساسي ، اعتمادا على التطبيق. بعض التطبيقات حساسة للسعر وتريد تحسين استهلاك الطاقة المنخفض والاستخدام المنخفض لرأس المال في إثبات ؛ بالنسبة لهؤلاء ، ربما تكون كفاءة الوقت الأساسي هي أهم مقياس يجب تحسينه. التطبيقات الأخرى ، لا سيما التطبيقات المتعلقة بالتمويل أو التداول ، حساسة لزمن الوصول وتريد تحسين السرعة.

تركز معظم مقارنات الأداء المعلنة حصريا على السرعة ، وهو أمر مهم ولكنه ليس قياسا شاملا للأداء. هناك أيضا بعض الخصائص المهمة التي تقيس موثوقية zkVM ؛ معظمها لا يرقى إلى معايير جاهزة للإنتاج ، حتى بالنسبة للشركات القائمة الرائدة في السوق.

نقترح بموجب هذا أنه يجب تقييم zkVMs وفقا للمعايير التالية ، مقسمة إلى مجموعتين فرعيتين:


المعايير الرئيسية لتقييم zk-VMs

خط الأساس: يقيس موثوقية zkVMs

  • صحه
  • أمن
  • افتراضات الثقة

الأداء: يقيس قدرات zkVM

  • كفاءة
  • سرعة
  • الإيجاز

4.1 خط الأساس: افتراضات الصحة والأمن والثقة

عند تقييم zkVMs للتطبيقات الحرجة للمهام ، يجب اعتبار الصحة والأمان كخط أساس. يجب أن يكون هناك سبب كاف للثقة في صحتها ، والأمن المزعوم القوي بما فيه الكفاية. أيضا ، يجب أن تكون افتراضات الثقة ضعيفة بما يكفي للتطبيق.

بدون هذه الخصائص ، من المحتمل أن يكون zkVM أسوأ من عديم الفائدة للتطبيق ، حيث قد يفشل في الأداء كما هو محدد ويعرض المستخدمين للقرصنة والاستغلال.

ط. الصواب

  • يجب على الجهاز الظاهري تنفيذ الحساب على النحو المنشود
  • يجب أن يفي نظام الإثبات بخصائصه الأمنية المطالب بها

يتكون الصواب من ثلاث خصائص:

  • السلامة: نظام الإثبات صادق وبالتالي كل ما يثبته صحيح. يرفض المدقق أدلة على البيانات الكاذبة ؛ يقبل فقط نتيجة الحساب إذا كانت المدخلات تنتج هذه النتيجة بالفعل.
  • الاكتمال: نظام الإثبات كامل ويمكنه إثبات جميع البيانات الصحيحة. إذا ادعى البروفير أنه يمكنه إثبات نتيجة الحساب ، فيجب أن يكون قادرا على تقديم دليل يقبله المدقق.
  • المعرفة الصفرية: امتلاك دليل لا يكشف عن مدخلات الحساب أكثر من معرفة النتيجة نفسها

يمكن أن يكون لديك اكتمال دون سلامة. إذا أثبت نظام الإثبات كل شيء بما في ذلك الزيف ، فمن الواضح أنه كامل ولكنه ليس سليما. على العكس ، يمكن أن يكون لديك سلامة دون اكتمال. إذا أثبت نظام الإثبات وجود برنامج ولكنه لا يستطيع إثبات الحسابات ، فمن الواضح أنه سليم (بعد كل شيء ، لا يثبت أبدا أي زيف) ، ولكنه غير كامل.

ب. الأمن

  • يتعلق بتحمل السلامة والاكتمال والمعرفة الصفرية

في الممارسة العملية ، جميع خصائص الصحة الثلاثة لها تفاوتات غير صفرية. هذا يعني أن جميع البراهين هي احتمالات إحصائية للصحة ، وليست يقينا مطلقا. يشير التسامح إلى أقصى احتمال مقبول لفشل خاصية واحدة. التفاوتات الصفرية هي بالطبع مثالية ، لكن zkVMs لا تحقق تفاوتات صفرية على كل هذه الخصائص في الممارسة العملية. يبدو أن السلامة والاكتمال المثاليين لا يتوافقان مع الإيجاز ، ولا توجد طرق معروفة لتحقيق المعرفة الصفرية الكاملة. هناك طريقة شائعة لقياس الأمان في أجزاء الأمان ، حيث يشار إلى التسامح 1 / (2 ^ n) باسم n بت من الأمان. المزيد من أجزاء الأمان أفضل.

إذا كان zkVM صحيحا تماما ، فهذا لا يعني بالضرورة أنه موثوق. تعني الصحة فقط أن zkVM يفي بخصائص الأمان الخاصة به حتى التفاوتات المزعومة. هذا لا يعني أن التفاوتات المزعومة منخفضة بما يكفي لتكون جاهزة للسوق. أيضا ، إذا كان zkVM آمنا بدرجة كافية ، فهذا لا يعني أنه صحيح ؛ يشير الأمان إلى التفاوتات المزعومة ، وليس التفاوتات التي يتم تحقيقها بالفعل. فقط عندما يكون zkVM صحيحا تماما وآمنا بدرجة كافية ، يمكن القول أن zkVM موثوق به حتى التفاوتات المزعومة.

iii. افتراضات الثقة

  • افتراضات حول صدق البروفير والمدقق للوصول إلى استنتاج أن zkVM يعمل بشكل موثوق

عندما يكون لدى zkVMs افتراضات ثقة ، فإن هذا عادة ما يأخذ شكل عملية إعداد موثوقة. يتم تشغيل عملية الإعداد لنظام إثبات ZK مرة واحدة ، قبل إنشاء الدليل الأول باستخدام نظام الإثبات ، من أجل إنشاء بعض المعلومات تسمى "بيانات الإعداد". في عملية الإعداد الموثوق بها ، يقوم فرد واحد أو أكثر بإنشاء بعض العشوائية التي يتم دمجها في بيانات الإعداد ، ويجب افتراض أن واحدا على الأقل من هؤلاء الأفراد حذف العشوائية التي قاموا بدمجها في بيانات الإعداد.

هناك نوعان من نماذج افتراض الثقة الشائعة في الممارسة العملية.

ينص افتراض ثقة الأغلبية الصادقة على أنه من بين مجموعة من الأفراد N ، أظهر أكثر من N / 2 من هؤلاء الأفراد نزاهة في بعض التفاعلات (التفاعلات) المعينة مع النظام ، والذي يشيع استخدامه بواسطة blockchains

ينص افتراض الثقة "1 من N" على أنه من بين مجموعة من الأفراد N ، أظهر واحد على الأقل من هؤلاء الأفراد نزاهة في بعض التفاعلات (التفاعلات) المعينة مع النظام ، والذي يشيع استخدامه بواسطة الأدوات والتطبيقات القائمة على MPC.

من المتفق عليه عموما أن كل شيء آخر متساو ، فإن zkVMs التي لا تحتوي على افتراضات ثقة أكثر أمانا من zkVMs التي تتطلب افتراضات الثقة.

4.2 معضلة zkVM الثلاثية: موازنة السرعة والكفاءة والإيجاز في zkVMs


معضلة zkVM الثلاثية: السرعة والكفاءة والإيجاز

السرعة والكفاءة والإيجاز كلها خصائص مقياس منزلق. كل هذه العوامل تساهم في تكلفة المستخدم النهائي ل zkVM. تعتمد كيفية ترجيحها في التقييم على التطبيق. في كثير من الأحيان ، لا يكون الحل الأسرع هو الأكثر كفاءة أو الأكثر إيجازا. الحل الأكثر إيجازا ليس هو الأسرع أو الأكثر كفاءة. وهكذا دواليك. دعونا أولا نحدد كل خاصية قبل شرح علاقتها

ط. السرعة

  • ما مدى سرعة قيام البروفير بتوليد البراهين
  • تقاس بزمن ساعة الحائط ، وهو الوقت المنقضي من بداية الحساب إلى نهايته

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

ب. الكفاءة

  • الموارد التي يستهلكها الموفر ، مع تفضيل أقل
  • يمكن تقريبها من خلال وقت المستخدم ، وهو مقدار وقت الكمبيوتر الذي يقضيه رمز البرنامج

يستهلك البروفير نوعين من الموارد: الزمان الأساسي والمكان. لذلك يمكن تقسيم الكفاءة إلى كفاءة الوقت الأساسي وكفاءة المكان.

كفاءة الوقت الأساسي: متوسط مقدار الوقت الذي يعمل فيه البروفير عبر جميع النوى مضروبا في عدد النوى التي تقوم بتشغيل prover. بالنسبة إلى محترف أحادي النواة ، فإن استهلاك الوقت الأساسي والسرعة هما نفس الشيء. بالنسبة لبروفير متعدد النواة يعمل في وضع متعدد النواة على نظام متعدد النواة ، فإن استهلاك الوقت الأساسي والسرعة ليسا نفس الشيء. إذا كان البرنامج يستخدم بشكل كامل 5 نوى أو خيوط لمدة 5 ثوان ، فسيكون ذلك 25 ثانية من وقت المستخدم و 5 ثوان من وقت ساعة الحائط.

كفاءة المساحة: تشير إلى سعة التخزين المستخدمة ، مثل ذاكرة الوصول العشوائي

وقت المستخدم مثير للاهتمام كوكيل للطاقة المستهلكة عن طريق تشغيل الحساب. في الحالة التي يتم فيها استخدام جميع النوى بالكامل طوال الوقت تقريبا ، يجب أن يظل استهلاك الطاقة لوحدة المعالجة المركزية ثابتا نسبيا. في هذه الحالة ، يجب أن يكون الوقت الذي يقضيه المستخدم من خلال تنفيذ التعليمات البرمجية المرتبطة بوحدة المعالجة المركزية ، في الغالب في وضع المستخدم ، متناسبا خطيا تقريبا مع عدد واط / ساعة (أي الطاقة) التي يستهلكها تنفيذ التعليمات البرمجية هذه.

يجب أن يكون الاقتصاد في استهلاك الطاقة ، أو استخدام موارد الحوسبة ، مثيرا للاهتمام من وجهة نظر أي عمليات إثبات لها نطاق كاف بحيث تكون فاتورة الطاقة الخاصة بها (أو فاتورة الحوسبة السحابية) لإثبات تكلفة تشغيلية كبيرة. لهذه الأسباب ، يعد وقت المستخدم مقياسا مثيرا للاهتمام. تسمح تكاليف الإثبات المنخفضة لمقدمي الخدمات بتمرير أسعار إثبات أقل للعملاء الحساسين للتكاليف.

يرتبط كلا النوعين من الكفاءة باستهلاك الطاقة لعملية الإثبات ومقدار رأس المال المستخدم في عملية الإثبات ، والذي يتعلق بالتكلفة المالية للإثبات. لتفعيل تعريف الكفاءة للقياس ، يجب وضع التعريف بالنسبة إلى واحد أو أكثر من برامج الاختبار ، وواحد أو أكثر من مدخلات الاختبار لكل من هذه البرامج ، ونظام اختبار واحد أو أكثر.

iii. الإيجاز

  • حجم البراهين التي تم إنشاؤها وتعقيد التحقق منها

الإيجاز هو مركب من ثلاثة مقاييس متميزة ، مع تقسيم تعقيد التحقق من الإثبات:

  • حجم الإثبات: الحجم المادي للبراهين ، يقاس عادة بالكيلوبايت
  • وقت التحقق من الإثباتات: المدة المطلوبة للتحقق من البراهين.
  • مساحة التحقق من الإثبات: استخدام الذاكرة أثناء التحقق من الإثبات

عادة ما يكون التحقق عملية أساسية واحدة ، وبالتالي فإن السرعة وكفاءة الوقت الأساسي متكافئة بشكل عام في هذا السياق. كما هو الحال مع السرعة والكفاءة ، يتطلب تفعيل تعريف الإيجاز تحديد مجموعات من برامج الاختبار ومدخلات الاختبار وأنظمة الاختبار.

مع تحديد كل خاصية أداء ، نوضح الآن التأثيرات الخافتة لتحسين خاصية واحدة على الآخرين.

  • السرعة: يؤدي إنشاء الإثبات السريع إلى أحجام إثبات أكبر ، لكن التحقق من الإثبات بطيء. يتم استهلاك المزيد من الموارد لإنشاء البراهين ، مما يقلل من الكفاءة
  • الإيجاز: يحتاج Prover إلى مزيد من الوقت لضغط البراهين. لكن التحقق من الإثبات سريع. كلما كان الدليل أكثر إيجازا ، زادت نفقات الحساب
  • الكفاءة: يقلل تقليل استخدام الموارد من سرعة إنشاء الإثبات وإيجاز الإثبات

بشكل عام ، يعني التحسين لجودة واحدة عدم التحسين لجودة أخرى ، وبالتالي هناك حاجة إلى تحليل متعدد الأبعاد لاختيار الحل الأمثل على أساس كل حالة على حدة.

قد تكون إحدى الطرق الجيدة لترجيح هذه الخصائص في التقييم هي تحديد المستويات المقبولة لكل خاصية ثم تحديد الخصائص الأكثر أهمية. يجب تحسين الخصائص الأكثر أهمية ، مع مراعاة الحفاظ على مستويات جيدة بما يكفي في جميع الخصائص الأخرى.

فيما يلي نلخص كل عقار واعتباراته الرئيسية:


خصائص تقييم zkVMs

5. ماذا بعد؟

مع الجدول أعلاه ، نختتم بموجب هذا المقالة الأولى من سلسلتنا. في المقالات التالية ، سنبني على المخطط الانسيابي الموضح أعلاه لشرح العمليات الحسابية والتشفير الشائعة في zkVMs.

إذا وجدت هذا مفيدا ، فتفضل بزيارة موقعنا على الإنترنت و gitbook لمعرفة المزيد حول ما نقوم ببنائه في Lita.

أيضا ، تابعنا على X و Discord للبقاء على اطلاع دائم حتى لا تفوتك بقية السلسلة

اخلاء المسؤوليه:

  1. أعيد طبع هذه المقالة من [lita]. إلى الأمام العنوان الأصلي "نموذج المعرفة الصفرية: الجزء 1 - ما هو zk-VM؟". جميع حقوق الطبع والنشر تنتمي إلى المؤلف الأصلي [فريق ليتا]. إذا كانت هناك اعتراضات على إعادة الطباعة هذه ، فيرجى الاتصال بفريق Gate Learn ، وسوف يتعاملون معها على الفور.
  2. إخلاء المسؤولية: الآراء ووجهات النظر الواردة في هذه المقالة هي آراء المؤلف فقط ولا تشكل أي نصيحة استثمارية.
  3. تتم ترجمة المقالة إلى لغات أخرى من قبل فريق Gate Learn. ما لم يذكر ، يحظر نسخ المقالات المترجمة أو توزيعها أو سرقتها.
ابدأ التداول الآن
اشترك وتداول لتحصل على جوائز ذهبية بقيمة
100 دولار أمريكي
و
5500 دولارًا أمريكيًا
لتجربة الإدارة المالية الذهبية!