الهندسة العكسية reverse engineering تعني إعادة اكتشاف المبادئ التقنية للميكانيك التطبيقي من خلال عمليات التحليل الإنشائي، والتحليل التكنولوجي، وتحليل الأداء والوظيفة، وتحليل التشغيل، بحيث تتم إعادة صياغة البيانات التصميمية لمنظومة ما أو لمنتج ما من أجل تصميم أجزاء جديدة للمنظومة بهدف تحسين الأداء. ويمكن تطبيق ذلك على التجهيزات الميكانيكية، والعناصر الإلكترونية، والبرمجيات وغيرها.
كذلك توصف الهندسة العكسية بأنها عملية قياس فيزيائي لجزء ما أو مصنوعة يدوية ما وإنتاج شكل هندسي لها، وإعداد رسوماتها يدوياً أو بمساعدة الحاسوب، وإعداد البيانات الهندسية المناسبة لإعادة تصنيعها.
يتم التفكيك التفصيلي لجسم ما لمعرفة طريقة عمله، ومن ثم إعادة تصميم جهاز جديد يقوم بالمهمة نفسها. وعند الاستعانة بالبرمجيات يتم تحليل تفصيلي للبرنامج بهدف إنشاء برنامج جديد محسن أو مطور عن البرنامج الأصلي، من دون تنفيذ نسخة طبق الأصل عن البرنامج.
الفرق بين الهندسة العكسية وأنواع الهندسة الأخرى:
يطلق على الطريقة التقليدية الأكثر استخداماً في أعمال التطوير التقاني اسم الهندسة المتقدمة. ويطور العاملون في مجال بناء التقانات منتجاتهم باستخدام المفاهيم الهندسية والتجريدية. وبالمقابل تبدأ الهندسة العكسية من المنتج النهائي، ويتم العمل عكسياً للتوصل إلى المفهوم الهندسي عن طريق تحليل المنظومة المطلوبة، ومكوناتها الجزئية وتحليل العلاقات الداخلية لتلك المكونات الجزئية.
أما هندسة التقييم فهي تسمية تطلق على عملية تحسين على منظومة ما أو منتج ما بالمقارنة مع المنتج الأصلي الخاضع للتحليل، وهناك تداخل في غالبية الأحيان بين هندسة التقييم والهندسة العكسية؛ لأن الهدف من الهندسة العكسية هو أيضاً إدخال التحسينات وإعداد الوثائق التي تبين طريقة عمل المنتج الأصلي بالكشف عن التصميم المخفي (التحتي). إن أداء المنتج المنجز بجهود الهندسة العكسية يماثل كثيراً أداء المنتج الأصلي.
تاريخ الهندسة العكسية:
طبقت الهندسة العكسية على مر العصور على مختلف الأنشطة الاقتصادية، وخاصة منها في المجالات الصناعية. وقد لجأت دول كثيرة إلى الهندسة العكسية لدراسة منتجات الدول الأخرى، وتصاعدت وتيرة هذه الظاهرة الصناعية في أثناء الحرب العالمية الثانية وبعدها في المجالات الصناعية كافة، ولاسيما في المجالات العسكرية.
وقد استخدمت القوى العسكرية الهندسة العكسية في غالبية الأحيان لنسخ تقانة ما طبقتها دولة أخرى، أو للحصول على معلومات أو نماذج لأسلحة تم الاستيلاء عليها في أثناء المعارك، أو عن طريق الاستخبارات العسكرية التي نشطت بكثرة في أثناء الحرب العالمية الثانية وفي أثناء الحرب الباردة وهناك أمثلة كثيرة على ذلك منها:
ـ الصاروخ R-1:
بعد هزيمة ألمانيا في الحرب العالمية الثانية وقعت وثائق الصاروخ الألماني «ف2» V2 بأيدي الروس كما وقع في الأسر بعض علماء الصواريخ الألمان، واستعين بهؤلاء مع العلماء الروس لإعادة إنتاج الوثائق الفنية والمخططات التقانية للصاروخ V2 في روسيا. وتم التوصل بموجبها إلى إنتاج الصاروخ الروسي R-1، وكان ذلك بداية برنامج الصواريخ السوڤييتية.
ـ الطائرة TU- 4
هي قصة أخرى حدثت في أثناء الحرب الباردة. فقد جرى نسـخ الطائرة TU- 4 من قبل العلماء الروس عن القاذفة B-29 الأمريكية؛ إذ أُجبـرت القاذفة الأمريكيـة B-29 على الهبوط في إحدى المطارات السوڤييتية، ولم يكن لدى السوڤييت حينها قاذفات استراتيجية مماثلة، فقرروا نسخ النموذج الأمريكي. وبعد سنوات عدة طور السوڤييت قاذفة سموها TU- 4 كانت نسخـة مطابقة للقاذفـة الأمريكيـة B-29 بتقانات سوڤييتية.
وهناك دول كثيرة أخرى لجأت إلى الهندسة العكسية لتصنيع الأسلحة التي كانت تحتاج إليها بسبب حظر توريد الأسلحة لها. وكذلك الحال في الصناعات المدنية حيث تستخدم الهندسة العكسية لمزاحمة الأسواق الأجنبية من قبل ماليزيا وإندونيسيا وكوريا والهند والصين وتايوان وغيرها.
أما الهندسة العكسية في مجال البرمجيات فقد اشتهرت بها مجموعة أشخاص مع بداية العام 1999، عرفت باسم «مجتمع قرصنة الإنترنت من خلال تتبع المسارات» حيث تعاون هذا المجتمع على إجراء هندسة عكسية على مستوى تتبع المسارات.
وفي شهر أيار/مايو عام 1999 تخلى هذا المجتمع عن نشاطه واستسلم للسلطات، وقام بنشر ملاحظاته وبرامجه المساعدة التي استخدمها في عمليات القرصنة. وقد تابعت مجموعة من العاملين في شركة مايكروسوفت العمل من النقطة التي وصل إليها مجتمع القرصنة، وحققت أول نجاح لها بإعادة كتابة البرامج المساعدة لمجموعة الشركة.
وفي شهر آب/أغسطس 1999 نظم موقع على شبكة الإنترنت لتوفير كل شيء على شبكة الإنترنت بما في ذلك حفظ المعلومات المتوافرة لمجتمع قرصنة الإنترنت من خلال تتبع المسارات.
وفي شهر أيلول/سبتمبر 1999 ظهر مجتمع قرصنة الإنترنت من خلال تتبع المسارات تحت تسمية جديدة «مجتمع قرصنة الإنترنت الثوري»، وكان بعضهم يقوم بنشاطه على مستوى صيغ الهندسة العكسية أو أشكالها.
لقد اتسع نطاق العمل في مجال الهندسة العكسية على تقنيات المعلومات والاتصالات وعلى الحواسيب وتجهيزاتها في الوقت الحاضر، كما اتسع نطاقها أيضاً في مجالات التطبيقات الميكانيكية والإلكترونية والكيمياوية في دول العالم كافة لإنتاج التجهيزات ومتمماتها أو قطع التبديل للتجهيزات والآليات، أو لتحويل منتجات غير مفيدة إلى منتجات مفيدة عن طريق تطبيق تقنيات جديدة على أنظمة قديمة لتكييفها مع معلومات حديثة الصنع.
مراحل الهندسة العكسية:
تبدأ الهندسة العكسية بتحديد هدف المشروع، والطريقة الملائمة لتحديد الشكل الهندسي للمنظومة المطلوبة ولأجزائه، والدقة المناسبة لأبعاد القطع، وطريقة استخدام النتائج النهائية. ويجري ذلك وفق المراحل الآتية:
1- مرحلة تحديد المنتـج (منظومة أو عنصر من منظومة) الخاضع لعملية الهندسة العكسية:
يتـم ترشـيح منتـج أو عـدة منتجـات لاختيار أحدهـا مشروع هندسـة عكسيـة، وتتضمـن المنتجات المحتملـة للمشروع المـواد المفـردة، والأجزاء، والمكونـات، والوحـدات، والمجموعـات الجزئية. وقد يحتـوي بعضهـا علـى كثير مـن القطـع الصغيرة. وبعد دراسـة جدوى المنتجات المرشحة يتم تحديد أحدهـا لتنفيذها مشروع هندسة عكسية.
2- مرحلة تحليل المعلومات والبيانات الموثقة عن طريقة عمل المنتج الأصلي:
تستهلك هذه المرحلـة الوقت الأكبر من زمن تنفيذ المشروع، حيث يجري تفكيك المنتـج الأصلي إلى مجموعات جزئيـة، ومـن ثـم إلى مكوناتـه الإفراديـة، وحصر المـواد الأوليـة المستخدمة في إنتاج مكوناتـه، وتحديـد المواصفـات الكيمياويـة والفيزيائيـة للمواد الأولية، واعتمـاد المعالجات السطحيـة والحرارية لقطـع المنتـج المختلفـة، وتحديد أبعـاد القطع بدقة لإعداد الرسـومات الهندسـية، وتصميـم الاختبارات المحيطية، واختبارات الأداء للمنظومة ومكوناتـها الجزئية. ويجري بعد ذلك بناء المواصفات الأساسية للمنظومة بمساعدة البيانـات التقنيـة، ووضع طريقـة عمل للمنظومة المراد إنتاجها. يجري إعـداد رسـومات ثلاثية الأبعاد باستخدام التصميم بمساعدة الحاسـوب، عن طريـق برامج لأنظمة الحاسـوب المركزي، مما يساعـد على إنجـاز الهندسـة العكسـية أو إجراء تصميم معدل على التصميم الأصلي.
3- مرحلة استخدام البيانات التقنية والمخططات الهندسية المولدة بالهندسة العكسية نسخةً طبق الأصل أو نسخة معدلة عن النسخة الأصلية: في هذه المرحلة يقوم المهندسون بتدقيق البيانات والمخططات الناتجة من عملية تفكيك المنتج، ثم إعادة بناء دقيقة للمنظومة الأصلية. كما يدقق المهندسون صحة التصاميم وصلاحيتها عن طريق اختبار المنظومة، ومن ثم تنفيذ نموذج أولي للمنتج الجديد، واختباره، وتوثيق نتائج الاختبار. حيث يتم التدقيق والتفتيش عن البيانات والمخططات لكل مرحلة من المراحل بمساعدة الحاسوب، وبمشاركة فعالة من خدمات التفتيش وضبط الجودة.
4- مرحلة تنفيذ المنتج الجديد وتقديمه للأسواق:
بعد نجاح تنفيذ النموذج الأولي، وتطبيق الاختبارات المحيطية كافة، واختبارات الأداء، والتأكد من سلامة أداء المنتج مقارنة مع أداء النموذج الأصلي يمكن طرح المنتج الجديد في الأسواق.
وتعد المنظومة الجديدة تصميماً منافساً في السوق؛ لكونه يعتمد على إبداع المنتج الأصلي من حيث المواصفات الفنية، وكفاءته وعمره الفني، مع إدخال تحسينات عليه، واستخدام تقانات تمكن المنتج الجديد من المنافسة من حيث الجودة والقيمة المالية.
تطبيقات الهندسة العكسية:
يتم تطبيق الهندسة العكسية بعد الوصول إلى فهم آلية عمل أي جهاز أو برنامج، وإلى فهم الآلية التي تعوق عمل أي جهاز أو برنامج، وهناك تطبيقات مختلفة للهندسة العكسية ومنها:
1- تعرف منتج ما وفهمه، ثم تطويره ليعمل بمواصفات أفضل من السابق.
2- دراسة المبادئ التصميمية لمنتج ما على أنها جزء من عملية تعليمية في مجالات العلوم التطبيقية.
3- تحقيق التوافق بين المنتجات والمنظومات بحيث يمكنها العمل معاً، أو ليكون لها بيانات مشتركة نتيجة تعقيدات المنتجات وكثرة عدد قطعها، ويدخل ذلك في تجميع تلك المنظومات والمنتجات؛ إذ من الضروري أن يؤخذ في الحسبان حين تصميم قطع أي منتج أو منظومة تبادلية وإنتاجها استبدال القطع فيما بينها للمنتج نفسه.
هنـاك ضرورة أيضاً لمراعاة توافـق المنظومة أو المنتج مع المنتجـات الملحقـة والضرورية لقيـام المنظـومة أو المنتـج بالمهـام المختلفـة المصمـم لأجلها.
ومن ذلك مثلاً توافق الحاسوب مع المتممات المطلوبة للقيام بمختلف الوظائف اللازمة والمصمم لأجلها، كالطابعة، والماسح الليزري، و«الكاميرا»، والربط مع الحواسيب الأخرى، واستخدام البرمجيات المختلفة، وغيرها.
4- ضبط الجودة: لتدقيق التصاميم والمنتجات وتصحيح الأخطاء في أوانها:
تؤدي الهندسة العكسية منذ عام 1992 خدمات كبيرة لضبط الجودة، وقد تطورت الخبرات في هذا المجال وصارت عالية المستوى أسهمت في حماية الزبائن وفي تحقيق أهداف المشروعات المختلفة، تعدّ عمليات تحديد الشكل الهندسي النهائي وقياس أبعاده وفهم احتياجات المشروع الخطوات الأولى في الهندسة العكسية.
يُستخدم الإيزو 17025 بالتكامل مع الهندسة العكسية لضبط جودة المنتج، حيث يتم التفتيش بمساعدة الحاسوب وبمقارنة أول قطعة من القطع المنتجة على خط الإنتاج مع النموذج المصمم، كما يتم استخدام المسح الثلاثي الأبعاد في مشروعات الهندسة العكسية وتفتيش القطع والسطوح المولدة لمقارنـة الجزء المنتج من التصميم الأصلي للتأكد من سلامة المخططات والوثائق، يلي ذلك خطوة أخرى للتحقق من النوعية بمساعدة الحاسوب والمطبقة على طول خط الإنتاج، وعلى العمليات التشغيلية لضمان الإحاطة التامة بأي شكل هندسي مهما بلغ تعقيده، وقد طبقت عمليات التصميم بمساعدة الحاسوب على المصنوعات اليدوية وتم التوصل إلى الدقة المطلوبة لأي مشغولة يدوية.
بعد إنتاج المصنوعة اليدوية واجتيازها مرحلتي التفتيش والتحقق بمساعدة الحاسوب يتم إخضاع المشغولة لفحص نهائي من قبل مهندس خبير قبل تسليم النتائج وإعطاء الأمر بمتابعة الإنتاج.
مما تقدم يُستنتج أن الشركات الإنتاجية تركز دائماً على الهندسة العكسية وخدمة تفتيش الأبعاد للوصول إلى منتجات ذات نوعية مرتفعة ونتائج دقيقة، ولضمان القدرة على المحافظة على ذلك مع الزمن، حين إنتاج دفعات متتالية من المنتج.
5- الهندسة العكسية للبرامج الحاسوبية:
تعني الهندسة العكسية لبرنامج ما الدخول إلى تعليمات البرنامج وإمكانية التعديل فيها، ويتم عرض هذه التعليمات بلغة التجميع assembly، حيث يقوم برنامج هذه اللغة بتحويل النص إلى لغة الآلة بغض النظر عن اللغة الأصلية المكتوب بها البرنامج الأصلي.
يمكن إتمام إنجاز الهندسة العكسية لتقنيات البرامج الثنائية بطرائق مختلفة منها: طريقة تفكيك البرامج، أو تفكيك الترجمة للبنية اللينة لبرنامج حاسوبي.
تعني عملية تفكيك البرنامج تحويل البرنامج الأصلي نفسه من اللغة التجميعية إلى لغة الآلة، وكذلك الحال لتفكيك الترجمة التي تعني تحويل نص البرنامج الأصلي إلى اللغة التجميعية ومن ثم إلى لغة الآلة.
6- إنتاج نموذج رقمي دقيق من أي شكل فيزيائي:
يعدّ استخدام برمجيات الهندسة العكسية الآلية مثالياً للتطبيقات الإسعافية والسريعة مثل الإنتاج الكمي لمنتجات حسب الطلب، ولإعادة إنتاج منتجات تراثية ذات قيمة عالية.
إن ابتكار خوارزميات لأتمتة مسح السطوح تسرع في الحصول على النتائج وتحسن نوعية السطوح «للموديلات» والنماذج المنتجة على آلات تشغيل أو تصميمها بمساعدة الحاسوب. كما يؤدي استخدام تقانة الحاسوب في التصميم والإنتاج إلى زيادة في معدلات الإنتاج تقدر بعشرة أضعاف بالمقارنة مع استخدام برمجيات التصميم بمساعدة الحاسوب التقليدية.
يؤدي استخدام عمليات القياس والتصميم والإنتاج المؤتمت إلى تبسيط سير العمل وإلى خفض زمن التدريب وزيادة رضا العاملين بسبب التخلص من مهام العمل المركزة والمضجرة.
وفي العالم اليوم شركات متخصصة لإنجاز نماذج للشكل الرقمي واختباراته ومعالجته، ولأنواع الصناعات وتطبيقاتها كافة.
أدوات الهندسة العكسية:
أهمها اليوم: الحواسيب والبرمجيات وأدوات القياس المختلفة والمخابر الكيمياوية لتحليل المواد الأولية، ومخابر قياس المواصفات الفيزيائية للمواد الأولية وآلات التشغيل المبرمجة.
تستخدم اليوم منظومة عمل متكاملة مؤلفة من آلات قياس ليزرية بمساعدة برمجيات خاصة لمسح أبعاد أي قطعة وإرسالها مباشرة إلى آلات تشغيل محوسبة بتحكم رقمي وباستخدام برامج تصميم بمساعدة الحاسوب، ومن ثم إنشاء برنامج خاص بآلة التشغيل المبرمجة بحيث يمكن للآلة القيام بتشغيل القطعة وتفتيشها، وتفتيش اهتراء أدوات القطع الخاصة بعمليات التشغيل
. أما عملية القياس الفيزيائية فيمكن إجراؤها باستخدام إحدى الطرائق الآتية:
- أدوات قياس خطية تقليدية لبعد واحد (طاولات خاصة لقياس الاستواء - بياكوليسات (أدوات قياس منزلقة) - ميكرومترات - محددات قياس دقيقة).
- جهاز إسقاط ضوئي للقياسات الخطية لبعدين.
- تجهيزات قياس تلامسية ثلاثية الأبعاد ثابتة ومحمولة.
- حواسيب لتحليل الأشكال الهندسية وبرامج خاصة لتحليل الأشكال الثنائية الأبعاد والثلاثية الأبعاد.
- تجهيزات قياس ليزرية ثلاثية الأبعاد.
- تجهيزات لقياس طبوغرافية الأسطح وإجراء فحوصات الخشونة والاستقامة والاستواء.
ومن المهم أن يتم اختيار الطريقة الصحيحة للتغلب على أبعاد الشكل الهندسي لمشروع الهندسة العكسية. ويعتمد اختيار الطريقة على تعقيد الشكل الهندسي للجزء، والدقة المطلوبة للمنتج، وتواتر استخدام نتائج القياس، وإمكانية إعادة إنتاج الشكل الهندسي آلياً باستخدام القاعدة التقنية للتصميم والقياس والتشغيل بمساعدة الحواسيب.
ويحتاج إنجاز هذا العمل إلى خبرة صناعية وبرمجية عالية وخبرة في مجال التفتيش يجب أن يتمتع بها المهندسون والفنيون الذين سيعملون في هذا المجال.
مشروعية الهندسة العكسية:
كانت الهندسة العكسية منذ زمن طويل تحمل الصفة الشرعية أمام المحاكم العليا وأمام القانون وكانت تعدّ شكلاً شرعياً يساعد على الاكتشاف ويشجع الإبداع، وقد واجهت المحاكم العليا في العالم الصناعي قضايا عدة تتعلق بالهندسة العكسية في مجال التقانات الميكانيكية، وأيدت المحكمة العليا في الولايات المتحدة ومثيلاتها في أوربا قضايا الهندسة العكسية، إذ عدتها طريقة مهمة لنشر الأفكار الإبداعية وتشجيعها في السوق.
وفي ظل القوانين الأمريكية تعد الهندسة العكسية لمصنوعة يدوية أو لعمليات تشغيل محمية بسجل تجاري بدلاً من تسجيل براءة اختراع، وتعالج الهندسة العكسية للمصنوعة اليدوية أو لتلك العمليات قانونياً في البلد المسجلة به تلك البراءة المنتج المحمي بسجل تجاري، أما خارج حدود ذلك البلد المسجلة به براءة الاختراع فإن الاختراع لا يخضع لأي حماية؛ لأن حقوق الملكية الفكرية هي حقوق يتمتع بها صاحب المنتج الأساسي، أو صاحب الاختراع المسجل لدى الهيئة المختصة بهذه الحقوق في بلد ما أو في بلدان عدة.
بدأ العمل بنظام الحماية الفكرية منذ أوائل القرن الثامن عشر. وقد أدى ذلك إلى إيجاد نوع من التنافس بين المبتكرين نظراً لما حصلوا عليه من مردود مادي لاختراعاتهم، وللصناع الذين ساعدوا على تطوير منتجات جديدة وتسويقها لحسابهم مدة معينة.
ولكي لا تنتهك حقوق الملكية الفكرية بالهندسة العكسية يسعى المهندسون إلى إيجاد طريقة مختلفة لإنتاج جهاز أو منتج ما يقوم بالوظيفة نفسها، حيث يتم استخدام وثائق وحيدة لتبادل المعلومات، وتوثيق خطوات إنتاج المنظومة الأصلية، وفي أثناء تصنيع المنتج الجديد تنفذ كل مرحلة وخطوة منفصلة، وباستخدام تقانة تشغيلية جديدة، ولا تستخدم التقانة المستخدمة في إنتاج النموذج الأصلي.
أما ما يتعلق بمشروعية (قانونية) الهندسة العكسية للبرامج والتجهيزات الحاسوبية فهي أقل وضوحاً، ولكنها وصفت في العديد من المحاكم العليا بأنها جزء مهم من عملية تطوير البرمجيات، وتخضع لحماية قانون حقوق النشر. لكن قانون حماية الملكية الفكرية وضع بنوداً مضادة لترخيص الهندسة العكسية مما جعل الهندسة العكسية تواجه تحديات كبيرة. إلا أن قانون حقوق الطباعة الرقمية الألفي والذي تضمن بنوداً غامضة فيما يخص أنظمة الحماية التقنية، أفسح المجال أمام المحاكم العليا لتحليل أعمال الهندسة العكسية وإعطائها الأهلية القانونية، ويحمي قانون حقوق النشر أي عمل خاص بالهندسة العكسية ومن ضمنها البرمجيات التي تحتوي على القليل من الأصالة العلمية أو التقنية. في حين يعد نسخ العمل الأصلي كما هو انتهاكاً لقانون حقوق النشر.
ولابد من الإشارة إلى أن الهندسة العكسية والقرصنة الفكرية التقانية ليست من ابتكار الدول النامية وإنما سبقهم إليها المستثمرون والصناعيون في دول الشمال الغنية، وتبادلوا التسلل إلى الأسرار التقنية والتجسس التقاني والصناعي، مثل اليابان بعد الحرب العالمية الثانية، والدول الأوربية، ثم الولايات المتحدة في فترات تاريخية سابقة، ثم دخلت كوريا هذا المضمار في السنوات الستين الأخيرة وتبعتها الدول الآسيوية الأخرى كالهند التي تمكنت من إجراء هندسة عكسية لتقانات الصناعة البتروكيمياوية في نهاية السنوات السبعين الأخيرة.
محمود إبراهيم
المراجع
الموسوعة العربية
التصانيف
الأبحاث