كيف تجعل البرامج غير قابلة للتشفير؟

فوري21 نوفمبر 2023
كيف تجعل البرامج غير قابلة للتشفير؟

بعد دراسات عديدة في معهد ماساتشوستس للتكنولوجيا عام 1996 للبحث في امكانية إخفاء آلية العمل لبرنامج حاسوبي ، حيث بمكن استخدام هذا البرنامج بدون معرفة الكيفية ، وهذا يعني تعتيم البرامج وتشويش الكود Software Obfuscating وهي الفكرة الموجودة منذ فترة طويلة ، ولكن الجديد هو انشاء نظام تعتيم قوي بوضع اطار رياضي .

وقد قامت شركات البرمجة التجارية بابتكار تقنيات عديدة لتحريف آلية عمل البرامج Garbling a Program ، ليصبح من الصعب فهمه خلال أداء مهامه ، لكنه لم يصمد أمام محاولات الاختراق ، أما هذه المعتمات التجارية Obfuscators فتقدم الجديد ألا وهو مطب السرعة speed bump .

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

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

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