من یک پیشنهاد در مورد تامین امنیت بیشتر برنامه ها به استاد دادم. شما هم موافقید؟
سلام
چند روزی بود که داشتم در مورد ایجاد سطح امنیتی بیشتر برای برنامه های اندرویدی تحقیق و جستجو میکردم. بیشتر هم داخل سایت stack وقت گذاشتم. نتایج رو اینجا به اشتراک میذارم تا اگر کسی نیاز داشت استفاده کنه و اگر از دوستان کسی چیز بیشتری هم میدونه ما رو هم بی نصیب نکنه و بتونیم استفاده کنیم.
ضمن اینکه یک پیشنهاد هم بصورت مستقیم برای استاد فرستادم که دوست دارم نظر شما رو هم در موردش بدونم.
نتیجه اولیه (که البته چیز جدیدی نیست و بارها در موردش بحث شده و استاد هم آموزش اختصاصی در موردش دارن این بود که بهترین راه برای جلوگیری از هک شدن برنامه ، استفاده از روش obfuscate کردن برنامه هست که طی این عملیات کدهای ما مبهم و گنگ میشه و به این راحتی ها نمیشه دیکامپایلش کرد.
برای این منظور 2 ابزار اصلی وجود داره که ظاهرا برای یک شرکت (لینک) هست :
1. ابزار progaurd :
- مزایا : 1) سطح امنیتی بسیار خوبی ارائه میده 2) رایگانه 3)در آموزشهای ویدیویی استاد بصورت کامل بررسی شده
- معایب : به نظر من فقط یک عیب داره و اونهم اینه که محتویات داخل متغیرهای String و همچنین نام برخی عناصر رو obfuscate نمیکنه که اگر اینکار رو میکرد شاید بشه گفت درصد بالایی از مشکلات امنیتی داخل برنامه ها رو رفع میکرد چون کدها کاملا گنگ و نامفهوم میشد و در مواردی که دوستان نیاز به رمزگذاری رشته ها دارن خیلی بکار میومد و خیلی از مشکلات رو حل میکرد.
2. ابزار dexgaurd :
- مزایا : 1) سطح امنیتی در بالاترین حد ممکن هست 2) همه چیز و همه چیز و همه چیز رو obfuscate میکنه. تمام کلاسهای استفاده شده + تمام لایبری های ایمپورت شده + تمام منابعی که داخل پوشه assets قرار دایدیم و ... رو هم رمزگذاری میکنه 3) حتی محتویات داخل متغیرهای String رو هم obfuscate میکنه (!) و با وجود این امکانات تقریبا میشه گفت امکان هک شدن نرم افزار 0% خواهد بود !
- معایب : 1) این ابزار تجاریه و لایسنسش فوق العاده گرونه. در حال حاضر 1 لایسنس + پشتیبانی عادی = 660 دلار و 1 لایسنس + پشتیبانی طلایی = 1320 دلار !!! 2) مشکلات خرید کردن ما ایرانی ها از سایت های خارجی رو هم که همه میدونید و نیازی نیست بحث کنیم 3) آموزش فارسی در موردش وجود نداره و اگر بخوایم بخریم و استفاده کنیم باید به مستندات خودشون اکتفا کنیم و با پشتیبانیشون در ارتباط باشیم که برای خیلی از ماها که تسلط کامل به زبان نداریم مشکله.
حالا پیشنهادی که من به استاد دادم اینه که :
1. زحمت بکشن و یه آموزش فارسی در مورد obfuscate کردن با dexgaurd تهیه کنن
2. خودشون اقدام به فروش لایسنس ها به ما کنن. یعنی جناب آقاجانی واسطه بین ما و اون شرکت خارجی بشن. برای این منظور میتونن با اونها مکاتبه کنن و نمایندگی رسمی و انحصاری dexguard در ایران رو در اختیار بگیرن. یا اینکه قیمت روز لایسنس + قیمت روز دلار + کارمزد حق العمل خودشون رو محاسبه کنن و اگر کسی نیاز به این ابزار داشت بتونه از طریق استاد آقاجانی اون رو بخره.
البته این رو باید عرض کنم که شاید همه نیاز نداشته باشن نرم افزارشون رو با dexguard محافظت کنن و همون progaurd جواب کارشون رو بده ولی شایدم کسی باشه که یک نرم افزار مهم با اطلاعات حساس یا محصولی تجاری که ممکنه سود خوبی براش داشته باشه رو در دست تهیه داشته باشه و بخواد خیال خودش رو از نظر امنیت برنامه راحت کنه که در اینصورت میتونه از این سرویس استفاده کنه و لایسنس تجاری بخره.
خوشحال میشم نظر سایر دوستان رو در این مورد بدونم....
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .