Google працює над безпечним зберіганням цифрових водійських прав в Android

click fraud protection

Android R може підтримувати безпечне зберігання мобільних водійських прав на таких пристроях, як Google Pixel 2, Google Pixel 3 або Google Pixel 4.

Оновлення 1 (06.03.19 о 20:44 за східним часом): Докладніше про плани Google щодо IdentityCredential API поділився Шон Віллден, керівник групи безпеки апаратного забезпечення Android. Стаття була оновлена ​​цими деталями в кінці. Оригінальна стаття подана нижче.

З тих пір, як я почав використовувати гаманець, для мене стало менш необхідною річ Google Pay керувати своїми кредитними картками, але я все одно не можу кудись подорожувати без водійських прав. Я знаю кількох людей, які використовують чохли-гаманці, щоб тримати ті кілька карток, які вони мають повинен продовжувати їх особисто, але я чекаю дня, коли я зможу законно доїхати до Walmart, маючи при собі лише телефон. Цифрове водійське посвідчення пропонує багато переваг перед традиційною ідентифікаційною карткою. Ви не можете втратити його, ви можете оновити його віддалено, щоб вам не потрібно було стояти в черзі в DMV, ви можете стерти його віддалено, якщо ваш телефон вкрадуть, у вас менше шансів отримати вашу особу вкрадено, оскільки вам не потрібно носити гаманець із легкодоступною інформацією, ви з меншою ймовірністю залишите свій телефон вдома, і вам буде простіше знайти його на запит. Органи влади в США повільно визнають переваги мобільних водійських прав, тому ми чуємо, що щороку все більше штатів США тестують їх впровадження.

Наприклад, жителі Луїзіани можуть завантажити Envoc-розвинутий Гаманець LA додаток, який було схвалено правоохоронними органами Лос-Анджелеса для перевірки ліцензії та УВД Лос-Анджелеса для операцій з алкоголем і тютюном. Перевірка віку особливо цікава, оскільки користувачі можуть обмежити мобільний додаток показом лише необхідної інформації для продавця алкоголю чи тютюну. В іншому місці компанія цифрової безпеки Джемальто співпрацює з Колорадо, Айдахо, Мерілендом, Вашингтоном і Вайомінгом, щоб запустити пілотні програми перед розгортанням їх цифрового рішення для отримання водійських прав. У той же час, Американська асоціація автотранспортних адміністраторів працює над стандартизацією цієї нової форми електронної ідентифікації.

Зразок цифрового посвідчення водія, доступ до якого доступний через додаток LA Wallet. Джерело: Envoc

Однак у цифрових водійських прав є недоліки. Ви маєте великий контроль над тим, хто зможе побачити ваше фізичне посвідчення особи, але ви маєте менше контролю над тим, хто або що має доступ до його оцифрованої форми. Ви можете захистити свій телефон або програму, яка отримує вашу мобільну ліцензію, паролем або PIN-кодом, але завжди є шанс, що ваш телефон і всі його дані можуть бути скомпрометовані. Крім того, ви повинні переконатися, що у вашому телефоні достатньо ресурсу для підтримки роботи Android, щоб ви могли отримати ліцензію. З IdentityCredential API, Google працює над вирішенням обох цих проблем. У майбутній версії Android, можливо, Android R, пристрої з відповідним апаратним забезпеченням зможуть безпечно зберігати ідентифікаційні картки, особливо цифрові водійські права, і навіть отримати до них доступ, коли пристрій не має достатньо енергії завантажте Android.

IdentityCredential API

На перший погляд комміт, представлений Шоном Уілденом, керівником групи апаратного сховища ключів Android, здається не дуже цікавим. Однак, якщо ви переглянете файли IdentityCredential і IdentityCredentialStore, ви знайдете кілька посилань на те, які типи «ідентифікаційних даних» має на увазі Google. Наприклад, IdentityCredential використовує протокол обміну ключами, який «використовується ISO18013-5 стандарт для мобільних водійських прав". Крім того, цей протокол використовується як "основа для поточної роботи ISO над інші стандартизовані ідентифікаційні дані." Хоча навряд чи найближчим часом ми побачимо мобільні паспорти, очевидно, що цей API призначений не тільки для мобільних водійських прав.

Копаючи глибше, Google розкриває типи ключів підпису, які підтримуються IdentityCredential API. Існує два види автентифікації даних: статична та динамічна. Статична автентифікація включає ключі, створені органом, що видав їх, тоді як динамічна автентифікація включає ключі, створені апаратним забезпеченням безпеки пристрою (наприклад, Титан М у Pixel 3 і Pixel 3 XL.) Перевага динамічної автентифікації полягає в тому, що зловмиснику важче зламати захищене обладнання, щоб скопіювати облікові дані на інший пристрій. Крім того, динамічна автентифікація ускладнює зв’язування певних облікових даних із даними користувача.

Додаток для Android може надати читачу IdentityCredential, попросивши користувача ініціювати бездротове з’єднання через NFC. Програмам рекомендується охороняти ці транзакції, запитуючи дозвіл користувача у формі діалогового вікна та/або захисту паролем.

Якщо пристрій має підтримуване апаратне забезпечення, режим «прямого доступу» буде доступний, щоб дозволити представити IdentityCredential, навіть якщо недостатньо енергії для підтримки роботи Android. Це можливо, лише якщо пристрій має окреме захищене обладнання та достатньо потужності для роботи цього обладнання, щоб надати облікові дані через NFC. Такі пристрої, як Google Pixel 2 і Google Pixel 3, повинні відповідати вимогам, оскільки обидва пристрої мають захищені від злому модулі безпеки які є окремими від основного SoC.

Якщо пристрій не має окремого захищеного ЦП, він все одно може підтримувати IdentityCredential API, хоча й без підтримки прямого доступу. Якщо сховище облікових даних реалізовано лише програмно, воно може бути скомпрометовано атакою на ядро. Якщо сховище облікових даних реалізовано в TEE, воно може бути скомпрометовано атаками на центральний процесор із стороннього каналу, такими як Meltdown і Spectre. Якщо сховище облікових даних реалізовано в окремому процесорі, вбудованому в той самий пакет, що й основний ЦП, він стійкий до фізичних атак на апаратне забезпечення, але не може працювати без живлення основного блоку ЦП.

Конфіденційність документа визначатиме, чи підтримуватиметься одна чи кілька реалізацій сховища ідентифікаційних даних. Розробники можуть перевірити сертифікацію безпеки реалізації сховища ідентифікаційних даних. Реалізації сховища ідентифікаційних даних можуть бути несертифікованими або мати рівень гарантії оцінювання 4 або вище. EAL повідомляє розробникам програми, наскільки захищена реалізація від потенційних атак.

Як я вже згадував раніше, Google має намір використовувати цей API для будь-яких стандартизованих типів документів, хоча вони наводять мобільні водійські права ISO 18013 як приклад. Тип документа необхідний, щоб апаратне забезпечення безпеки знало, який тип облікових даних це у справі має підтримуватися режим прямого доступу та дозволяти програмам знати, який тип документа є читач запитуючи.

Це вся інформація, яку ми маємо наразі про цей новий API. Оскільки ми так близько до випуску першої попередньої версії Android Q Developer Preview, я не думаю, що ми побачимо підтримку для безпечного зберігання мобільних водійських прав в Android Q. Однак цей API може бути готовий до виходу Android R у 2020 році. Google Pixel 2, Google Pixel 3 і майбутній Google Pixel 4 мають підтримувати цей API із режимом прямого доступу в Android R завдяки наявності необхідного дискретного захищеного ЦП. Ми повідомимо вас, якщо отримаємо більше інформації про те, що Google збирається робити з цим API.


Оновлення 1: докладніше про IdentityCredential API

Шон Уілден, автор коміту IdentityCredential API, поділився додатковою інформацією про API у розділах коментарів. Він відповів на кілька коментарів користувачів, які ми наведемо нижче:

Користувач Munnimi заявив:

«І коли поліція забере ваш телефон і підійде до поліцейської машини, вони зможуть перевірити, що в телефоні».

Містер Віллден відповів:

«Я спеціально працюю над тим, щоб зробити це неможливим. Намір полягає в тому, щоб структурувати потік так, щоб офіцер не міг з користю взяти ваш телефон. Ідея полягає в тому, що ви натискаєте NFC телефоном офіцера, потім розблоковуєте за допомогою відбитка пальця/пароля, а потім телефон переходить у режим блокування, поки дані передаються через Bluetooth/Wi-Fi. Режим блокування означає, що автентифікація за відбитком пальця не розблокує його, потрібен пароль. Це спеціально для того, щоб змусити застосувати п’яту поправку до захисту від самообмови, яку деякі суди визнали не запобігти поліцейським змусити вас розблокувати за допомогою біометрії, але всі погоджуються, що запобігає їм змусити вас надати свій пароль (принаймні в США).

Зауважте, що це прагнення, а не зобов’язання. Способи, за допомогою яких ми можемо змусити розробників додатків для ідентифікації, обмежені, тому що, якщо ми зайдемо занадто далеко, вони зможуть просто виберіть не використовувати наші API. Але те, що ми можемо зробити, це спростити для них правильний, чутливий до конфіденційності, річ».

Користувач RobboW заявив:

«В Австралії це марно. Під час керування автомобілем ми повинні мати при собі офіційні водійські права. Цифрова копія просто готова для крадіжки особистих даних».

Містер Віллден відповів:

«Австралія є активним учасником комітету ISO 18013-5 і дуже зацікавлена ​​в підтримці мобільних водійських прав. Що стосується крадіжки особистих даних, існує багато вбудованих засобів захисту від цього. У статті згадуються деякі з них».

Користувач solitarios.lupus заявив:

«З огляду на те, що робить цей сайт, я думаю, що всі тут знають, що це не працюватиме, і це серйозна проблема безпеки для правоохоронних органів. Щоб легко підробити, підробити та маніпулювати».

Містер Віллден відповів:

«Відверта підробка буде практично неможливою, оскільки всі дані мають цифровий підпис. Підробка облікових даних вимагала б підробки цифрового підпису, що або вимагало радикального зламування відповідного криптографія (яка може порушити TLS і практично все інше) або викрадення підпису органу видачі ключі. Навіть зміна, беручи деякі підписані елементи даних з одного DL (наприклад, дата народження, яка вказує на те, що вам більше 21 року), а деякі з іншого (наприклад, ваше справжнє фото) буде неможливо, оскільки підпис охоплює весь документ, поєднуючи всі елементи разом».

Позначка користувача заявила:

«Якщо фотокопія ніколи не була дійсною для посвідчення особи, чому розмова по телефону має значення? Навіть якщо Google обіцяє зробити це безпечним, як це завадить комусь показати підроблену програму?

Проте, навіть якщо відповіді на це питання немає, я все одно вважаю, що це добре з причин, наведених у цій статті. Я хотів би це для паспортів — не обов’язково для подорожей, але в інших випадках, коли потрібне посвідчення особи (я не воджу, тому мій паспорт — це єдине посвідчення особи).

Звичайно, я б також віддав перевагу, якби Великобританія не перетворювалася на суспільство «паперів, будь ласка», де в деяких випадках потрібно сканувати паспорт навіть для того, щоб піти в паб...»

Містер Віллден відповів:

«Цифрові підписи зроблять це безпечним. Ви можете мати підроблену програму, але вона не може створювати правильно підписані дані.

Паспорти також дуже важливі для цієї роботи, до речі. Водійські права є відправною точкою, але протоколи та інфраструктура ретельно розроблені для підтримки широкого спектру облікових даних, зокрема паспортів. Звичайно, нам потрібно буде переконати ICAO прийняти цей підхід, але я думаю, що це дуже ймовірно».


Завдяки визнаному розробнику XDA luca020400 за чайові!