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

