Google pracuje na bezpečnom ukladaní digitálnych vodičských licencií v systéme Android

Android R by mohol podporovať bezpečné ukladanie mobilných vodičských licencií na zariadeniach ako Google Pixel 2, Google Pixel 3 alebo Google Pixel 4.

Aktualizácia 1 (3/6/19 o 20:44 ET): Ďalšie podrobnosti o plánoch Google pre IdentityCredential API zdieľal Shawn Willden, vedúci bezpečnostného tímu podporovaného hardvérom pre Android. Článok bol aktualizovaný o tieto podrobnosti na konci. Nasleduje pôvodný článok.

Nosenie peňaženky sa pre mňa od začiatku používania stalo menšou nevyhnutnosťou Google Pay spravovať svoje kreditné karty, ale stále neexistuje spôsob, ako môžem niekam cestovať bez vodičského preukazu. Poznám niekoľko ľudí, ktorí používajú peňaženky na uloženie niekoľkých kariet musieť niesť ich osobu, ale čakám na deň, keď budem môcť legálne ísť autom do Walmartu len s telefónom pri sebe. Digitálny vodičský preukaz ponúka oproti klasickému občianskemu preukazu viacero výhod. Nemôžete ho stratiť, môžete ho aktualizovať na diaľku, takže nemusíte stáť v rade na DMV, môžete ho na diaľku vymazať, ak vám telefón ukradnú, je menej pravdepodobné, že získate svoju identitu ukradnuté, pretože nemusíte nosiť peňaženku s ľahko dostupnými informáciami, je menej pravdepodobné, že necháte svoj telefón doma a budete mať ľahší čas na to, žiadosť. Úrady v celých Spojených štátoch si pomaly uvedomujú výhody mobilného vodičského preukazu, a preto každý rok počujeme, že viac štátov USA testuje ich prijatie.

Napríklad obyvatelia Louisiany si môžu stiahnuť súbor Envoc- vyvinutý Peňaženka LA aplikácia, ktorá bola schválená orgánmi činnými v trestnom konaní v LA na overenie licencie a ATC v LA pre transakcie s alkoholom a tabakom. Overenie veku je obzvlášť zaujímavé, pretože používatelia môžu obmedziť mobilnú aplikáciu tak, aby zobrazovala potrebné informácie iba predajcovi alkoholu alebo tabaku. Inde, digitálna bezpečnostná spoločnosť Gemalto spolupracuje s Colorado, Idaho, Maryland, Washington D.C. a Wyoming s cieľom spustiť pilotné programy pred uvedením ich riešenia na digitálne vodičské preukazy. V rovnakom čase, Americká asociácia správcov motorových vozidiel pracuje na štandardizácii tejto novej formy elektronickej identifikácie.

Vzorový obrázok digitálneho vodičského preukazu prístupného cez aplikáciu LA Wallet. Zdroj: Envoc

Digitálny vodičský preukaz má však aj svoje nevýhody. Máte veľkú kontrolu nad tým, kto uvidí váš fyzický preukaz totožnosti, ale máte menšiu kontrolu nad tým, kto alebo čo má prístup k jeho digitalizovanej podobe. Svoj telefón alebo aplikáciu, ktorá stiahne vašu mobilnú licenciu, môžete chrániť heslom alebo kódom PIN, no vždy existuje možnosť, že váš telefón a všetky jeho údaje budú ohrozené. Navyše sa musíte uistiť, že váš telefón má dostatok šťavy na udržanie spustenia Androidu, aby ste mohli stiahnuť licenciu. S IdentityCredential APIGoogle pracuje na vyriešení oboch týchto problémov. V budúcej verzii Androidu, možno Android R, budú môcť bezpečne ukladať zariadenia so správnym hardvérom identifikačné karty, najmä digitálne vodičské preukazy, a dokonca k nim pristupovať, keď na to zariadenie nemá dostatok energie spustiť Android.

IdentityCredential API

Na prvý pohľad sa záväzok, ktorý predložil Shawn Willden, vedúci tímu hardvéru podporovaného úložiska kľúčov pre Android, nezdá byť veľmi zaujímavý. Ak si však prezeráte súbory IdentityCredential a IdentityCredentialStore, nájdete viacero odkazov na to, aké druhy „poverení totožnosti“ Google označuje. Napríklad IdentityCredential používa protokol výmeny kľúčov, ktorý „používa server ISO18013-5 štandard pre mobilné vodičské preukazy.“ Okrem toho sa tento protokol používa ako „základ pre prebiehajúce práce ISO iné štandardizované identifikačné údaje.“ Aj keď je nepravdepodobné, že sa v blízkej dobe dočkáme mobilných pasov, je jasné, že toto API je určené pre viac než len mobilné vodičské preukazy.

Spoločnosť Google sa hlbšie zaoberá typmi podpisových kľúčov podporovaných rozhraním IdentityCredential API. Existujú dva druhy autentifikácie údajov: statické a dynamické. Statická autentifikácia zahŕňa kľúče vytvorené vydávajúcim orgánom, zatiaľ čo dynamická autentifikácia zahŕňa kľúče vytvorené bezpečnostným hardvérom zariadenia (ako napr. Titan M v Pixel 3 a Pixel 3 XL.) Výhodou dynamickej autentifikácie je, že pre útočníka je ťažšie kompromitovať zabezpečený hardvér a skopírovať poverenia do iného zariadenia. Okrem toho dynamická autentifikácia sťažuje prepojenie konkrétneho poverenia s údajmi používateľa.

Aplikácia pre Android môže čitateľovi predložiť IdentityCredential tak, že požiada používateľa, aby inicioval bezdrôtové pripojenie cez NFC. Aplikáciám sa odporúča chrániť tieto transakcie tak, že požiadajú používateľa o povolenie vo forme dialógového okna a/alebo ochrany heslom.

Ak má zariadenie podporovaný hardvér, bude k dispozícii režim „priameho prístupu“, ktorý umožní predloženie identifikačných údajov, aj keď nie je dostatok energie na udržanie spustenia systému Android. Je to možné iba vtedy, keď má zariadenie samostatný zabezpečený hardvér a dostatok energie na prevádzku tohto hardvéru na zdieľanie poverení cez NFC. Zariadenia ako Google Pixel 2 a Google Pixel 3 by sa mali kvalifikovať, pretože obe zariadenia majú bezpečnostné moduly odolné voči neoprávnenej manipulácii ktoré sú oddelené od hlavného SoC.

Ak zariadenie nemá samostatný zabezpečený procesor, stále môže podporovať IdentityCredential API, aj keď bez podpory priameho prístupu. Ak je úložisko poverení implementované iba v softvéri, môže byť napadnuté útokom na jadro. Ak je úložisko poverení implementované v TEE, môže byť kompromitované útokmi bočného kanála na CPU, ako napr. Meltdown a Spectre. Ak je úložisko poverení implementované v samostatnom CPU zabudovanom v rovnakom balíku ako hlavný CPU, je odolný voči fyzickým hardvérovým útokom, ale nemôže byť napájaný bez napájania hlavného CPU.

Citlivosť dokumentu určí, či bude podporovaná jedna alebo viacero z týchto implementácií úložiska poverení identity. Vývojári môžu skontrolovať bezpečnostnú certifikáciu implementácie úložiska poverení identity. Implementácie úložiska poverení identity môžu byť necertifikované alebo môžu mať úroveň zabezpečenia hodnotenia 4 alebo vyššiu. EAL informuje vývojárov aplikácií, ako je implementácia bezpečná proti potenciálnym útokom.

Ako som už spomenul, spoločnosť Google má v úmysle použiť toto rozhranie API pre akýkoľvek typ štandardizovaného dokumentu, hoci ako príklad uvádza mobilné vodičské preukazy ISO 18013. Typ dokumentu je potrebný, aby bezpečnostný hardvér vedel, o aký typ poverenia v prípade ide mal by byť podporovaný režim priameho prístupu a umožniť aplikáciám vedieť, aký typ dokumentu je čitateľ žiadajúci.

To sú všetky informácie, ktoré zatiaľ o tomto novom API máme. Keďže sme tak blízko vydania prvej ukážky vývojára pre Android Q, nemyslím si, že je pravdepodobné, že sa dočkáme podpory pre bezpečné ukladanie mobilných vodičských preukazov v systéme Android Q. Toto API by však mohlo byť pripravené v čase, keď bude v roku 2020 uvedený na trh Android R. Google Pixel 2, Google Pixel 3 a pripravovaný Google Pixel 4 by mali podporovať toto rozhranie API s režimom priameho prístupu v systéme Android R vďaka potrebnému samostatnému zabezpečenému CPU. Dáme vám vedieť, ak sa dozvieme viac informácií o tom, čo má Google v úmysle urobiť s týmto API.


Aktualizácia 1: Ďalšie podrobnosti o rozhraní IdentityCredential API

Shawn Willden, autor potvrdenia IdentityCredential API, zdieľal ďalšie podrobnosti o API v sekciách komentárov. Odpovedal na niekoľko komentárov používateľov, ktoré zopakujeme nižšie:

Používateľ Munnimi uviedol:

