سلام .. امیدوارم حالتون خوب باشه .. در این مقاله سعی میکنم به صورت خلاصه و کاربردی به موضوع امنیت داده در اندروید بپردازم. در ابتدا یه توضیح مختصری راجع به الگوریتم های رمزنگاری میدم و بعدش پیاده سازی هرکدوم از روش ها رو توی اندروید بصورت پست های جداگانه که لینک اونها تو پایین صفحه وجود داره به شما توضیح میدم. تمام پیاده سازی ها هم بصورت یک پروژه اندرویدی توی این لینک گیت هاب وجود داره که میتونید ازش استفاده کنید.
در هر نرم افزاری رمزنگاری داده از اهمیت ویژه ای برخوردار هست و نرم افزارهای اندرویدی هم از این قایده مستثنا نیستن. ولی باتوجه به نوع کاری که در اندروید انجام میشه میتونیم از روش های مختلف رمزنگاری استفاده کنیم. بصورت کلی روش های رمزنگاری به دو دسته الگوریتم های برگشت پذیر و برگشت ناپذیر تقسیم میشن. برای تولید کلید تو روش های برگشت پذیر ما میخواییم با بیشترین امنیت ممکن این روش ها رو توی اندروید پیاده سازی کنیم؛ لذا از AndroidKeyStore استفاده میکنیم. حالا بصورت خیلی ساده به توضیح این روش ها میپردازیم:
به الگوریتم هایی گفته میشه که ما یک متن رو رمزنگاری میکنیم و در آینده اون متن رمزشده با استفاده از الگوریتم های رمزنگاری دقیقا به همون متن اولیه برمیگرده رو الگوریتم برگشت پذیر میگن. این الگوریتم ها به دو دسته متقارن و نامتقارن تقسیم میشن:
به الگوریتم هایی میگن که ما یک متن رو رمزنگاری میکنیم اما در آینده به هیچ وجه قابل برگشت به متن اولیه نیستن رو الگوریتم برگشت ناپذیر میگن. ما توی این مقاله به نحوه پیاده سازی الگوریتم SHA توی اندروید میپردازیم. خب دیگه .. بریم سراغ اصل مطلب و پیاده سازی روش های گفته شده تو بالا: