مهندسی معکوس چیست؟ آشنایی با کاربردهای شگفت انگیز آن در دنیای امروز | بلاگ

مهندسی معکوس چیست؟ آشنایی با کاربردهای شگفت انگیز آن در دنیای امروز

ساخت وبلاگ

آخرین مطالب

امکانات وب

شمارنده

مهندسی معکوس (Reverse Engineering)، یک فرایند حل مساله است که از پاسخ شروع می شود. مهندسی معکوس ریشه در تحلیل سخت افزار برای مزیت تجاری یا نظامی دارد. در تعریف مهندسی معکوس دو مولفه وجود دارد: تغییر ساختار مجدد و بازیابی طراحی. این فرآیند همچنین می تواند به کاهش زمان مورد نیاز برای درک سورس کد کمک کند و هزینه کلی توسعه نرم افزار را کاهش دهد. امروز در انزل وب به تعریف مهندسی معکوس و بررسی کاربردهای آن می پردازیم.

کاربرد مهندسی معکوس در کامپیوتر ، روانشناسی ، تست زنی و.. چیست؟

What is Reverse Engineering and What are its Applications?

به طور کلی تعریف مهندسی معکوس را می توان به دسته های زیر تقسیم کرد:

  1. مشخص کردن اجزای سیستم و روابط متقابل آن ها
  2. ایجاد بازنمایی سیستم به شکل دیگر یا سطح بالاتر
  3. بازنمایی فیزیکی آن سیستم

تاریخچه مهندسی معکوس

تاریخچه مهندسی معکوس

مهندسی معکوس احتمالاً با بازی های رایانه ای مبتنی بر سیستم عامل DOS آغاز شد. هدف این بود که زندگی کامل و مسلحانه برای بازیکن بازی بدست بیاید تا مرحله نهایی بازی را تمام کند. اولین هک و نفوذ به سیستم های کامپیوتری از همین دوران بود. در سال ۱۹۹۰، انستیتوی مهندسین برق و الکترونیک (IEEE) مهندسی معکوس را فرآیند تجزیه و تحلیل سیستم و موضوعی برای شناسایی اجزای سیستم و روابط متقابل آنها و تعریف نمایندگی سیستم به شکل دیگر یا در سطح بالاتر تعریف کرد.

کاربرد مهندسی معکوس در کامپیوتر ، روانشناسی ، تست زنی و… چیست؟

تعریف مهندسی معکوس

تعریف مهندسی معکوس بسیار ساده است و کاربردهای مهندسی معکوس فراوان. به عنوان مثال، هنگامی که یک ماشین جدید به بازار عرضه می شود، تولیدکنندگان رقیب ممکن است یک دستگاه خریداری و آن را از هم جدا کنند تا بدانند چگونه ساخته شده است و چگونه کار می کند. مهندسی معکوس در علوم کامپیوتری و مهندسی و همچنین در سایر رشته های غیر مهندسی مانند بازاریابی، روانشناسی و… کاربرد دارد که در ادامه به آن ها خواهیم پرداخت.

مهندسی معکوس در هک

مهندسی معکوس در هک هنگام حمله به برنامه ها نقش اصلی را ایفا می کند. هکر ها اشکالات مصنوعی را در کد کامپایل شده وارد می کنند تا ببینند چگونه سیستم نفوذپذیر می شود. اگر هکر در تلاش است تا داده های حساس یا کلیدهای رمزنگاری شده را به سرقت ببرد، باید بداند که در کجای برنامه جستجو کند. اگر این اسرار آشکار نباشند، هکرها برای یافتن آنها باید مهندسی برنامه را معکوس کنند.

مهندسی معکوس در برنامه نویسی

مهندسی معکوس در برنامه نویسی فرآیند بازیابی طراحی و مشخصات مورد نیاز و عملکردهای یک محصول از تجزیه و تحلیل کد آن است. این عمل، پایگاه داده برنامه را ایجاد و اطلاعاتی پیرامون آن تولید می کند.

مهندسی معکوس در الکترونیک

تعریف مهندسی معکوس در طراحی بورد الکترونیکی همان شناسایی المان های بورد و بررسی فیدبک مداری است. سپس قطعات را جایگزین و لحیم می کنند و الگوی ردیابی را برای طراحی های بعدی باقی می گذراند.

مهندسی معکوس در روانشناسی

