Nova: مزايا وعيوب نظام إثبات المعرفة الصفرية الفعال من الجيل الجديد وتحليل الكود المصدر

robot
إنشاء الملخص قيد التقدم

Nova: نظام zk-SNARKs الجديد

نوفا هو نظام جديد لإثبات المعرفة الصفرية تم تطويره بواسطة مايكروسوفت، ويستخدم أنظمة قيود مرتخية من الرتبة 1 ( Relaxed Rank-1 Constraint Systems، وتقنية R1CS المرتخية ) لتحسين كفاءة ومرونة الإثبات.

مزايا نوفا

تتمثل الميزة الرئيسية لـ Nova في استخدام تقنية R1CS المريحة. تتطلب أنظمة R1CS التقليدية استخدام كمية كبيرة من العشوائية خلال عملية الإثبات، مما يؤدي إلى تعقيد وتكلفة الوقت في عملية توليد والتحقق من الإثبات. من خلال استخدام R1CS المريح، يسمح Nova باستخدام عشوائية أقل في الإثبات، مما يزيد بشكل كبير من كفاءة الإثبات.

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

عيوب نوفا

على الرغم من أن Nova لديها العديد من المزايا، إلا أن هناك بعض العيوب:

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

  2. تنفيذ Nova معقد نسبيًا، مما قد يزيد من صعوبة الاستخدام والصيانة. تستخدم Nova العديد من التقنيات التشفيرية المتقدمة، مثل حسابات متعددة الحدود، عمليات المجموعة، وآلات النبوءة العشوائية، مما يتطلب فهمًا عميقًا لهذه التقنيات لاستخدام Nova وتعديلها بشكل فعال.

تحتل Nova مكانة مهمة في مجال zk-SNARKs

تحتل Nova مكانة مهمة في مجال zk-SNARKs. إن ظهورها قد مهد الطريق لتطور zk-SNARKs. تقنية R1CS المرنة التي تعتمدها Nova تجعل عملية إنشاء وإثبات البرهان أكثر كفاءة، وهذا أمر حيوي لتطبيقات zk-SNARKs على نطاق واسع. بالإضافة إلى ذلك، تدعم Nova أيضًا الحساب التزايدي والحساب المتعدد الحدود، مما يمكنها من معالجة مهام البرهان الأكثر تعقيدًا، وبالتالي توسيع نطاق تطبيقات zk-SNARKs.

تحليل كود Nova

الهيكل الرئيسي لشفرة المصدر لنوفا كما يلي:

  • src/bellperson/: تم تنفيذ توليد نظم القيود من الدرجة الأولى R1CS(.
  • src/gadgets/: تحتوي على أدوات لبناء zk-SNARKs.
  • src/provider/: تحتوي على بعض كودات المزودين، مثل تنفيذ دالة تجزئة Keccak.
  • src/spartan/: يحتوي على كود يتعلق ببروتوكول سبارتان.
  • src/traits/: تحتوي على بعض صفات Rust، والتي تُستخدم لتعريف السلوكيات العامة.

تتضمن الوظائف الرئيسية للوحدات والملفات ما يلي:

  • bellperson/mod.rs: يحدد الوظائف المتعلقة بإنشاء R1CS.
  • bellperson/r1cs.rs: تعريف اثنين من الـ trait وهما NovaWitness و NovaShape للحصول على مثيل R1CS، الشاهد، الشكل ومفتاح الالتزام.
  • bellperson/shape_cs.rs: يعرّف بنية ShapeCS، المستخدمة لإنشاء نظام قيود شكل R1CS.
  • bellperson/solver.rs: يعرّف هيكل SatisfyingAssignment، الذي يُستخدم لإنشاء مثيلات R1CS ونظام القيود للشاهد.
  • circuit.rs: تعريف الدائرة المحسنة في بروتوكول نوفا، بما في ذلك دائرة الخطوة ودائرة التحقق.
  • constants.rs: تعريف بعض الثوابت مثل عدد تحديات، عدد هاشات، إلخ.
  • errors.rs: يحدد أنواع الأخطاء التي قد يرجعها مكتبة Nova.
  • nifs.rs: نفذ خطة طي غير تفاعلية )NIFS(.
  • r1cs.rs: يعرّف الأنواع والأساليب المتعلقة بـ R1CS.
  • spartan/math.rs: تعريف خاصية الرياضيات وتنفيذها على نوع usize، والتي تتضمن بعض العمليات الرياضية الأساسية.
  • spartan / mod.rs: تم تنفيذ RelaxedR1CSSNARKTrait باستخدام Spartan.
  • spartan/polynomial.rs: يعرّف الأنواع الأساسية والعمليات المتعلقة بالمتعددات.
  • spartan/sumcheck.rs: نفذت خوارزمية Sumcheck في بروتوكول Spartan.
  • traits/circuit.rs: تعريف خاصية StepCircuit، المستخدمة في دالة الخطوة للحساب التزايدي.
  • traits/commitment.rs: يحدد السمات المرتبطة بالالتزام ) commitment (.
  • traits/evaluation.rs: تعريف خاصية EvaluationEngineTrait، المستخدمة في محرك تقييم متعدد الحدود.
  • traits/mod.rs: تعريف بعض الخصائص المستخدمة في العمليات التشفيرية.
  • traits/snark.rs: تعريف خاصية RelaxedR1CSSNARKTrait، المستخدمة في zk-SNARKs، لإثباتات غير تفاعلية بسيطة قائمة على المعرفة الصفرية ).

تنفذ شيفرة Nova نظامًا كاملًا من zk-SNARKs، بما في ذلك توليد R1CS، وبناء نظام القيود، وحسابات متعددة الحدود، ومخطط الالتزام، ومحرك التقييم، وغيرها من الوحدات. تعمل هذه الوحدات معًا لتحقيق وظائف فعالة في توليد وتحقق zk-SNARKs.

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 4
  • مشاركة
تعليق
0/400
CrossChainBreathervip
· 07-14 06:25
هذا بالتأكيد هو تلاعب
شاهد النسخة الأصليةرد0
ColdWalletGuardianvip
· 07-14 06:10
أليس مجرد zk ضعيف؟
شاهد النسخة الأصليةرد0
MysteryBoxOpenervip
· 07-14 06:01
كنت أعتقد أن مايكروسوفت ستقوم فقط بعمل ويندوز 11
شاهد النسخة الأصليةرد0
PessimisticLayervip
· 07-14 05:58
هل هي خدعة جديدة من مايكروسوفت؟
شاهد النسخة الأصليةرد0
  • تثبيت