понедельник, 14 июля 2014 г.

Шифрование системы в Android

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


Впрочем большинство пользователей Android даже не задумывается об этом, а если и задумывается, то приходит к выводу, что это им не нужно. Наверное так оно и есть, если все эти утверждения справедливы для вас:
  • Вы не используете смартфон для работы с электронной почтой, а если и используете, то не расстроитесь, когда кто-то посторонний получит полный контроль над вашим ящиком со всеми контактами, архивами и вдобавок возможностью хотя-бы временно выдавать себя за вас.
  • Вы не используете смартфон для общения в социальных сетях (см. предыдущий пункт).
  • Вы не общаетесь через SMS, или вам не жалко, если кто-то прочитает сохранённые сообщения.
  • Вам всё равно, если кто-то посторонний получит полный список ваших контактов заодно с журналом вызовов.

Если вы всё-таки задумались о шифровании, нужно понять, что у всего есть своя цена. Шифрование Android доставит вам следующие неудобства:
  1. Систему нельзя расшифровать обратно. Об этом смартфон предупредит вас, когда начнёте процедуру, и наверное это сообщение заставляет многих передумать. Но на самом деле действительность не так страшна: factory reset решает проблему, правда нужно будет заново устанавливать программы или восстанавливать систему из архива.
  2. Вы не сможете отказаться от блокировки экрана. Кроме того, вам будет доступно только два способа снятия блокировки: через PIN и пароль. Отсутствие свайпа - самый настоящий кошмар, но позже я расскажу, как это решается.
  3. Телефон будет дольше загружаться. После включения нужно будет ввести пароль для расшифровки системы, после чего телефон перегрузится второй раз. Это не проблема, если только вы зачем-то не перегружаете телефон по нескольку раз в день.

Сразу следует уяснить, что будет защищено, а что нет. Шифрованию полежат системные разделы, т.е. приложения, а также  их настройки и данные (логины-пароли, истории браузеров, SMS, контакты, журнал вызовов и т.п.). Не будет зашифровано всё, что хранится на внутренней или внешней SD-карте, а это фотографии, видео, записи телефонных разговоров (если записываете), музыка и прочее. Прошивки некоторых производителей позволяют это сделать, но здесь мы об этом говорить не будем.

Многим будет полезно порассуждать о стойкости паролей. Разумеется чем проще и короче пароль, тем легче его запомнить и вводить, но тем проще его подобрать. По этой причине я настоятельно рекомендую следующее:
  • Пароль должен быть длиной 10 и более символов и содержать строчные и прописные буквы, цифры, и возможно знаки препинания. В пароле не должно быть каких-либо слов, в том числе в транслитерации (русские слова в английском алфавите). Пример хорошего пароля: neePe7Ohk9
  • Хотя блокировка PIN-кодом и будет доступна, забудьте про неё. PIN-код это особо нестойкая к перебору версия пароля (см. предыдущий пункт).
Помните, что без использования сложного пароля шифрование полностью теряет смысл. Если такие пароли для вас неприемлемы (например вы круглые сутки через каждые 10 минут кому-то звоните), лучше вообще отказаться от шифрования.

Скорее всего на некоторое время вам захочется использовать для разблокировки свайп. Например я часто хожу по супермаркету со списком покупок на смартфоне, и если каждый раз когда экран заблокируется буду вводить пароль, то сойду с ума. Свайп на зашифрованном телефоне недоступен, но есть два способа обойти это:
  1. Увеличьте время между выключением экрана и блокировкой, скажем, до получаса. Минус этого решения: хотя экран и отключен, телефон всё-же потребляет больше энергии, чем в заблокированном состоянии. Впрочем полчаса погоды не делают.
  2. Поставьте PIN-код из 4-х нулей, и блокировку можно будет очень быстро снять даже одной рукой.

Итак, вы твёрдо решили использовать шифрование. Пора преступать. Поставьте телефон на зарядку, дождитесь почти полной зарядки (иначе в шифровании будет отказано), а потом в настройках выбирайте Security / Encrypt phone (я предпочитаю англоязычный интерфейс, в русскоязычном будет что-то в роде Безопасность / Зашифровать телефон). Через несколько минут всё будет готово.

Некоторые считают, что иметь один и тот же пароль для расшифровки и снятия блокировки очень неудобно, и было бы прекрасно использовать сложный пароль для первого и простой для второго. Здесь я согласен с разработчиками Android в том, что этого быть не должно, т.к. тогда сложный пароль будет защищать только выключенный телефон. Тем не менее для знающих, что такое ADB обходной способ есть. Сначала установите простой пароль или PIN обычным методом, а потом через ADB shell установите пароль для шифрования:
$ vdc cryptfs changepw
Разумеется, после очередной смены пароля через настройки процедуру придётся повторить.



И последняя важная вещь. Не забывайте выключать в настройках отладку USB (Developer options / USB debugging), потому что это полный доступ к телефону без всяких паролей.

Комментариев нет:

Отправить комментарий