sd رمزگذاری شده اندرویدهای ضد رمزنگاری

رمزگذاری داده ها در سیستم عامل اندروید ارتباط نزدیکی با دو مشکل دارد: کنترل دسترسی به کارت های حافظه و انتقال برنامه ها به آنها. بسیاری از برنامه ها حاوی داده های فعال سازی، اطلاعات پرداخت و اطلاعات محرمانه هستند. حفاظت از آن مستلزم مدیریت حقوق دسترسی است که توسط کارت های معمولی پشتیبانی نمی شود. سیستم فایل FAT32. بنابراین، در هر نسخه از Android، رویکردهای رمزگذاری به طور چشمگیری تغییر کرد - از عدم وجود کامل حفاظت رمزنگاری از رسانه های قابل جابجایی تا ادغام عمیق آنها در یک بخش واحد با رمزگذاری در حال پرواز.

نقش ویژه کارت حافظه

در ابتدا، توسعه دهندگان اندروید قصد داشتند از کارت حافظه فقط به عنوان یک حافظه جداگانه برای فایل های کاربر استفاده کنند. این فقط یک انبار چند رسانه ای بدون هیچ گونه الزامی برای حفاظت و قابلیت اطمینان آن بود. کارت‌های microSD (HC) با FAT32 به خوبی با نقش ذخیره‌سازی ساده کنار آمدند و حافظه داخلی را از عکس‌ها، ویدیوها و موسیقی آزاد کردند.

توانایی انتقال نه تنها فایل های چند رسانه ای، بلکه برنامه ها به کارت حافظه برای اولین بار در اندروید 2.2 فرویو ظاهر شد. این با استفاده از مفهوم کانتینرهای رمزگذاری شده برای هر برنامه اجرا شد، اما این منحصراً از افتادن کارت به دست اشتباه محافظت می کند - اما نه گوشی هوشمند.

علاوه بر این، این یک نیمه اندازه گیری بود: بسیاری از برنامه ها به طور جزئی منتقل شدند و برخی از داده ها را در خود باقی گذاشتند حافظه داخلی، و برخی (مثلاً سیستمی یا حاوی ویجت) اصلاً به کارت منتقل نشدند. بسیار امکان انتقال برنامه ها به نوع آنها (از پیش نصب شده یا شخص ثالث) و ساختار داخلی آنها بستگی دارد. برای برخی، دایرکتوری با داده های کاربر بلافاصله به طور جداگانه قرار گرفت، در حالی که برای برخی دیگر در یک زیر شاخه از خود برنامه قرار داشت.

اگر برنامه‌ها به شدت از عملیات خواندن/نوشتن استفاده می‌کردند، قابلیت اطمینان و سرعت کارت‌ها دیگر نمی‌تواند توسعه‌دهندگان را راضی کند. آنها به عمد امکان انتقال برنامه ها را با استفاده از وسایل استاندارد غیرممکن کردند. به لطف این ترفند، ایجاد آنها در حافظه داخلی با منبع بازنویسی بزرگ و عملکرد بالا تضمین شد.

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

پنجم اندروید گوگلمن دوباره تصمیم گرفتم به مفهوم اصلی برگردم و هر کاری انجام دادم تا انتقال برنامه ها به کارت حافظه تا حد امکان دشوار باشد. سازندگان بزرگ سیگنال را دریافت کردند و عملکردهای نظارتی خود را به سیستم عامل اضافه کردند و تلاش های کاربر را برای اجبار کردن برنامه ها به کارت با استفاده از روت شناسایی کردند. فقط گزینه ایجاد پیوندهای سخت یا نمادین کم و بیش جواب داد. در این مورد، برنامه با آدرس استاندارد موجود در حافظه داخلی تعیین شد، اما در واقع روی کارت قرار داشت. با این حال، سردرگمی توسط فایل منیجرها ایجاد شد، که بسیاری از آنها پیوندها را به درستی پردازش نکردند. صدا را اشتباه نشان دادند فضای خالی، زیرا آنها معتقد بودند که برنامه ظاهراً فضا را هم در حافظه داخلی و هم در کارت به طور همزمان اشغال می کند.

وفق بده!

اندروید مارشمالو مصالحه ای به نام Adoptable Storage معرفی کرد. این تلاش گوگل برای حفظ امنیت گوسفندها و خوشحال نگه داشتن سربازان است.

عملکرد Adoptable Storage به شما امکان می دهد یک پارتیشن کاربر در حافظه داخلی را با یک پارتیشن روی کارت در یک حجم منطقی ترکیب کنید. در واقع یک پارتیشن ext4 یا F2FS روی کارت ایجاد کرده و به پارتیشن کاربری حافظه داخلی اضافه می کند. تمیز است عملیات منطقی union، که به طور مبهمی یادآور ایجاد یک حجم گسترده از چندین دیسک فیزیکی در ویندوز است.

در طی فرآیند ترکیب با حافظه داخلی، کارت دوباره فرمت می شود. به طور پیش فرض، کل ظرفیت آن در حجم ادغام شده استفاده می شود. در این حالت، فایل های روی کارت دیگر نمی توانند در دستگاه دیگری خوانده شوند - آنها با یک کلید دستگاه منحصر به فرد رمزگذاری می شوند که در محیط اجرای مورد اعتماد ذخیره می شود.

به عنوان جایگزین، می توانید فضای کارت را برای پارتیشن دوم با FAT32 رزرو کنید. فایل های ذخیره شده روی آن مانند قبل در همه دستگاه ها قابل مشاهده خواهند بود.

روش تقسیم کارت یا از طریق منوی Adoptable Storage یا از طریق Android Debug Bridge (ADB) تنظیم می شود. آخرین گزینه در مواردی استفاده می شود که سازنده Adoptable Storage را از منو پنهان کرده است، اما این عملکرد را از سیستم عامل حذف نکرده است. به عنوان مثال، در آن پنهان است سامسونگ گلکسی S7 و گوشی های برتر ال جی. اخیراً تمایل کلی برای حذف Adoptable Storage از دستگاه های پرچمدار وجود داشته است. عصای زیر بغل در نظر گرفته می شود گوشی های هوشمند مقرون به صرفهو تبلت هایی که حافظه فلش داخلی کافی ندارند.

با این حال، تصمیم گیری در مورد نحوه استفاده از دستگاه هایمان به عهده بازاریاب ها نیست. از طریق ADB در رایانه با عملکرد ویندوز Adoptable Storage به شرح زیر فعال می شود.

  1. ما از تمام داده های روی کارت یک نسخه پشتیبان تهیه می کنیم - دوباره قالب بندی می شود.
  2. کیت توسعه Java SE از وب سایت Oracle.
  3. آخرین نسخه Android SDK Manager را نصب کنید.
  4. اشکال زدایی USB را در تلفن هوشمند خود فعال کنید.
  5. SDK Manager را اجرا کنید و خط فرمانما نوشتیم:

    $adb shell $sm list-disks


    که در آن x:y شماره کارت حافظه است.
  6. اگر می خواهید بخشی را برای ولوم FAT32 بگذارید، دستور را از مرحله 7 به این تغییر دهید:

    $ sm پارتیشن دیسک:x:y مخلوط nn

    دیسک پارتیشن $ sm : x : y مخلوط nn


    که در آن nn حجم باقیمانده به عنوان درصد برای یک حجم FAT32 است.

به عنوان مثال، دستور sm partition disk:179:32 mixed 20 80 درصد از ظرفیت کارت را به حافظه داخلی اضافه می کند و یک حجم FAT32 با 1/5 ظرفیت آن بر روی آن باقی می گذارد.

در برخی از تلفن های هوشمند، این روش "همانطور که هست" دیگر کار نمی کند و نیاز به ترفندهای اضافی دارد. تولید کنندگان هر کاری انجام می دهند تا محصولات خود را به طور مصنوعی به بازار تقسیم کنند. مدل های برتر با حافظه داخلی متفاوتی در دسترس هستند و افراد کمتر و کمتری حاضر به پرداخت هزینه اضافی برای آن هستند.

