ФБР спробувало через суд викрутити руки компанії Apple, яка не бажає створювати код для обходу власної системи безпеки. Виявлена критична уразливість в ядрі Android, що дозволяє отримати доступ суперкористувача в обхід всіх захисних механізмів. Ці дві події хоч і не пов'язані між собою, але збіглися за часом, явно демонструючи відмінності в системі безпеки двох популярних мобільних ОС. Відкладемо на хвилину питання з критичної вразливістю ядра Android, яка навряд чи буде коли-небудь виправлена більшістю виробників в уже випущених моделях, і розглянемо механізми шифрування даних в Android і Apple iOS. Але перш поговоримо, навіщо взагалі потрібно шифрування в мобільних пристроях.
А якщо шифрування було включено? У старих версіях Android (до 4.4 включно) і це можна було обійти (за винятком, щоправда, апаратів виробництва Samsung). А ось в Android 5.0 нарешті з'явився режим стійкого шифрування. Але так чи він корисний, як вважає Google? Спробуємо розібратися.
Android 5.0-6.0
Чому це важливо? Справа в тому, що в процесори на архітектурі ARMv8 вбудований набір команд для прискорення потокового шифрування даних, а в 32-бітних процесорах ARMv7 таких команд немає.
Отже, стеж за руками. Інструкцій для прискорення крипто в процесорі немає, тому Qualcomm вмонтував в набір системної логіки виділений апаратний модуль, покликаний виконувати ті ж функції. Але щось у Google не склалося. Чи то драйвери на момент випуску не допив, то чи Qualcomm не надав вихідні коди (або не дозволив публікувати їх в AOSP). Деталі публіці невідомі, але відомий результат: 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 з настройками за замовчуванням ( шифрування включено). Результат не забарився:
Продовження статті є тільки передплатникам
Варіант 2. Купи одну статтю
Покажи цю статтю друзям: