PDA

View Full Version : حرفه ای: محافظت از encryption key در کد



daneshjoo2
شنبه 02 مرداد 1389, 14:01 عصر
باسلام خدمت دوستان
من به دلایلی برخی از اطلاعات برنامه رو باید encrypt کنم. به این منظور یه key براش تعریف کردم، که اونو به صورت hard code تو اسمبلی برنامه گذاشتم.
حالا مشکل اینجاست که یه کاربر نیمه وارد به راحتی با ابزارایی مثل reflector میتونه کد رو برگردونه و درنهایت با بدست اوردن key اطلاعات encrypt شده رو decrypt کنه.
البته استفاده از ابزارای محافظت کد مثل eazfuscator میتونه مفید باشه، که اونم خیلی مشکل داره، مثلا تو namespace های تو در تو اصلا کارایی نداره(؟)...
دوستان پیشنهادی دارن آیا؟

ASKaffash
شنبه 02 مرداد 1389, 14:42 عصر
سلام
SmartAssembly4.0 به بالا بهتر Obfuscate می کنه و تقریبا DeSmart هم ناقص DeCompile اش می کنه ولی وقتی سورس DeCode شد هیچ راهی نیست باید سمت کدهای Native بروید

jalalx
شنبه 02 مرداد 1389, 15:08 عصر
روش شما (Hard Code) کلا اشتباهه.
کلید ها را به صورت فایل به کاربر بدهید و مسئولیت امنیت آن را به کاربر بسپارید! برنامه برای هر بار decryption باید فایل ها رو از کاربر بگیره.
هر چند الگوهای امنیتی بهتر از این وجود داره...

daneshjoo2
شنبه 02 مرداد 1389, 16:38 عصر
روش شما (Hard Code) کلا اشتباهه.
کلید ها را به صورت فایل به کاربر بدهید و مسئولیت امنیت آن را به کاربر بسپارید! برنامه برای هر بار decryption باید فایل ها رو از کاربر بگیره.
هر چند الگوهای امنیتی بهتر از این وجود داره...
خب برای کار من مناسب نیست، چون این اطلاعات، حاوی اطلاعات trial برنامس و پس از encrypt شدن تو رجیستری قرار میگیره، و کاربر نباید هیچ دسترسی به key داشته باشه، وگرنه به راحتی الگوریتم رو باز کرده و با یه keyGen خیلی راحت برنامه رو کرک میکنه....
الگوهای امنیتی بهتر؟ میتونید چند موردو معرفی کنید؟

daneshjoo2
سه شنبه 05 مرداد 1389, 01:00 صبح
jalalx (http://barnamenevis.org/forum/member.php?u=65582) عزیز
میشه بیشتر توضیح بدید؟ (الگو های امنیتی بهتر؟)