Инструкции. Прошивка. Программы. Интернет. Навигация
Поиск по сайту

Как зашифровать данные на андроиде. Защита данных на телефонах и планшетах на базе Android

Вкратце: Если вы используете графический ключ доступа к телефону, то в 99% этого достаточно для того чтобы никто без вашего ведома не смог получить доступ к информации в телефоне. Если данные в телефоне очень конфиденциальные, тогда следует использовать встроенную функцию полного шифрования телефона.

На сегодняшний день практически все смартфоны стали носителями важных персональных либо корпоративных данных. Также посредством телефона владельца можно легко получить доступ к его учетным записям, таким как Gmail, DropBox, FaceBook и даже корпоративным сервисам. Поэтому в той или иной степени стоит побеспокоиться о конфиденциальности этих данных и использовать специальные средства для защиты телефона от несанкционированного доступа в случае его кражи или утери.

  1. От кого следует защищать данные телефона.
  2. Встроенные средства защиты данных в Android.
  3. Полное Шифрование памяти телефона
  4. Итоги

Какая информация хранится в телефоне и зачем ее защищать?

Смартфон или планшет часто выполняют функции мобильного секретаря, освобождая голову владельца от хранения большого количества важной информации. В телефонной книге есть номера друзей, сотрудников, членов семьи. В записной книжке часто пишут номера кредитных карточек, коды доступа к ним, пароли к соцсетям, электронной почте и платежным системам.
Список последних звонков также очень важен.
Утеря телефона может обернуться настоящей бедой. Иногда их крадут специально, чтобы проникнуть в личную жизнь или разделить прибыль с хозяином.
Иногда их вовсе не крадут, а пользуются ими недолго, незаметно, но нескольких минут бывает вполне достаточно для опытного пользователя-злоумышленника, чтобы узнать все подробности.

Потеря конфиденциальной информации может обернуться финансовым крахом, крушением личной жизни, распадом семьи.
Лучше бы у меня его не было! — скажет бывший хозяин. — Как хорошо, что он у тебя был! — скажет злоумышленник.

И так что надо защищать в телефоне:

  1. Учетные записи. Сюда входит, например, доступ к вашему почтовому ящику gmail. Если вы настроили синхронизацию с facebook, dropbox, twitter. Логины и пароли для этих систем хранятся в открытом виде в папке профиля телефона /data/system/accounts.db.
  2. История SMS-переписки и телефонная книжка также содержат конфиденциальную информацию.
  3. Программа Web браузер. Весь профайл браузера должен быть защищен. Известно, что Web Браузер (встроенный либо сторонний) запоминает для вас все пароли и логины. Это все храниться в открытом виде в папке профиля программы в памяти телефона. Мало того, обычно сами сайты (с помощью cookies) помнят вас и оставляют доступ к аккуанту открытым, даже если вы не указывали запоминать пароль.
    Если вы используете синхронизацию мобильного браузера (Chrome, FireFox, Maxthon и др.) с настольной версией браузера для передачи закладок и паролей между устройствами, тогда можно считать что с вашего телефона можно получить доступ ко всем паролям от других сайтов.
  4. Карта Памяти. Если вы храните на карте памяти конфиденциальные файлы либо загружаете документы из Интернета. Обычно на карте памяти хранятся фотоснимки и снятые видео.
  5. Фотоальбом.

От кого следует защищать данные телефона:

  1. От случайного человека, который найдет потерянный вами телефон л ибо от “случайной” кражи телефона.
    Маловероятно, что данные в телефоне будут иметь ценность для нового владельца в этом случае. Поэтому даже простая защита графическим ключом обеспечит сохранность данных. Скорее всего, телефон будет просто-напросто переформатирован для повторного использования.
  2. От любопытных глаз (сослуживцы/дети/жены ), которые могут получить доступ к телефону без вашего ведома, воспользовавшись вашим отсутствием. Простая защита обеспечит сохранность данных.
  3. Предоставление доступа по принуждению
    Бывает, что вы добровольно вынуждены предоставить телефон и открыть доступ к системме (информации). Например когда у вас просит посмотреть телефон жена, представитель власти либо сотрудник сервисного центра куда вы отнесли телефон на ремонт. В этом случае любая защита бесполезна. Хотя есть возможность с помощью дополнительных программ, скрыть факт наличия некоторой информации: скрыть часть SMS переписки, часть контактов, некоторые файлы.
  4. От целенаправленной кражи вашего телефона.
    Например, кто-то очень сильно хотел узнать, что у вас в телефоне и приложил усилия, чтобы заполучить его.
    В этом случае помогает только полное шифрование телефона и SD-карты.

Встроенные средства защиты данных на устройствах Android.

1. Экран блокировки с Графическим Ключем.
Данный способ очень эффективный в первом и втором случаях (защита от случайной утери телефона и защита от любопытных глаз). Если Вы случайно потеряете телефон или забудете его на работе, то никто не сможет им воспользоваться. Но если за Ваш телефон попал в чужие руки целенаправленно, тогда это вряд-ли спасет. Взлом может происходить даже на аппаратном уровне.

Экран можно заблокировать паролем, PIN-кодом и Графическим Ключом. Выбрать способ блокировки можно, запустив настройки и выбрав раздел Security -> Screen lock.

Графический Ключ (Pattern) — c амый удобный и одновременно надежный способ защиты телефона.

None — отсутствие защиты,
Slide — для разблокировки необходимо провести пальцем по экрану в определенном направлении.

Pattern — это Графический Ключ, выглядит это примерно так:

Можно повысить уровень безопасности двумя способами.
1. Увеличить поле ввода Графического ключа. Оно может варьировать от 3х3 точки на экране до 6х6 (Android 4.2 встречается в некоторых моделях, зависит от версии Android и модели телефона).
2. Скрыть отображение точек и «пути» графического ключа на экране смартфона, чтобы невозможно было подглядеть ключ.

3. Установить автоматическую блокировку экрана после 1 минуты бездействия телефона.

Внимание!!! Что случится, если Вы забыли графический ключ:

  1. Количество неверных попыток рисования Графического Ключа ограниченно до 5 раз (в различных моделях телефона количество попыток может доходить до 10 раз).
  2. После того как вы использовали все попытки, но так и не нарисовали правильно Графический Ключ, телефон блокируется на 30 секунд. После этого скорее всего у вас будет опять пару попыток в зависимости от модели телефона и версии Android.
  3. Далее телефон запрашивает логин и пароль вашего Gmail-аккаунта который прописан в настройках Учетных Записей телефона.
    Этот метод сработает только в том случае, если телефон или планшет подключен к Интернету. В противном случае тупик или перезагрузка к настройкам производителя.

Бывает так что телефон попадает в руки к ребенку — он начинает играться, много раз рисует ключ и это приводит к блокировке ключа.

PIN — это пароль состоящий из нескольких цифр.

И наконец, Password — самая надежная защита, с возможностью использования букв и цифр. Если вы решили использовать пароль — тогда можно включить опцию Шифрование телефона.

Шифрование памяти телефона.

Функция входит в пакет Android версии 4.0* и выше. для планшетов. Но эта функция может отсутствовать во многих бюджетных телефонах.
Позволяет зашифровать внутреннюю память телефона так, чтобы доступ к ней осуществлялся только по паролю или PIN-коду. Шифрование помогает защитить информацию в вашем телефоне в случае ц еленаправленной кражи. Злоумышленники никак не смогут получить доступ к вашим данным с телефона.

Обязательное условие для использования шифрования — установка блокировки экрана с помощью пароля.
Этим способом достигается сохранение данных пользователя, расположенных в памяти телефона, например телефонной книги, настроек браузеров, паролей, используемых в Интернете, фотографий и видео, которые пользователь получил с помощью камеры и не переписал на SD-карту.

— шифрование SD-карты включается отдельной опцией.
— Шифрование памяти может занять до часа времени в зависимости от объема памяти устройства. Во время шифрования телефоном нельзя пользоваться.

Что если вы забыли пароль?

Восстановление пароля в этом случае не предусмотрено. Можно сделать телефону или планшету полный RESET, т.е. переустановить Android, но пользовательские данные из памяти телефона или планшета будут стерты. Таким образом, если злоумышленник не знает пароля для разблокировки телефона, он не сможет им воспользоваться. Невозможно будет также увидеть данные из памяти телефона с помощью других программ, подключив телефон к компьютеру, ведь вся внутренняя память зашифрована. Единственный способ вновь заставить телефон работать — переформатировать его.

Внимание, функция полного шифрования присутствует, только начиная с Android OS 4.0 — 4.1 и может просто отсутствовать на некоторых моделях телефонах. Чаще всего встречается в телефонах от Samsung, HTC, LG , Sony. Некоторые китайские модели также имеют функцию шифрования. У некоторых телефонов эта функция расположена в разделе “Память”.

Недостатки:

  1. Вам необходимо будет постоянно вводить довольно сложный пароль (6-10 символов) даже если вы хотите просто позвонить. Хотя возможно установить большой интервал времени (30 минут) в течении которого пароль не будет запрашиваться при включении экрана телефона. На некоторых моделях телефонов — минимальная длина пароля может быть от 3х символов.
  2. На некоторых моделях телефонов невозможно отключить шифрование, если вы хотите отказаться от постоянного ввода пароля. Шифрование отключается только возвратом заводских настроек телефона с удалением всех данных.

