DeepNcode: Encoding-Based Protection against Bit-Flip Attacks on Neural Networks
تقدم الورقة البحثية DeepNcode، وهي طريقة حماية قائمة على الترميز تعزز بشكل كبير من قدرة الشبكات العصبية على الصمود ضد هجمات قلب البتات عبر زيادة هوامش الحماية بما يصل إلى 12.4 مرة دون الحاجة إلى إعادة تدريب النموذج، أو تغيير الدقة، أو تحمل أعباء زمنية كبيرة.
المؤلفون الأصليون:Patrik Velčický, Jakub Breier, Mladen Kovačević, Xiaolu Hou
تخيل عالماً تكون فيه أذكى الحواسيب في الغرفة عبارة عن أدوات صغيرة تعمل بالبطارية، موضوعة على مكتبك أو داخل سيارتك. تعمل هذه الأدوات باستخدام "شبكات عصبية"، وهي في الأساس أدمغة رقمية تتعلم التعرف على القطط، أو قيادة السيارات، أو تشخيص الأمراض من خلال معالجة الأرقام. ولجعل هذه الأدمغة سريعة وصغيرة بما يكفي لتناسب جيبك، يقوم المهندسون بتقليص ذاكرتها، محولين الأرقام الكبيرة والدقيقة إلى تقريبات صغيرة وخشنة تسمى القيم "المكممة". الأمر يشبه تحويل صورة عالية الدقة إلى "إيموجي" صغير؛ لا تزال الصورة تبدو كما هي، لكنها تشغل مساحة أقل بكثير.
ومع ذلك، هناك مشكلة خفية تواجه هذه الأدمغة الرقمية الصغيرة. نظرًا لأنها تعيش في العالم الحقيقي، يمكن وخزها وتحريكها فعلياً. يمكن لمهاجم ذكي استخدام تقنية تسمى "قلب البت" (bit-flip) لتغيير رقم 0 واحد إلى 1 (أو العكس) في ذاكرة الكمبيوتر. فكر في الأمر كشبح مشاكس يتسلل إلى مكتبة ويغير حرفاً واحداً فقط في عنوان كتاب. في الكمبيوتر العادي، قد يؤدي تغيير حرف واحد إلى جعل الكلمة تبدو غريبة فقط. ولكن في الشبكة العصبية، يمكن لقلب بت واحد في "وزن" (وهو رقم يحدد مدى أهمية ميزة معينة) أن يخدع النظام بأكمله ليظن أن علامة التوقف هي علامة تحديد السرعة، أو أن صورة كلب هي محمصة خبز. وهذا أمر بالغ الخطورة فيما يتعلق بالسلامة، خاصة إذا كانت سيارتك أو جهازك الطبي يعمل بهذه الشبكات.
هنا يأتي دور ورقة بحثية بعنوان "DeepNcode" لتقدم دفاعاً ذكياً. فقد أدرك الباحثون أن الطريقة التي تخزن بها هذه الأدمغة الصغيرة الأرقام حالياً تشبه منزلاً بباب أمامي يسهل فتحه. لقد قرروا بناء نوع جديد من "الأقفال الرقمية" باستخدام ما يسمى بالأكواد الثنائية. فبدلاً من تخزين رقم مثل "5" بشكل مباشر، يقومون بترجمته إلى سلسلة أطول خاصة من الأصفار والآحاد التي تبدو كشفرة سرية. وسحر هذا الكود يكمن في أنه لكي يغير المهاجم معنى الرقم، لا يمكنه مجرد قلب بت واحد بعد الآن؛ بل يجب عليه قلب العديد من البتات في وقت واحد. الأمر يشبه محاولة تغيير كلمة في لغة سرية عن طريق تغيير حرف واحد فقط؛ النتيجة ستكون مجرد كلام غير مفهوم، وليست كلمة أخرى.
اختبر الفريق هذه الفكرة، التي أطلقوا عليها اسم "DeepNcode"، ضد أفضل طرق الاختراق المعروفة. ووجدوا أنه بالنسبة للشبكات التي تستخدم أرقاماً مكونة من 4 بت، تعين على المهاجمين العمل بجهد أكبر بنحو 7.6 مرة للنجاح. وبالنسبة للشبكات ذات الـ 8 بت، زادت الصعوبة بمقدار يصل إلى 12.4 ضعفاً في أفضل الحالات. الأمر كما لو أن المخترق انتقل من محاولة فتح قفل بسيط بمشبك ورق إلى الاضطرار لتفكيك باب خزنة بنك بملعقة. والأفضل من ذلك؟ أن هذه الحماية لا تتطلب إعادة تدريب الذكاء الاصطناعي أو إبطاء سرعته بشكل ملحوظ. إنها فقط تضيف القليل من الذاكرة الإضافية (حوالي 50% إلى 125% مساحة إضافية، اعتماداً على الإعداد) لحمل الأكواد السرية. وتشير الورقة البحثية إلى أنه باستخدام هذه الأكواد الرياضية، يمكننا جعل الأمر صعباً للغاية على المهاجم الفيزيائي لكسر شبكة عصبية لدرجة قد تجعله يستسلم ويمضي في سبيله، مما يحافظ على سلامة أجهزتنا الذكية من الأشباح الرقمية.
ملخص تقني: DeepNcode
بيان المشكلة
تواجه نماذج التعلم العميق المنشورة على الأجهزة المدمجة، مثل أجهزة إنترنت الأشياء (IoT)، تهديدات أمنية كبيرة من هجمات حقن الأخطاء (Fault Injection Attacks). وتحديداً، تسمح هجمات قلب البتات (Bit-flip attacks) -مثل استغلال ثغرة Rowhammer في ذاكرة DRAM- للمهاجمين بقلب البتات في الذاكرة حيث تُخزن معاملات الشبكة العصبية المكممة (Quantized Neural Network Parameters). يمكن لهذه الهجمات أن تؤدي إلى خطأ في التصنيف، أو استخراج النموذج، أو زرع أحصنة طروادة (Trojans) أو أبواب خلفية (Backdoors).
يكمن الضعف الجوهري الذي تستغله هذه الهجمات في تمثيل الأعداد الصحيحة القياسي بنظام "المتمم الثنائي" (Two's complement) المستخدم للأوزان المكممة. في هذا التمثيل، غالباً ما يتطلب تغيير قيمة الوزن قلب بت واحد فقط (على سبيل المثال، تغيير الرقم 7 إلى 6 في التكميم بـ 4 بت يتطلب قلب البت الأقل أهمية فقط). يستغل المهاجمون هذه الخاصية لتقليل عدد الأخطاء المحقونة المطلوبة لخفض دقة النموذج أو تحقيق أهداف خبيثة محددة. تعاني الدفاعات الحالية غالباً من أعباء تشغيل عالية، أو تتطلب إعادة تدريب النماذج، أو تعتمد على افتراضات بأن المهاجمين لا يمكنهم التلاعب بمجموع التحقق (Checksums) المخزنة في الذاكرة المتطايرة.
المنهجية: DeepNcode
يقترح المؤلفون DeepNcode، وهو أسلوب حماية قائم على الترميز يستبدل تمثيل المتمم الثنائي القياسي للأوزان المكممة بنظام ترميز ثنائي (Binary Code). يزيد هذا النهج من "مسافة هامينج" (Hamming distance) بين الكلمات الرمزية (Codewords) الصالحة، مما يجبر المهاجم على قلب عدد أكبر بكثير من البتات لتغيير قيمة وزن من حالة صالحة إلى أخرى.
الآلية الجوهرية
اختيار الرموز: تستخدم الطريقة أكواد هامينج (Hamming codes) وأكواد هامينج الممتدة (Extended Hamming codes)، المعروفة بخصائصها في اكتشاف الأخطاء.
بالنسبة لـ التكميم بـ 4 بت (16 قيمة ممكنة)، يختار المؤلفون أكواداً بطول n≤9 ومسافة دنيا d≥3. وتشمل هذه الأكواد المحددة C(7,3) و C(8,4) و C(9,4).
بالنسبة لـ التكميم بـ 8 بت (256 قيمة ممكنة)، تُستخدم أكواد بطول n≤14 ومسافة d≥3، بما في ذلك C(12,3) و C(13,4) و C(14,4).
استراتيجية الترميز: لتعظيم الأمن، يقوم الترميز بربط القيم العددية التي يُحتمل استهدافها أكثر من خلال قلب البت الواحد (تحديداً تلك التي تختلف في البت الأكثر أهمية MSB) بكلمات رمزية ذات مسافات هامينج أكبر قدر الإمكان.
الترميز خطي. يخصص المؤلفون الكلمة الرمزية ذات وزن هامينج الأقصى لمتجه الأساس المقابل للبت الأكثر أهمية (e(1)).
بناءً على ذلك، فإن تغيير قيمة عددية تختلف فقط في الـ MSB يتطلب قلب عدد من البتات يساوي وزن هامينج للكلمة الرمزية المخصصة (على سبيل المثال، 7 أو 8 بتات)، بدلاً من قلب بت واحد فقط.
التنفيذ:
ما قبل النشر: يتم ترميز الأوزان مرة واحدة قبل تخزينها في الذاكرة.
وقت التشغيل: يقوم النموذج بفك ترميز الأوزان عند الطلب (على سبيل المثال، قبل خطوات الاستدلال). يتم تخزين روتين فك الترميز في ذاكرة البرنامج غير المتطايرة (Flash)، مما يجعله مقاوماً لهجمات Rowhammer التي تستهدف ذاكرة البيانات.
المساهمات الرئيسية
إجراء وقائي مبتكر: يعد DeepNcode أول عمل يستخدم نظرية الترميز الثنائي خصيصاً لزيادة جهد المهاجم من حيث عدد عمليات قلب البتات المطلوبة للشبكات العصبية المكممة، مما يوفر ضمانات أمنية مثبتة رسمياً بناءً على معايير الأكواد.
لا يتطلب إعادة التدريب: على عكس طرق التدريب القوية الأخرى (مثل RA-BNN)، لا يتطلب DeepNcode إعادة تدريب النموذج ولا يغير الدقة الأصلية للشبكة.
قابلية التطبيق العامة: الطريقة قابلة للتطبيق على أي شبكة مكممة بـ 4 بت أو 8 بت، بغض النظر عن البنية أو عدد المعاملات.
أمن قابل للإثبات: توفر الحماية زيادة مضمونة في عدد عمليات قلب البتات المطلوبة. وحتى لو تم اكتشاف هجمات جديدة أكثر كفاءة، فإن الخصائص الأساسية للأكواد المختارة تضمن بقاء تعقيد الهجوم أعلى بعدة مرات مقارنة بالنماذج غير المحمية.
النتائج التجريبية
قيم المؤلفون DeepNcode مقابل أحدث هجمات قلب البتات (BFA، و T-BFA، و TA-LBF) على نماذج عامة (ResNet-20، و ResNet-18، و VGG-11) ومجموعات بيانات (CIFAR-10، و CIFAR-100).
هامش الأمان:
بالنسبة لـ الشبكات المكممة بـ 4 بت، زاد عدد قلب البتات المطلوب لهجوم ناجح بمعامل يتراوح بين 6.6× إلى 7.6×.
بالنسبة لـ الشبكات المكممة بـ 8 بت، تراوح الارتفاع بين 11.3× إلى 12.4×.
تحديداً، الهجمات التي كانت تتطلب سابقاً قلباً لبت واحد (كما هو شائع في المتمم الثنائي) تتطلب الآن 7 أو 8 قلبات للبتات عند تغيير الـ MSB، و 4 إلى 5 قلبات للبتات للتغييرات الأخرى.
الأعباء (Overheads):
الذاكرة: يبدأ عبء الذاكرة من 50% من حجم الشبكة الأصلي (لتكميم 8 بت مع C(12,3)) ويصل إلى 125% (لتكميم 4 بت مع C(9,4)).
الوقت: عبء الوقت ضئيل جداً. يستغرق فك الترميز حوالي 0.0003 ثانية إلى 0.03 ثانية اعتماداً على النموذج. يرى المؤلفون أنه بما أن هجوم Rowhammer ناجح يستغرق وقتاً أطول بكثير (على سبيل المثال، > 11 ثانية للنماذج ذات 4 بت)، يمكن إجراء فك الترميز بشكل دوري (مثلاً كل 1000 عملية استدلال) دون التأثير على الأداء.
معدلات نجاح الهجوم: تمنع الطريقة بفعالية الهجمات المتخفية (T-BFA 1-to-1 stealthy) من خلال زيادة تكلفة حقن الخطأ بشكل جذري، مما يجعل الهجوم غير قابل للتنفيذ عملياً في معظم الأحيان.
الأهمية والادعاءات
يزعم البحث أن DeepNcode يقدم مقايضة فعالة للغاية بين الأمن والكفاءة. فمن خلال الاستفادة من الخصائص الرياضية لأكواد هامينج، فإنه يحول "الفرص السهلة" لقلب البت الواحد إلى مهمة عالية التعقيد تتطلب أخطاء متعددة متزامنة.
يؤكد المؤلفون أن هذا النهج يوفر ضمانات أمنية قابلة للإثبات مستمدة من نظرية الترميز، بدلاً من الدفاعات التجريبية (Heuristic). ويضعون DeepNcode كحل عملي لبيئات الأنظمة المدمجة وإنترنت الأشياء حيث تكون النماذج عرضة لحقن الأخطاء الفيزيائية، مشيرين إلى إمكانية دمجه مع آليات الكشف (تشغيل روتينات فك الترميز بشكل دوري) لتحقيق معدلات كشف تصل إلى 100% قبل نجاح الهجوم. ويخلص العمل إلى أنه بينما توجد تكلفة في الذاكرة، فإن عبء الوقت الضئيل والزيادة الكبيرة في تعقيد الهجوم يجعلانه دفاعاً حيوياً ضد تهديدات قلب البتات الحديثة.