mmd2009

پیشنهاد برای استفاده از ProGuard برای امنیت کدها

8 ارسال در این موضوع قرار دارد

با سلام

دوستان همونطور که اطلاع دارید اکثر برنامه های که مشابه هستن به احتمال زیاد کپی میشن. البته این رو هم در نظر بگیریم که ایده گرفتن با کپی کردن متفاوته. بگذریم...

خب اگر شما همینطوری کدتون رو بنویسی و برنامتون رو بذاری واسه دانلود و کسی به فایل apk شما دسترسی داشته باشه کافیه با نرم افزار های decompiler کد شمارو ببینه. مثلا نمونه زیر رو ببینید :

p2yprkjp7cv5snsy00mi.jpg

حالا بعد از فعال کردن ProGuard  کدها رو ببینید چطور میشن :

2ulrs23hd2qlrl5zbbf9.jpg

کدهای تصویر بالا چیزی هستن که کسی که میخواد apk شما رو دیکامپایل بکنه میبینه. قطعا خوندن اینجور کدها هم سخته و هم کار هرکسی نیست و وقت زیادی میخواد. حالا قطعا نمیشه گفت پاتک نداره این روش ولی برای شروع یکی از بهترین گزینه هاست. پیشنهاد میکنم حداقل کاری که میتونید بکنید رو اعمال کنید.

حالا اگر دوستان روش های دیگه ای هم میدونن بگن.

نکته : ( هر دو تصویر از Java Decompiler گرفته شده )

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

کو لینکش؟

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

پروگارد باید در اس دی کی تان موجود باشد

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

میشه بیشتر توضیح بدین

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

توی مسیر زیر قرار داره اما باید اطمینان حاصل کنید که کامله یا نه

sdk\tools\proguard

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

در اندروید استدیو توی build.gradle فیلد minifyEnabled رو true قرار بدید Proguard فعال میشه ، درهم سازی در سطح بالایی نیست ولی واسه برنامه هایی که ما میسازیم کافیه

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

اگرم بخواین کد اضافه کنین بهش باید بلد و دانسته به پروگارد کد اضافه کنید.یعنی ممکن است با کدی اشتباه عملکرد برنامه را به مخاطره بیاندازید.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

در اندروید استدیو توی build.gradle فیلد minifyEnabled رو true قرار بدید Proguard فعال میشه ، درهم سازی در سطح بالایی نیست ولی واسه برنامه هایی که ما میسازیم کافیه

چند نمونه دیگه هم هست که با تغییر Proguardکه تو sdk هست میتونید بهترش هم بکنید. تو گوگل سرچ کنید پیدا میشه.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط shervin soori
      با سلام خدمت دوستان 
      دوستان میشه راهنمایی بفرمایید که چطور می تونم الرت دیالوگ سفارشی که فایلش رو ضمیمه کردم ایجاد کنم.
      ممنون

    • توسط cnankh
      سلام ، من هر پروژه ای که با اندروید استودیو ازش خروجی میگیرم ، فقط و فقط روی گوشی هایی که 7.1.1 هستن ران میشه ، درحالی ک موقع ساخت پروژه پایین ترین لول api هم انتخاب میکنم ، یعنی با هر نوع api که فکرشو کنین امتحان کردم اما بازم نتیجه نداد ، کسی میدونه مشکل کجاس؟
    • توسط مهندس
      سلام.
      نرم افزاری که تراکنش داره
      و تو بازار بره
      ایا پورسانت میگیره و واریزیش چطوره؟؟
      ایا میشه نرم افزارو مستقیم به بانک خودم متصل بدم؟؟
    • توسط مهندس
      سلام دوستان 
      من میخام از خاصیت پروگارد استفاده کنم تا کسی نتونه اپلیکیشنمو دیکامپایل کنه و ب سورس برنامم دسترسی داشته باشه.دستوری ک در زیر گذاشتم
      buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } رو در اندروید استدیو اجرا کردم
      ولی متاسفانه وقتی فایل apk رو ب این سایت https://www.apkdecompilers.com/ میدم تمام سورس برنامه رو بهم میده بدون اینکه هش کرده باشه. اخه چرا ؟
      کجای کدم مشکل داره؟
       
    • توسط djsaeedkhan
      سلام. وقت بخیر.
      من یه برنامه اندروید درست کردم و داخلش با alarm-manager قرار دادم که یه کاری هر مثلا1 ساعت یکبار انجام بشه. الان درست کار میکنه و حتی اگر موبایل روشن خاموش بشه بازم کار میکنه.
      ولی اگر کاربر برنامه هایی که حافظه رم رو پاک میکنن(برنامه های غیرضروری یا باز) مثلا (Clean Master- Space Cleaner & Antivirus) یا اگر از تنظیمات رم گزینه پاک کردن، اجرا کنه  alarm-manager دیگه کار نمیکنه و تا برنامه دوباره باز نشه شروع به کار نمیشه.
      راهی هست که بشه این مشکل رو حل کرد باسپاس
       
      Intent alarmIntent = new Intent(getActivity(), ReceiverUpdateData.class); AlarmManager manager = (AlarmManager) getActivity().getSystemService(Context.ALARM_SERVICE); manager.setInexactRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), Integer.parseInt(newValue.toString())*60*1000, PendingIntent.getBroadcast(getActivity(), 0, alarmIntent, 0));  

  • دوره آموزشی اندروید آموزش ویدئویی اندروید آموزش برنامه نویسی اندروید اندروید کاپ دوره آنلاین اندروید کتاب های آموزشی اندروید بسته آموزشی اندروید دوره برنامه نویسی اندروید آموزش Kotlin آموزش برنامه نویسی ios مهارت های فروش
    آموزش برنامه نویسی اندروید
  • فایل