با سلام.
یکی از مهمترین مسائلی که در زمینه کرکینگ وجود داره درهم سازی یا obfuscation هستش.
درهم سازی یک عمل عمدی برای ساخت کدهای مبهم شده است. یعنی سورس کد یا کد ماشینی تولید کنیم که فهمیدن آن برای انسان مشکل باشد.
به ابزاری که این عمل رو برای ما انجام میدهد obfuscator می گویند.
بعنوان مثال Obfuscator سورس کد, سورس کد برنامه رو دریافت می کند و سورس کد دیگری با همان عملکرد که درک آن سخت تر است را تولید می کند.
مبهم سازی زمانی صورت میگیرد که برنامه نویس نخواهد هدف یا منطق برنامه قابل رویت باشد, جلوگیری از کرک کردن, دلسرد کردن کردن کرکر کار و چیزای دیگه....
معماری و خصوصیات یک زبان هم می تواند به مبهم سازی آن کمک کند از جمله زبان های برنامه نویسی مثل C, C++, Perl و...زبانهای راحتی برای مبهم سازی هستند.
مبهم سازی می تواند شامل تعویض کلمات کلیدی ساده, استفاده کردن یا نکردن از فضای خالی, برداشتن توضیحات, از بین بردن تورفتگی ها, تغییر نام ثابت ها و شناسه ها (مثل مغییرها, توابع و ...) در سورس فایل و ... باشد.