Шифрование внешней SD-карты памяти

Функция входит в стандартный пакет Android 4.1.1 для планшетов. Отсутствует во многих бюджетных сборках.
Функция обеспечивает надежную защиту данных на внешней SD-карте. Здесь могут храниться личные фотографии, текстовые файлы с информацией коммерческого и личного характера.
Позволяет зашифровать файлы на SD-карте, не изменяя их названий, файловой структуры, с сохранением предварительного просмотра графических файлов(иконки). Функция требует установки блокировочного пароля на дисплей длиной не менее 6 символов.

Имеется возможность отмены шифрования. При смене пароля происходит автоматическая перешифровка.
Если пользователь потерял карту памяти, зашифрованные файлы не могут быть прочтены через сard-reader. Если ее поставить на другой планшет, где стоит другой пароль, то зашифрованные данные также не могут быть прочтены.
Другие Свойства Шифрования:

  • Прозрачное шифрование. Если карта вставлена в планшет и пользователь разблокировал экран при помощи пароля, любое приложение видит файлы в расшифрованном виде.
  • Если подключить планшет через USB-кабель к компьютеру, зашифрованные файлы также можно прочесть на компьютере, предварительно разблокировав карту с экрана мобильного устройства.
  • Если через сard-reader на карту записать какие-то другие незашифрованные файлы, они тоже будут зашифрованы после вставки карты в планшет.
  • При наличии зашифрованной карты отменить пароль блокировки нельзя.
  • Данные шифруются на уровне файлов (при этом видны названия файлов, но содержимое файла зашифрованно).

Недостаток программы: о тсутствие в большинстве сборок Android.

Следует подчеркнуть, что лучшая сохранность данных — это полная их копия на вашем Компьютере в Смартфон достаточно хрупкое устройство небольших размеров, а значит всегда есть вероятность его поломки или потери.

Повышение удобности использования защищенного смартфона

Полное шифрование телефона обеспечивает самый надежный уровень защиты, но постоянный ввод 6ти-значного пароля осложняет его использование. Но есть решение.

В системе Android с версии 4.2* возможно некоторые приложения\widgets вынести на экран блокировки, и таким образом вы сможете выполнять простые действия без того чтобы постоянного разблокировать телефон (без ввода 6ти-значного пароля).

Итоги:

  • Встроенные и бесплатные функции для защиты телефона являются весьма надежными. Они способны защитить от посторонних глаз контакты пользователя, его переписку и звонки, аккуанты в различных программах и сетях, а также файлы и папки, расположенные как в памяти телефона, так и на съемной SD-карте.
  • Перед покупкой телефона следует убедиться как работает требуемая защита именно в данной модели телефона: требование использовать слишком сложный PIN-код или пароль на экране блокировки (Графический Ключ не подходит), необратимость шифровки внутренней памяти телефона, т.е. единственный способ отказаться от шифрования — это полный сброс настроек телефона.
  • Важно! Убедитесь что в случае, если Вы забыли пароль либо Графический Ключ, Вы сможете восстановить доступ к телефону либо сможете легко восстановить настройки телефона и информацию в случае если придется сделать hard reset (сброс телефона в заводские настройки с потерей всех данных).
  • Хранить резервную копию конфиденциальных данных необходимо только в на вашем Компьютере, на DVD диске либо в облаке.
Теги: , Защита данных на телефонах и планшетах на базе Android.

Читаете важные электронные письма , делаете онлайн-покупки с помощью вашей кредитной карты , редактируете и передаете важные документы? Если ваш ответ "да", то вы должны задуматься о шифровании вашего устройства.

Как только процесс шифрования завершится - все готово! Убедитесь, что сохранили свой пароль в безопасном месте , поскольку теперь он вам пригодится каждый раз когда вы захотите получить доступ к телефону . Учтите, что если вы забудете пароль, то на сегодня не существует никакого способа его восстановить.

На самом деле, шифрование Android-устройств вместе с очевидными преимуществами имеет и существенные недостатки:

  1. Представьте себе, что вам каждый раз, когда вы хотите позвонить, потребуется набирать сложный пароль. Интересно, как скоро это вам надоест?
  2. Вы не сможете расшифровать зашифрованное устройство, это просто не предусматривается. Для расшифровки есть единственный способ - сбросить телефон в заводские настройки . При этом, естественно, все ваши данные будут потеряны. Особенно интересно это будет выглядеть, если вы забудете предварительно сделать резервную копию .

Таким образом, на сегодня существует непростой выбор - либо вы шифруете ваше устройство и миритесь с огромными неудобствами, либо вы получаете удобство использования, но в ущерб безопасности . Какой путь выберете вы? Я не знаю. Какой бы путь выбрал я? Тоже ответить не могу. Просто не знаю.

Владимир БЕЗМАЛЫЙ ,
MVP Consumer Security,
Microsoft Security Trusted Advisor

Недавние дебаты в США между правоохранительными органами и технологическими гигантами вокруг шифрования смартфона в очередной раз ставит этот вопрос в центр внимания. Никто не станет спорить с тем, что защита ваших личных данных тема важная, поэтому мы рады сообщить вам, что Android предлагает необходимые инструменты для шифрования вашего смартфона прямо из коробки. Если вы заинтересованы и хотите знать, с чего начать, это руководство расскажет вам, как зашифровать смартфон или планшет на Android.

Шифрование устройства и что оно делает?
Прежде чем зашифровать своё устройство, имеет смысл понять, что представляет собой шифрование, каковы плюсы и минусы этого решения.

Шифрование устройства не является универсальным решением для защиты всех ваших данных или информации от посторонних глаз, особенно при отправке через сеть Интернет. Вместо этого шифрование устройства преобразует все данные, сохраненные на телефоне в форму, доступную для прочтения только с правильными учетными данными. Это решение обеспечивает лучшую защиту, чем блокировка пароля, поскольку данные можно получить и не пройдя за блокировку экрана с помощью программ восстановления, загрузчиков или Android Debug Bridge.

Зашифрованные музыка, фотографии, приложения и учетные данные не могут быть прочитаны без предварительной расшифровки информации, для которой необходим уникальный ключ. Таким образом, часть процедуры происходит за кулисами, где пароль пользователя преобразуется в ключ, который хранится в «Доверенной Среде», чтобы оставаться недоступным сторонним пользователям в случае программной атаки. Этот ключ потребуется для шифрования и дешифрования файлов.

В Android шифрование реализовано просто с точки зрения пользователя, поскольку вы вводите свой секретный код всякий раз, когда разблокируете устройство, что делает ваши файлы доступными. Это значит, что, если ваш телефон попадет в чужие руки, никто другой не сможет разобрать данные на вашем телефоне, не зная пароля.

И прежде чем окунуться в шифрование с головой, есть несколько моментов, которые вы должны рассмотреть. Во-первых, открытие зашифрованных файлов требует дополнительной вычислительной мощности, поэтому шифрование скажется на производительности вашего телефона. Скорость чтения памяти может стать существенно медленнее на старых устройствах, но падение производительности в подавляющем большинстве регулярных задач остается очень незначительным, если вообще заметным.

Во-вторых, только некоторые смартфоны будут предлагать возможность удаления шифрования с вашего смартфона. Шифрование представляет собой одностороннее решение для большинства смартфонов и планшетов. Если ваш телефон не предлагает возможности дешифровать весть телефон, единственный вариант выполнить полный откат – вернуться к заводским настройкам, что приведет к удалению всех ваших личных данных. Проверьте этот момент заранее.
Разобравшись в ситуации, давайте посмотрим, как включить шифрование.

Шифрование моего устройства

Шифрование устройства работает одинаково на всех Android-устройствах, хотя методы его реализации могут немного меняться с течением времени. Некоторые устройства из коробки приходят с активным шифрованием, среди них, например, Nexus 6 и Nexus 9, а если ваше устройство не зашифровано, сделать это с помощью Android очень просто.

Android 5.0 или выше…

Для Android-смартфонов и планшетов под управлением Android 5.0 или более поздней версии, вы можете перейти к меню «Безопасность» в разделе «Настройки». Путь сюда может незначительно отличаться в зависимости от вашего ОЕМ, но с чистым Android вы найдете шифрование в разделе Настройки – Личное – Безопасность (Settings > Personal > Security).


Здесь вы должны увидеть опцию «Зашифровать смартфон» (Encrypt Phone) или «Зашифровать планшет» (Encrypt Tablet). Вам будет предложено подключить устройство к зарядке, пока будет происходить шифрование, чтобы убедиться, что смартфон не отключится в процессе, что обернется ошибками. Если вы ещё не сделали этого, вам будет предложено установить PIN-код блокировки экрана или пароль, который вам нужно будет вводить при включении смартфона, чтобы получить доступ к вашим зашифрованным файлам. Обязательно запомните пароль!

Android 4.4 и старше…

Если вы используете смартфон с Android 4.4 KitKat или старше, вы должны установить PIN-код или пароль до запуска процесса шифрования. К счастью, это не сложно, перейдите Настройки – Безопасность – Блокировка экрана (Settings > Security > Screen Lock). Здесь вы сможете либо выбрать шаблон, набрать PIN-код или смешанный пароль для блокировки экрана. Тот же самый пароль вы будете использовать после шифрования, поэтому уделите ему внимание.

Закончив с этим, вы можете вернуться в меню Безопасность (Security) и нажать «Зашифровать телефон». Вам нужно будет подключить устройство к зарядке и прочесть предупреждающие сообщения, практически всегда придется подтвердить PIN-код или пароль в последний раз для того, чтобы начался процесс шифрования.


Шифрование вашего телефона может занять час и более, в зависимости от того, насколько мощный у вас смартфон и большой объем данных, хранимых на устройстве. После того, как процесс наконец завершится, вы сможете ввести свой PIN-код и продолжить работу с зашифрованным устройством как ни в чем не бывало.

Вернувшись в меню «Безопасность», вы также, вероятно, узнаете о возможности шифровать файлы на карте памяти MicroSD. Это рекомендуемый шаг, если вы хотите хранить все ваши данные в безопасности, но на самом деле не обязательный, если вы используете MicroSD только для хранения музыки или фильмов, которые не имеют личной ценности.

С этим решением приходит несколько предостережений. Во-первых, вы больше не будете иметь возможности использовать MicroSD карты с другими устройствами, без полного удаления шифрованных данных, поскольку другие компьютеры / устройства не будут знать ключа шифрования. И хотя зашифрованная MicroSD карта до сих пор может быть использована для перемещения файлов, это будет продолжаться только до тех пор, пока вы получаете доступ к зашифрованным файлам с телефона, используемого для их шифрования. Кроме того, если вы сбросите устройство, прежде чем расшифровать файлы, ключ будет потерян, и вы не сможете получить доступ к защищенным файлам на карте памяти MicroSD. Так что продумайте ситуацию тщательно.

Когда вы закончили…

Вот и всё, что на самом деле нужно, чтобы зашифровать Android-устройство. Это отличный способ защитить ваши данные гораздо надежнее. Существует незначительный компромисс в плане производительности, но любые различия должно быть очень сложно заметить на современных мобильных телефонах.


Дополнительные опции с приложениями сторонних разработчиков

Если вы не хотите пройтись катком шифрования по всем данным вашего устройства, есть небольшое количество Android-приложений в магазине Google Play, которые предлагают разнообразные выборочные функции, в том числе шифрование одного файла, текста или папки.

SSE – Универсальное приложение шифрования
версия: 1.7.0 (Pro) (cкачиваний: 176)
SSE существует на этом рынке весьма продолжительное время и до сих пор, кажется, получает небольшие обновления. Вместо того, чтобы реализовать массовое шифрование вашего телефона, SSE можно использовать для защиты и расшифровки отдельных файлов или каталогов, которые вам нужны, если вы хотите защитить выборочно несколько элементов. Вы можете установить пароль, который будет служить в качестве ключа расшифровки, есть также возможность создавать зашифрованные копии файлов или полностью подменить их.

Приложение также имеет текстовый шифратор и хранилище под паролем. Текстовый редактор может быть использован для хранения зашифрованных заметок, которые могут быть разделены между платформами. Хранилище предназначено для хранения и управления всеми паролями, PIN-кодами и заметками в одном надежном месте, защищенном мастер-паролем. Функция работает подобно LastPass.

Заключительные мысли
Учитывая количество конфиденциальной личной информации, которую мы содержим на наших мобильных устройствах сегодня, включая банковские реквизиты, шифрование Android-устройств становится разумным решением. Существует довольно много вариантов, которые предоставляют различные уровни безопасности, от системы широкого шифрования Android до приложений, посвященных шифрованию конкретных файлов. Имейте в виду, шифрование не обеспечивает полной защиты от всего, но предлагает отличную защиту на случай кражи устройства.

Шифрование данных в ОС Android тесно связано с двумя проблемами: контролем доступа к картам памяти и переносом на них приложений. Многие программы содержат данные активации, платежную и конфиденциальную информацию. Ее защита требует управления правами доступа, которые не поддерживаются типичной для карточек файловой системой FAT32. Поэтому в каждой версии Android подходы к шифрованию кардинально менялись - от полного отсутствия криптографической защиты сменных носителей до их глубокой интеграции в единый раздел с шифрованием на лету.

WARNING

У каждого гаджета с ОС Android есть свои существенные отличия - как в прошивке, так и на аппаратном уровне. Даже разные версии одной модели могут сильно отличаться. Карты памяти тоже имеют свои особенности. Поэтому детальные руководства по использованию шифрования на одном устройстве часто не работают без модификаций на другом. Универсальных методов здесь не существует. Есть лишь общие подходы, которые и описаны в данной статье.

Особая роль карты памяти

Изначально разработчики Android предполагали использование карты памяти только как отдельного хранилища пользовательских файлов. Это был просто склад мультимедиа без каких-либо требований к его защите и надежности. Карточки microSD(HC) с FAT32 вполне справлялись с ролью простейшей хранилки, освобождая внутреннюю память от фоток, видеороликов и музыки.