تعریف مهندسی معکوس در روانشناسی فرایند مهندسی معکوس مغز است که می داند چه انتخاب طبیعی را در محیطی که در آن تکامل یافته انجام دهد. مهندسی معکوس مغز ممکن است ما را قادر سازد که سیستم های مصنوعی را با همان قابلیت ها طراحی کنیم.

مهندسی معکوس در مدیریت

مهندسی معکوس در مدیریت و بازاریابی روشی است که در آن کل فرآیند به زیر مجموعه ها تقسیم می شود و زیر مجموعه مورد نیاز، پردازش معکوس خواهد شد. در چارچوب یک کمپین بازاریابی محتوا، مهندسی معکوس بدان معنی است که می توانید یک کمپین موفق (احتمالاً از یک رقیب) را بررسی و معکوس کار کنید تا مراحل ایجاد موفقیت در تجارت شان را دریابید.

مهندسی معکوس در رسانه

مهندسی معکوس رسانه روش های خارج از پارادوکس را ارائه ، و نشان می دهد که چگونه فعالان، دانشگاهیان و کاربران با ساختن گزینه های محتوایی متفاوت برای رسانه های اجتماعی، رسانه ها را بهتر می کنند.

مهندسی معکوس در معماری

تعریف مهندسی معکوس در معماری نمایانگر نمایش های فنی است که یک پایگاه روش شناختی جدید برای نقشه برداری و نمایش معماری با استفاده از تکنیک های گرافیک رایانه را تشکیل می دهد.

مهندسی معکوس در تست زنی

در ذهن خود نتیجه مطلوب سوال را ایجاد کنید تا تصویری روشنی از آنچه را که می خواهید پاسخ دهید داشته باشید. شرایط خیالی را تصور کنید تا به جوابی که در ذهن خود دارید برسید. متغیر های لازم را معرفی کنید و رویکرد خود را مطابق با آن اصلاح کنید تا به نتیجه صحیح برسید.

اهداف مهندسی معکوس

هدف و کاربرد مهندسی معکوس تسهیل کار تعمیر و نگهداری با بهبود درک سیستم و تولید اسناد لازم برای یک سیستم جدید است. لازم است به این اهداف جزئی تر اشاره کنیم:

  1. مقابله با پیچیدگی
  2. بازیابی اطلاعات از دست رفته
  3. تشخیص عوارض جانبی
  4. سنتز انتزاع بالاتر
  5. تسهیل استفاده مجدد

روش مهندسی معکوس

روش مهندسی معکوس

روش مهندسی معکوس از مراحل زیر تشکیل می شود:

  1. جمع آوری اطلاعات: این مرحله بر جمع آوری تمام اطلاعات ممکن تمرکز دارد.
  2.  بررسی اطلاعات: اطلاعاتی که در مرحله ۱ جمع آوری شده باید برای آشنایی با سیستم مورد مطالعه قرار گیرند.
  3.  استخراج سازه: این مرحله شامل شناسایی ساختار برنامه در قالب نمودار ساختار است.
  4.  ذخیره عملکرد: در طی این مرحله جزئیات پردازش هر یک از ماژول های سازه، نمودارها با استفاده از زبان ساختاری مانند جدول تصمیم گیری و غیره، ضبط و ذخیره می شوند.
  5.  ذخیره جریان داده ها: از اطلاعات استخراج شده در مرحله ۳ و مرحله ۴، نمودارهای جریان داده بدست می آید.
  6.  ذخیره جریان کنترل: ساختار کنترل سطح بالای پروژه ضبط می شود.
  7.  مرور طراحی پایانی: سند طراحی استخراج شده چندین بار مورد بررسی قرار می گیرد تا از صحت آن اطمینان حاصل شود.
  8.  تولید مستندات: مستندات کامل شامل SRS، سند طراحی، تاریخچه، نمای کلی، و غیره برای استفاده بعدی ثبت می شوند.

نظرات و پیشنهادات شما؟

در مطلب امروز، به این پرداختیم که Reverse Engineering چیست. همانطور که دیدید کاربرد مهندسی معکوس بسیار جامع است. شما تا به حال از مهندسی معکوس استفاده کرده اید؟ می توانید نظرات، پیشنهادات و تجربیات خود را در قسمت دیدگاه این پست با ما به اشتراک بگذارید.

میکائیل نیک اندیش pinez...
ما را در سایت میکائیل نیک اندیش pinez دنبال می کنید

نویسنده : میکائیل نیک اندیش بازدید : 30 تاريخ : سه شنبه 29 مرداد 1398 ساعت: 13:09