كيف تعمل الهندسة العكسية على البرمجيات

لغات البرمجة  تصنف إلى ثلاثة ١- لغات المستوى الادنى LLL – هذه تكتب بالأرقام الثنائية وتتعامل مباشرة مع الهاردوير ،وتسمى ب Machine Language. ٢- لغات المستوى الأوسط- وصيغتها تكتب باللغة الإنجليزية وتعتبر نوعا ما صعبة ، وتحتاج إلى مترجم يحولها إلى لغة الآلة وتسمى ب Assembly Language. ٣- لغات المستوى الأعلى- وهذه تحتاج إلى مترجم او مفسر لتحويلها إلى لغة الآلة،  وتعتبر أقربهم إلى لغة الإنسان وابسطهم. في مجال الحماية لدينا اختصاص يسمى بالهندسة العكسية Reverse Engineering وظيفته التعديل على البرمجيات مغلقة المصدر Closed Source  وهذا التعديل قد يشمل اللايسنس او عدد المستخدمين او تفعيل ميزات معينة الخ أبرز شكل على الهندسة العكسية الكراكات. نحن نعرف ان البرنامج ينفذ بعد أن يترجم إلى لغة الآلة بشكل شفرات ثنائية،  هناك ادوات تقوم بتحويله من لغة الآلة إلى لغة Assembly  حتى نستطيع التعديل عليه بأستخدام ما يسمى ب disassembler  . مفهوم الهندسة العكسية لا يطبق فقط على البرمجيات وإنما في كل الصناعات الأخرى(التقليد ) .