Возможность переносить на карту памяти не только мультимедийные файлы, но и приложения впервые появилась в Android 2.2 Froyo. Реализована она была с помощью концепции зашифрованных контейнеров на каждое приложение, но защищало это исключительно от попадания не в те руки карты - но не смартфона.

К тому же это была полумера: многие программы переносились частично, оставляя часть данных во внутренней памяти, а некоторые (например, системные или содержащие виджеты) не переносились на карточку вовсе. Сама возможность переноса приложений зависела от их типа (предустановленное или стороннее) и внутренней структуры. У одних каталог с пользовательскими данными сразу располагался отдельно, а у других - в подкаталоге самой программы.


Если приложения интенсивно использовали операции чтения/записи, то надежность и скорость работы карточек уже не могла удовлетворить разработчиков. Они намеренно делали так, что перенос программ штатными средствами становился невозможен. За счет такого ухищрения их творение гарантированно получало прописку во внутренней памяти с большим ресурсом перезаписи и высоким быстродействием.

С четвертой версии в Android появилась возможность выбрать, где разместить приложение. Можно было назначить карту памяти как диск для установки программ по умолчанию, но не все прошивки корректно поддерживали эту функцию. Как она работает в конкретном устройстве - удавалось выяснить лишь опытным путем.

В пятом Андроиде Google снова решила вернуть изначальную концепцию и сделала все, чтобы максимально затруднить перенос приложений на карту памяти. Крупные производители уловили сигнал и добавили в прошивки собственные функции мониторинга, определяющие попытки пользователя принудительно переместить приложения на карточку с использованием рута. Более-менее работал только вариант с созданием жестких или символьных ссылок. При этом приложение определялось по стандартному адресу во встроенной памяти, а фактически находилось на карточке. Однако путаницу вносили файловые менеджеры, многие из которых некорректно обрабатывали ссылки. Они показывали неверный объем свободного места, поскольку считали, что приложение якобы занимает место и во встроенной памяти, и на карточке одновременно.

Адаптируй это!

В Android Marshmallow появился компромисс под названием «Адаптируемое хранилище» - Adoptable Storage. Это попытка Google сделать так, чтобы и овцы остались целы, и солдаты удовлетворены.

Функция Adoptable Storage позволяет объединить пользовательский раздел во встроенной памяти с разделом на карточке в один логический том. Фактически она создает на карточке раздел ext4 или F2FS и добавляет его к пользовательскому разделу внутренней памяти. Это чисто логическая операция объединения, отдаленно напоминающая создание составного тома из нескольких физических дисков в Windows.


В процессе объединения с внутренней памятью карточка переформатируется. По умолчанию весь ее объем будет использован в объединенном томе. В таком случае файлы на карточке уже нельзя будет прочитать на другом устройстве - они будут зашифрованы уникальным ключом устройства, который хранится внутри доверенной среды исполнения.

В качестве альтернативы можно зарезервировать на карточке место под второй раздел с FAT32. Хранимые на нем файлы будут видны на всех устройствах, как прежде.

Способ разделения карточки задается либо через меню Adoptable Storage, либо через отладочный мост для Android (Android Debug Bridge - ADB). Последний вариант используется в тех случаях, когда производитель скрыл Adoptable Storage из меню, но не удалил эту функцию из прошивки. Например, она скрыта в Samsung Galaxy S7 и топовых смартфонах LG. В последнее время вообще появилась тенденция убирать Adoptable Storage из флагманских устройств. Она считается костылями для бюджетных смартфонов и планшетов, которые не комплектуются достаточным объемом встроенной Flash-памяти.

Впрочем, не маркетологам решать, как нам использовать свои устройства. Через ADB на компьютере с Windows функция Adoptable Storage включается следующим образом.

  1. Делаем бэкап всех данных на карточке - она будет переформатирована.
  2. Java SE Development kit с сайта Oracle.
  3. Устанавливаем последнюю версию Android SDK Manager .
  4. Включаем на смартфоне отладку по USB.
  5. Запускаем SDK Manager и в командной строке пишем: $ adb shell $ sm list-disks
  6. Записываем номер диска, под которым определяется карта памяти (обычно он выглядит как 179:160, 179:32 или подобным образом).
  7. Если хочешь добавить к внутренней памяти весь объем карточки, то пиши в командной строке: $ sm partition disk: x:y private

    где x:y - номер карты памяти.

  8. Если хочешь оставить часть для тома FAT32, то измени команду из п. 7 на такую: $ sm partition disk:x:y mixed nn

    где nn - остаток объема в процентах для тома FAT32.

Например, команда sm partition disk:179:32 mixed 20 добавит к встроенной памяти 80% объема карточки и оставит на ней том FAT32 в 1/5 ее объема.

На некоторых смартфонах этот метод в варианте «как есть» уже не работает и требует дополнительных ухищрений. Производители делают все, чтобы искусственно разделить свою продукцию по рыночным нишам. Топовые модели выпускаются с разным объемом встроенной памяти, и желающих переплачивать за него находится все меньше.

Некоторые смартфоны не имеют слота для карты памяти (например, серия Nexus), но поддерживают подключение USB-Flash-носителей в режиме OTG. В таком случае флешку также можно использовать для расширения объема встроенной памяти. Делается это следующей командой:

$ adb shell sm set-force-adoptable true

По умолчанию возможность использовать USB-OTG для создания адаптированного хранилища отключена, поскольку его неожиданное извлечение может привести к потере данных. Вероятность внезапного отключения карты памяти гораздо ниже из-за ее физического размещения внутри устройства.

Если с добавлением объема сменного носителя или его разбиением на разделы возникают проблемы, то сначала удали с него всю информацию о прежней логической разметке. Надежно это можно сделать с помощью линуксовой утилиты gparted , которая на компьютере с Windows запускается с загрузочного диска или в виртуальной машине.

Согласно официальной политике Google приложения могут сразу быть установлены в адаптируемое хранилище или перенесены в него, если разработчик указал это в атрибуте android:installLocation . Ирония в том, что далеко не все собственные приложения Google пока позволяют это делать. Каких-то практических лимитов у «адаптированного хранилища» в Android нет. Теоретический предел для Adoptable Storage составляет девять зеттабайт. Столько нет даже в дата-центрах, а уж карты памяти большего объема тем более не появятся в ближайшие годы.

Сама процедура шифрования при создании адаптированного хранилища выполняется с помощью dm-crypt - того же модуля ядра Linux, которым производится полнодисковое шифрование встроенной памяти смартфона (см. предыдущую статью « »). Используется алгоритм AES в режиме сцепления блоков шифртекста (CBC). Для каждого сектора генерируется отдельный вектор инициализации с солью (ESSIV). Длина свертки хеш-функции SHA составляет 256 бит, а самого ключа - 128 бит.

Такая реализация, хотя и уступает в надежности AES-XTS-256, работает гораздо быстрее и считается достаточно надежной для пользовательских устройств. Любопытный сосед вряд ли вскроет зашифрованное адаптированное хранилище за разумное время, а вот спецслужбы давно научились использовать недостатки схемы CBC. К тому же реально не все 128 бит ключа оказываются совершенно случайными. Невольное или намеренное ослабление встроенного генератора псевдослучайных чисел - самая часто встречающаяся проблема криптографии. Она затрагивает не столько гаджеты с Android, сколько все потребительские устройства в целом. Поэтому самый надежный способ обеспечения приватности - вообще не хранить конфиденциальные данные на смартфоне.

INFO

Если после объединения памяти с помощью Adoptable Storage выполнить сброс до заводских настроек, то данные на карточке также пропадут. Поэтому предварительно стоит сделать их бэкап, а лучше - сразу назначить облачную синхронизацию.

Альтернативное шифрование данных на карте памяти

Теперь, когда мы разобрались с особенностями хранения файлов на карте памяти в разных версиях Android, перейдем непосредственно к их шифрованию. Если у тебя девайс с шестым Андроидом и новее, то с большой вероятностью в нем так или иначе можно активировать функцию Adoptable Storage. Тогда все данные на карточке будут зашифрованы, как и во встроенной памяти. Открытыми останутся лишь файлы на дополнительном разделе FAT32, если ты захотел его создать при переформатировании карточки.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!

ФБР попыталось через суд выкрутить руки компании Apple, не желающей создавать код для обхода собственной системы безопасности. Обнаружена критическая уязвимость в ядре Android, позволяющая получить доступ суперпользователя в обход всех защитных механизмов. Эти два события хоть и не связаны между собой, но совпали по времени, явным образом демонстрируя различия в системе безопасности двух популярных мобильных ОС. Отложим на минуту вопрос с критической уязвимостью ядра Android, которая вряд ли будет когда-либо исправлена большинством производителей в уже выпущенных моделях, и рассмотрим механизмы шифрования данных в Android и Apple iOS. Но прежде поговорим, зачем вообще нужно шифрование в мобильных устройствах.

Зачем шифровать телефон?

Честному человеку скрывать нечего - популярнейшей лейтмотив, который звучит после каждой публикации на тему защиты данных. «Мне скрывать нечего», - говорят многие пользователи. Увы, но гораздо чаще под этим подразумевается всего лишь уверенность в том, что уж в данные конкретного Васи Пупкина никто не потрудится залезть, ибо кому они вообще интересны? Практика показывает, что это не так. Далеко ходить не станем: буквально на прошлой неделе увольнением завершилась карьера школьной учительницы, которая на минутку оставила телефон на столе. Ученики мгновенно разблокировали аппарат и извлекли из него фотографии учительницы в виде, который осуждается пуританской моралью американского общества. Инцидент послужил достаточным основанием для увольнения учительницы. Подобные истории происходят чуть ли не ежедневно.

Как взламываются незашифрованные телефоны

Не будем углубляться в детали, просто имей в виду: данные с незашифрованного телефона можно извлечь почти в ста процентах случаев. «Почти» здесь относится скорее к случаям, когда телефон попытались физически повредить или уничтожить непосредственно перед снятием данных. Во многих устройствах Android и Windows Phone есть сервисный режим, позволяющий слить все данные из памяти аппарата через обычный USB-кабель. Это касается большинства устройств на платформе Qualcomm (режим HS-USB, работающий даже тогда, когда загрузчик заблокирован), на китайских смартфонах с процессорами MediaTek (MTK), Spreadtrum и Allwinner (если разблокирован загрузчик), а также всех смартфонов производства LG (там вообще удобный сервисный режим, позволяющий слить данные даже с «окирпиченного» устройства).

Но даже если в телефоне и нет сервисного «черного хода», данные из устройства все равно можно получить, разобрав аппарат и подключившись к тестовому порту JTAG. В самых запущенных случаях из устройства извлекается чип eMMC, который вставляется в простейший и очень дешевый адаптер и работает по тому же протоколу, что и самая обычная SD-карта. Если данные не были зашифрованы, из телефона легко извлекается вообще все вплоть до маркеров аутентификации, предоставляющих доступ к твоим облачным хранилищам.

А если шифрование было включено? В старых версиях Android (до 4.4 включительно) и это можно было обойти (за исключением, правда, аппаратов производства Samsung). А вот в Android 5.0 наконец появился режим стойкого шифрования. Но так ли он полезен, как полагает Google? Попробуем разобраться.

Android 5.0–6.0

Первым устройством под управлением Android 5.0 стал Google Nexus 6, выпущенный в 2014 году компанией Motorola. В то время уже активно продвигались 64-разрядные мобильные процессоры с архитектурой ARMv8, но у компании Qualcomm не было готового решения на этой платформе. В результате в Nexus 6 был использован набор системной логики Snapdragon 805, основанный на 32-разрядных ядрах собственной разработки Qualcomm.

Почему это важно? Дело в том, что в процессоры на архитектуре ARMv8 встроен набор команд для ускорения потокового шифрования данных, а в 32-битных процессорах ARMv7 таких команд нет.

Итак, следи за руками. Инструкций для ускорения крипто в процессоре нет, поэтому Qualcomm встроил в набор системной логики выделенный аппаратный модуль, призванный выполнять те же функции. Но что-то у Google не сложилось. То ли драйверы на момент выпуска не допилили, то ли Qualcomm не предоставил исходные коды (или не разрешил публиковать их в AOSP). Детали публике неизвестны, но известен результат: Nexus 6 шокировал обозревателей чрезвычайно медленной скоростью чтения данных. Насколько медленной? Примерно вот так:

Причина восьмикратного отставания от «младшего брата», смартфона Motorola Moto X 2014, проста: насильно включенное шифрование, реализованное компанией на программном уровне. В реальной жизни пользователи Nexus 6 на оригинальной версии прошивки жаловались на многочисленные лаги и фризы, заметный нагрев устройства и относительно слабую автономность. Установка ядра, отключающего насильственно активированное шифрование, разом решала эти проблемы.

Впрочем, прошивка - дело такое, ее ведь можно и допилить, не так ли? Особенно если ты Google, располагаешь неограниченными финансами и имеешь в штате самых квалифицированных разработчиков. Что ж, посмотрим, что было дальше.

А потом был Android 5.1 (спустя полгода), в котором нужные драйверы для работы с аппаратным ускорителем сначала добавили в предварительной версии прошивки, а потом снова убрали в финальной из-за серьезных проблем со спящим режимом. Потом был Android 6.0, на момент выхода которого пользователи уже успели потерять интерес к этой игре и стали любыми способами отключать шифрование, пользуясь сторонними ядрами. Или не отключать, если скорости чтения в 25–30 Мбайт/с достаточно.

Android 7.0

Хорошо, но уж в Android 7 можно было исправить серьезную проблему флагманского устройства, которой уже почти два года? Можно, и ее исправили! В лаборатории «Элкомсофт» сравнили производительность двух идентичных Nexus 6, на одном из которых была установлена версия Android 6.0.1 с ядром ElementalX (и отключенным шифрованием), в то время как второе работало под управлением первой предварительной версии Android 7 с настройками по умолчанию (шифрование включено). Результат налицо:

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!