ورود

View Full Version : سوال: Obfuscate public methods



delphi_doost
چهارشنبه 15 تیر 1390, 18:19 عصر
سلام
دوستان ابزارهایی مثل Intellilock و یا .net reactor قابلیتی دارند که می توانند متدهای public را obfuscate کنند
اما مشکل آنها این است که اگر بخواهیم برنامه بدرستی کار کند بایستی گزینه Merge Assemblies را انتخاب کنیم که در نهایت یک فایل به ما خروجی می دهد.
چرا این نرم افزار ها متدی برای Obfuscate جداگانه آنها نگذاشته است (در صورتی که گزینه Mege Assembiles را نزنیم هریک از dll ها جداگانه Obfuscate شده و برای هم قابل فهم نیست)
1. چرا این نرم افزار ها این قابلیت را نگذاشته اند؟
2. روش کار آنها برای Obfuscate Public Methos چیست؟
3. آیا نرم افزاری هست که بتواند Public Method های Assembiles های مختلف را Obfuscate کند و جهت اجرای برنامه نیاز به Merge کردن Assembiles ها نداشته باشد؟

ASKaffash
یک شنبه 19 تیر 1390, 08:04 صبح
سلام
وقتی یک Member با Modifier تحت Public دریک Dll معرفی می گردد هدف دسترسی آن Member با استفاده از Refrence درون Assembly دیگر است بنابراین Member نباید Obfuscate شود ولی بدنه مثلا متد Obfuscate می شود ولی وقتی Merge می شود یا درون یک Assembly قرار دارند میتواند Internal بوده و بنابراین Obfuscate خواهند شد پس برای متدهای Public برای Obfuscate شدن راهی نیست

delphi_doost
پنج شنبه 30 تیر 1390, 12:18 عصر
سلام ASKaffash عزیز
خوب اشکالی نداره Merge Assembily بشه من می گم برنامه هایی مثل Intelliock چرا موقع ذخیره اسمبلی ها را جدا نمی کند.Merge Assebly در حافظه انجام می شه پس بایستی بتونه اونها را از هم تفکیک کنه

Nima NT
جمعه 01 مهر 1390, 08:01 صبح
به خاطر memory leak هایی که به وجود میاد این کار انجام نمیشه ( البته برمیگرده به ضعف دات نت در مدیریت حافظه )