با سلام خدمت اساتید محترم
در Smart Assembly گزینه ای به نام "I want to reduce unused allocated memory " وجود داره که وقتی تیک مربوط به اون رو میزنم و برنامه obfuscate میشه، با اجرای برنامه obfuscate شده، در task manager قسمت Memory مشاهده می کنم که حافظه استفاده شده توسط برنامه نسبت به قبل از obfuscate به شدت کاهش پیدا کرده. قبل از obfuscate حافظه استفاده شده 100 مگ و بعد از اون 4 مگ. البته این تا وقتیه که برنامه فقط باز باشد و هیچ کاری یا پردازشی انجام ندهد. به محض باز شدن یک فرم یا انجام یک پردازش مقدار حافظه به 70 – 80 مگ میرسه و بعد بلافاصله میشه همون 3 – 4 مگ.
سوال اول : این گزینه در Smart Assembly دقیقا چه کار میکنه؟
سوال دوم : من از کرک چیزی نمیدونم. آیا این مزیتی که برنامم بعد از obfuscate پیدا می کنه، می تونه احیانن جلوی دامپ حافظه توسط کرکر رو بگیره؟ چون به هر حال حافظه استفاده شده مدام در حال تغییر هست و 100 مگ میشه 4 مگ
سوال سوم : من برنامم رو با 6 – 7 تا obfuscator تست کردم و خروجی همه اون هارو به de4dot دادم تا deobfuscate کنه بعدش هم فایل های deobfuscate شده (clean شده) رو با .NET Reflector باز کردم تا ببینم بعد از یک obfuscate و deobfuscate چه بلایی سر برنامه بدبختم اومده. بین همه obfuscator ها اول Crypto obfuscator و بعدSmart Assembly از همه بهتر بود. Crypto حتی بهتر از SA بود چون de4dot نتونست حتی نام کلاس های تغییر داده شده توسط Crypto رو برگردونه. برخلاف SA که برگردوند. (البته نمیدونم شاید این برای کرکر فرقی نکنه)
حالا سوال سوم این که : با توجه به مزیت خوب SA در کاهش حافظه و مزیت خوب Crypto در برنگشتن نام کلاس ها، من کدوم obfuscator رو انتخاب کنم؟
نکته انحرافی 1 : عجب برنامه ایست این de4dot. خدا بگم نویسنده هاشو چه کار کنه![]()
نکته انحرافی 2 : برنامه های deobfuscator خیلی راحت string های کد شده رو بر می گردونن. آخه پس ما چه خاکی به سرمون کنیم؟![]()
نکته انحرافی 3 : بعد از کلی بدبختی برای obfuscate کردن برنامم باید برم سراغ protect کردن اون. خدا بگم شما اساتید کرک رو چه کار کنه![]()
نکته انحرافی 4 : تازه آخرش هم میگن اگه میخوای برنامت کرک نشه، کلا برنامه ننویس و از این حرفا![]()
ممنون میشم اگه راهنماییم کنین