ارتباط امن بین api و اپلیکیشن
گزارشسوال
سلام
چند وقتی هست این موضوع ذهن منو مشغول کرده ، که چیجوری اتصال api و app رو برقرار کنیم که ادرس لو نره یا اگر رفت نتونن کار خاصی باهاش بکنن !
از اونجایی که برنامه های اندروید قابل دیکامپایل هستند ، پس میشه لینک رو پیدا کرد ، همچنین اگر توکن هم بزاریم بازم میشه پیداش کرد چون کل سورس موجود هست .. ، راه حلی برای جلوگیری از نفوذ هست ؟
خواهش میکنم اگر راه حلی هست داخل یک مطلب منتشر کنید که همه استفاده کنند ، چون واقعا من چنین چیزی جز یک مورد که می بایست پک اندروید سایت رو با قیمت ۳۰۰ هزار تومان بخری موجود نبود !
خیلی خیلی ممنون
حل شده
0
اندروید - android
3 سال
9 پاسخ
3646 بازدید
1
پاسخ ها ( ۹ )
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام
لو رفتن آدرس اصلا مهم نیست مهم حفاظت از توکنه.
پس باید دنبال روشهایی برای ذخیره سازی توکن بگردیم که امنیت اپلیکیشنمون بالا بره و موقع دیکامپایل به توکن دسترسی نداشته باشن.
بهترین روش اون استفاده کردن از ndk برای ذخیره توکنه. این روش امن ترین روش برای محافظت از توکنه و دیکامپایل هم نمیشه .
البته راهکارهای جزئیه دیگه ای هم هست:
مثه اینکه همراه با توکن چند مقدار دیگه برای اعتبار سنجی سمت سرور فرستاده بشه که اون مقادیر بین کلاینت کار و سرور کار قرارداد میشه .
یا از پروتکل های مرسوم که امنیت اطلاعات ارسالی به سرور رو برامون تضمین میکنن استفاده کنیم.
ولی بهترین روش و البته سخت ترینش همون استفاده از ndk است.
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام
خیلی ممنون ، نیازمند دانش c++ هست ؟
خودتون استفاده کردید ازش ؟ امکانش هست یک سورس معرفی کنید یا همینجا کمی توضیح بدین درباره نحوه انجامش ؟
پروگارد چی ؟ کاربردی نداره ؟
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام و درود
متوجه نمی شوم برنامه نویسی اندروید چه ربطی به c++ دارد آیا می خواید کانفیگ کاستوم بسازید و به صورت jini اجراش کنید ؟ که بازهم نمی تونه زیاد کاربردی باشه در آخر حتی برنامه های بزرگ مانند دیجی کالا نیز قابل decompile هستن تنها راه آن ساخت یک دیکشنری از رمز و کد ها برای کلاس های مختلف است. پروگارد کاربردی هست و نسبتا هم خوب داره عمل می کنه ولی گفتم بازم قابل شکستن هست فقط شما همانطور که دوستمان توضیح دادن باید token را به صورت رمزگذاری شده و محرمانه ایجاد کنید و حتی برای خواندن این token یکسری پارامتر خاص را ارسال کنید اپ دیجی کالا از همین روش استفاده کرده.
موفق باشید
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام
امکانش هست یک لینک منبع / مثال بدین یا خودتون یک مثال بزنید ؟
چه پارامتر هایی مثلا میده دیجیکالا ؟!
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام
یه کد تو c مینویسی توکن رو اونتو ذخیره میکنی و کارهای امنیتی رو تو c انجام میدید بعد با ndk کامپایلش میکنی و به برنامت اضافه میکنی . اینطوری موقع دیکامپایل کسی دسترسی به توکن شما نخواهد داشت !!
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوکاملا درست می فرمایید.
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوhttps://developer.android.com/ndk/guides/index.html
https://developer.android.com/studio/projects/add-native-code.html
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوپروگارد هم کاربرد هم روش بسیار خوبیه ولی به نظر من بهترین روش استفاده از ndk می باشد!!!
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغویه سوالی برای من پیش اومد با خوندن این مطلب که اگه بشه کد های اندروید رو دیکامپایل کرد خب همین کار رو میشه برای کد هایی که با ndk کامپایل شده انجام داد و به اون کدها هم دسترسی داشت؟
Warning: Illegal string offset 'vote' in /home/studioap/domains/programchi.ir/public_html/wp-content/themes/ProgramChi.ir/admin/functions/main_functions.php on line 414
لطفا علت گزارش خود را در رابطه با این پاسخ بنویسید.
گزارش لغوسلام . من موقع ثبت نام یک توکن به گوشی کاربر می فرستم که دفعات بعد توکنو بفرسته به سرور و یک راست داخل پروفایلش وارد بشه . توکن ساین شده هستش . آیا از لحاظ امنیتی کار دیگه ای هم باید انجام بدم ؟ دسترسی به توکن ساین شده چقد مهمه ؟
یک سوال دیگه اینکه منظور از api key چی هستش ؟ غیر از api key google map
ممنون .