وجدتُ أكثر مشكلة في AEGIS تكشفًا خارج براهين الإثبات للمعرفة الصفرية نفسها. ولم تكن القيمة بجانبها خاضعة بالكامل للتحكم.
في مسار معاملة Phoenix ضمن Dusk Network، كان بإمكان المستخدم الالتزام بـ max_fee شرعي، بينما ما زالت عملية التنفيذ تستهلك حقول الرسوم غير المرتبطة في نفس القصة الأمنية. يمكن لِمعلمات غاز عدائية أن تدفع إلى تضخم عمليات الاسترداد أو إلى تجاوزات. ويمكن لعنوان استرداد قابل للتعديل إعادة توجيه القيمة.
كان الإثبات صالحًا. غير أن دلالات المعاملة لم تكن مرتبطة به بالكامل.
الرسوم ليست مجرد بيانات وصفية غير ضارة عندما يمكن لمسار الاسترداد إنشاء قيمة أو إعادة توجيهها.
هذا تحذير مفيد لأي بروتوكول خصوصية. إن إثبات جملة واحدة بشكل مثالي لا يضمن الحقول المجاورة التي يثق بها التنفيذ لاحقًا. يجب على النظام ربط الإثبات والتوقيع وحساب الرسوم والوجهة ومسار الاسترداد في لا ينفكّ واحد (ثابت واحد).
أضافت AEGIS تحقق الضرب المحسوب لـ gas_limit × gas_price واشترطت أن تكون النتيجة مساوية لـ max_fee المُثبت. فرضت Dusk هذا التحقق مرتين: عند قبول المعاملة في mempool، ثم مرة أخرى داخل تنفيذ الـ VM. كما ربطت عنوان استرداد stealth بحيث يؤدي العبث إلى إبطال المعاملة.
إن الفحص الثاني هو التفاصيل التي أحرص عليها. لا يتعين على مُقترح كتلة خبيث احترام افتراضات mempool أمين. إذا كان الثابت موجودًا فقط عند حافة الشبكة، فقد يظل النظام قادرًا على تنفيذ معاملة تتجاوز تلك الحافة.
سأراقب الآن النمط الدفاعي نفسه عبر Dusk: رفضٌ رخيص قبل القبول، والتحقق السلطوي أثناء التنفيذ، واختبارات انحدار تقوم بتبديل كل حقل يحيط بإثبات.
أغلقت AEGIS المسارات الحرجة المعروفة. السؤال الأكبر هو ما إذا كانت عقود Dusk الأخرى تحتوي قيمًا يتم "التحقق" منها في طبقة واحدة ويُكتفى بثقتها في الطبقة التالية.
يمكن للتشفير أن يثبت بدقة ما طُلب منه إثباته. تعتمد السلامة على كون Dusk يطلب البيان الكامل.
#dusk $DUSK @Dusk
في مسار معاملة Phoenix ضمن Dusk Network، كان بإمكان المستخدم الالتزام بـ max_fee شرعي، بينما ما زالت عملية التنفيذ تستهلك حقول الرسوم غير المرتبطة في نفس القصة الأمنية. يمكن لِمعلمات غاز عدائية أن تدفع إلى تضخم عمليات الاسترداد أو إلى تجاوزات. ويمكن لعنوان استرداد قابل للتعديل إعادة توجيه القيمة.
كان الإثبات صالحًا. غير أن دلالات المعاملة لم تكن مرتبطة به بالكامل.
الرسوم ليست مجرد بيانات وصفية غير ضارة عندما يمكن لمسار الاسترداد إنشاء قيمة أو إعادة توجيهها.
هذا تحذير مفيد لأي بروتوكول خصوصية. إن إثبات جملة واحدة بشكل مثالي لا يضمن الحقول المجاورة التي يثق بها التنفيذ لاحقًا. يجب على النظام ربط الإثبات والتوقيع وحساب الرسوم والوجهة ومسار الاسترداد في لا ينفكّ واحد (ثابت واحد).
أضافت AEGIS تحقق الضرب المحسوب لـ gas_limit × gas_price واشترطت أن تكون النتيجة مساوية لـ max_fee المُثبت. فرضت Dusk هذا التحقق مرتين: عند قبول المعاملة في mempool، ثم مرة أخرى داخل تنفيذ الـ VM. كما ربطت عنوان استرداد stealth بحيث يؤدي العبث إلى إبطال المعاملة.
إن الفحص الثاني هو التفاصيل التي أحرص عليها. لا يتعين على مُقترح كتلة خبيث احترام افتراضات mempool أمين. إذا كان الثابت موجودًا فقط عند حافة الشبكة، فقد يظل النظام قادرًا على تنفيذ معاملة تتجاوز تلك الحافة.
سأراقب الآن النمط الدفاعي نفسه عبر Dusk: رفضٌ رخيص قبل القبول، والتحقق السلطوي أثناء التنفيذ، واختبارات انحدار تقوم بتبديل كل حقل يحيط بإثبات.
أغلقت AEGIS المسارات الحرجة المعروفة. السؤال الأكبر هو ما إذا كانت عقود Dusk الأخرى تحتوي قيمًا يتم "التحقق" منها في طبقة واحدة ويُكتفى بثقتها في الطبقة التالية.
يمكن للتشفير أن يثبت بدقة ما طُلب منه إثباته. تعتمد السلامة على كون Dusk يطلب البيان الكامل.
#dusk $DUSK @Dusk