"A keď vám polícia vezme telefón a ide do policajného auta, môže skontrolovať, čo je v telefóne."

Pán Willden odpovedal:

„To je niečo, na čom sa špeciálne snažím znemožniť. Zámerom je štruktúrovať tok tak, aby vám dôstojník nemohol užitočne vziať telefón. Ide o to, že klepnete na NFC telefónom dôstojníka, potom ho odomknete odtlačkom prsta/hesla, potom váš telefón prejde do režimu uzamknutia, kým sa dáta prenesú cez bluetooth/Wifi. Režim uzamknutia znamená, že overenie odtlačkom prsta ho neodomkne, vyžaduje sa heslo. Ide konkrétne o vynútenie odvolania sa piateho dodatku na ochranu pred sebaobvinením, o ktorom niektoré súdy zistili, že nie zabrániť polícii, aby vás prinútila odomknúť pomocou biometrických údajov, ale každý súhlasí s tým, že zabráni tomu, aby vás prinútila poskytnúť svoje heslo (aspoň v Spojené štáty).

Všimnite si, že je to túžba, nie záväzok. Spôsoby, ktorými môžeme prinútiť vývojárov aplikácií identity, sú obmedzené, pretože ak zajdeme príliš ďaleko, môžu stačí sa rozhodnúť nepoužívať naše API. Čo však môžeme urobiť, je uľahčiť im robiť to správne, zohľadňujúce súkromie, vec."

Používateľ RobboW uviedol:

„V Austrálii je to zbytočné. Počas jazdy sme povinní mať pri sebe náš fyzický, oficiálny vodičský preukaz. Digitálna kópia je práve zrelá na krádež identity.“

Pán Willden odpovedal:

„Austrália je aktívnym členom výboru ISO 18013-5 a má veľký záujem o podporu mobilných vodičských preukazov. Čo sa týka krádeže identity, existuje veľa ochrany proti tomu, aby bola zabudovaná. V článku sú spomenuté niektoré z nich.“

Používateľ solitarios.lupus uviedol:

„Vzhľadom na to, čo táto stránka robí, si myslím, že každý tu vie, že to nebude fungovať a je to obrovský bezpečnostný problém pre orgány činné v trestnom konaní. Dá sa ľahko sfalšovať, sfalšovať a manipulovať.“

Pán Willden odpovedal:

„Úplné falšovanie bude takmer nemožné, pretože všetky údaje sú digitálne podpísané. Falšovanie poverenia by si vyžadovalo sfalšovanie digitálneho podpisu, čo si buď vyžaduje radikálne prelomenie relevantného kryptografia (ktorá by prelomila TLS a takmer všetko ostatné) alebo odcudzenie podpisu vydávajúceho orgánu kľúče. Dokonca aj zmena prevzatím niektorých podpísaných dátových prvkov z jedného DL (napr. dátum narodenia, ktorý ukazuje, že máte viac ako 21 rokov) a niektoré z iného (napr. vaša skutočná fotografia) nebude možné, pretože podpis pokrýva celý dokument a spája všetky prvky."

Používateľská značka uvedená:

„Ak fotokópia nikdy neplatila pre preukaz totožnosti, prečo je na telefóne rozdiel? Aj keď Google sľúbi, že to zabezpečí, ako to zabráni tomu, aby sa niekomu zobrazovala falošná aplikácia?

Napriek tomu, aj keď na to neexistujú odpovede, stále si myslím, že je to dobrá vec z dôvodov uvedených v tomto článku. Chcel by som to na pasy - nie nevyhnutne na cestovanie, ale na iné príležitosti, kde je potrebný preukaz totožnosti (nešoférujem, takže pas je môj jediný doklad totožnosti).

Samozrejme, bol by som aj radšej, keby sa Spojené kráľovstvo nemenilo na spoločnosť „papiere prosím“, kde potrebujete mať naskenovaný pas, aj keď len v niektorých prípadoch idete do krčmy...“

Pán Willden odpovedal:

„Digitálne podpisy to zaistia. Môžete mať falošnú aplikáciu, ktorá však nedokáže produkovať správne podpísané údaje.

Pasy sú tiež veľmi dôležité pre túto prácu, BTW. Východiskovým bodom sú vodičské preukazy, ale protokoly a infraštruktúra sú starostlivo navrhnuté tak, aby podporovali širokú škálu identifikačných údajov, konkrétne vrátane pasov. Samozrejme, budeme musieť presvedčiť ICAO, aby prijala tento prístup, ale myslím si, že je to veľmi pravdepodobné."


Vďaka XDA Recognized Developer luca020400 za tip!