برخی از گوشی های هوشمند دارای اسلات کارت حافظه نیستند (به عنوان مثال، سری Nexus)، اما از اتصال درایوهای USB-Flash در حالت OTG. در این حالت می توان از فلش مموری برای افزایش حافظه داخلی نیز استفاده کرد. این کار با دستور زیر انجام می شود:

$ adb shell sm set-force-adopable true

$ adb shell sm set - force - adoptable true

به‌طور پیش‌فرض، توانایی استفاده از USB-OTG برای ایجاد فضای ذخیره‌سازی سفارشی غیرفعال است، زیرا حذف غیرمنتظره می‌تواند منجر به از دست رفتن اطلاعات شود. احتمال قطع شدن ناگهانی کارت حافظه به دلیل قرارگیری فیزیکی آن در داخل دستگاه بسیار کمتر است.

اگر با اضافه کردن حجم رسانه قابل جابجایی یا تقسیم آن به پارتیشن ها مشکلی پیش آمد، ابتدا تمام اطلاعات مربوط به طرح منطقی قبلی را از آن حذف کنید. این را می توان به طور قابل اعتماد با استفاده از ابزار لینوکس gparted که در رایانه ویندوزی با آن اجرا می شود انجام داد دیسک بوتیا در ماشین مجازی

طبق خط مشی رسمی گوگل، اگر توسعه دهنده در ویژگی android:installLocation مشخص کرده باشد، برنامه ها را می توان مستقیما نصب کرد یا به یک فروشگاه سفارشی منتقل کرد. طنز این است که همه آنها مال خودشان نیستند برنامه های گوگلتا زمانی که به شما اجازه این کار را بدهند. هیچ محدودیت عملی برای "ذخیره سازی سازگار" در اندروید وجود ندارد. حد تئوری برای ذخیره سازی قابل قبول نه زتابایت است. حتی در مراکز داده نیز تعداد زیادی وجود ندارد، و حتی بیشتر از آن، کارت های حافظه با ظرفیت بیشتر در سال های آینده ظاهر نمی شوند.

خود روش رمزگذاری هنگام ایجاد یک فضای ذخیره سازی سازگار با استفاده از dm-crypt انجام می شود - همان ماژول هسته لینوکس که رمزگذاری تمام دیسک حافظه داخلی تلفن هوشمند را انجام می دهد (به مقاله قبلی "" مراجعه کنید). الگوریتم AES در حالت زنجیره بلوک متن رمزنگاری شده (CBC) استفاده می شود. یک بردار اولیه جداگانه با نمک (ESSIV) برای هر بخش تولید می شود. طول کانولوشن تابع هش SHA 256 بیت و خود کلید 128 بیت است.

این پیاده سازی، اگرچه از نظر قابلیت اطمینان نسبت به AES-XTS-256 پایین تر است، اما بسیار سریع تر است و به اندازه کافی برای دستگاه های مصرف کننده قابل اعتماد در نظر گرفته می شود. بعید است که یک همسایه فضول بتواند یک فضای ذخیره سازی رمزگذاری شده را در یک زمان معقول باز کند، اما سازمان های اطلاعاتی مدت هاست یاد گرفته اند که از کاستی های طرح CBC استفاده کنند. علاوه بر این، در واقعیت، همه 128 بیت کلید کاملاً تصادفی نیستند. تضعیف غیر عمدی یا عمدی مولد اعداد شبه تصادفی داخلی رایج ترین مشکل در رمزنگاری است. این نه تنها بر گجت‌های اندروید، بلکه به طور کلی بر همه دستگاه‌های مصرف‌کننده تأثیر می‌گذارد. بنابراین بیشترین راه قابل اعتمادحفظ حریم خصوصی - به هیچ وجه اطلاعات محرمانه را در تلفن هوشمند خود ذخیره نکنید.

اگر پس از ادغام حافظه با استفاده از Adoptable Storage، بازنشانی کارخانه ای را انجام دهید، داده های روی کارت نیز از بین می روند. بنابراین، ابتدا باید از آنها یک نسخه پشتیبان تهیه کنید یا بهتر است فوراً همگام سازی ابری را اختصاص دهید.

رمزگذاری جایگزین داده ها روی کارت حافظه

اکنون که ویژگی های ذخیره سازی فایل ها در کارت حافظه را دریابیم نسخه های مختلفاندروید، بیایید مستقیماً به رمزگذاری آنها برویم. اگر دستگاهی با Android 6 یا جدیدتر دارید، به احتمال زیاد می توانید عملکرد Adoptable Storage را در آن به روشی فعال کنید. سپس تمام داده های روی کارت، درست مانند حافظه داخلی، رمزگذاری می شوند. فقط فایل های موجود در پارتیشن اضافی FAT32 باز می مانند اگر بخواهید هنگام فرمت مجدد کارت آن را ایجاد کنید.

در نسخه های قبلی اندروید، همه چیز بسیار پیچیده تر است، زیرا قبل از نسخه 5.0، حفاظت از رمزنگاری به هیچ وجه بر کارت های حافظه تأثیر نمی گذاشت (البته به جز داده های برنامه های پورت شده). فایل‌های «معمول» روی کارت باز ماندند. برای بستن آنها از چشمان کنجکاو، به ابزارهای شخص ثالث نیاز دارید (که اغلب ظاهراً فقط یک پوسته گرافیکی برای ابزارهای داخلی هستند). با همه انواع روش های موجود، چهار روش اساساً متفاوت هستند:

  • استفاده از یک cryptocontainer جهانی - یک فایل با تصویری از یک حجم رمزگذاری شده در یک قالب محبوب که برنامه های کاربردی برای سیستم عامل های مختلف می توانند با آن کار کنند.
  • رمزگذاری شفاف فایل ها در یک دایرکتوری مشخص از طریق درایور FUSE و یک ابزار شخص ثالث برای ایجاد/نصب یک پارتیشن رمزگذاری شده به عنوان یک فایل.
  • رمزگذاری کل کارت حافظه از طریق dm-crypt.
  • با استفاده از "جعبه سیاه" - یک برنامه جداگانه که داده های رمزگذاری شده را در قالب خود ذخیره می کند و دسترسی به آن را برای برنامه های شخص ثالث فراهم نمی کند.

اولین گزینه برای هر کسی که از TrueCrypt یا یکی از فورک های آن در رایانه استفاده می کند آشنا است. برنامه هایی برای اندروید وجود دارد که از کانتینرهای TrueCrypt پشتیبانی می کنند، اما محدودیت های آنها متفاوت است.

گزینه دوم به شما امکان می دهد "رمزگذاری شفاف" را سازماندهی کنید، یعنی تمام داده های رمزگذاری شده را ذخیره کنید و در صورت دسترسی از هر برنامه ای، آنها را رمزگشایی کنید. برای انجام این کار، تمام داده ها از دایرکتوری انتخاب شده به عنوان محتویات یک سیستم فایل مجازی با پشتیبانی از رمزگذاری در حین پرواز نمایش داده می شوند. معمولاً از EncFS استفاده می شود که در ادامه بیشتر در مورد آن صحبت خواهیم کرد.

گزینه سوم dm-crypt داخلی است. برای مثال می توانید از طریق LUKS Manager از آن استفاده کنید. برنامه نیاز به نصب روت و BusyBox دارد. رابط کاربری آن برای همه نیست.


مدیر LUKS یک محفظه رمزنگاری روی کارت به عنوان یک فایل ایجاد می کند. این کانتینر را می توان به یک دایرکتوری دلخواه متصل کرد و مانند یک دایرکتوری معمولی با آن کار کرد. مزیت این است که این راه حل دارای پشتیبانی کراس پلتفرم است. شما می توانید با ظرف نه تنها در یک ابزار اندرویدی، بلکه روی دسکتاپ نیز کار کنید: در لینوکس - از طریق cryptsetup، و در ویندوز - از طریق برنامه یا فورک آن LibreCrypt. منهای - ناراحتی استفاده در ارتباط با خدمات ابری. هر بار در فضای ابری باید کل کانتینر را دوباره ذخیره کنید، حتی اگر یک بایت تغییر کرده باشد.

گزینه چهارم عموماً چندان جالب نیست، زیرا سناریوهای استفاده از فایل های رمزگذاری شده را بسیار محدود می کند. آنها را فقط می توان به طریقی باز کرد اپلیکیشن تخصصیو اطمینان داشته باشید که توسعه دهنده آن در مطالعه رمزنگاری موفق بوده است. متأسفانه اکثر این برنامه ها در مقابل انتقادات نمی ایستند. بسیاری از آنها اصلاً ربطی به رمزنگاری ندارند، زیرا آنها به جای رمزگذاری، آنها را به سادگی ماسک می کنند. در عین حال، توضیحات ممکن است به الگوریتم‌های قوی (AES، 3DES...) و نقل قول‌هایی از «رمزگذاری کاربردی اشنایر» اشاره کند. در بهترین حالت، چنین برنامه هایی اجرای رمزگذاری بسیار ضعیفی خواهند داشت و در بدترین حالت، اصلاً رمزگذاری وجود نخواهد داشت.

هیچ کلاینت رسمی برای اندروید برای VeraCrypt وجود ندارد و برنامه ریزی نشده است، اما نویسندگان آن استفاده از برنامه EDS (فروشگاه داده های رمزگذاری شده) را توصیه می کنند. این یک توسعه روسی است که در یک نسخه کاملاً کاربردی و سبک وزن موجود است. نسخه کامل EDS 329 روبل هزینه دارد. این کانتینرهای رمزنگاری با فرمت های TrueCrypt، VeraCrypt، CyberSafe و همچنین LUKS و EncFS را پشتیبانی می کند. قادر به کار با محلی، شبکه و فضای ذخیره ابری، ارائه برنامه های کاربردی دیگر با رمزگذاری شفاف. رمزگذاری در لحظه نیاز به پشتیبانی از هسته سیستم عامل برای چارچوب FUSE و حقوق ریشه دارد. کار معمولی با کانتینرهای رمزنگاری بر روی هر سیستم عامل امکان پذیر است.


نسخه EDS Lite به صورت رایگان توزیع می شود و دارای محدودیت های عملکردی است. به عنوان مثال، می تواند منحصراً با ظروف حاوی حجم با سیستم فایل FAT، رمزگذاری شده با استفاده از الگوریتم AES با طول کلید 256 بیتی و با استفاده از تابع هش SHA-512 کار کند. گزینه های دیگر را پشتیبانی نمی کند. بنابراین، ارزش تمرکز روی نسخه پولی را دارد.

کانتینر کریپتو قابل اطمینان ترین و روش جهانی. می توان آن را در هر سیستم فایلی (حتی FAT32) ذخیره کرد و در هر دستگاهی استفاده کرد. تمام داده‌هایی که روی دسک‌تاپ خود رمزگذاری کرده‌اید، در گوشی هوشمند شما در دسترس خواهند بود و بالعکس.

EncFS

در سال 2003، Valient Gough (مهندس نرم‌افزاری از سیاتل که نرم‌افزاری برای ناسا نوشت و بعداً برای گوگل و آمازون کار کرد) اولین نسخه از یک سیستم فایل رایگان را با مکانیزم رمزگذاری شفاف داخلی - EncFS منتشر کرد. از طریق یک لایه برگشت تماس با هسته سیستم عامل تعامل دارد و درخواست ها را از طریق رابط libfuse چارچوب FUSE دریافت می کند. به انتخاب کاربر، EncFS از یکی از الگوریتم های متقارن پیاده سازی شده در کتابخانه OpenSSL - AES و Blowfish استفاده می کند.

از آنجایی که EncFS از اصل ایجاد یک فایل سیستم مجازی استفاده می کند، نیازی به پارتیشن جداگانه ندارد. در سیستم عامل اندروید، شما فقط باید یک برنامه کاربردی نصب کنید که از EncFS پشتیبانی می کند و فقط آن را به چند دایرکتوری هدایت کنید. یکی از آنها محتوای رمزگذاری شده را ذخیره می کند (اجازه دهید نامیده شود طاق، و دوم - فایل های موقت رمزگشایی شده (بیایید آن را صدا کنیم باز کن).

پس از وارد کردن رمز، فایل ها از دایرکتوری خوانده می شوند طاقو به صورت رمزگشایی ذخیره می شوند باز کن(چگونه در نکته جدید mount)، جایی که آنها برای همه برنامه ها در دسترس هستند. پس از اتمام کار، روی دکمه Forget Decryption (یا معادل آن) در برنامه کلیک کنید. کاتالوگ باز کنحذف می شود و تمام فایل های رمزگشایی شده از آن ناپدید می شوند.

معایب: EncFS از پیوندهای سخت پشتیبانی نمی کند، زیرا داده ها نه به inode، بلکه به نام فایل متصل می شوند. به همین دلیل، نام فایل تا 190 بایت پشتیبانی می شود. در کاتالوگ طاقنام فایل ها و محتویات پنهان خواهد شد، اما ابرداده در دسترس باقی خواهد ماند. می‌توانید تعداد فایل‌های رمزگذاری‌شده، مجوزهای آن‌ها و آخرین باری که به آن‌ها دسترسی پیدا کرده یا اصلاح شده‌اند را بیابید. همچنین نشانه واضحی از استفاده از EncFS وجود دارد - این یک فایل تنظیمات با پیشوند encfs و شماره نسخه در نام آن است. فایل حاوی پارامترهای رمزگذاری، از جمله الگوریتم، طول کلید و اندازه بلوک است.


حسابرسی پولی EncFS در فوریه 2014 انجام شد. نتیجه گیری می شود که "EncFS تا زمانی که مهاجم فقط یک مجموعه از فایل های رمزگذاری شده و نه بیشتر داشته باشد، احتمالا امن است." اگر داده‌های بیشتری در دسترس مهاجم باشد (مثلاً دو عکس فوری از سیستم فایل در زمان‌های مختلف گرفته شده)، آنگاه EncFS نمی‌تواند قابل اعتماد در نظر گرفته شود.

پس از نصب، EncFS به عنوان یک سیستم فایل فضای کاربر جداگانه از طریق درایور FUSE قابل مشاهده خواهد بود. دسترسی به آن از طریق برخی محقق خواهد شد برنامه شخص ثالث- به عنوان مثال، مدیر فایل Encdroid یا Cryptonite. مورد دوم بر اساس کد منبع EncFS است، بنابراین ما روی آن تمرکز خواهیم کرد.

کریپتونیت

آخرین نسخه برنامه کریپتونیت 0.7.17 بتا است که در تاریخ 15 مارس 2015 منتشر شده است. می توان آن را بر روی هر دستگاهی با Android 4.1 و بالاتر نصب کرد، اما برخی از عملکردها در Android 4.3 و نسخه های جدیدتر با ثبات تر کار می کنند.

اکثر عملیات در کریپتونیت نیازی به روت یا اجزای خاصی ندارند. ایجاد حجم‌های EncFS و همگام‌سازی با Dropbox را می‌توان بر روی سیستم‌افزار رسمی و سفارشی انجام داد.

همگام سازی ابری فایل های رمزگذاری شده

با این حال، تعدادی از عملیات نیاز به نصب حجم‌های EncFS دارند که به حقوق ریشه و پشتیبانی از چارچوب FUSE توسط هسته سیستم عامل نیاز دارد. استفاده از FUSE برای سازماندهی "رمزگذاری شفاف" ضروری است، به این معنی که سایر برنامه ها بتوانند به داده های رمزگذاری شده دسترسی داشته باشند و آنها را از قبل رمزگشایی شده دریافت کنند. اکثر سیستم عامل های قدیمی از FUSE پشتیبانی نمی کنند، اما در CyanogenMod، MIUI، AOKP و سایر موارد سفارشی موجود است. با شروع Android 4.4، FUSE به طور استاندارد برای شبیه سازی کارت SD در حافظه داخلی استفاده می شود.

معایب: وقتی روی "Decrypt" کلیک می کنید و رمز عبور را با موفقیت وارد می کنید، Cryptonite یک کپی موقت از فایل رمزگشایی شده در /data/data/csh.cryptonite/app_open/ ایجاد می کند. یک کپی از فایل به عنوان قابل خواندن جهانی (قابل خواندن و قابل اجرا برای همه) علامت گذاری شده است. با کلیک بر روی دکمه Forget Decryption می توانید فایل های رمزگشایی شده را حذف کنید.

نتیجه گیری

روش رمزگذاری داده ها روی کارت حافظه باید بر اساس دو معیار اصلی انتخاب شود: سناریوی استفاده و نسخه اندروید. بر گجت های مدرنبا Android 6.0 و بالاتر، ساده ترین گزینه استفاده از Adoptable Storage، اتصال کارت به حافظه داخلی و رمزگذاری شفاف کل حجم منطقی است. اگر می‌خواهید فایل‌ها را در دستگاه‌های دیگر در دسترس قرار دهید یا در دستگاه‌های قدیمی‌تر، رمزگذاری داده‌ها را روی کارت اضافه کنید، ظروف رمزنگاری با فرمت‌های اثبات شده مناسب هستند. ابزارهای شخص ثالثبهتر است از نوع "چیز در خود" به طور کلی اجتناب کنید، زیرا به جای محافظت واقعی از داده ها، آنها اغلب فقط از آن تقلید می کنند.

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

من متخصص نیستم، نمی توانم با اطمینان بگویم، شاید در آن زمان مشکلی با خود کارت وجود داشت.

اما من مطمئناً می دانم که کارت من پس از فرمت شدن توسط یک تلفن هوشمند از بین رفت و پس از:

اسپویلر

کارت ها به سه دسته Micro SD، Micro SDHC و Micro SDXC تقسیم می شوند. کارت ها میکرو اس دیمی تواند حداکثر تا حجم 2 گیگابایت باشد، MicroSDHCاز 4 گیگابایت تا 32 گیگابایت (اکنون به طور گسترده استفاده می شود) و میکرو SDXCاز 64 گیگابایت تا 2 ترابایت (از لحاظ نظری، عملاً در این لحظهکارت های 64 گیگابایتی و 128 گیگابایتی وجود دارد). کارت ها نه تنها در ظرفیت حافظه، بلکه در سیستم های فایل مختلف نیز متفاوت هستند. به عنوان مثال، Micro SD یک سیستم FAT است، Micro SDHC FAT32 است، Micro SDXC از نظر تئوری فقط exFAT است (در واقعیت اینطور نیست). علاوه بر این، دستگاه کارتخوان کاربر باید از نوع خاصی از کارت پشتیبانی کند. وضعیت ساده است: اگر دستگاهی از کارت های SDXC پشتیبانی می کند، از نسل های قبلی - SD و SDHC نیز پشتیبانی می کند.

اخیراً تعداد زیادی کارت Micro SD با ظرفیت 64 گیگابایت ظاهر شده است، اما متأسفانه اکثر تلفن های هوشمند اندرویدی به طور رسمی پشتیبانی نمی کنند. کارت های میکرو SD با ظرفیت بیش از 32 گیگابایت. در واقع، اگر مراحل ساده ای را با کارت قبل از نصب انجام دهید، گوشی هوشمند قادر است یک کارت 64 گیگابایتی را بخواند و به درستی با آن کار کند. همه سازندگان معروف کارت های Micro SDXC در ابتدا آنها را به سیستم exFAT قالب بندی می کنند، زیرا این سیستمی است که برای کارت های با ظرفیت بالا طراحی شده است. از آنجایی که این سیستم توسط مایکروسافت ایجاد شده است، سازندگان گوشی های هوشمند اندرویدی باید حقوق استفاده از آن را خریداری کنند تا گوشی هوشمند بتواند با این سیستم کار کند. شرکت ها هنوز تمایلی به این کار ندارند هزینه های اضافیو بنابراین تعداد کمی از دستگاه ها از سیستم exFAT روی کارت های حافظه پشتیبانی می کنند و با سیستم FAT32 کار می کنند. برای اینکه گوشی هوشمند شما با یک کارت 64 گیگابایتی کار کند، فقط باید آن را به FAT32 فرمت کنید. اما معلوم می شود که انجام این کار کاملاً آسان نیست. واقعیت این است که خود سیستم FAT32 از نظر تئوری فقط از رسانه (کارت ها، پارتیشن ها و غیره) تا 32 گیگابایت پشتیبانی می کند، اما در عمل می تواند با رسانه های تا 64 گیگابایت بسیار خوب کار کند. تنها مشکلی که ممکن است با آن مواجه شوید کاهش جزئی سرعت در هنگام خواندن/نوشتن از روی کارت است، اما تقریباً غیر قابل توجه خواهد بود. در مرحله بعد، نحوه فرمت صحیح کارت Micro SDXC در سیستم FAT32 را بررسی خواهیم کرد تا گوشی هوشمندی که پشتیبانی نمی کند این نوعکارت ها را دیدم و بعد از مدتی کارت از سرویس خارج نشد.

1. یک کارت SDXC را فقط می توان در دستگاهی فرمت کرد که از این نوع کارت پشتیبانی می کند. آن ها کارت خوان شما باید از کارت های Micro SDXC پشتیبانی کند (یا اگر کارت را از طریق آداپتور وارد کنید SDXC). تحت هیچ شرایطی نباید کارت های 64 گیگابایتی را در گوشی هوشمندی که فقط از کارت 32 گیگابایتی پشتیبانی می کند فرمت کنید! در غیر این صورت، کارت شما در بازه زمانی 1 روز تا چند ماهه از کار می افتد. اگر کارتخوانی ندارید که از SDXC پشتیبانی کند، می توانید آن را جداگانه خریداری کنید.

بنابراین، کارت SDXC را فقط در دستگاهی فرمت کنید که از SDXC پشتیبانی می کند.

2. از آنجایی که اکثر کاربران آن را روی کامپیوتر خود نصب کرده اند سیستم عاملویندوز، سپس گزینه قالب بندی را از آن در نظر بگیرید. اگر اتاق عمل دارید سیستم ویندوز XP، حتما یک آپدیت روی آن نصب کنید که از سیستم فایل exFAT پشتیبانی کند. ویندوز 7 و ویندوز 8 در حال حاضر این پشتیبانی را دارند.

3. شاید وقتی وارد می کنید نقشه جدیددر کارت خوان، ویندوز پیامی مبنی بر فرمت نشدن کارت نمایش می دهد. در این حالت، ابتدا آن را با استفاده از ابزار SDFormatter به exFAT فرمت کنید.

4. با استفاده از روش استاندارد ویندوز، فرمت کردن یک کارت 64 گیگابایتی در سیستم فایل FAT32 کار نخواهد کرد، بنابراین از ابزار Guiformat استفاده خواهیم کرد.
کارت MicroSDXC 64 گیگ با آداپتور و کارت خوان

این برنامه به طور خاص برای قالب بندی رسانه های بزرگتر از 32 گیگابایت در سیستم فایل FAT32 طراحی شده است. اگر برنامه قبل از قالب‌بندی خطایی داد، مرحله 3 (فرمت اول با SDFormatter) را دنبال کنید، که باز هم بهتر است انجام شود. توجه! برای اینکه گوشی هوشمند Micro SDXC را به درستی ببیند، اندازه کلاستر 32 کیلوبایت را انتخاب کنید! بهتر است از قالب بندی سریع (سریع) استفاده کنید؛ نیازی به انجام کامل نیست.

5. اگر همه چیز را کاملاً مطابق با توصیه های بالا انجام داده اید، کارت شما آماده است. گوشی هوشمند اندرویدی شما آن را می بیند و حجم صحیح 59.XX گیگابایت را نشان می دهد. می توانید با کارت کار کنید، فایل ها را بنویسید/بخوانید، اما هرگز آن را در گوشی هوشمند خود فرمت نکنید. کارت در خدمت شما خواهد بود برای مدت طولانیصادقانه

او چند سالی است که در آنجا زندگی می کند و هیچ مشکلی ندارد.

4 ساعت پیش Reanimax گفت:

تنها یک کار وجود دارد که می توانید انجام دهید. اگر داده ها برای شما ارزشمند است، کپی کردن داده ها، کپی برداری رسانه ها را گزینه ای مناسب برای خود قرار دهید.

متأسفانه در آن زمان انتظار نمی رفت که چنین وضعیتی رخ دهد.

ویرایش 25 دسامبر 2017 JEI-DI

هر ابزار موبایلی را می توان گم کرد، رها کرد، فراموش کرد یا به سادگی دزدید. هر اطلاعاتی که روی آن به شکل محافظت نشده ذخیره شده است، می تواند خوانده شود و علیه شما استفاده شود. و بیشترین روش موثرحفاظت از اطلاعات - . در این مقاله در مورد ویژگی های پیاده سازی سیستم رمزگذاری داده ها در جدید صحبت خواهیم کرد نسخه های اندروید، و همچنین درباره ابزارهایی بحث کنید که به شما امکان می دهد رمزگذاری انتخابی دایرکتوری های فردی را پیاده سازی کنید.

معرفی

اندروید مبتنی بر هسته لینوکس است که به نوبه خود شامل تعدادی مکانیسم است که رمزگذاری را برای طیف گسترده ای از موجودیت ها پیاده سازی می کند. برای محافظت رمزنگاری دیسک ها و پارتیشن ها، سیستمی به نام dm-crypt ارائه شده است - نوعی فیلتر رمزنگاری که از طریق آن می توانید تمام درخواست ها را به یک دیسک یا پارتیشن منتقل کنید و رمزگذاری داده ها را به سرعت دریافت کنید.

برنامه نویسان گوگل به اندروید یاد دادند که از dm-crypt استفاده کند، با نسخه 3.0 Honeycomb، که در آن گزینه ای ظاهر شد که به شما امکان می دهد رمزگذاری را به سرعت فعال کنید و یک کد پین برای دسترسی به داده ها تنظیم کنید. از دیدگاه کاربر، همه چیز بسیار ساده و بدون دردسر به نظر می رسد: تلفن را به شارژر وصل کنید، صبر کنید کاملا شارژ شدهو دکمه دلخواه را فشار داد. این سیستم رمزگذاری داده های موجود را آغاز کرده است. همه چیز از درون بسیار جالب تر به نظر می رسد.

رویکرد ویژه اندروید

در هر توزیع لینوکس dm-crypt توسط ابزار cryptsetup مدیریت می شود، که حجمی رمزگذاری شده بر اساس استاندارد LUKS ایجاد می کند، که می تواند با استفاده از ابزارهای شخص ثالث از ویندوز یا OS X نیز به آن دسترسی داشته باشد. معمولاً، cryptsetup در مرحله اولیه سازی سیستم عامل از بوت راه اندازی می شود. initramfs image و dm-crypt را به درایو دیسک متصل می کند که سپس نصب می شود.

همه چیز در اندروید به طور متفاوتی اتفاق می افتد. با توجه به نیاز به مجوز برای همه اجزای بالای هسته با استفاده از مجوز سازگار با آپاچی، cryptsetup که تحت GPL2 توزیع شده است، همراه با Android گنجانده نشده است. در عوض، ماژول cryptfs که از ابتدا برای مدیریت حجم محلی ولد توسعه یافته استفاده می شود (با ابزارهای بومی لینوکس اشتباه نشود: vold و cryptfs، اینها پیشرفت های کاملاً متفاوتی هستند).

به‌طور پیش‌فرض، اندروید از cryptfs برای رمزگذاری داده‌های کاربر، تنظیمات و برنامه‌ها (//data directory) استفاده می‌کند. باید در اوایل فرآیند بوت سیستم عامل و قبل از راه اندازی محیط گرافیکی و برنامه های کاربردی اولیه شروع شود تا اجزای سطح بالاتر سیستم بتوانند با خواندن تنظیمات و بیرون کشیدن داده های لازم از حافظه نهان، سیستم را به حالت مطلوب برسانند. .

که در حالت خودکارانجام این کار غیرممکن است، زیرا سیستم باید از کاربر رمز عبور را برای رمزگشایی بخواهد، که نیاز به راه اندازی محیط گرافیکی دارد و به نوبه خود، بدون اتصال دایرکتوری داده / که بدون رمز عبور نمی تواند متصل شود، راه اندازی نمی شود. برای رهایی از این وضعیت، اندروید از یک ترفند غیرمعمول استفاده کرد و سیستم عامل را مجبور کرد تا «دو بار» شروع به کار کند. اولین راه اندازی سیستم حداقل قبل از اینکه cryptfs شروع به درخواست رمز رمزگشایی با یک سیستم فایل موقت متصل به /داده کند، رخ می دهد، پس از آن سیستم اساسا خاموش می شود، پارتیشن رمزگذاری شده /داده نصب می شود و نسخه نهایی سیستم عامل راه اندازی شد.

رمزگذاری را فعال کنید

رمزگذاری داده ها در اندروید با استفاده از منوی "تنظیمات -> امنیت -> رمزگذاری داده ها" فعال می شود. در این حالت، گوشی هوشمند باید به طور کامل شارژ شده و به شارژر متصل شود و روش باز کردن قفل باید یک کد پین یا رمز عبور (تنظیمات -> امنیت -> قفل صفحه -> کد پین) باشد که باید قبل از شروع رمزگذاری وارد شود. عمل. تلفن هوشمند به شما هشدار می دهد که عملیات حدود یک ساعت طول می کشد و در طی آن دستگاه چندین بار راه اندازی مجدد می شود.

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

  1. vold/cryptfs ابتدا یک کلید اصلی 128 بیتی را بر اساس داده‌های تصادفی از /dev/urandom تولید می‌کند و با استفاده از این کلید، پارتیشن حاوی فهرست /data را در یک دستگاه رمزنگاری مجازی جدید نقشه‌برداری می‌کند، و نوشتن روی آن به طور خودکار داده‌ها را با استفاده از رمزگذاری رمزگذاری می‌کند. کلید اصلی، و خواندن منجر به رمزگشایی می شود.
  2. کلید اصلی با پین کاربر رمزگذاری شده و در انتهای پارتیشن قرار می گیرد. از این پس، هنگام راه‌اندازی، سیستم از کاربر یک کد پین می‌خواهد، کلید اصلی رمزگذاری شده را از پارتیشن می‌خواند، آن را با استفاده از کد پین رمزگشایی می‌کند و پارتیشن /داده رمزگذاری شده را متصل می‌کند.
  3. برای رمزگذاری داده‌های موجود در پارتیشن، سیستم به‌طور متوالی بلوک‌های داده را از پارتیشن می‌خواند و آنها را در دستگاه رمزنگاری می‌نویسد، به طوری که، در اصل، یک عملیات متوالی "خواندن بلوک -> رمزگذاری -> بازنویسی" رخ می‌دهد تا زمانی که کل بخش، به جز 16 کیلوبایت آخر که کلید اصلی را ذخیره می کند.
  4. در پایان عملیات، گوشی هوشمند راه اندازی مجدد می شود و دفعه بعد که بوت می شود، سیستم برای رمزگشایی داده ها یک کد پین می خواهد.

در مورد درایو 16 گیگابایتی Galaxy Nexus، تمام این عملیات ها حدود 30 دقیقه طول می کشد و مهمتر از همه، آنها کاملاً خودکار هستند، بنابراین حتی یک کودک نیز می تواند رمزگذاری را انجام دهد.

یک رمز عبور برای باز کردن و رمزگشایی؟

برای آسان‌تر کردن زندگی کاربران، گوگل تصمیم گرفت از همان رمز عبور برای باز کردن قفل و رمزگشایی داده‌ها استفاده کند که منجر به تصویری نسبتاً متناقض می‌شود. از یک طرف، رمز عبور رمزگشایی باید طولانی و پیچیده باشد، زیرا مهاجم می تواند آن را در خارج از گوشی هوشمند به سادگی با حذف یک تصویر از پارتیشن حدس بزند. از طرف دیگر، رمز باز کردن قفل را می توان بسیار ساده گذاشت، زیرا پس از چندین تلاش ناموفق، اندروید صفحه را برای همیشه قفل می کند و شما را مجبور می کند رمز عبور گوگل را وارد کنید.

در نتیجه، شما باید بین راحتی باز کردن قفل و امنیت داده های رمزگذاری شده انتخاب کنید (ما کنترل چهره را وسیله ای برای محافظت نمی دانیم). خوشبختانه، اگر گوشی روت شده باشد، رمز رمزگشایی را می توان به صورت دستی با استفاده از کلاینت کنسول ولد مشخص کرد. شما می توانید این کار را به این صورت انجام دهید:

$ su -c vdc cryptfs رمز عبور pw را تغییر دهید

از این پس رمزهای بازگشایی و رمزگشایی متفاوت خواهند بود، اما در صورت تغییر رمز بازگشایی (پین کد) دوباره یکسان می شوند. برای اینکه وارد کنسول نشوید، می توانید از یکی از رابط های گرافیکی، به عنوان مثال EncPassChanger استفاده کنید.

بازگشت به عقب و سازگاری با سیستم عامل

متأسفانه بنا به دلایلی دلایل اندرویدبه شما اجازه نمی دهد به یک پارتیشن رمزگذاری نشده برگردید. بنابراین، اگر داده‌ها قبلاً رمزگذاری شده باشند، تا زمانی که بازنشانی کارخانه‌ای (پاک کردن کامل) انجام شود، به همین شکل باقی می‌ماند - عملیاتی که پارتیشن حاوی دایرکتوری /data را مجدداً قالب‌بندی می‌کند و به طور خودکار آن را به پارتیشن بدون رمز تبدیل می‌کند.

اما در اینجا ممکن است این سوال پیش بیاید: "اگر اندروید را به روز کنم یا سیستم عامل سفارشی را نصب کنم چه اتفاقی می افتد؟" در این مورد، همه چیز به روش نصب بستگی دارد. در بیشتر موارد، هنگام به روز رسانی سیستم عامل یا نصب سیستم عامل جایگزین تقریباً همان نسخه (به عنوان مثال، جایگزینی CyanogenMod 10.1 با Paranoid Android 3 یا MIUI 5)، نیازی به پاک کردن نیست. این به آن معنا است سیستم عامل نصب شدههنگامی که سعی می کنید پارتیشن /data را نصب کنید، متوجه می شود که با یک پارتیشن رمزگذاری شده سروکار دارد، از شما رمز عبور می خواهد و با آرامش داده ها را رمزگشایی می کند.

اگر نصب به پاک کردن کامل نیاز دارد، که معمولاً هنگام ارتقاء به نسخه‌های جدید اندروید ضروری است، وضعیت در اینجا حتی ساده‌تر است. در طول پاک کردن، پارتیشن /data دوباره قالب بندی می شود و به طور خودکار رمزگذاری نشده می شود. نکته اصلی این است که قبل از به روز رسانی با استفاده از Titanium Backup یا Carbon یک نسخه پشتیبان تهیه کنید.

کارت SD

گوگل مدت‌هاست که موضع خود را در مورد کارت حافظه به‌عنوان زباله‌دان اعلام کرده است، که طبق تعریف نمی‌تواند حاوی داده‌های محرمانه باشد، و حتی در صورت وجود، رمزگذاری آن منطقی نیست، زیرا ممکن است کاربر تصمیم بگیرد کارت را در تلفن دیگری قرار دهد. بنابراین، هیچ روش استانداردی برای رمزگذاری کارت حافظه در اندروید وجود ندارد و برای دریافت چنین عملکردی، باید از نرم افزارهای شخص ثالث استفاده کنید.

در میان نرم‌افزارهای رمزگذاری شخص ثالث، ما یک انتخاب از سه کلاس مختلف از برنامه‌های کاربردی داریم:

  1. یک چیز به خودی خود برنامه ای که می تواند کانتینرهای رمزنگاری را ایجاد و باز کند، اما اجازه اتصال آنها به سیستم فایل را نمی دهد. نوعی مدیر فایل با پشتیبانی از حجم های رمزگذاری شده. این چیز کاربرد کمی دارد، زیرا فقط برای نگهداری دفترچه خاطرات و یادداشت مناسب است.
  2. PseudoFS. در لینوکس هسته های بسیاری از سهام و سیستم عامل جایگزینپشتیبانی از درایور سیستم فایل فضای کاربر FUSE وجود دارد که بر اساس آن چندین سیستم فایل رمزگذاری در یک زمان توسعه داده شده است. یکی از آنها EncFS است. در اندروید در قالب برنامه‌های Cryptonite، Encdroid و غیره موجود است. چنین نرم افزاری به شما امکان می دهد هر دایرکتوری را رمزگذاری کنید تا کاملاً همه برنامه ها به آن دسترسی داشته باشند.
  3. بر اساس dm-crypt. آنها از نظر عملکرد و پیاده سازی مشابه موارد قبلی هستند، اما از dm-crypt بومی برای رمزگذاری استفاده می کنند. LUKS Manager بهترین نماینده این دسته از نرم افزارها می باشد. به شما امکان می دهد یک فایل تصویری بر روی کارت حافظه ایجاد کنید که می تواند در هر زمان به هر فهرستی برای دسترسی به داده ها متصل شود. همین کار را می توان از لینوکس با استفاده از cryptsetup یا از ویندوز با استفاده از FreeOTFE انجام داد.

کریپتونیت

Cryptonite یک بسته بندی در اطراف سیستم فایل رمزگذاری EncFS است و به شما امکان می دهد حجم های رمزگذاری شده را روی کارت ذخیره سازی و داخل Dropbox ایجاد و مشاهده کنید، همچنین حجم ها را در فهرست های کارت ذخیره سازی نصب کنید تا برای همه برنامه ها قابل مشاهده باشند. ما در درجه اول به مورد دوم به عنوان تنها مورد قابل قبول برای استفاده روزمره علاقه مند هستیم، اما نیاز به حقوق ریشهو همچنین وجود پشتیبانی FUSE در هسته.

استفاده از کریپتونیت در این ظرفیت بسیار ساده است، با این حال، برای جلوگیری از سردرگمی، اجازه دهید اصول عملکرد آن را درک کنیم. این برنامه مبتنی بر ابزاری است که برای کاربران لینوکس به نام EncFS شناخته شده است. در اصل، این ابزاری است که به شما امکان می دهد یک دایرکتوری را به دایرکتوری دیگر نگاشت کنید تا آنچه در فهرست دوم نوشته می شود به طور خودکار به اولین پوشه به شکل رمزگذاری شده ختم شود و هنگام خواندن، بر اساس آن رمزگشایی شود. در حالی که نمایشگر روشن است، دسترسی به داده ها وجود دارد، اما به محض خاموش کردن آن، محتویات دایرکتوری دوم ناپدید می شود و فقط اولین پوشه باقی می ماند که محتوای آن کاملاً رمزگذاری شده است.

به همین دلیل، Cryptonite به دو دایرکتوری نیاز دارد: اولی - برای ذخیره داده های رمزگذاری شده و دوم - یک پوشه خالی که در آن محتویات اولی به صورت رمزگشایی نمایش داده می شود. برای سادگی، اجازه دهید آنها را crypt و decrypt بنامیم. این دو دایرکتوری را با استفاده از هر کدام روی کارت حافظه ایجاد کنید مدیر فایل. کریپتونیت را راه اندازی کنید، به "تنظیمات -> نقطه کوه" بروید و دایرکتوری رمزگشایی را انتخاب کنید. اکنون همیشه به عنوان یک نقطه دسترسی به داده های رمزگذاری شده استفاده می شود. ما به عقب برمی گردیم، به برگه LOCAL می رویم و روی دکمه "Create local volume" کلیک می کنیم تا فهرست رمزگذاری شده را مقداردهی اولیه کنیم. دایرکتوری crypt را انتخاب کرده و رمز عبور را وارد کنید. اکنون تنها چیزی که باقی مانده بازگشت به آن است صفحه اصلیو روی دکمه Mount EncFS کلیک کنید (و دوباره رمز عبور را وارد کنید). از این پس، هر چیزی که در دایرکتوری رمزگشایی کپی می کنید، به طور خودکار به صورت رمزگذاری شده در دایرکتوری کریپت قرار می گیرد و پس از غیرفعال کردن رمزگشایی، هیچ کس قادر به خواندن محتوای آن نخواهد بود (می توانید با کپی کردن چندین فایل برای رمزگشایی بررسی کنید و سپس مشاهده محتویات دخمه).

به هر حال، شما می توانید رمزگذاری داده ها را در Dropbox به همین روش سازماندهی کنید. کریپتونیت به شما امکان می دهد این کار را خارج از جعبه انجام دهید، اما در این حالت، دسترسی به داده ها فقط از طریق خود برنامه قابل دستیابی است، یعنی برای هر گونه عملیات روی داده های رمزگذاری شده، باید کریپتونیت را راه اندازی کنید و تمام اقدامات را از طریق انجام دهید. فایل منیجر داخلی آن البته دراپ باکس برای اندروید نیز به همین صورت عمل می کند، اما حداقل یک API باز دارد که سایر برنامه ها می توانند از آن استفاده کنند، که در اینجا فقط به دسترسی دستی نیاز دارد.

برای رفع این مشکل، می‌توانید سرویس Dropsync را نصب کنید که در پس‌زمینه اجرا می‌شود و به صورت دوره‌ای محتویات فهرست‌های انتخابی را با Dropbox همگام‌سازی می‌کند. کافی است آن را برای همگام سازی دایرکتوری کریپت پیکربندی کنید (اما نه رمزگشایی)، و داده های رمزگذاری شده به طور خودکار به Dropbox می روند. برای دسترسی به داده های برادر بزرگ، می توانید از نسخه لینوکس یا ویندوز EncFS استفاده کنید. فقط تنبل ها در مورد نحوه استفاده از آنها ننوشتند.


مدیر LUKS

دومین برنامه در لیست ما LUKS Manager است، یک برنامه اساساً مشابه در عملکرد، که از dm-crypt به جای EncFS و تصاویر باینری رمزگذاری شده به جای دایرکتوری ها استفاده می کند. از نقطه نظر عملی، این گزینه بهتر از گزینه قبلی است زیرا تصاویر رمزگذاری شده با آن را می توان تقریباً در هر سیستم عاملی از جمله لینوکس، ویندوز و OS X مشاهده یا تغییر داد. عیب آن این است که استفاده از آن برای رمزگذاری ناخوشایند است. فایل‌ها در Dropbox، زیرا مانند کلاینت Dropbox باید هر بار کل تصویر را همگام‌سازی کند، که می‌تواند بسیار بزرگ باشد، برخلاف فایل‌های جداگانه، همانطور که در مورد EncFS وجود دارد.


برای عملکرد صحیحمدیر LUKS به یک هسته با پشتیبانی از dm-crypt و loopback نیاز دارد، اما در حالی که اولی حتی در هسته‌های اندروید 2.3 در دسترس است، دومی در همه هسته‌های سهام موجود نیست. بنابراین، به احتمال زیاد، شما به سیستم عامل نیاز خواهید داشت هسته جایگزینمانند CyanogenMod، AOKP یا MIUI.

در غیر این صورت همه چیز ساده است. رابط برنامه تنها از شش دکمه تشکیل شده است: وضعیت، Unmount All، Mount، Unmount، Create و Remove. برای ایجاد یک تصویر جدید و دسترسی به آن، فقط روی «ایجاد» کلیک کنید، دایرکتوری را برای نصب، اندازه و تعیین رمز عبور و سیستم فایل (FAT32 برای سازگاری با ویندوز یا ext2 برای لینوکس) انتخاب کنید. چندین تصویر می توانند به طور همزمان روی کارت حافظه وجود داشته باشند و به آن متصل شوند، که می توانند با استفاده از دکمه های "Unmount" غیرفعال شوند یا با استفاده از "Remove" حذف شوند.

هیچ چیز پیچیده ای در مدیریت برنامه وجود ندارد، فقط می گویم که بسته با LUKS Manager همچنین شامل نسخه ای از ابزار cryptsetup است که برای اندروید کامپایل شده است که می تواند برای کنترل دستی و اتصال تصاویر استفاده شود.


استفاده های دیگر

Dm-crypt و cryptfs در اندروید نه تنها برای محافظت از فهرست /data در برابر چشمان کنجکاو استفاده می شوند. با کمک آنها، به طور عجیبی، سیستمی برای نصب برنامه ها بر روی کارت حافظه در اینجا پیاده سازی شده است. این بر اساس ایده تصاویر رمزگذاری شده، یکی برای هر کدام است برنامه نصب شده. این کار برای محافظت از داده‌های محرمانه‌ای که احتمالاً توسط برنامه ذخیره می‌شود از سایر برنامه‌هایی که در Android دسترسی خواندن کامل به کارت SD دارند و همچنین از کسانی که کارت SD را در اختیار دارند، انجام می‌شود.

با راه اندازی یک ترمینال و اجرای دستور df، خودتان می توانید نحوه پیاده سازی آن را مشاهده کنید. اسکرین شات "Galaxy Nexus and df" خروجی این دستور را در گوشی هوشمند من نشان می دهد. به وضوح قابل مشاهده است که علاوه بر دستگاه شبه رمزنگاری /dev/block/dm–0 که به دایرکتوری /data متصل است و وظیفه رمزگذاری داده ها در گوشی هوشمند را بر عهده دارد، 15 دستگاه مشابه دیگر نیز به دایرکتوری های مختلف متصل هستند. داخل /mnt/asec. اینها برنامه هایی هستند که روی کارت حافظه نصب شده اند. خود برنامه ها در تصاویر رمزگذاری شده در فهرست .asec روی کارت حافظه ذخیره می شوند و کلیدهای رمزگذاری در حافظه اصلی گوشی هوشمند ذخیره می شوند.


همچنین ممکن است متوجه شوید که یک شبه دستگاه /dev/fuse نیز وجود دارد که به /storage/emulated/legacy و همچنین برخی دایرکتوری های دیگر متصل است. این چیزی نیست جز یک "شبیه ساز" کارت حافظه که با استفاده از درایور FUSE که قبلا توضیح داده شد پیاده سازی شده است (خود Galaxy Nexus از کارت حافظه پشتیبانی نمی کند). در اصل، این به سادگی دایرکتوری /storage/emulated/legacy را به /data/media/0 بازتاب می دهد. در این مورد، دایرکتوری sdcard / پیوندی به /storage/emulated/legacy است. با اجرای دستور ps متوجه خواهید شد که Mirroring با استفاده از برنامه /system/bin/sdcard که از FUSE به عنوان پایه استفاده می کند، پیاده سازی شده است. در واقع، این یک پیاده سازی جایگزین unionfs است که برای همه کاربران لینوکس آشناست.

هشدار

ماژول dm-crypt را نمی توان برای رمزگذاری پارتیشن ها با سیستم فایل YAFFS استفاده کرد، زیرا سیستم دوم هنگام دسترسی به حافظه NAND از عملیات سطح پایین استفاده می کند.

نتیجه گیری

همانطور که می بینید، رمزگذاری داده با کیفیت بالا در اندروید بسیار ساده است و در بیشتر موارد حتی نیازی به نصب نرم افزار اضافی ندارید. تنها محدودیت نیاز به داشتن گوشی هوشمند است مبتنی بر اندروید 4.0 و بالاتر، اما از آنجایی که هر چیزی که قبل از 4.0 بود برای فراخوانی سیستم عامل بسیار دشوار است، مشکل خاصی در اینجا وجود ندارد :).

اطلاعات

جزئیات پیاده سازی سیستم استانداردرمزگذاری اندروید برای پارانوئید: AES 128 بیتی در حالت CBC و ESSIV: SHA–256. کلید اصلی با یک کلید AES 128 بیتی دیگر که از رمز عبور کاربر با استفاده از 2000 تکرار استاندارد PBKDF2 با 128 بیت نمک تصادفی مشتق شده است، رمزگذاری شده است.

اگر از منظر امنیتی به آن نگاه کنید، گوشی هوشمند اندرویدی شما جعبه ای جمع و جور مملو از اطلاعات شخصی مهم است و به سختی می خواهید آن را به دست دیگران بیفتد. برای به دست آوردن تصویر واقعی تر از وضعیت، به فکر خود باشید پست الکترونیک، پیام های اس ام اس، شماره کارت اعتباری ذخیره شده، عکس های شخصی و سایر داده های حساس.

تلفن های دیگر حتی ممکن است به خارج از کشور قاچاق شوند، جایی که می توانند در بازارهای نوظهور قیمت بالاتری داشته باشند. با این حال، اگر از دومی استفاده می‌کنید، به یاد داشته باشید که یک دزد می‌تواند با دنبال کردن اثر انگشت روی صفحه، الگوی باز کردن قفل شما را ببیند. این دلیل دیگری است که چرا توصیه می شود دستگاه خود را مرتباً تمیز کنید. این ویژگی ممکن است به خوبی نباشد، اما مطمئنا امن ترین گزینه است.

تلفن خود را از راه دور ردیابی و حذف کنید

علاوه بر کد قفل، برخی از دستگاه ها حتی یک خواننده اثر انگشت نیز دارند. ویژگی های قفل صفحه فقط تماس‌های بی‌پاسخ و پیش‌نمایش متن خوانده‌نشده معمولاً با رفتن به صفحه گزینه‌های صفحه امنیتی در دسترس هستند. سپس کادرهای Remote Search، Lock and Reboot گوشی خود را علامت بزنید. بنابراین مراقب آنچه در کارت حافظه خود ذخیره می کنید باشید.

فکر می‌کنم هیچ‌کس نمی‌خواهد در موقعیتی قرار بگیرد که یک غریبه این داده‌ها را در اختیار داشته باشد، زیرا حتی فکر کردن به عواقب آن ترسناک است. و این دلیل اصلی است که ما به روش های مختلفی برای سازماندهی محافظت از تلفن یا تبلت خود می رسیم و رمزگذاری داده ها ابزار اصلی محافظت از داده ها است.

قبل از اینکه رمزگذاری را فعال کنید، توجه داشته باشید که معایبی وجود دارد. کندتر: رمزگذاری همیشه مقداری سربار اضافه می کند که دستگاه شما را کمی کندتر می کند. این فقط یک راه کار می کند: پس از رمزگذاری حافظه دستگاه خود، می توانید با بازنشانی تلفن خود به تنظیمات پیش فرض کارخانه، رمزگذاری را غیرفعال کنید. با این کار تمام داده های ذخیره شده در گوشی شما نیز حذف می شود، بنابراین باید آن را از ابتدا نصب کنید. کاهش سرعت واقعی به سخت افزار گوشی بستگی دارد. . همه نباید رمزگذاری را فعال کنند زیرا برای بسیاری از افراد ضرر بیشتری نسبت به فایده دارد.

رمزگذاری چیست؟

رمزگذاری یک فرآیند برگشت پذیر برای تبدیل داده ها به غیر نمای قابل خواندنبرای همه افراد به جز کسانی که می دانند چگونه آن را رمزگشایی کنند. تنها راه برای بازگرداندن داده ها به شکل قابل خواندن، رمزگشایی مجدد آن ها با استفاده از کلید صحیح است.

درک چنین چیزهایی با استفاده از مثال‌های ساده آسان‌تر است، فرض کنید دفتر خاطرات خود را گم کرده‌اید، و کسی که آن را پیدا کرده و روسی می‌داند می‌تواند به راحتی بخواند و اسرار درونی شما را دریابد، اما اگر یک دفتر خاطرات را در نوعی کد مخفی نگه داشته باشید، یا زبانی که فقط خودت میفهمی پس هیچکس نمیتونه بخونه

عمدتاً متخصصانی که با اطلاعات تجاری سروکار دارند باید این گزینه رمزگذاری را به طور جدی در نظر بگیرند و روشن کنند که قبل از هر گونه تغییر در دستگاه نیز مهم است. علاوه بر ایمن نگه داشتن دستگاه خود از نظر فیزیکی، مراقب برنامه هایی باشید که نصب می کنید و می توانند اطلاعات شخصی شما را نیز بدزدند.

بسته به مقدار داده ای که در دستگاه خود دارید، رمزگذاری ممکن است یک ساعت یا بیشتر طول بکشد. اگر بخواهید فرآیند رمزگذاری را متوقف کنید، برخی از داده های تلفن خود را از دست خواهید داد. صفحه تنظیمات را باز کنید، روی امنیت ضربه بزنید و روی معیارها ضربه بزنید.

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

ما اندروید شما را رمزگذاری می کنیم

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

امروزه هر کاربر باید به فکر محافظت از اطلاعات محرمانه در برابر افراد غیرمجاز باشد. تولید کنندگان دستگاه های تلفن همراهبه مشتریان آینده و حق محرمانه بودن آنها اهمیت می دهند، بنابراین آنها توجه بیشتری به حفظ اطلاعات شخصی دارند. تبلت ها را نیز می توان به عنوان وسایل شخصی طبقه بندی کرد، بنابراین اجازه دهید در مورد محافظت از آنها صحبت کنیم.

آیا می توان رمزگذاری را در رایانه لوحی غیرفعال کرد؟

عملکردهای سیستم تبلت های مدرن از حالت رمزگذاری برای اطلاعات ذخیره شده در حافظه داخلی دستگاه و روی آن پشتیبانی می کند نقشه خارجی SD. لازم به یادآوری است که اجرای رمزگذاری تأثیر منفی بر عملکرد دستگاه دارد. کسانی که به قدرت محاسباتی بر ایمنی داده های شخصی اهمیت می دهند، حتماً باید این مقاله را بخوانند.

اگر به اندازه کافی خوش شانس هستید که یک تبلت اندرویدی دارید که در اصل نسخه ای از سیستم عامل را اجرا می کند، نمی توانید ویژگی رمزگذاری را غیرفعال کنید. توسعه دهندگان تصمیم گرفتند رمزگذاری اجباری اطلاعات را در آخرین نسخه های سیستم عامل معرفی کنند، اما ناامید نشوید، زیرا هکرها نیز نمی خوابند. شکی نیست که این کارگران به زودی راه حل خود را برای این مشکل ارائه خواهند کرد. در عین حال تبلت هایی که سیستم عامل آنها به روز رسانی شده است آخرین نسخهاز موارد قبلی با چنین ممنوعیت هایی محدود نمی شود، بنابراین گزینه غیرفعال کردن رمزگذاری در دسترس است. با این حال، توصیه می کنیم به این فکر کنید که آیا واقعاً به این نیاز دارید؟

در نسخه های قبلی اندروید، تا نسخه 2.3.4، رمزگذاری باید به صورت دستی شروع شود. این گزینه در منوی تنظیمات است: امنیت -> رمزگذاری -> رمزگذاری دستگاه. باید در نظر داشت که پس از این رمزگشایی داده های رمزگذاری شده غیرممکن است، زیرا توسعه دهنده چنین امکانی را ارائه نکرده است. بنابراین، در صورت نیاز به رمزگشایی اطلاعات، از دست دادن آن اجتناب ناپذیر است. برای انجام این کار، باید دستگاه را از حالت "بازیابی" به تنظیمات کارخانه بازنشانی کنید.

برای انجام چنین بازنشانی، باید کلیدهای کم و زیاد صدا و همچنین کلید پاور را در حالی که تبلت خاموش است، نگه دارید. دانلود خواهد شد منوی مهندسی، جایی که با استفاده از دکمه های میزان صدا باید آیتم منوی "wipe data/factory reset" را پیدا کنید و پس از انتخاب آن، کلید روشن/خاموش را فشار دهید. هنگامی که عملیات ریست کامل شد، باید با انتخاب "راه اندازی مجدد" مجددا راه اندازی شود. پس از بوت شدن به حالت عملیاتی تبلت، باید اطلاعات شخصی خود را بازیابی کنید و دیگر رمزگذاری را اجرا نکنید.

اشتراک گذاری