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

مهندسی معکوس

مهندسی معکوس (Reverse Engineering)

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

ویژگی‌ها:

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

یعنی:

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

مهم‌ترین اقداماتی که در مسیر مهندسی معکوس بردهای الکترونیکی انجام می‌شود عبارت‌اند از:

  • شناسایی و طبقه‌بندی قطعات الکترونیکی به‌کاررفته بر روی برد
  • دنبال‌کردن مسیرهای PCB جهت درک نحوه اتصال بین اجزا
  • ترسیم شماتیک مدار از روی نمونه فیزیکی
  • تحلیل جریان سیگنال‌ها و نحوه پردازش آن‌ها در مدار
  • استخراج، بررسی و تحلیل فریمور یا کدهای داخلی (در صورت وجود میکروکنترلر)

این فعالیت‌ها نیازمند دانش فنی، ابزار مناسب و دید تحلیلی دقیق هستند و هدف نهایی آن‌ها، درک جامع از طراحی و عملکرد سیستم الکترونیکی مورد بررسی است.

  1.   شناسایی قطعات الکترونیکی: در این مرحله، نوع و مدل قطعات الکترونیکی مورد استفاده از جمله آی‌سی‌ها، مقاومت‌ها، خازن‌ها و سایر اجزای الکترونیکی شناسایی می‌شوند.
  2.   کشف مسیرهای ارتباطی: با دنبال‌کردن مسیرهای موجود بر روی برد مدار چاپی (PCB)، نحوه اتصال و ارتباط میان اجزای مختلف بررسی می‌گردد.
  3.   ترسیم نقشه شماتیک مدار: بر اساس اطلاعات به‌دست‌آمده، شماتیک (نقشه مداری) دستگاه رسم می‌شود تا ساختار منطقی و عملکردی مدار مشخص شود.
  4.   تحلیل عملکرد مدار: عملکرد کلی برد بررسی می‌شود؛ از جمله مسیر عبور سیگنال‌ها، نحوه پردازش آن‌ها و نقش هر بخش در فرآیند کلی عملکرد دستگاه.
  5.   استخراج و تحلیل فریمور (در صورت وجود): در صورتی که دستگاه دارای میکروکنترلر باشد، تلاش می‌شود برنامه داخلی (فریمور) استخراج و تحلیل گردد تا منطق کنترلی و نرم‌افزاری سیستم نیز شناسایی شود.

اهداف فرآیند مهندسی معکوس برد الکترونیکی به‌صورت کلی شامل موارد زیر است:

  • کسب دانش و افزایش مهارت: آشنایی عمیق‌تر با ساختار و عملکرد سیستم به‌منظور یادگیری مفاهیم فنی و تکنیکی.
  • طراحی و تولید نسخه بهینه‌تر: بهره‌گیری از تحلیل انجام‌شده جهت توسعه یا بازطراحی سیستم با عملکرد بهتر، هزینه کمتر یا کارایی بالاتر.
  • تعمیر، به‌روزرسانی یا ارتقاء سیستم: شناسایی و رفع عیوب موجود، و همچنین ارتقاء قابلیت‌ها و عملکرد دستگاه بر اساس نیازهای جدید.
  • ارزیابی امنیت و شناسایی آسیب‌پذیری‌ها: تحلیل ساختار سخت‌افزاری و نرم‌افزاری سیستم با هدف کشف نقاط ضعف امنیتی و بهبود ایمنی عملکرد دستگاه.

کپی‌برداری از مدار چاپی (Cloning/Copying PCB)

کپی‌برداری از یک برد الکترونیکی به معنای بازتولید دقیق یک برد آماده موجود، بدون اعمال تغییر در طراحی، تحلیل عمیق عملکرد مدار یا بهبود ساختاری آن است.

ویژگی‌ها:

  • این فرآیند معمولاً شامل بررسی ظاهری، اسکن یا مهندسی معکوس سطحی برد موجود و بازسازی آن با همان مشخصات فیزیکی و عملکردی است.
  • شماتیک مدار و در صورت وجود، فریمور (برنامه میکروکنترلر) نیز اغلب بدون تحلیل عملکردی عمیق صرفاً بازسازی یا استخراج می‌شوند.
  • درک کامل و دقیق از منطق عملکرد مدار الزامی نیست و تمرکز بر تکرار عینی و فیزیکی ساختار موجود است.
  • هدف اصلی، تولید مجدد دقیق همان برد است، بدون هیچ‌گونه تغییر، اصلاح یا ارتقاء.
  • در برخی موارد، این فرآیند ممکن است متکی بر روش‌هایی باشد که از منظر قانونی یا اخلاقی محل بحث بوده و شامل نقض حقوق مالکیت فکری و اطلاعات محرمانه می‌شود.

به بین ساده:

در این روش، بدون درک دقیق از نحوه عملکرد مدار، صرفاً اقدام به تکرار فیزیکی و عملکردی همان برد موجود می‌شود.

مراحل معمول در فرآیند کپی‌برداری از برد (PCB Cloning):

  1. تصویربرداری یا اسکن دقیق از برد موجود به‌منظور مستندسازی چیدمان فیزیکی و مسیرهای برد.
  2. بازطراحی مدار چاپی (PCB) صرفاً بر اساس ظاهر فیزیکی برد، بدون نیاز به دسترسی به نقشه شماتیک اصلی یا تحلیل عملکردی.
  3. تهیه و مونتاژ قطعات الکترونیکی دقیقاً مطابق با نمونه اصلی و چینش آن‌ها بر روی برد بازطراحی‌شده.
  4. در صورت وجود تراشه‌های قابل برنامه‌ریزی (نظیر میکروکنترلرها)، تلاش برای استخراج و کپی فریمور از نمونه اصلی، مشروط به نبودن قفل یا محدودیت امنیتی.

اهداف اصلی از کپی کردن بردهای الکترونیکی:

  • تولید یک نسخه مشابه از برد الکترونیکی برای استفاده شخصی یا عرضه در بازار.
  • انجام فرآیند بدون اعمال تغییرات، بهبود طراحی یا نیاز به درک عمیق از منطق و عملکرد مدار.
ویژگیمهندسی معکوس (Reverse Engineering)کپی کردن برد (Board Cloning)
هدفتحلیل و درک ساختار و عملکرد سیستمتولید یک نسخه‌ی مشابه بدون تحلیل عمیق
سطح دانش مورد نیازبالا – نیاز به دانش فنی در الکترونیک و نرم‌افزارمعمولی – بدون نیاز به درک عمیق
مراحل اصلیشناسایی قطعات، تحلیل مدار، استخراج شماتیک و فریموراسکن برد، طراحی مجدد PCB، لحیم‌کاری مشابه
امکان تغییر یا بهبودبله، قابل توسعه یا بهبودنه، فقط یک نسخه مشابه ساخته می‌شود
کاربردهاتحقیق، توسعه، امنیت، تعمیر، آموزشتکثیر برای مصرف شخصی یا تجاری (گاهی غیرقانونی)
نیاز به فهم عملکرد مداربله – نیازمند درک دقیق عملکرد سیگنال‌ها و مدارخیر – تمرکز فقط بر ظاهر و بازتولید است
خروجی نهاییطراحی قابل بهینه‌سازی و توسعهبردی مشابه نسخه اصلی بدون انعطاف در طراحی
وضعیت قانونیدر برخی موارد قانونی است )در صورت رعایت مالکیت فکری(ممکن است ناقض کپی‌رایت باشد

آموزش گام‌به‌گام مهندسی معکوس بردهای الکترونیکی

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

مرحله ۱: یادگیری اصول پایه الکترونیک

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

فعالیت‌های پیشنهادی:

  • خواندن ولتاژ و سایر پارامترها با استفاده از مولتی‌متر
  • ساخت مدارهای ساده روی برد بورد
  • یادگیری قانون اهم و قوانین کیرشهف (جریان و ولتاژ)

مرحله ۲: آموزش خواندن و طراحی نقشه شماتیک

توانایی تفسیر شماتیک (نقشه مداری) برای درک ارتباط بین اجزای مدار و همچنین ترسیم شماتیک از روی برد واقعی الزامی است.

نرم‌افزارهای پیشنهادی برای طراحی شماتیک و PCB

  • KiCad
  • EasyEDA
  • Altium Designer

مرحله ۳: شناسایی و تست قطعات الکترونیکی

شناسایی قطعات روی برد، تشخیص پارت‌نامبرها و مطالعه دیتاشیت آن‌ها از مهم‌ترین مهارت‌های لازم در مهندسی معکوس بردهای الکترونیکی است.

ابزارها و منابع مورد نیاز:

  • مولتی‌متر برای تست پایه‌ای قطعات الکترونیکی
  • وب‌سایت‌های تخصصی مانند:

مرحله ۴: کار با میکروکنترلرها و پروگرامرها

در صورت وجود میکروکنترلر روی برد مانند AVR، STM32، ESP32، شناخت روش‌های پروگرام و استخراج اطلاعات از چیپ ضروری است.

مواردی که باید بدانید:

  • نحوه پروگرام کردن میکروکنترلر
  • روش‌های استخراج فریمور (در صورت نبود قفل امنیتی)
  • نحوه خواندن و ذخیره‌سازی محتوای حافظه چیپ

ابزارهای سخت‌افزاری و نرم‌افزاری مفید:

  • پروگرامرها: ST-Link USBasp، CH341A
  • نرم‌افزارها:
    • Flashrom
    • AVRDude
    • STM32CubeProgrammer

مرحله ۵: تحلیل فریمور (Firmware Analysis)

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

مهارت‌های مورد نیاز:

  • تسلط نسبی به زبان‌های برنامه‌نویسی سطح پایین مانند Assembly و زبان‌های سطح بالا مانند C/C++

ابزارهای تحلیل کد باینری:

  • Ghidra
  • IDA Free
  • Binary Ninja

وظیفه این ابزار ها:

تبدیل کد ماشین (داده‌های صفر و یک) به فرم قابل‌خواندن و قابل‌تحلیل برای درک ساختار برنامه.

مرحله ۶: بررسی سیگنال‌ها و ارتباطات روی برد

برای درک نحوه تبادل داده بین اجزای برد و شناسایی پروتکل‌های ارتباطی مانند UART، SPI، I2C و … استفاده از ابزارهای تخصصی ضروری است.

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

5/5 - (30 امتیاز)

3 thoughts on “تفاوت مهندسی معکوس و کپی کردن برد الکترونیکی: مزایا، معایب و کاربردها”

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *