#dusk $DUSK @Dusk
كنت أقرأ التغييرات الهندسية الأخيرة الخاصة بـ Dusk وكنت أتوقع أن يكون الجزء المثير للاهتمام مجرد تحسين آخر لنظام الإثبات.
لكن بدلًا من ذلك واصلت العودة إلى شيء أقل إثارة بكثير: ما الذي يحدث قبل أن يتم حتى معالجة الإثبات..
أحد التغييرات الأخيرة المرتبطة بـ Plonk ركّز على رفض بيانات المُثبت غير الصحيحة في وقت أبكر.
في البداية يبدو الأمر كتنظيف روتيني.
لكن كلما فكرت أكثر أدركت أهميته.
هناك فرق بين كسر التشفير وإدخال بيانات سيئة إلى البنية التحتية التشفيرية.
قد يكون الإثبات صحيحًا رياضيًا بينما تكون البيانات المحيطة به معيبة بالتسلسل أو البنية بصورة غير صحيحة بطريقة لم يتوقعها النظام أصلًا. إذا سُمح لهذه المدخلات أن تنتقل أعمق إلى خط معالجة الإثبات (proving pipeline) يصبح الفشل النهائي أصعب في العزل وقد يكون أكثر كلفة للتعامل معه.
لذلك فإن التحسين الحقيقي ليس بالضرورة متعلقًا بالرياضيات الأقوى.
بل يتعلق بتحريك نقطة الرفض إلى أقرب ما يمكن من المصدر.
وهذا يهم عمليًا.
في البنية التحتية للشبكة الحية، لا تعمل عملية الإثبات في عزلة. يجب أن تتعامل مع تَسلسل المدخلات وفك الترميز ومسارات تنفيذها والذاكرة، وجميع الحالات الطرفية الغريبة التي تظهر عندما يلتقي البرمجيات ببيانات العالم الحقيقي.
قد يكون التشفير سليمًا بينما تكون عملية التنفيذ المحيطة مبنية على افتراضات ضعيفة.
لذلك أجد أن هذه التغييرات الصغيرة أكثر كاشفية مما تفعل إعلانات الميزات.
إنها تُظهر أين يقضي فريق الهندسة وقته في تقليل عدد الأشياء التي يكون النظام مستعدًا لمعالجتها بشكل أعمى.
بالنسبة لـ Dusk أعتقد أن هذا اتجاه مهم: ليس فقط إثبات أن البيانات الصحيحة تعمل، بل جعل البيانات غير الصحيحة تفشل في وقت أبكر وبشكل أنظف وبالقرب من المكان الذي تبدأ فيه المشكلة.
قد تؤدي طبقة التحقق المملة إلى إخبارنا بالمزيد عن الجاهزية للإنتاج أكثر مما ستفعله التشفيريات اللافتة.
كنت أقرأ التغييرات الهندسية الأخيرة الخاصة بـ Dusk وكنت أتوقع أن يكون الجزء المثير للاهتمام مجرد تحسين آخر لنظام الإثبات.
لكن بدلًا من ذلك واصلت العودة إلى شيء أقل إثارة بكثير: ما الذي يحدث قبل أن يتم حتى معالجة الإثبات..
أحد التغييرات الأخيرة المرتبطة بـ Plonk ركّز على رفض بيانات المُثبت غير الصحيحة في وقت أبكر.
في البداية يبدو الأمر كتنظيف روتيني.
لكن كلما فكرت أكثر أدركت أهميته.
هناك فرق بين كسر التشفير وإدخال بيانات سيئة إلى البنية التحتية التشفيرية.
قد يكون الإثبات صحيحًا رياضيًا بينما تكون البيانات المحيطة به معيبة بالتسلسل أو البنية بصورة غير صحيحة بطريقة لم يتوقعها النظام أصلًا. إذا سُمح لهذه المدخلات أن تنتقل أعمق إلى خط معالجة الإثبات (proving pipeline) يصبح الفشل النهائي أصعب في العزل وقد يكون أكثر كلفة للتعامل معه.
لذلك فإن التحسين الحقيقي ليس بالضرورة متعلقًا بالرياضيات الأقوى.
بل يتعلق بتحريك نقطة الرفض إلى أقرب ما يمكن من المصدر.
وهذا يهم عمليًا.
في البنية التحتية للشبكة الحية، لا تعمل عملية الإثبات في عزلة. يجب أن تتعامل مع تَسلسل المدخلات وفك الترميز ومسارات تنفيذها والذاكرة، وجميع الحالات الطرفية الغريبة التي تظهر عندما يلتقي البرمجيات ببيانات العالم الحقيقي.
قد يكون التشفير سليمًا بينما تكون عملية التنفيذ المحيطة مبنية على افتراضات ضعيفة.
لذلك أجد أن هذه التغييرات الصغيرة أكثر كاشفية مما تفعل إعلانات الميزات.
إنها تُظهر أين يقضي فريق الهندسة وقته في تقليل عدد الأشياء التي يكون النظام مستعدًا لمعالجتها بشكل أعمى.
بالنسبة لـ Dusk أعتقد أن هذا اتجاه مهم: ليس فقط إثبات أن البيانات الصحيحة تعمل، بل جعل البيانات غير الصحيحة تفشل في وقت أبكر وبشكل أنظف وبالقرب من المكان الذي تبدأ فيه المشكلة.
قد تؤدي طبقة التحقق المملة إلى إخبارنا بالمزيد عن الجاهزية للإنتاج أكثر مما ستفعله التشفيريات اللافتة.
