ما هو التدقيق الأمني للعقود الذكية؟
الصفحة الرئيسية
المقالات
ما هو التدقيق الأمني للعقود الذكية؟

ما هو التدقيق الأمني للعقود الذكية؟

متوسط
تاريخ النشر Mar 1, 2022تاريخ التحديث Apr 27, 2023
8m

الموجز

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


المقدمة

تُعتبر عمليات التدقيق الأمني للعقود الذكية شائعة جداً في منظومة التمويل اللامركزي (DeFi). إذا كنت قد استثمرت في مشروع سلسلة البلوكشين، فقد يكون قرارك معتمداً بشكل جزئي على نتائج مراجعة كود العقد الذكي.

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


ما هو تدقيق العقد الذكي؟

يعمل التدقيق الأمني للعقود الذكية على فحص كود العقد الذكي للمشروع والتعليق عليه. وعادةً ما تتم كتابة هذه العقود بلغة برمجة Solidity ويتم تقديمها عبر GitHub. تعتبر عمليات التدقيق الأمني ذات قيمة خاصة لمشروعات التمويل اللامركزي التي تتوقع معالجة معاملات سلسلة البلوكشين التي تبلغ قيمتها ملايين الدولارات أو عدد ضخم من اللاعبين. وعادةً ما تتبع عمليات التدقيق عملية من أربع خطوات:

1. يتم توفير العقود الذكية لفريق التدقيق لإجراء التحليل الأولي.

2. يقدم فريق التدقيق النتائج التي توصل إليها بخصوص المشروع لكي يتخذ فريق المشروع الإجراءات اللازمة بشأنه.

3. يقوم فريق المشروع بإجراء تغييرات بناءً على المشكلات التي تم العثور عليها.

4. يُصدر فريق التدقيق تقريره النهائي، مع الأخذ في الاعتبار أي تغييرات جديدة أو أخطاء معلقة.

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


لماذا نحتاج إلى عمليات تدقيق العقود الذكية؟

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

نظراً لأن معاملات سلسلة البلوكشين لا رجعة فيها، فإن التأكد من أن كود المشروع آمن أمر ضروري. تجعل الطبيعة الآمنة للغاية لتقنية سلسلة البلوكشين من الصعب استرداد الأموال وحل المشكلات بعد وقوعها، لذلك من الأفضل منع الثغرات بأي ثمن.


كيف تعمل عمليات تدقيق العقود الذكية؟

تعتبر عملية تدقيق العقود الذكية قياسية إلى حد ما بين مقدمي خدمات التدقيق. في حين قد يختلف نهج كل مُدقِق قليلاً، فإن العملية النموذجية كما يلي:

1. تحديد نطاق التدقيق. يتم تحديد مواصفات المشروع والعقد الذكي بواسطة المشروع (الغرض المقصود منه) والبنية العامة. وتساعد المواصفات فريق التدقيق على فهم أهداف المشروع عند كتابة الكود واستخدامه.

2. تقديم عرض أسعار أولي بناءً على حجم العمل المطلوب.

3. إجراء الاختبارات. ستتغير طبيعتها الدقيقة اعتماداً على فريق التدقيق وأدوات التحليل والطرق الخاصة به. وعادةً، يتم إجراء الاختبارات اليدوية والآلية على حد سواء.

4. إنشاء مسودة أولى للتقرير تحتوي على الأخطاء التي تم العثور عليها وتقديمها إلى فريق المشروع للحصول على الملاحظات وتصحيحات المتابعة.

5. نشر التقرير النهائي، مع الأخذ في الاعتبار أي إجراء يتخذه الفريق لمعالجة المشكلات المطروحة.


طرق تدقيق العقود الذكية

فعالية رسوم المعالجة 

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

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

نقاط ضعف العقود

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

1. مشكلات إعادة الدخول: عندما يقوم العقد الذكي بإجراء استدعاء خارجي لعقد خارجي آخر قبل حل أي تأثيرات. يمكن للعقد الخارجي بعد ذلك استدعاء العقد الذكي الأصلي بشكل متكرر والتفاعل معه بطرق لا ينبغي أن يكون قادراً عليها، لأنه لم يتم تحديث رصيد العقد الأصلي بعد.
2. ثغرة الفيض وثغرة النقصان: عندما يُنفذ العقد الذكي عملية حسابية، لكن الناتج يتجاوز سعة التخزين (عادةً 18 منزلاً عشرياً). وهذا يمكن أن يؤدي إلى احتساب مبالغ غير صحيحة.
3. فرص التداول بناءً على معلومات داخلية: يمكن أن يوفر الكود الذي تم هيكلته بشكل سيء تحذيراً مسبقاً من عمليات الشراء أو البيع في السوق. وهذا بدوره يمكن أن يسمح للآخرين باستخدام المعلومات والتداول بناءً عليها لمصلحتهم الخاصة.

الثغرات الأمنية في المنصة

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


ما هو تقرير التدقيق؟

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

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


أين يمكنني الحصول على تدقيق العقود الذكية؟

أصبح عدد من خدمات تدقيق العقود الذكية معروفاً بخدماتها. وهناك خدمتان منها شائعتان بشكل خاص، وسيتطلب الحصول على تدقيق منهما عرض أسعار أولي وتسليم المعلومات.

CertiK

CertiK هي شركة رائدة في المجال عندما يتعلق الأمر بعمليات تدقيق العقود الذكية. قامت مئات المشروعات بتدقيق عقودها الذكية لديها. أحد الأمثلة عليها، PancakeSwap، أكبر صانع سوق آلي (AMM)، في سلسلة Binance الذكية. فيما يلي جزء من تدقيق Certik لـ PancakeSwap.


أيضاً، الغالبية العظمى من المشروعات التي تدعمها مختبرات Binance قامت بتدقيق عقودها لدى CertiK. تقوم CertiK بإصدار لوحة صدارة للمشروعات التي تم تدقيقها، والتي تتيح لك إمكانية مقارنة كل منها، إلى جانب درجة الأمان. لاحظ أنه، بصرف النظر عن Ethereum، تُغطي CertiK أيضاً مشروعات سلسلة Binance الذكية وPolygon.


ConsenSys Diligence

يديرها جوزيف لوبين، أحد مؤسسي Ethereum، ConsenSys واحدة من أكبر الأسماء في مجال العملات الرقمية من حيث تطوير سلسلة البلوكشين. ضمن ConsenSys Diligence، توفر الشركة عمليات تدقيق العقود الذكية لـ Ethereum. كما أنها توفر خدمة آلية تتحقق من عقود آلة Ethereum الافتراضية (EVM) بحثاً عن الأخطاء الشائعة.


ما هي تكلفة تدقيق العقود الذكية؟

تعتمد التكلفة الدقيقة للتدقيق على عدد العقود الذكية التي سيتم التحقق منها. وعادةً ما تصل عملية التدقيق إلى آلاف الدولارات. يمكن أن يكلف مشروع كبير أكثر من 10000 دولار. ستؤثر شركة التدقيق التي تدير تدقيقك وسمعتها أيضاً على مقدار ما تدفعه.


أفكار ختامية

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

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