درود
اول میخوام تشکر ویژه کنم بابت کار فوق العاده ای که انجام دادید
در مورد امنیت برنامه یسری ایده داشتم اگه تمایل داشتید درنظر بگیرید :
یه تکنیکی هست به اسم certificate pinning طوری که کلید عمومی سرور ( چیزی که برای همه در دسترسه ) رو تو سورس برنامه قرار میدید
بعد کلاینت موقع ریکوئست زدن به سرور مطمئن میشه که سرور درستی داره پاسخ میده
حالا کاربردش کجاست؟
اگه این حرکت بزنید بعدش افرادی که سعی کنن ترافیک نرم افزار دیکریپت کنن و به نوعی به کانفیگا دسترسی پیدا کنن, به مشکل میخورن, در وافع نرم افزارایی مثل sniffer ها که کارشون دیکریپت ترافیک نرم افزاراست
با tls فیک, نرم افزار مهساng رو فریب میدن و اطلاعات tls رو دیکریپت میکنن
البته چون بعد از tls یه رمزنگاری هم خودتون زدید این مشکلی بوجود نمیاره فعلا
ولی خب بنظرم این رمزنگاری درونی که زدید استاتیکه و ممکنه لیک بشه
یه موردی هم که هست تو فایل build.gradle گزینه isminifyEnabled اگر ترو باشه فکر میکنم نتیجه بهتری بده چرا که یه مبهم سازی رو کد, خود کاتلین میزنه
درود اول میخوام تشکر ویژه کنم بابت کار فوق العاده ای که انجام دادید در مورد امنیت برنامه یسری ایده داشتم اگه تمایل داشتید درنظر بگیرید : یه تکنیکی هست به اسم certificate pinning طوری که کلید عمومی سرور ( چیزی که برای همه در دسترسه ) رو تو سورس برنامه قرار میدید بعد کلاینت موقع ریکوئست زدن به سرور مطمئن میشه که سرور درستی داره پاسخ میده حالا کاربردش کجاست؟ اگه این حرکت بزنید بعدش افرادی که سعی کنن ترافیک نرم افزار دیکریپت کنن و به نوعی به کانفیگا دسترسی پیدا کنن, به مشکل میخورن, در وافع نرم افزارایی مثل sniffer ها که کارشون دیکریپت ترافیک نرم افزاراست با tls فیک, نرم افزار مهساng رو فریب میدن و اطلاعات tls رو دیکریپت میکنن البته چون بعد از tls یه رمزنگاری هم خودتون زدید این مشکلی بوجود نمیاره فعلا ولی خب بنظرم این رمزنگاری درونی که زدید استاتیکه و ممکنه لیک بشه
یه موردی هم که هست تو فایل build.gradle گزینه isminifyEnabled اگر ترو باشه فکر میکنم نتیجه بهتری بده چرا که یه مبهم سازی رو کد, خود کاتلین میزنه
بازم متشکرم از تلاش هاتون