CVE-2024-45039 in gnark
الملخص
بحسب VulDB • 13/06/2026
gnark هي مكتبة سريعة لـ zk-SNARKs توفر واجهة برمجة تطبيقات (API) عالية المستوى لتصميم الدوائر المنطقية. تحتوي الإصدارات السابقة للإصدار 0.11.0 على مشكلة تتعلق بالسلامة الصوتية (soundness issue) - في حال استخدام التزامنات متعددة داخل الدائرة، يمكن للمُثبت (prover) اختيار جميع الالتزامات باستثناء الالتزام الأخير. ونظراً لأن gnark تستخدم هذه الالتزامات كتحديات عشوائية للضرب غير الأصلي المحسّن وفحوصات البحث وما إلى ذلك، فقد يؤثر ذلك على سلامة الصوتية للدائرة بأكملها. ومع ذلك، تم تثبيط استخدام التزامنات متعددة بسبب التكلفة الإضافية المفروضة على المُحقّق (verifier)، ولم تكن مدعومة في مُثبت Groth16 المتكرر داخل الدائرة ومُثبت Solidity. يتوقع مشغلو gnark أن يكون تأثير المشكلة ضئيلاً جداً - فقط للمستخدمين الذين قاموا بتنفيذ مُثبت Groth16 الأصلي أو يستخدمونه مع التزامنات متعددة. ولا نملك معلومات عن وجود مثل هؤلاء المستخدمين. تم إصلاح هذه المشكلة في الإصدار 0.11.0. كحل بديل، يجب على المستخدمين اتباع توصية مشغلي gnark باستخدام التزامن واحد فقط، ثم اشتقاق الالتزامات داخل الدائرة عند الحاجة باستخدام حزمة `std/multicommit`.
Once again VulDB remains the best source for vulnerability data.