EUDI? Velký projekt, velká slova
Jak jsme v Chipu psali, projekt EU Digital Identity Wallet (EUDI Wallet) je jedním z nejambicióznějších technologických počinů Evropské unie za poslední roky. Jeho cílem je dát každému občanovi EU digitální peněženku.
Do ní si uloží průkaz totožnosti, řidičský průkaz, diplomy i zdravotní záznamy a bude moci tyto doklady bezpečně prokazovat online bez toho, aby musel sdílet více osobních dat, než je nutné. Aplikaci pro ověřování věku, která měla být první praktickou ukázkou celého rámce, vyvinula švédská firma Scytáles a Deutsche Telekom.
Zakázka vzešla z výběrového řízení Evropské komise za 4 miliony eur, tedy přibližně 100 milionů korun. Aplikace má konkrétní účel: umožnit uživateli prokázat, že je starší 18 let, aniž by sociální síti nebo hazardní platformě ukázal svůj občanský průkaz či pas.
Funguje na principu tzv. zero-knowledge proof – matematické metody, která umožňuje dokázat pravdivost tvrzení, aniž by bylo nutné prozradit samotná data. V teorii elegantní řešení. V praxi se ale ukázal problém jinde, a to nikoliv v šifrování přenášených dat, ale v tom, jak aplikace zachází s daty uloženými přímo v telefonu.
Hacking the #EU #AgeVerification app in under 2 minutes.
— Paul Moore - Security Consultant (@Paul_Reviews) April 16, 2026
During setup, the app asks you to create a PIN. After entry, the app *encrypts* it and saves it in the shared_prefs directory.
1. It shouldn't be encrypted at all - that's a really poor design.
2. It's not… https://t.co/z39qBdclC2 pic.twitter.com/FGRvWtWzaZ
Aplikace je open-source, a to byl problém
Předsedkyně Evropské komise Von der Leyen na tiskové konferenci zdůraznila, že zdrojový kód je veřejně dostupný, aby si kdokoliv mohl ověřit, zda aplikace skutečně funguje tak, jak tvrdí.
Otevřenost kódu je v zásadě správný přístup, protože komunita výzkumníků může odhalit chyby dříve, než je najdou ti, kteří by je zneužili. V tomto případě to ale fungovalo rychleji, než si Komise zřejmě přála.
Britský bezpečnostní konzultant Paul Moore si stáhl soubor APK z GitHubu, prošel kód a záhy ho něco zaujalo. Minulý týden ve čtvrtek 16. dubna zveřejnil na síti X video s titulkem „Prolomení EU aplikace pro ověřování věku za méně než dvě minuty“.
Co Moore udělal a proč to není klasický hacking?
Slovo „hacking“ v tomto kontextu trochu zavádí. Moore nepoužil žádný exploit, neprolomil šifrování, nepotřeboval speciální software. Postup byl překvapivě prostý a spíše tedy šlo o triviální bypass.
Aplikace si při nastavení ukládá PIN do souboru shared_prefs – standardního konfiguračního souboru v systému Android. PIN je sice zašifrovaný, ale není kryptograficky svázán s uloženými doklady ani se samotným zařízením.
To znamená, že pokud má někdo fyzický přístup k telefonu a může editovat soubory, stačí vymazat uloženou hodnotu PINu, aplikaci restartovat a nastavit si PIN vlastní. Přístup k již ověřené identitě původního majitele přitom zůstane zachován.
Stejně triviální bylo obejití biometriky. V konfiguračním souboru existuje hodnota UseBiometricAuth, která je buď true, nebo false. Změna z true na false – doslova přepsání jednoho slova – ochranu otiskem prstu nebo skenerem obličeje zcela vypne.
Takto primitivní uložení bezpečnostního přepínače by neprošlo ani interním auditem běžné komerční aplikace. Moore dále zjistil, že čítač chybně zadaných PINů, který má po určitém počtu pokusů aplikaci zablokovat, je rovněž uložen v tomtéž souboru. Jeho vynulování otevírá cestu k útoku hrubou silou bez jakéhokoliv omezení.
Mohlo by vás zajímat
Nejdříve v 16 letech? Evropská komise hodlá zavést přísná pravidla pro Instagram, TikTok a další
Biometrická data uložená jako obyčejné obrázky
Ještě závažnější, než možnost obejít PIN, byl nález týkající se biometrických dat. Aplikace při procesu prvního spuštění a nastavení načítá fotografii z čipu pasu (tzv. DG2 data) a pořizuje selfie uživatele za účelem ověření totožnosti.
Výzkumníci zjistili, že tyto snímky jsou ukládány do úložiště telefonu jako nešifrované PNG soubory – tedy jako běžné fotografie dostupné jakékoliv aplikaci s oprávněním ke čtení úložiště.
Selfie navíc není po úspěšném ověření smazána. Fotografie z čipu pasu zůstane v telefonu, pokud proces ověřování není úspěšně dokončen. To je v přímém rozporu s tím, co aplikace ve svých podmínkách slibuje – že žádná osobní data nejsou ukládána.
A co hůře, biometrická data jsou podle GDPR řazena do kategorie zvláště citlivých osobních údajů, jejichž zpracování podléhá přísným pravidlům.
Jak se obejít bez aplikace?
Moore šel ještě dál. Ukázal, že celý systém lze obejít bez použití oficiální aplikace. Napsal rozšíření do prohlížeče, které detekuje QR kód v ověřovacím procesu a vrátí platformě zfalšovanou odpověď, tedy potvrzení, že uživatel je starší 18 let.
Služba odpověď přijala bez problémů, protože verifikační tokeny nejsou bezpečně vázány na konkrétní zařízení ani identitu.
Tato část nálezu je pro bezpečnostní komunitu možná nejzásadnější. Jde o základní designovou chybu: systém, který má ověřovat věk, slepě důvěřuje tokenům, aniž by ověřil, kdo a čím je vydal.
Byl to jen prototyp, tvrdí Evropská komise
Mluvčí Evropské komise Paula Pinho reagovala na kritiku prohlášením, že Moore testoval „demoverzi“ či „technický blueprint“, nikoliv finální produkční aplikaci. Záplata prý byla nasazena již v pátek 17. dubna. Na přímou otázku, zda je tedy aplikace připravena, Pinho odpověděla: „Ano, je připravena. A samozřejmě – vždy se dá vylepšit.“
Bezpečnostní komunita přijala tuto odpověď velmi vlažně. Argument, že šlo o demoverzi, je oslaben tím, že aplikace byla veřejně prezentována jako „technicky připravená“ a kód byl distribuován přes GitHub jako soubor APK ke stažení a testování. Pokud toto není produkční verze, pak Komise představila jako úspěch něco, co by před veřejností nemělo vůbec být.
Stojí za zmínku, že před spuštěním aplikace více než 400 odborníků podepsalo otevřený dopis, v němž žádali Komisi o pozastavení nasazení a důkladnější bezpečnostní audit.
Česká europoslankyně Markéta Gregorová prohlásila, že „celý proces probíhá pod politickým tlakem“, a vyzvala k důkladnějšímu posouzení aplikace z hlediska kybernetické bezpečnosti a ochrany soukromí. Birgit Sippel, německá europoslankyně z německé SPD, označila aplikaci za nedotažené řešení, které nedosahuje ani vlastních standardů EU.
Co to znamená pro EUDI Wallet?
Aplikace pro ověřování věku není izolovaný produkt. Je součástí mnohem většího celku – rámce EU Digital Identity Wallet, který musí podle nařízení eIDAS 2.0 do konce roku 2026 zavést všechny členské státy EU, Českou republiku nevyjímaje. Tento rámec má v budoucnu spravovat nejen věkové ověření, ale i řidičské průkazy, zdravotní doklady nebo přístup ke státním službám.
Ztráta důvěry v základní aplikaci, která celý projekt uvádí do praxe, je proto mnohem závažnější, než by se mohlo zdát.
Kyberbezpečnostní výzkumníci opakují, že zásadní problém není opravitelný záplatou. Jde totiž o chyby v návrhu architektury, nikoliv jen o špatně napsaný kód.
Klíčová data by měla být vázána na hardware zařízení prostřednictvím technologií jako Secure Enclave nebo TrustZone, nikoliv uložena v editovatelných konfiguračních souborech.
Zdroj: X, X Smart Money Crypto, CyberInsider, Europa, EUPerspectives
,